Releases: glzr-io/zebar
v2.6.1
v2.6.0
🎉 New features
Media controls (#158) - Docs
- Full media playback control (play, pause, skip) for all active sessions in
media
provider.play
,pause
,togglePlayPause
,next
, andprevious
.
- Add all active sessions (not just the currently playing session) via
allSessions
.
media-functions.mp4
New audio
provider (#154, #170) - Docs
- List all audio input/output devices via
playbackDevices
,recordingDevices
, andallDevices
. - Get the default input and output device via
defaultPlaybackDevice
anddefaultRecordingDevice
. - Adjust the volume of a device via
setVolume
function.
New widget APIs
- New
startWidget
function for programmatically starting a widget at a given position. - Access the underlying window via
currentWidget().window
.
Misc features
- Add new system tray "Edit" menu option for quickly accessing widget config (#163).
- Real-time widget count display in settings UI sidebar.
- Unique widget window titles - allows targeting with GlazeWM window rules (#164).
- Add binding mode toggle to
with-glazewm
starter configuration (#155). - New WM pause state in
glazewm
provider (#167).
🐛 Bug fixes
- Fix issue where CPU usage would sometimes get incorrectly reported as 100%.
- Fix issue where
keyboard
andmedia
providers would emit duplicate outputs (#162).
🛠️️ Internal changes
Big thanks to @HolbyFPV and @michidk for contributing to this release 💛
v2.5.1
v2.5.0
🎉 New features
- New
media
provider for currently playing media info like song, album, artist, etc. (#136). Docs - New
disk
provider for hard-drive and storage capacity info (#138). Docs - Config option to dock Zebar windows to monitor edge (#131, #150). Only available on Windows for now.
dock-to-edge.mp4
- Set "Open settings" as the default system tray menu option.
- Add
allWindows
toglazewm
provider (#149).
🐛 Bug fixes
- Fix incorrect version number shown in system tray and CLI.
Big thanks to @HolbyFPV, @veryard, and @fooooooooooooooo for contributing to this release 💛
v2.4.0
🎉 New features
- Add settings UI for editing widget configs (#132).
- Rename
defaultPlacements
->presets
in widget configs (non-breaking: configs will be automatically migrated).
🐛 Bug fixes
- Fix issue where
defaultGateway.signalStrength
anddefaultGateway.ssid
onnetwork
provider were null on non-English systems (#125).
🚨 Breaking change
Not sure if anyone has used these API's yet, but the following have been changed:
- Remove
open-widget-default
CLI command. Replaced with newstart-widget
andstart-preset
CLI commands for dynamically starting widgets. - Remove
startWidgetDefault
JS API. Replaced withstartWidget
andstartPreset
JS functions.
Big thanks to @SebasF1349 and @lars-berger for contributing to this release 💛
v2.3.0
🎉 New features
- Adjust widget position for monitor DPI (#119).
- Fixes issues where the widget window was getting positioned/sized incorrectly.
- Account for window width and height in anchor position (#122).
- e.g.
"anchor": "bottom_left"
would previously place the top left corner of the window at the bottom left of the monitor and would then have to be manually offset. Now, it places the bottom-left corner of the window in the bottom-left of the monitor.
- e.g.
🐛 Bug fixes
- Fix incorrect casing in
query monitors
CLI command response. - Hide scrollbar on overflow in example templates (#120).
🛠️️ Internal changes
- Bump
glazewm
package to latest.
Big thanks to @JonasWischeropp, @adriankarlen, and @lars-berger for contributing to this release 💛
v2.2.2
🐛 Bug fixes
- Fix
query monitors
CLI command not outputting anything. - Add empty favicon to suppress error logs for missing favicon (#114).
- Correct positioning of battery charging icon in examples (#118).
Big thanks to @DreamMaoMao and @lars-berger for contributing to this release 💛
v2.2.1
Zebar V2: Production-Ready Release ⚡
With GlazeWM V3 and now, Zebar V2, the theme of the last few months has been big rewrites and breaking changes. This release is a large redesign of Zebar's core functionality based on community feedback.
New config files are generated on launch to %userprofile%/.glzr/zebar
(no need to make backups of existing config - they won't conflict). This is a breaking change to existing configs.
Major changes
1. New config format
- YAML config is gone, templating syntax is gone, and inline HTML/CSS in the config file is gone.
- Instead, point to an HTML file with the markup and styling of your widget. Any frontend framework can be used (React, SolidJS, Angular, Vue, etc.).
- Zebar now exposes providers via a JS library published as
zebar
on NPM.
2. No start script
- Just launch the Zebar application normally.
3. Modular config files
- Each widget now has its own config file. This makes it way easier to share widgets - just zip it up and then unzip it into the
%userprofile%/.glzr/zebar
folder.
4. Toggle active widgets
- Choose which widgets to have active by enabling/disabling them in the system tray menu.
- To choose which widgets should be opened when Zebar starts up, check the "Launch on startup" option.
🎉 Other features
- Be able to reload active widget configs via system tray menu.
- Retry IPC connection on disconnect in
glazewm
provider.- Fixes issues where workspaces weren't shown correctly or got out of sync.
- Add new
keyboard
provider for showing current keyboard layout (#105). Docs - Be able to dynamically open widgets via
openWidgetDefault(configPath: string)
. - Improve received/transmitted traffic response in
network
provider (#107). Docs - Add JSON schemas for global settings file and widget configs.
- This adds auto-completion and validation to the config files in editors like VSCode.
- Be able to change the config directory via new
--config-dir
CLI flag.
🐛 Bug fixes
- Scale the size of the window depending on the monitor's scale factor (#101).
- Fix to
timezone
config option ondate
provider (#91). Fix version number incorrectly being shown as 0.0.0.edit: still an issue- Fix crash with
komorebi
provider. - Fix crash with
network
provider.
Big thanks to @CtByte, @ehellman, @MoaidHathot, and @jawee for contributing to this release 💛
v2.2.0
Final final build for v2. Still need to write some release notes for it
v2.1.1
Probably final build before v2 official release. Gotta write up some release notes though