mirror of
https://github.com/captbaritone/webamp.git
synced 2026-07-22 09:37:17 +00:00
Handle ani frames in odd place
This commit is contained in:
parent
ba7c12d6d7
commit
aa952c29e6
4 changed files with 40 additions and 3 deletions
|
|
@ -1,8 +1,27 @@
|
|||
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
||||
|
||||
exports[`AfterShock_Digital_2003.wsz close.cur 1`] = `
|
||||
"
|
||||
@keyframes ani-cursor-3 {
|
||||
0% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
6.25%, 93.75% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
12.5%, 87.5% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
18.75%, 81.25% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
25%, 75% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
31.25%, 68.75% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
37.5%, 62.5% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
43.75%, 56.25% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
50% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAAAAAACoCAAAFgAAACgAAAAgAAAAQAAAAAEACA...), auto; }
|
||||
}
|
||||
#example:hover {
|
||||
animation: ani-cursor-3 2666.666666666667ms step-end infinite;
|
||||
}
|
||||
"
|
||||
`;
|
||||
|
||||
exports[`Edge cases piano.ani 1`] = `
|
||||
"
|
||||
@keyframes ani-cursor-3 {
|
||||
@keyframes ani-cursor-4 {
|
||||
0% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAA0ACQDoAgAAFgAAACgAAAAgAAAAQAAAAAEABA...), auto; }
|
||||
20% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAA0ACQDoAgAAFgAAACgAAAAgAAAAQAAAAAEABA...), auto; }
|
||||
40% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAA0ACQDoAgAAFgAAACgAAAAgAAAAQAAAAAEABA...), auto; }
|
||||
|
|
@ -10,7 +29,7 @@ exports[`Edge cases piano.ani 1`] = `
|
|||
80% { cursor: url(data:image/x-win-bitmap;base64,AAACAAEAICAAAA0ACQDoAgAAFgAAACgAAAAgAAAAQAAAAAEABA...), auto; }
|
||||
}
|
||||
#example:hover {
|
||||
animation: ani-cursor-3 1250ms step-end infinite;
|
||||
animation: ani-cursor-4 1250ms step-end infinite;
|
||||
}
|
||||
"
|
||||
`;
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -32,6 +32,12 @@ describe("Green Dimension v2.wsz", () => {
|
|||
});
|
||||
});
|
||||
|
||||
describe("AfterShock_Digital_2003.wsz", () => {
|
||||
test("close.cur", async () => {
|
||||
expect(readPathCss("AfterShock_Digital_2003/close.cur")).toMatchSnapshot();
|
||||
});
|
||||
});
|
||||
|
||||
describe("Edge cases", () => {
|
||||
test("piano.ani", async () => {
|
||||
expect(readPathCss("piano.ani")).toMatchSnapshot();
|
||||
|
|
|
|||
|
|
@ -86,7 +86,7 @@ export function parseAni(arr: Uint8Array): ParsedAni {
|
|||
throw new Error("Did not find fram LIST");
|
||||
}
|
||||
|
||||
const images = imageChunk.subChunks.slice(0, metadata.nFrames).map((c) => {
|
||||
let images = imageChunk.subChunks.slice(0, metadata.nFrames).map((c) => {
|
||||
if (c.chunkId !== "icon") {
|
||||
throw new Error(`Unexpected chunk type in fram: ${c.chunkId}`);
|
||||
}
|
||||
|
|
@ -106,6 +106,18 @@ export function parseAni(arr: Uint8Array): ParsedAni {
|
|||
case "IART":
|
||||
artist = unpackString(arr, c.chunkData.start, c.chunkData.end);
|
||||
break;
|
||||
case "LIST":
|
||||
// Some cursors with an artist of "Created with Take ONE 3.5 (unregisterred version)" seem to have their frames here for some reason?
|
||||
if (c.format === "fram") {
|
||||
images = c.subChunks.slice(0, metadata.nFrames).map((c) => {
|
||||
if (c.chunkId !== "icon") {
|
||||
throw new Error(`Unexpected chunk type in fram: ${c.chunkId}`);
|
||||
}
|
||||
return arr.slice(c.chunkData.start, c.chunkData.end);
|
||||
});
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
// Unexpected subchunk
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue