Releases: FelixKratz/SketchyBar
Releases · FelixKratz/SketchyBar
v2.21.0
Additions
- All scripts have access to the new environment variable
BAR_NAME
, which holds the bar instance name (for use with multiple bars) - Allow
bracket
items to host popups - Add
scroll_duration
property for texts (#478) - Allow setting the image through
image.string=<image>
, equivalent toimage=<image>
- Add domain
--load-font <path>
, which makes a font from a custom path available to use
Fixes
- enable scrolling with touchpad gestures #505
- Fix memory leaks in truncated text width calculation
- Fix memory corruption if an item is set to a popup position multiple times
- Improve reliability of
mouse.exited
events - Limit hotloading to avoid hotload loops
Optimizations
- Reduce draw calls for backgrounds
- Improve the animation system (threaded rendering, better frame skip detection, better chained animations)
- Sort the query response of
default_menu_items
by their position in the macOS bar
Full Changelog: v2.20.1...v2.21.0
v2.20.1
Improvements
- Improve default config
- Reimplement the
sticky
property -- withsticky=on
, the bar is now stationary during space change animations (#493)
Fixes
- Fix memory leak in
space_windows_change
event logic - Fix duplicate keys in
$INFO
forspace_windows_change
event (#498) - Fix timing issues on system wake (#497)
Full Changelog: v2.20.0...v2.20.1
v2.20.0
Changes
- We now check for the "Displays have separate spaces" option being enabled on startup, because several things are not working properly in a different space management mode. (#392)
See https://felixkratz.github.io/SketchyBar/setup#prerequisite for details where to find that option. Since this is the default setting it is probable that most people will not have any problems with this.
Fixes
- fix volume_change event not triggering for bluetooth mute (#481)
- fix bar being unhidden after wake if it was hidden (#477)
- fix hidden windows not properly triggering the space_windows_change event (#492)
Full Changelog: v2.19.6...v2.20.0
Overall Improvements
Fixes
- Properly scale app icon images, such that they have the same size on all displays
- Fix the bar disappearing after sleep in certain scenarios
- Fix rare crash on front_app_switched event
- Fix rare crash on media_change event
- always fire a volume_change event when a new device is connected (#458)
- properly update space windows when a space is created/destroyed
- add hidden property to query output (#467)
- fix default color for graphs (#468)
- fix broken json output for some queries containing single quotes (#474)
Additions
- Emit media_change event on startup to populate items
- Automatically emit a space_change event on space creation and destruction (Ventura and up)
- Add more image properties (#428)
- New option for bar items:
scroll_texts=<boolean>
which will automatically scroll though texts which are truncated with themax_chars
property. - Add
media.artwork
value option for all images - Add
space_windows_change
event (#435)
Changes
- The
sticky
bar property does nothing on Sonoma, since it is no longer required - Rework the window levels sketchybar uses
- Using the localized application name for the image domain
app...
is now possible
Full Changelog: v2.18.0...v2.19.6
Local Documentation & Bug Fixes
Fixes
- Partially fix the wifi_change event on macOS Sonoma (#407)
- Fix a crash when using image app icons (#423)
- Fix for bars not properly rebuilding after wake from sleep in rare circumstances (#422)
Additions
- Add
max_chars
property to all texts to simplify string truncation (#414) - Local documentation (via man)
Contributions
- Local documentation by @ralphptorres in #421
- Update volume icons by @AndreasNasman in #418
Full Changelog: v2.17.1...v2.18.0
Sonoma improvements
Fixes
- Fix problems with animations slightly changing color properties in some circumstances (#404)
- Fix animations not showing the last animation frame
- Fix the bar frame from being changed by a draw call (#240)
Improvements
- Use transactional window ordering on Sonoma since Apple seems to have fixed the api (#336)
- the properties
associated_display
andassociated_space
are now equivalent todisplay
andspace
respectively. - chdir into config dir before executing the config
Full Changelog: v2.16.4...v2.17.1
Hotload, reload and color subdomains
Improvements
- Remove Cocoa as library dependencies
- Better internal event logic
- The animation system now uses a CVDisplayLink to create properly paced animation frames
Additions
- New subdomain for all color properties where individual channels can be changed (docs here)
- Add
mouse.scrolled
event by @revan in #380 - Add configuration reload and hotload functionality (docs here)
Fixes
- Replace default config wifi icon
Full Changelog: v2.15.2...v2.16.4
Bug Fixes and Minor Additions
Fixes
- Fixes aliases not updating properly when the parent application is restarted (#377)
- Replaces outdated NerdFont icons in the default config
- Fixes space_change events not occuring in certain conditions when leaving native-fullscreen applications
- Fixes problems with mouse events when using negative popup offsets (#368)
- Fixes a bug where setting the background height to 25 would behave strangely
Additions
- Add
topmost=window
option for--bar
domain (#368) - (experimental) Add
media_change
event by using the MediaRemote framework
Full Changelog: v2.15.1...v2.15.2
Multiple Bars
Additions
- Allow multiple bars by changing the processes
argv[0]
(for details see: https://felixkratz.github.io/SketchyBar/config/tricks#multiple-bars) $INFO
variable formouse.clicked
event- add comma separated integer list as possible options to
--bar display=...
domain - Animate item bounds on text change when in
--animate
context - Add
alias.scale=<float>
domain
Fixes
- Fix a bug with brackets that would lead to improper centering (#351)
New Contributors
Full Changelog: v2.14.4...v2.15.1
New font options and fixes
Fixes
- Fix a retain problem in the windowing system (#336)
- Reduce display event overhead
Additions
- Add
font
subdomains:font.family=<string>
,font.style=<string>
,font.size=<float>
(the size is animatable) - Set a
CONFIG_DIR
environment variable which is available in all scripts and set to the directory where thesketchybarrc
file is located
Full Changelog: v2.14.3...v2.14.4