13 KiB
1.5.0
Features
- Support
.ani
cursors in skins #1035, blog post. - Improved support for mobile/touch screen interaction: volume, balance and position sliders, marquee, playlist and window dragging/resizing/focusing. #1098/#1099
Bug Fixes
- Fix a number of edge cases where the close and minimize buttons in the equalizer window could render the wrong sprite #1046
- Fix a bug where unminified bundle was accidentally minified.
- Treat skin files with forward slashes in their filename as directories #1052
- Fix a bug where the Milkdrop window could not be moved in some cases #1068
- Fix a bug where the visualizer in the Playlist window was not hidden when audio was stopped. #1072
- Fix a bug where the marquee was one pixel too narrow #1087
- Fix a bug that was preventing the "Misc options" plalist submenu from opening. c9fe24
- Rename the
.status
class to.webamp-status
to avoid potential conflicts with host site. #1116
1.4.2
Bug Fixes
- Add
webamp.close()
method to public TypeScript types.
1.4.1
Features
- New Webamp instance method:
.setSkinFromUrl(url)
. See usage.md for more details. - New Webamp instance method:
.close()
. See usage.md for more details.
Bug Fixes
- Fix a bug where skins missing some images would fail to load 2e8392
- Clicking on the lightning icon in the main window now correctly opens our about page in a new tab #794
- Skin
.ini
files can use=
as a comment separator 577b5e3 - We nolonger cycle Milkdrop presets when media is not playing #799
- Guard against some kinds of malformed
region.txt
files 0bd8b0
1.4.0
Features
- Added optional configuration option
handleTrackDropEvent
which lets you decide how drop events get converted into tracks. - New Webamp instance methods:
.stop()
,.getMediaStatus()
, and.seekToTime(seconds)
. See usage.md for more details. - Windows are now layered in the order in which they were focused (5ee1a4)
- When focusing something other than Webamp, it's now possible for no windows to be selected (6132ac)
Bug Fixes:
- Fix a bug where context menus could appear in the wrong location (95db2d)
- Fix a bug where pressing next/previous when stopped would play the track (#740)
- Fix a bug where
webamp.dispose
would error if the#webamp
node had been reparented to anything other thandocument.body
. - Fix a bug where tracks dropped in the main window were not autoplayed (f8167d)
Internal Improvements:
- Upgraded React Redux (c3c3ad)
- Several improvements to the performance of rendering Redux updates (c75214, 73f87b, 4322aa, e89aa2,)
1.3.1 [CURRENT]
Bug Fixes:
- Fix issue where
music-metadata-browser
was not imported correctly, and id3 tags could not be read. (324fc2)
1.3.0
This release is far overdue. In the last six months we've made a huge number of improvements to Webamp.
We've fixed multiple longstanding bugs and continued to inch closer to pixel-perfect parity with Winamp. We've added several methods which make it easier to use Webamp in your project. In addition, we've continued to invest in the code by refactoring code to make it more maintainable, and converting the entire project from vanilla JavaScript to TypeScript which should help reduce the number of "dumb" bugs.
See a full list below:
Features:
- Added methods to the webamp instance to control playback. See the Usage Docs for more information:
webamp.play()
webamp.pause()
webamp.previousTrack()
webamp.nextTrack()
webamp.seekForward(seconds)
webamp.seekBackward(seconds)
- Our ID3 parsing library jsmediatags has been replaced by music-metadata-browser. This means we now support a broader range of media types, and also that the bitrate and sample rate displayed are now functional
- The default skin is now included in the Skins section of the options menu by default
- Implemented the "Options" sub context menu. Click the "O" in the "clutter bar" or select "Options" from the main context menu to see it
- The equlizer graph is nolonger antialiased. It is now pixelated like real Winamp
- Added a
.reopen()
method to reopen Webamp after you've closed it (47ba520) - Stip diacritic marks from song description so it displays better in the marquee (2b2598)
Bug Fixes:
- Fixed a longstanding bug where mono audio files would only play in the right channel (4fd802)
- Fixed a bug (#687) where
webamp.appendTracks()
would cause currently playing media to pause. - Avoid sticking a file
<input>
into the global DOM (343686) - Fix a bug where tracks dragged into the playlist were added at the wrong location (b074e0)
- Fix a bug where skin cursors were not being shown for the equalizer sliders (65bb59d)
- The Marquee text is nolonger blury when in "Double Size" mode (4b5320)
- Scrolling in the Equalizer window nolonger changes the volume (48a937)
- Clicking anywhere in a equalizer slider now makes the button depress (20e681
- Parsing of the
viscolor.txt
file in skins is now more permissive, allowing us to support more skins (0d29ff) - The hotkeys to seek forward/backwards 10 tracks now works propery (7d9ef4)
- Fix a bug where the preamp level was not applied until you changed it (f03c88)
- Fix a bug where
.eqf
values were encoded incorrectly (c634cd) - Preamp and EQ now boost/attenuate the same way original winamp 2 did (#748)
Internal Improvements:
- Webamp is now written in TypeScript.
- Upraded to React and began using a few hooks.
- We nolonger depend upon cardinal-spline-js, we use our own implementation.
1.2.0
Features
- Users can register an
onWillClose
callback, which is passed acancel
function. Thecancel
function can be called to prevent Webamp from closing. #655
Internal changes
- Webamp is now mostly built with TypeScript.
1.1.2
Changes
Webamp is no-longer rendered into the DOM node you pass into webamp.renderWhenReady()
. Instead, Webamp is rendred as a direct child of the <body>
tag. The passed DOM node is still used for positioning. Webamp will attempt to center itself within that DOM node when it renders.
Features
- Allow consumers to specify a z-index when constructing Webamp.
Fixes
- Fixes positioning of context menus in context menu targets when they are spawned while scrolled.
- Improve performance of CharacterString, which gets rendered on every marquee step.
1.1.1
Fixes
- Fixes the marquee text when the host page globally sets
box-sizing
. - Fixes the initial layout when the container is not at the top of the page.
- Fixes the positioning of context menus created when scrolled down the page.
1.1.0
Breaking
- Webamp will attempt to center itself within the node it is rendered into, rather than within the entire page.
- Webamp now includes the default skin directly in the JS bundle, so you don't need host it separately, or pass a URL as part of the initialztiaon.
Features
- Equalizer sliders now "stick" slightly at zero.
- Context menus on all windows.
- Toggle window visibility via context menus.
- Users can now hard code the duration of initial tracks. This saves Webamp from having to make an HTTP request to check the duration.
Fixed
- Marquee now displays one additional character: https://github.com/captbaritone/webamp/issues/543
- Track numbers in playlist are now padded to the length of the longest track number.
- Fix close buttons in Playlist and Equalizer in shade mode.
- Skins that omit assets will now fallback to using the default version of that asset.
- Fix seeking forward via hotkeys.
1.0.0
Important: The NPM module as moved from winamp2-js
to webamp
. You will need to update your package.json
to point to the new module.
Breaking
- Project renamed from "Winamp2-js" to "Webamp".
- UMD module exports as
window.Webamp
instead ofwindow.winamp2js
. When used via<script>
tag. - Deprecated: The misspelled
Webmap
construction optionavaliableSkins
has been deprecated in favor ofavailableSkins
.avaliableSkins
will continue to work, but will log a deprecation warning. #533 by @remigallego
Added
- Instance method to be notified when Webamp is closed
webamp.onClose(callback)
. - Instance method to be notified when Webamp is minmized
webamp.onMinimize(callback)
. - Support for skins that use
.png
sprite sheets instead of.bmp
. This saves 15kb for the default skin on the demo page. (b88e87) - We now attempt to detect mono audio files. Previously mono files would report as stereo and play only in the left channel.
Fixed
- Shrink visualizer by one pixel to match Winamp. #536 by @The1Freeman
- Remove Google Analytics tracking module from NPM module. (aeb9522)
0.0.6
- Added:
winamp.appendTracks()
. - Added:
winamp.setTracksToPlay()
. - Changed: We no-longer try to center on window resize.
- Meta: Added real documentation!
- Meta: Remove lots of garbage from the NPM build.
Prehistory
In all older versions, the API was not stable enough to merit a changelog.