Releases: TheQwertiest/foo_spider_monkey_panel
Releases · TheQwertiest/foo_spider_monkey_panel
v1.6.1 - Hotfix
Changelog
Hotfix for v1.6.0 (see changelog below)
Changed
- API changes:
- Reverted changes in
window.NotifyOthers()behaviour. Now it's executed synchronously as before.
- Reverted changes in
Fixed
- Fixed various bugs in the event handling system, which were causing unexpected behaviour and crashes.
- Fixed right-mouse-btn-down and middle-mouse-btn-down events not being processed.
v1.6.0 - Events
!!!
!!! DON'T USE THIS VERSION, USE v1.6.1 INSTEAD !!!
!!!
Changelog
See docs for the detailed description of API changes.
Added
- Added WIC support in image and art loaders, which enables WebP support (see FAQ for more info).
- API changes:
- Added
IsInternalfield toactionargument (that is passed toon_drag_*callbacks). - Added ability to generate main menu items dynamically and handle it via the following API:
fb.RegisterMainMenuCommand().fb.UnregisterMainMenuCommand().on_main_menu_dynamic()callback.
- Expanded playlist undo API:
plman.Undo().plman.Redo().plman.IsUndoAvailable().plman.IsRedoAvailable().
- Added
- Added
spectrogram seekbar.jssample (by marc2003).
Changed
- Reimplemented event handling system.
- API changes:
window.NotifyOthers()is now executed asynchronously.fb.DoDragDrop()is now executed asynchronously.on_main_menu()callback is marked as [Deprecated]. Use dynamically generated main menu items instead.
Fixed
- Removed unneeded writes to script package
.json. - Fixed drag-n-drop sometimes not working.
- Fixed timers not stopping when they should (#135).
v1.5.2 - Hotfix II
v1.5.1 - Hotfix
v1.5.0 - Packages & Whistles
Changelog
See docs for the detailed description of API changes.
Added
- API changes:
- Added fine-grained playlist lock control via
plman.GetPlaylistLockedActions()andplman.SetPlaylistLockedActions()(#144). - Added
utils.GetPackageInfo()method. - Added
fb.Restart()method.
- Added fine-grained playlist lock control via
Changed
utils.InputBox()now automatically resizes to fit the text (#71).- Additional properties provided by component are no longer displayed when not set (#141).
- API changes:
- Added
use_exactargument toGdiGraphics.CalcTextWidth()to improve width calculation accuracy in certain cases (#140). utils.GetPackagePath()is marked as [Deprecated]. Useutils.GetPackageInfo()instead.plman.IsPlaylistLocked()is marked as [Deprecated]. Useplman.GetPlaylistLockedActions()instead.
- Added
Fixed
- Fixed various bugs and crashes in
Configuredialog. - Revamped package update process to avoid potential problems when that package is being in use (#137).
- Fixed inability to import package if there are no packages installed (#134).
Enable drag-n-dropcheckbox value inConfiguredialog is no longer ignored.- Slow script detection now works inside script-editing modals (#143).
- Fixed incorrect relative path calculation when
includeis called from methods defined in another file (#142). - Fixed timers not stopping when they should (#135).
- Fixed various errors in
completesamples (by marc2003):- Fixed crash on invalid query in auto-playlist script.
- Thumbs script now downloads images only when the corresponding mode is set.
v1.4.1 - Hotfix
Changelog
Hotfix for v1.4.0 (see changelog below)
See docs for the detailed description of API changes.
Changed
- Changed casing of
window.JsMemoryStatsfields for consistency with the rest of API. - Added indicator when panel name is overriden by the script in
Configuredialog. - Improved package manager behaviour in various scenarios.
Fixed
- Fixed various bugs in
Packagetab ofConfiguredialog. - Fixed sorting of package files.
- Fixed conflict with
foo_wave_seekbar. - Fixed
foo_acfuintegration. - Fixed data not refreshing on
ApplyinConfiguredialog.
v1.4.0 - Configure v2 & Script Package
Changelog
See docs for the detailed description of API changes.
Added
- Added a brand new
Configuredialog! - Added more ways to consume scripts:
- Quick access to built-in script samples.
- Load scripts by path.
- Use script packages (see below for more info).
- Implemented script package support:
- Can contain multiple scripts and assets.
- Can be easily exported and imported as a single file.
- Has a package manager to view and manage all installed packages.
- Panel name can be changed now via
Configuredialog. - Default script editor can be changed now via drop-down menu of
Editbutton inConfiguredialog. - Added a link to component docs to foobar2000
Helpmain menu. - API changes:
- Added iterator protocol support to
FbMetadbHandleList. - Added
typeargument toFbUiSelectionHolder.SetSelection(). - Added
fb.Versionproperty. - Added
utils.DetectCharset()method. - Added
utils.EditTextFile()method. - Added
utils.FileExists()method. - Added
utils.GetFileSize()method. - Added
utils.GetPackagePath()method. - Added
utils.IsDirectory()method. - Added
utils.IsFile()method. - Added
utils.SplitFilePath()method. - Added
window.DefineScript()method. - Added
window.EditScript()method. - Added
window.ShowConfigureV2()method. - Added
window.JsMemoryStatsproperty. - Added
window.ScriptInfoproperty.
- Added iterator protocol support to
Changed
- Moved
Propertiesdialog to a separate tab ofConfiguredialog. Grab focusis now a script property and is defined viawindow.DefineScript().- Extracted
Edge styleandPseudo-transparencyoptions to a separate tab ofConfiguredialog. - API changes:
utils.FileTest()is marked as [Deprecated]. Use new corresponding methods instead.window.IDis now optional and unused in all methods that required it.window.DefinePanel()is marked as [Deprecated]. Usewindow.DefineScript()instead.window.MemoryLimit,window.PanelMemoryUsageandwindow.TotalMemoryUsageare marked as [Deprecated]. Usewindow.JsMemoryStatsinstead.window.Namenow returns panel name instead of script name. Usewindow.ScriptInfo.Nameto retrieve script name.window.ShowConfigure()is marked as [Deprecated]. Usewindow.ShowConfigureV2()to configure panel andwindow.EditScriptto edit script.
Fixed
- Fixed component crash when passing objects to
console.log(). - Fixed component crash when there is a stack overflow in JS.
- Fixed the weird image offset when using
fb.DoDragDrop()with custom image and theming disabled. - Fixed
utils.ShowHtmlDialog()not applying IE mode, when HTML code is passed directly to the method. - Various
ActiveXObjectfixes:- Errors in callbacks passed to
ActiveXObjectobjects and methods are now properly propagated to the script. - Fixed inability to use subscripts with some
ActiveXObjectobjects. - Added iterator protocol support to enumerable
ActiveXObjectobjects.
- Errors in callbacks passed to
- Fixed various errors in
completesamples (by marc2003).
v1.3.1 - Hotfix
Changelog
Hotfix for v1.3.0 (see changelog below)
Fixed
- Fixed
FbTooltip.SetFont()not working. - Fixed a memory leak when using
window.Tooltip. - Fixed task id collision in
gdi.LoadImageAsync().
v1.3.0 - Refresh
Changelog
See docs for the detailed description of API changes.
Added
- Re-added ability to automatically download thumbnail images to
thumbs.jssample (by @marc2k3). - Added missing documentation for
fb.GetDSPPresets()andfb.SetDSPPreset(). - API changes:
- Added
GdiBitmap.InvertColours()method (by @kbuffington). - Added
ActiveXObject.ActiveX_CreateArray()method. - Added
window.Tooltipproperty. - Added
FbTooltip.SetFont()method. - Deprecated
window.CreateTooltip()method.
- Added
Changed
- Updated SpiderMonkey JavaScript engine to 68.8.0 ESR:
- ECMAScript 2019 conformant JavaScript. See 'What's new in ES2019' for more info.
- Various performance improvements and bug fixes.
- Adjusted a "Function failed successfully" error message (e.g. when running out of GDI handles).
- Updated
Tooltipsample.
Fixed
- Fixed incorrect sorting in
FbMetadbHandleList.OrderByRelativePath(). - Fixed
fb.GetDSPPresets(): now it returns a proper value. - Fixed
fb.IsMainMenuCommandChecked()not working with hidden by default menu items. - Fixed garbled error messages on systems with non-English locale.
- Fixed
Replace Allaction and RegExp handling inFind/Replacedialog. - Fixed crash in some of
.jssamples when deleting a file via context menu.
v1.2.3 - Maintenance II
Changelog
Added
- Moved documentation from Wiki to a new homepage: https://theqwertiest.github.io/foo_spider_monkey_panel:
- Contains JS documentation for the latest release.
- Contains script showcase with basic information about sample scripts and user-made scripts.
- Updated
FindReplacedialog inConfigure:- Added wrap-around support.
- Dialog is transparent when unfocused.
- Made
Go todialog inConfiguremodeless.
Changed
- Reimplemented
FbMetadbHandleList::OrderByRelativePath:- Uses MUCH less memory.
- Faster by 10% (on sorted list) to 500% (on unsorted list).
- Adjusted codepage detection with various file handling methods.
- Adjusted playlist lock check during drag-n-drop and
plman.AddLocations: now onlyplaylist_lock::filter_addflag is checked. - Removed unneeded
on_sizecall. - Adjusted component initialization time reported in console to be more accurate.
- Updated marc2003 scripts:
- Note:
ListenBrainzsample was removed - use https://github.com/marc2k3/foo_listenbrainz2 instead.
- Note:
Fixed
- Fixed rare crash when using
utils.RunMainMenuCommandandutils.IsMainMenuCommandChecked. - Fixed crash when working with COM on systems with non English locale.
- Fixed
window.GetPropertynot working when name contained whistespace at the beggining. - Fixed other various crashes.
- Fixed occasional double error report in console.
- Fixed crashes in
jsplaylist-modand other complete samples (by marc2003).