diff --git a/packages/webamp/CHANGELOG.md b/packages/webamp/CHANGELOG.md index 55d5206d..a45076d2 100644 --- a/packages/webamp/CHANGELOG.md +++ b/packages/webamp/CHANGELOG.md @@ -1,6 +1,12 @@ ## Upcoming [UNRELEASED] (`webamp@next`) -_No changes yet._ +### Bug Fixes + +- Fixed "Generate HTML Playlist" feature, which was accidentally broken in 2.0.0. + +### Improvements + +- Improve skin parsing performance and avoid Chrome console warning by adding `willReadFrequently` to canvas contexts. ## 2.0.1 [CURRENT] diff --git a/packages/webamp/js/skinParser.js b/packages/webamp/js/skinParser.js index f8197d7c..a5a6fa00 100644 --- a/packages/webamp/js/skinParser.js +++ b/packages/webamp/js/skinParser.js @@ -99,7 +99,7 @@ async function genGenTextSprites(zip) { } const canvas = document.createElement("canvas"); - const context = canvas.getContext("2d"); + const context = canvas.getContext("2d", { willReadFrequently: true }); canvas.width = img.width; canvas.height = img.height; context.drawImage(img, 0, 0); diff --git a/packages/webamp/js/skinParserUtils.ts b/packages/webamp/js/skinParserUtils.ts index 53aa2c34..30e3a31a 100644 --- a/packages/webamp/js/skinParserUtils.ts +++ b/packages/webamp/js/skinParserUtils.ts @@ -81,7 +81,7 @@ export function getSpriteUrisFromImg( sprites: Sprite[] ): { [spriteName: string]: string } { const canvas = document.createElement("canvas"); - const context = canvas.getContext("2d"); + const context = canvas.getContext("2d", { willReadFrequently: true }); if (context == null) { throw new Error("Failed to get canvas context"); } @@ -194,7 +194,7 @@ export async function getGenExColors( } const canvas = document.createElement("canvas"); - const context = canvas.getContext("2d"); + const context = canvas.getContext("2d", { willReadFrequently: true }); if (context == null) { return null; }