diff --git a/js/skinParser.js b/js/skinParser.js index 8525855c..3703c91a 100644 --- a/js/skinParser.js +++ b/js/skinParser.js @@ -14,6 +14,7 @@ const CURSORS = [ "EQSLID", "EQTITLE", "MAINMENU", + "MMENU", "MIN", "NORMAL", "PCLOSE", @@ -28,13 +29,27 @@ const CURSORS = [ "SONGNAME", "TITLEBAR", "VOLBAL", - "VOLBAR", "WINBUT", - "WSCLOSE", - "WSMIN", "WSNORMAL", - "WSPOSBAR", - "WSWINBUT" + "WSPOSBAR" + /* + + * > There are usually 4 more cursors in the skins: volbar.cur, wsclose.cur, + * > wswinbut.cur, wsmin.cur, but they are never used, at least in the last + * > versions of winamp, so there's no need of including them. The cursors + * > shown when the mouse is over the app-buttons are the same in normal and + * > winshade mode, except for the main menu button. You can make animated + * > cursors, but you have to name them with the extension .cur (animated + * > cursors are usually .ani files). + * + * -- Skinners Atlas + * + * "VOLBAR", + * "WSCLOSE", + * "WSWINBUT", + * "WSMIN", + * + */ ]; const _genImgFromBlob = async blob => diff --git a/js/skinSelectors.js b/js/skinSelectors.js index 7ff1cd61..a2e4eb96 100644 --- a/js/skinSelectors.js +++ b/js/skinSelectors.js @@ -324,19 +324,47 @@ LETTERS.forEach(character => { }); export const cursorSelectors = { - PSIZE: ["#playlist-window #playlist-resize-target"], CLOSE: ["#title-bar #close"], - MAINMENU: ["#main-window", "#main-window.shade #title-bar"], - TITLEBAR: ["#main-window #title-bar"], - POSBAR: ["#position"], - VOLBAL: ["#volume", "#balance"], EQSLID: ["#equalizer-window .band"], + EQNORMAL: ["#equalizer-window"], + EQCLOSE: ["#equalizer-window #equalizer-close"], EQTITLE: [ "#equalizer-window .title-bar", "#equalizer-window.shade", "#equalizer-window.shade input" ], + MAINMENU: ["#main-window #option"], + MIN: ["#main-window #minimize"], + NORMAL: [ + // Use this as the default cursor. + ".window", + "#main-window", + "#main-window.shade #title-bar" + ], + MMENU: ["#main-window.shade #option"], PNORMAL: ["#playlist-window"], - PVSCROLL: ["#playlist-window .playlist-scrollbar-wrapper"], - SONGNAME: ["#main-window #marquee"] + // TODO: This is should really only apply to the top part of the top. + // The chrome around the playlist window is larger than others. The + // cursor only applies to the same height as the other window's chrome. + PTBAR: ["#playlist-window .playlist-top"], + PCLOSE: [ + "#playlist-window #playlist-close-button", + "#playlist-window-shade #playlist-close-button" + ], + PWINBUT: [ + "#playlist-window #playlist-shade-button", + "#playlist-window-shade #playlist-shade-button" + ], + POSBAR: ["#main-window #position"], + PSIZE: ["#playlist-window #playlist-resize-target"], + PWSSIZE: ["#playlist-window-shade #playlist-resize-target"], + PWSNORM: ["#playlist-window-shade"], + // TODO: The target for this is not quite right. + PVSCROLL: ["#playlist-window .playlist-scrollbar"], + SONGNAME: ["#main-window #marquee"], + TITLEBAR: ["#main-window #title-bar"], + VOLBAL: ["#volume", "#balance"], + WINBUT: ["#main-window #shade"], + WSNORMAL: ["#main-window.shade #title-bar"], + WSPOSBAR: ["#main-window.shade #position"] }; diff --git a/skins/.gitignore b/skins/.gitignore index 7087d3d9..3f7d43d9 100644 --- a/skins/.gitignore +++ b/skins/.gitignore @@ -1,3 +1,2 @@ base-2.91.zip -base-2.91/ Skinner_Atlas/ diff --git a/skins/base-2.91.wsz b/skins/base-2.91.wsz index d1e0a67f..459bb72b 100644 Binary files a/skins/base-2.91.wsz and b/skins/base-2.91.wsz differ diff --git a/skins/base-2.91/MAINMENU.CUR b/skins/base-2.91/NORMAL.CUR similarity index 100% rename from skins/base-2.91/MAINMENU.CUR rename to skins/base-2.91/NORMAL.CUR diff --git a/skins/base-2.91/PNORMAL.CUR b/skins/base-2.91/PNORMAL.CUR new file mode 100644 index 00000000..926f057d Binary files /dev/null and b/skins/base-2.91/PNORMAL.CUR differ diff --git a/skins/base-2.91/PVSCROLL.CUR b/skins/base-2.91/PVSCROLL.CUR new file mode 100644 index 00000000..e1c64ef9 Binary files /dev/null and b/skins/base-2.91/PVSCROLL.CUR differ