Releases: kbuffington/Georgia
v2.0.3 - Updated library code, new spinning cdArt options, and more
2.0.3 is kind of a maintenance release, but several cool features as well. The library code was updated to a much more recent version which added a bunch of new options and performance upgrades. Unfortunately it was also a massive time suck and limited the amount of time I could spend on new features. I won't be touching it again except to fix bugs. I did a ton of optimization and performance testing to speed things up from initial load, to every refresh. The spinning cdArt feature added in 2.0.2 was very positively received, but it needed some performance optimization and new options to maximize performance on different systems. I created a video to explain the different options and which settings you might want to use:
v2.0.3 Changelog
Added
- Added new options for spinning cdArt including # of images to cache and how frequently to update. Be warned: Setting these numbers to high can drastically increase memory and CPU usage. Also if you are attempting to display lyrics and have a very high setting for redraw speed, the theme may become unresponsive.
- If you have a Lyric Show 3 panel in your theme (recommended to add it hidden), lyrics will automatically be downloaded and will be displayed in the theme as soon as they are available.
- New option to not show the song title above the timeline bar, and instead show the album title there.
- Lyrics settings added to options menu
Changed
- Playlist smooth scrolling can now be disabled in the Options menu
- Library Panel has been (mostly) updated to a newer version of the code that should be slightly easier to maintain
- Improved scrollbar functionality in library and playlist
- Scrollbars in library now look much more like the nicer library scrollbars
- Replaced lodash with a slimmed down copy which is 25% of the size (4k lines vs 18k), and also switched from lodash functions to native functions whenever possible. Hope is this will be faster at both load and runtime.
- Partially selected text in library search now more legible
- Library search for a string fully contained in the word "audio" (i.e. "Dio", "io", "audio", etc.) no longer retuns your entire library
- No longer crashing if your files contain DATE fields not in standard YYYY-MM-DD format (i.e. YYYY-DD-MM or MM-DD-YYYY)
Fixed
- Smooth scrolling in the playlist had several issues which have been addressed and fixed
- The play/pause button in the playlist at times could be visible over the tracknumber
- Stopped some crashes that could occur in weird (and hard to reproduce situations)
v2.0.2 - Spinning cdArt, improved volume control, and more...
This is the first real update of the v2 release. It fixes a crash, squashes a few bugs, and adds a bunch of long requested features by users. It's a pretty significant update and I probably should have called it v2.1.0, but my therapist says I tend to downplay things too much. Enjoy!
2.0.2 Changelog
Changes
- Rewrote volume bar code and removed tooltips in favor of on screen volume display.
- Prefetching first 10 artworks in playlist
- config file now contains a
defaultSortString
value which will apply to all playlists generated by hyperlinks, or by selecting entries in the library - Added limited support for foo_discogs and 3 values in the metadata grid ("Label", "Catalog #", and "Release Country") were updated to their new defaults. If you need to reset these, consult your backed-up config file.
Added
- Spinning cdArt. This is somewhat experimental, increases CPU usage, and depending on screen resolution it can increase foobar's memory footprint up to 1GB. Use at your own risk.
- Option to always show bitrate and sample rate in playlist (thanks @noblesigma)
- Smooth scrolling in the playlist
Fixed
- In some cases, embedded lyrics cannot be retrieved by foobar. Added an onscreen explanation of how to fix this problem.
- No more stale artwork when playing from a stream
- Fixed crash in volume bar introduced in 2.0.0
- "Expand" was always disabled in the Library right click menu
- Lyrics could not be loaded for songs or artists with a
:
in the title - Play/Pause transport button was not being updated when a song started/stopped
v2.0.1 - Bug fix release
Fixes a couple display bugs and a potential crash from the 2.0.0 release.
2.0.0 - Spider Monkey and so much more
Version 2.0 is finally here! For those who haven't been following along with the betas, this release moves Georgia off of foo_jscript_panel and into foo_spider_monkey_panel. SMP is a little faster, but more importantly, it allows me to write code in a more modern style which makes things a lot easier to maintain and a lot more fun to develop. A good portion of the code base was completely rewritten for SMP. v2.0 now also includes an external configuration file which will make persisting your changes through upgrades so much easier. The lyrics code was completely rewritten, bugs were squashed, performance was increased, shiny new things were added, and tons more! I'm excited for you guys to check it out.
I also spent an unholy amount of time writing documentation for just about everything in the theme. Check that out here: https://kbuffington.github.io/Georgia/
When you install, make sure you're running Spider Monkey Panel 1.4.1 or later.
Please Note
If you're migrating from a 2.0 beta (or even 1.x) it's probably a good idea to delete your existing \georgia
folder (including any beta config files) and reinstall from scratch. Some files were moved or deleted and it'd be better to start from scratch so you don't have confusing remnants lying around.
2.0 Changelog:
Changed
- foo_jscript_panel replaced with foo_spider_monkey_panel
- Lyrics code completely rewritten -- now faster, less buggy, and requires half the code.
- Theme update checks happen once a day if enabled
- Simplified script initialization (no more pasting contents of Georgia.txt into Configuration panel after initial setup time)
- Artwork is no longer reloaded/parsed unnecessarily when changing tracks quickly (prevents flashes of wrong theme color)
- Replicated theme background on theme startup so theme never shows the ugly white background
- Updating track information when
on_playback_dynamic_info_track
is called. - Stopped text now shows "foobar" and version. This is configurable and you can set it back to "foobar plays music" which was the old default
- Improve visibility of progress bar when art primary color is too dark (i.e. close to the background color)
- Now caching artist logos
Added
- Transport control settings added to config file
- Lyrics filename patterns can be specified in the config file
- Config file can be edited/reset from the settings menu
- Added new icon set (and menu option to select) based on icons created by @Zephyr0ck
- Now works with foo_ui_hacks to show min/max/close buttons when applicable and moves UI elements accordingly
- Transport button spacing now configurable (thanks @Notsigma)
- Allow filtering out of cd.jpgs from showing with rest of artwork
- Added option for showing full date in playlist header
- Showing release country flag if the tf.releaseCountry field is set
- Automatically generating and reading preferences from georgia-config.jsonc
Fixed
- Fixed display issues with Playlist >> Group Presets manager
- Fixed regression with Queue'd items not showing in playlist (disappeared in 2.0 rewrite)
- Improved config version upgrades
- When using hyperlinks to search, if current playing song is in results, it will show as playing
- Improved readability/contrast of text in playlist/library when light/bright artwork is displayed
- Fixed issue with embedded artwork not displaying properly between tracks in the same folder (#73)
v2.0.0-beta4 - Final beta
I hadn't planned to do a final beta, but then Qwertiest released a new version of SMP (yay!), so I figured I should give everybody one last chance to suss out any bugs. My plan is to not make any major changes, and focus on improving documentation before the official release.
To install, please follow the updated instructions in the README.md.
Please only test this with foo_spider_monkey_panel 1.4.1 or later. I'm attaching 1.4.1 below.
v2.0.0-beta3 - Final beta?
This fixes the regression with queue'd items not showing up in the playlist -- and now highlights them with the theme color when possible. Biggest feature is adding support for foo_ui_hacks which allows for disabling the window titlebar completely allowing for a more seamless fullscreen experience:
If someone has a better idea of how to display the function buttons (Playlist, Lyrics, etc.) around the min/max/close buttons, I'd love to see some mockups. I tried several options and this was the least bad, but maybe I just need to get used to it. Because foo_ui_hacks can be a little hard to find, I'll be attaching it below. Be warned, it can lead to instability with foobar. Use at your own risk.
A lot of required work happened to improve upgrading between versions, and I think it's working perfectly now.
Give it a try and be sure and report any issues you find. Hopefully this is the final beta before official release.
v2.0.0-beta2 - More improvements and features
Thanks to everyone who tested out beta1, and pulled from master. This addresses a couple issues that were found, and adds a few more features and improves update capability.
Changelog:
- Updating config files from previous versions more robust
- Adding some new properties/settings
- Showing release country flag if the tf.releaseCountry field is set
- Replicated theme background on theme startup so on_paint never shows white
- Stopped text now shows "foobar" and version. This is configurable and you can set it back to "foobar plays music" which was the old default
v2.0.0-beta1 release - First SpiderMonkey beta
This is the result of over 6 months of work, testing, and fixing to update the theme to use foo_spider_monkey_panel instead of foo_jscript_panel.
Major changes:
- Complete rewrite of lyrics code. Now faster and hopefully error free. You still need to provide your own lyrics files
- Preferences/settings now stored in a
georgia-config.jsonc
file which will be stored in the root. Now settings which were hardcoded or would be overwritten in new installs can now be stored externally. - Improved loading of the theme files, even after upgrades. Also loads async to avoid slow-loading warnings on app startup.
- Better handling of labels and other multi-value fields
- Dozens of random bug fixes, cleanup and improved internal documentation
Note: To install this theme I recommend completely removing your old georgia folder or backing it up somewhere else. Make sure you move your images folder elsewhere first.
Installation instructions:
- Download and install foo_spider_monkey_panel (attached below)
- Download the theme source code below and extract it into a folder named georgia to your foobar profile folder. On a non-portable installation this will typically be
C:\Users\<USERNAME>\AppData\Roaming\foobar2000
- Replace foo_jscript_panel with foo_spider_monkey_panel in your theme
- Right click on the panel and select Configure...
- Copy the contents of
georgia-install.js
and paste them in the spidermonkey panel and then clickOK
. - You're done!
When the theme loads a georgia-config.jsonc
file will be created in the root of the georgia
folder. This file is a "JSON with comments" file. Take a look at the contents of this file and play around with it. Changes to this file will only take effect when the theme is reloaded. The most important areas of this file will be the title_format_strings
and metadataGrid
. This will make it easy to specify how you want certain strings to appear, or what you want to show in the metadata grid when a song is playing.
Please Remember, this is a beta and there will be issues. Please open a ticket when you encounter something wrong.
v1.1.10 - Fixes for foobar 1.6
There is an issue with foobar 1.6 that causes crashes on startup with 1.1.9. This should fix that problem.
Please update to the latest version of foo_jscript_panel attached below.
v1.1.9 - Bug Fix release
Various bug fix and QoL improvements. This will be the last release which utilizes foo_jscript_panel
- Fix library panel not showing tracks with foo_jscript_panel 2.4.x
- Allow specifying a custom cdart filename
- No longer show "0000" for date
- Allow override of playlist row_h
- Fix issues related to font-sizes in playlist header
- Prevent labels in playlist header from being drawn over group info
- Handle hyperlinks searching for albums with editions listed