Skip to content

Releases: LGUG2Z/komorebi

komorebi nightly (999dd5d20d0f9d1735ba889fc59f6e082c1e748e)

07 Dec 14:59

Choose a tag to compare

nightly (2025-12-06)

Bug Fixes

  • bar: update the network widget in a separate thread (faed6ec5)
  • client: expose more useful structs (a733fecb)
  • wm: promoting a container shouldn't change resize dimensions (31c969fc)
  • docs: replace deprecated aliases in komorebi.bar.example.json (a77b3e77)
  • wm: simplify stack-all command (18ee6678)
  • bar: update network interface less frequently (8d085df1)

Code Refactoring

  • rust: use eyre::Result uniformly (6eb2905e)
  • rust: upgrade to edition 2024 part 2 (clippy --fix) (52a745d0)
  • rust: upgrade to edition 2024 part 1 (80877cc4)
  • rust: remove getset dependency (539aeec9)
  • rust: standardize on ok_or_eyre and bail! (bcfb058b)

Features

  • wm: remove scrolling layout column fallbacks (df2adde1)
  • wm: make promote-swap reversible (df38facf)
  • wm: promote containers by swapping indices (416dd946)
  • wm: add visual feedback for preselection (d0ae92ca)
  • wm: add direction preselection (adbb6c1c)
  • cli: add feedback to the license cmd (1a42c646)
  • wm: add a splash screen for mdm devices (b6139864)
  • wm: add opt to constrain grid layout by rows (2abe6183)
  • wm: track virtual desktop ids on state and global state (e953715f)
  • wm: add opt to keep focused column centered on scrolling layout (2ac19291)

Documentation

  • wm: update splash for students (71402fe0)
  • schema: update jsonschema (ac67c413)
  • readme: add note for people looking for komorebi for mac (3491dc75)
  • cli: add eol annotations to ahk flags (b2550584)

Continuous Integration

  • github: render backticks in bug report template (69086299)
  • github: reduce workflow costs (f99c82f5)
  • github: make sure clippy is installed (3e9947c2)

Chore

  • deps: cargo update (999dd5d2)
  • deps: cargo update (4114b10b)
  • deps: bump actions/checkout from 5 to 6 (5c2767d5)
  • deps: bump whkd to v0.2.10 (4ebba08b)
  • deps: handle egui-related upgrades (c8c4c350)
  • deps: bump actions/upload-artifact from 4 to 5 (e93751aa)
  • deps: bump actions/download-artifact from 5 to 6 (9872dcd0)
  • deps: bump windows-rs (e33a5f28)
  • deps: bump sysinfo and which (15d069f2)
  • deps: bump egui and eframe to 0.32 (1c23439f)
  • deps: cargo update (160cb720)
  • clippy: apply latest fixes (5d48a5c5)
  • dev: begin 0.1.39-dev (e07b464b)

v0.1.38

13 Sep 18:49

Choose a tag to compare

v0.1.38 (2025-09-12) - The Voice of Hind Rajab

Bug Fixes

  • cli: fix typo in the toggle-pause docs (4d0df9c5)
  • wm: move last_focused_workspace logic to focus_workspace method (ccd2f3a4)
  • wm: prevent stack-all issues with n>1 stacks on ws (98c5ab3b)
  • stackbar: show regular cursor on hover (41e18bcc)
  • schema: flatten bar mouse config opts (3d373b36)

Code Refactoring

  • clippy: apply lints (3c44f3bf)
  • wm: move 'locked' flag down to containers (6416c0b6)

Features

  • wm: implement Clone for State, Notification and NotificationEvent (1db572f7)
  • bar: add config opts for ro and removable disks (3dad7753)
  • wm: add config option to set tiling (f40fb9a2)
  • cli: change quickstart to prompt user before writing files (b4e16e43)
  • config: add work-area-offset per workspace (59c3c147)
  • shortcuts: show all hotkey bindings (7839980d)
  • stackbar: set title as default label (21cb5e1e)
  • wm: add scrolling layout (b4e61b07)

Performance Improvements

  • cargo: add release-opt profile (2c00d799)

Tests

  • wm: monocle on and off on nonexistent container (c879aae1)
  • wm: toggle monocle on nonexistent container (7e87e831)
  • wm: toggle maximize a nonexistent window (aae9338f)
  • wm: float nonexistent window (f68a709f)
  • wm: cycle windows in an empty container (c76846ac)
  • wm: remove nonexistent window from container (b29dd8b1)

Documentation

  • mkdocs: run docgen, depgen and jsonschema targets (78177af6)

Chore

  • release: v0.1.38 (ffa76ea2)
  • deps: bump actions/github-script from 7 to 8 (86e0d408)
  • deps: cargo update (48f6ac89)
  • deps: cargo update (4c2e8ff6)
  • deps: bump reqwest from 0.12.22 to 0.12.23 (db96f2cc)
  • deps: bump clap from 4.5.41 to 4.5.45 (a37a6752)
  • deps: bump shadow-rs from 1.2.0 to 1.2.1 (f8ea62f8)
  • deps: bump serde_json from 1.0.141 to 1.0.142 (93bb4173)
  • deps: bump actions/download-artifact from 4 to 5 (280352ee)
  • deps: bump actions/checkout from 4 to 5 (7619b9b4)
  • deps: bump slab from 0.4.10 to 0.4.11 (72a4d527)
  • deps: bump netdev from 0.35.3 to 0.36.0 (7e242ada)
  • deps: bump shadow-rs from 1.1.1 to 1.2.0 (5b2acd0f)
  • deps: cargo update (ec0bbaae)
  • deps: cargo update (f6ccec95)
  • deps: cargo update (009c0dcd)
  • deps: bump netdev from 0.34.0 to 0.35.1 (d4eeec99)
  • deps: bump reqwest from 0.12.15 to 0.12.19 (e9ed1cfd)
  • deps: bump clap from 4.5.38 to 4.5.39 (4a2eb391)
  • dev: begin v0.1.38-dev (eec6312a)

v0.1.37

17 May 19:24

Choose a tag to compare

v0.1.37 (2025-05-17) - Rahaf

If you use komorebi for personal use please make a donation to the Palestine Children's Relief Fund.

Commercial Use Licensing

A dedicated individual commercial use license for komorebi is now available.

As a reminder, komorebi is educational source software, and the Komorebi License is strictly for personal use only and forbids any kind of commercial use - if you want to use komorebi at work, you need to purchase an individual commercial use license.

Bug Fixes

  • wm: disallow toggle-float if ws has a monocle container (6f1d6dbd)
  • wm: don't reap ws windows when using hide instead of cloak (82c22416)
  • animation: avoid redundant async window pos calls (6e7d8fb9)
  • borders: destroy all if a different vd is detected (917cd9b7)
  • wm: fix unresponsiveness by using asynchronous window handling (4ca2e838)
  • wm: ensure default CrossBoundaryBehaviour consistency (74e93e55)
  • wm: reset global configs to default on removal (86e78570)
  • wm: fix eager focus on hidden stacked window (c408c114)

Code Refactoring

  • bar: app widget and icon caching (3019eaf8)
  • wm: log errors when allow_set_foreground_window fails (46d5ea4a)
  • wm: add window handling sync/async enum (bdbd665b)

Features

  • wm: floating over monocle (50c850cb)
  • cli: add focused-container-kind state query (270ea5aa)
  • bar: send commands by mouse/touchpad/screen (3d8f68e5)
  • shortcuts: add helper written in egui (70f561e6)
  • wm: toggle monocle off on monitor container moves (4ea835fa)
  • wm: toggle monocle off on ws container moves (09137af3)
  • bar: hide when leaving komorebi's virtual desktop (577364a5)
  • bar: improve path handling on apps widget (17cd0308)
  • bar: add applications widget (10424b69)
  • wm: add configuration option for async window handling (f3f20984)
  • animation: cubic-bezier for styles (31752e42)
  • wm: float placement configs (3ee3aac8)

Build

  • cargo: propagate expensive schemars feature correctly (6a10d583)

Tests

  • wm: swap container with non-existent container (5a1af5b1)
  • wm: switch focus to non-existent monitor (74c43318)
  • wm: swap workspace with non-existent monitor (71bb346c)
  • wm: transfer window to nonexistent monitor (80bb7288)
  • wm: move workspace to non existent monitor (76c833f6)
  • workspace: move window to non existent container (80bce4be)
  • workspace: remove a non existent window (8c105473)
  • monitor: move container to a nonexistent workspace (8f886b3f)
  • monitor: remove nonexistent workspace (53c38e15)
  • wm: add window handle to move based on workspace rules test (5e308b91)
  • wm: ensure named workspace for monitor test (1bf53b89)
  • wm: test toggle_monocle and toggle_maximize (11690c60)
  • wm: monocle on and off test (3457dfc0)
  • wm: test maximize and unmaximize window (af1c9b5a)

Documentation

  • schema: update jsonschema and docgen (3feff1dc)
  • mkdocs: updates to prepare for v0.1.37 (309dd159)
  • schema: update schema.json (6608e5a5)

Continuous Integration

  • github: skip backwards compat test (e75578d9)

Chore

v0.1.36

13 Apr 03:20

Choose a tag to compare

v0.1.36 (2025-04-12) - Health Care in Danger

Commercial Use Licensing

A dedicated individual commercial use license for komorebi is now available.

As a reminder, komorebi is educational source software, and the Komorebi License is strictly for personal use only and forbids any kind of commercial use - if you want to use komorebi at work, you need to purchase an individual commercial use license.

Bug Fixes

  • config: update monitor wallpaper on reload (3a8a6111)
  • bar: avoid retile messages on ws switch (b6e261ae)
  • borders: avoid deadlock on state hashmaps (d40c3043)
  • wm: remove border width/offset when disabled (6db73151)
  • docs: borders are enabled by default (2d6ff070)
  • cli: restart bar on replace-configuration (13a519fb)
  • wm: properly update border colors (10ab43a8)
  • wm: skip serde on WorkspaceGlobals (fa2ccad5)
  • bar: re-introduce retain exact workspace indices (052eb1c7)
  • client: re-export FloatingLayerBehaviour (96fdbbd1)
  • bar: fall back to older pid icon lookups (d8978900)

Code Refactoring

  • clippy: apply new rust lint fixes (7d821cd3)
  • themes: move colour.rs to komorebi-themes (2ee0bbc0)
  • wm: refactor alt-tab reconciliation (58097350)
  • wm: add dep injection to monitor reconiliator (64d29d60)
  • wm: consolidate handling of ws container insertion/removal (a95e6e96)

Features

  • config: add per-monitor floating layer behaviour opt (d24beb60)
  • wm: drop empty containers on ws update (69d252ba)
  • core: use PathExt to unify env var resolution (9f8e4b9d)
  • cli: add session float rule cmds (c8320552)
  • wm: allow setting wallpaper per monitor (2a5a960c)
  • wm: apply wallpapers per monitor (0e8ed8aa)
  • bar: changing battery icons (3c4ccd25)
  • bar: auto select/hide widget based on value (f4bbee0a)
  • cli: add datadir cmd (71762a59)
  • cli: add focused-workspace-layout query (76aeefa9)
  • themes: generate base16 palette from wallpaper (4968b0fe)
  • themes: add custom base16 theme variant (b4b400b2)
  • bar: add locked container widget, use accent colour for icons (d38d3c95)
  • gui: add floating and locked border colours (58730b81)
  • wm: add unfocused_locked to border_colours (274ae43e)
  • cli: add version as state query variant (2a30f09b)
  • wm: add flag to set logging verbosity (acd53dec)
  • config: add floating ws layer behaviour opt (a98968d1)
  • wm: show float windows in order on layer toggle (e4226ce6)
  • wm: focus floats depending on direction (4bfd7feb)
  • wm: track focused floating window (5cc688dc)
  • cli: add move/send-to-last-workspace cmds (e702d93a)
  • client: reexport win32_display_data (30fbc1ae)
  • bar: show icons for uwp apps (cb60e918)
  • wm: add locked containers per workspace (6ba19d3e)

Performance Improvements

  • wm: clone-free locked deque insert/remove (072a62c3)

Tests

  • wm: add float and lock toggle tests (7daf3242)
  • monitor.rs: ensure workspace count test (5a0196ac)
  • monitor.rs: move container to workspace test (46d0e340)
  • workspace: visible windows test (371ef88e)
  • workspace: add more workspace tests (de131e9c)
  • monitor_reconciliator: add initial tests (ce4b75cc)

Documentation

  • mkdocs: reduce number of tabs to improve nav (2ac477d8)
  • mkdocs: add nvidia bar transparency workaround (2934d011)
  • license: bump to 2.0.0 (07dba032)
  • coc: move document from discord to github (8a322198)
  • mkdocs: fix some broken relative links (d0c847e5)

Chore

v0.1.35

22 Mar 17:50

Choose a tag to compare

v0.1.35 (2025-03-20) - Ghazza al 'Izza

Commercial Use Licensing

A dedicated individual commercial use license for komorebi is now available.

As a reminder, komorebi is educational source software, and the Komorebi License is strictly for personal use only and forbids any kind of commercial use - if you want to use komorebi at work, you need to purchase an individual commercial use license.

Bug Fixes

  • wm: change when floating windows are centered (24791f0c)
  • wm: unset all duplicate monitor serial ids (6b95bf95)
  • borders: show regular cursor on hover (53294940)
  • wm: correct workspace restore + remove workarounds (9f16894a)
  • borders: update monitor_idx on all borders (be2af9fd)
  • wm: correctly focus workspace on eager-focus (c083484e)
  • borders: do multiple render passes when required (5919f88b)
  • wm: focus when switching to ws with only floating windows (f0ce8e85)
  • bar: limit new state freq on time and date (9f3d806f)
  • bar: add focus-monitor-at-cursor msg to buttons (3618beb3)
  • wm: use preferred id when caching monitors (a4de2ee8)
  • wm: correct float window move/resize (60e1834b)
  • wm: update layer on cross monitor moves (54323c4c)
  • wm: focus correct window if monocled stack (ea9752d5)
  • client: expose schemars feature and allow opt-out (fe20caa5)
  • bar: correct time widget binary format alignment (02a2796e)
  • bar: add opt schemars derive on test case (a0eb025c)
  • borders: ignore borders on all stack window updates (70a61376)
  • border: update border when moving from admin windows (724b0b76)
  • wm: preserve resize dimensions on offset toggle (dd577c0e)
  • bar: always add stroke on selected_frame (7d497c3e)
  • wm: allow stacking in all dirs, improve stack border rendering (b26910aa)
  • borders: address memory leaks (487c2174)
  • bar: use accent color for active widget components (59544edb)
  • wm: prevent floating focus change event infinite loops (20817b09)
  • reaper: avoid deadlocks at startup (394709e3)
  • bar: apply work area offset on monitor reconnect (990a339d)
  • wm: properly load monitor on first connect (f0222dd4)
  • wm: hide/restore floating windows on monocle toggle (13ee4227)
  • wm: take layer into account on ws restore (3641ce6b)
  • wm: include workspace rules on cached monitor (1edeb442)
  • bar: improve handle monitor lifecycle handling (c095f8ae)
  • wm: increase monitor_reconciliator channel bound (60bc83d4)
  • wm: check for monitor changes on system resume (9c8a6392)
  • bar: check monitor connection on all notifications (b7ebd3fe)
  • wm: don't panic if state isn't up to date (ec8519d7)
  • bar: restore + reposition on monitor reconnect (c62405bf)
  • wm: cache monitor state instead of config (0126465d)
  • wm: update usr idx map when there are no index preferences (a1ab1c57)
  • bar: handle monitor disconnect/reconnect (302e96c1)
  • wm: remove ws rules from disconnected monitors (ff986fba)
  • wm: handle serial id on load_monitor_information (e408410c)
  • wm: serde skip annotation for workspace_config (c9e98c3c)
  • wm: restore orphaned containers (b42fcbe5)
  • wm: don't store empty layout_rules on monitor cache (d8636d65)
  • wm: cache monitor configs for unloaded monitors (9ad32e40)
  • wm: improve display_index_preferences selection (c91cb9f0)
  • wm: properly store tile state when caching ws (4f7a8f10)

Code Refactoring

  • bar: move widgets to new folder (bdea4821)
  • bar: add extend_enum! macro (974e5a2b)
  • wm: make workspace fields public (6a8e362c)
  • wm: make monitor fields public (be932078)
  • wm: store config on workspace (52340a14)

Features

  • wm: toggle float override with floating layer (df9ae931)
  • wm: center windows spawned during float override (b6bd191c)
  • wm: toggle float override with floating layer (ff2aa5e5)
  • config: allow multiple asc files (fe9a1416)
  • bar: add changing icons based on the time (acf78076)
  • bar: added timezone to time and date widgets (81a79513)
  • cli: add cycle-empty-workspace cmd (0c64432c)
  • border: cache borders on all workspaces (0776ca15)
  • bar: add icons to workspace-layer widget (a837fea4)
  • wm: move all windows on ws layer toggle (...
Read more

v0.1.34

21 Feb 02:32

Choose a tag to compare

v0.1.34 (2025-02-20) - Slow Burn

Commercial Use Licensing

A dedicated individual commercial use license for komorebi is now available.

As a reminder, the Komorebi License is strictly for personal use only and forbids any kind of commercial use - if you want to use komorebi at work, you need to purchase an individual commercial use license.

Notes

A fix in this release changes undefined behaviour which previous users may have unknowingly come to rely on:

  • focus-workspace and related commands no longer forcibly focus the monitor at the cursor position before being executed (this was a pretty terrible case of UB to begin with, particularly for anyone who had mouse_follows_focus disabled)
  • If you want this same behaviour going forward, you should chain komorebic focus-monitor-at-cursor with your focus-workspace commands (eg. komorebic focus-monitor-at-cursor && komorebic focus-workspace 1.

Bug Fixes

  • bar: removed unneeded separator character on network widget (d1680133)
  • wm: set default hiding behaviour to cloak (475519d6)
  • docs: correct sp in example-configurations.md (9f19d449)
  • docs: update base16 gallery link (bbd232f6)
  • wm: avoid focus loops on ws w/ floating hwnds (95d758e3)
  • wm: always preserve resize on monocle toggle (f3075efc)
  • reaper: reap invisible "visible" windows (80b61189)
  • borders: respond to sys foreground winevent w/ border manager event (afdbce3d)
  • wm: sort layout and behaviour rules (7f3b9326)
  • config: unset values on ws configs appropriately (59cd36a2)
  • wm: handle empty ws monitor switch w/ mff off (b8e8ac2c)
  • wm: populate ws rules on config reload (fcd1c9dc)
  • bar: consider all window types when hiding empty ws (f73f0a00)
  • wm: handle hide events for layered windows (0a2dbed1)
  • wm: respect mff on cross-monitor monocle focus (067a279c)
  • wm: stop wrongfully removing layout-flip (39621c14)
  • bar: pass reconnect event to bar (d7fcbb7d)
  • bar: simplify komorebi-bar config (3e1fc612)
  • wm: handle minimize event edge case (77ef259e)

Code Refactoring

  • bar: resolve env vars with pathext (4123c9a0)

Features

  • bar: add thai font fallback (5f31e89e)
  • client: expose custom layout column enum (e629baec)
  • bar: add keyboard language widget (2d2b6e5c)
  • client: add more re-exports for integrations (86bbcac5)
  • borders: add floating colour for windows impl (58d660eb)
  • cli: add focus-monitor-at-cursor cmd (be8af2b3)
  • config: add window container behaviour rules (c364b90b)
  • wm: use monitor hardware ids where available (e2f7fe50)
  • config: add object name change title ignore list (81c143d7)
  • bar: update bar on display connection change (4a836233)
  • wm: notify subscribers of monitor events (5c3c3659)
  • bar: add modifiers for strftime integer formatters (cfd89c27)
  • config: add aspect ratios for float toggling (473e7cd6)
  • wm: remove min window resize dimensions (1101baa7)
  • cli: add focused-workspace-name query (d09d16d2)
  • bar: add cjk font fallbacks (392e4cc0)
  • bar: binary clock and no-second time formats (a069db61)

Build

  • just: add build and build-target(s) to justfile (2ca9c904)

Performance Improvements

  • wm: reduce from sysinfo scan scope (db6e12b0)

Tests

  • wm: add backwards compat integration test (eb6e12e2)

Documentation

  • mkdocs: add note to update asc path (4f041123)

Chore

  • release: v0.1.34 (80edcadb)
  • deps: bump os_info from 3.9.2 to 3.10.0 (36dedbe3)
  • deps: cargo update (83114ed3)
  • deps: bump getset from 0.1.3 to 0.1.4 (241f8a13)
  • deps: bump clap from 4.5.26 to 4.5.27 (bd0913a5)
  • github: update issue workflows (da156c09)
  • deps: bump serde_json from 1.0.135 to 1.0.137 (e153d2ea)
  • deps: bump bitflags from 2.7.0 to 2.8.0 (e01c3e3c)
  • deps: bump winreg from 0.53.0 to 0.55.0 (129dc5d4)
  • dev: begin v0.1.34-dev (b451df03)

v0.1.33

11 Jan 22:37

Choose a tag to compare

v0.1.33 (2025-01-11) - Dreams on a Pillow

Commercial Use Licensing

A dedicated individual commercial use license for komorebi is now available.

As a reminder, the Komorebi License is strictly for personal use only and forbids any kind of commercial use - if you want to use komorebi at work, you need to purchase an individual commercial use license.

Bug Fixes

  • wm: preserve new padding when loading state (a4f69238)
  • bar: apply position on start (96f7eb1d)
  • wm: skip destroyed windows on rule enforcement (28cd4a88)
  • wm: avoid obvious border manager thread crash (281980b0)
  • wm: add uncloak as a notif override event (ba52dc33)
  • wm: avoid focused ws rule enforcement deadlock (44716fdc)

Features

  • bar: opt to hide battery widget when charged (b1db417d)
  • config: use global padding when omitted on ws (2d97ee10)
  • bar: add update widget (3aa92a12)
  • cli: add stackbar-mode command (c063302c)
  • config: allow specifying layout flip on ws (4b30cecb)
  • cli: allow checking of arbitrary config files (d45cd729)

Chore

v0.1.32

01 Jan 19:46

Choose a tag to compare

v0.1.32 (2025-01-01) - Sustainability

Commercial Use Licensing

A dedicated individual commercial use license for komorebi is now available.

As a reminder, the Komorebi License is strictly for personal use only and forbids any kind of commercial use - if you want to use komorebi at work, you need to purchase an individual commercial use license.

Bug Fixes

  • bar: prevent komorebi connection from staling (4babf336)
  • wm: focus prev idx when closing workspace (2c08fbe8)
  • bar: update widgets background color properly (d93b6fa1)
  • bar: network widget spacing (99353b80)
  • bar: apply theme on first frame (5ab5ec4f)
  • bar: use layout on Area to prevent shaking (ad08585f)
  • bar: fix background color clobbering (eb8a9888)
  • bar: apply roundings on komorebi.json change (0e2a55b3)
  • bar: use bg color before applying transparency (eda91dcd)
  • bar: use correct transparency_alpha (0c6317a2)
  • bar: apply work_area_offset on config change (5c81a8c9)
  • bar: handle komorebi theme change properly (a4128b72)
  • bar: use the frame.inner_margin config (73a4df88)
  • bar: actually save the config on apply_config (32a23431)
  • bar: normalize areas of widgets (0dc6780d)
  • wm: focus and update after apply state (804faef2)
  • cli: correct copy-paste typo in autostart (be0671be)
  • bar: prevent the bar from changing mff value (10539a4b)

Features

  • cli: add version update checks (7ef4fd81)
  • docs: individual commercial use licensing (083ab650)
  • cli: add eager-focus command (e9bb6b43)
  • config: add matchers for removing titlebars (79eda30f)
  • wm: allow reapplying initial workspace rules (692da908)
  • bar: added icon_scale to the config allowing a custom value between 1.0 and 2.0 (cced2a44)
  • wm: allow stopping without restoring windows (f089d3e5)
  • bar: add two new display format types (d393f8fe)
  • bar: optional workspaces on Komorebi widget (c3769e78)
  • bar: scale icon size with font size (3c0b12f9)
  • wm: dump and load previous instance state (7bf15213)
  • wm: add transparency config to global state (b49e634b)
  • client: create send_batch helper (9463c75f)

Documentation

Chore

  • release: v0.1.32 (4b9d8114)
  • deps: cargo update (53a83eed)
  • deps: bump houseabsolute/actions-rust-cross from 0 to 1 (e1bbd3c1)
  • deps: bump egui to v0.30 (c64a42bc)
  • just: split schemagen into windows and nixos jobs (c31c5dc6)
  • dev: begin v0.1.32-dev (6c07863b)

v0.1.31

14 Dec 01:03

Choose a tag to compare

v0.1.31 (2024-12-13) - Luigi

Bug Fixes

  • bar: only indicate focused window on stack (64382b18)
  • borders: floating window z-order handling (26f90cc9)
  • border: stop removing borders on wrong monitors (192af675)
  • cli: handle spaces in bar config paths (f227bd0f)
  • borders: update on resuming from suspend (3781c8ea)
  • wm: track all hwnds in known_hwnds (40b32332)
  • wm: cross-monitor ops for floating windows (8743cdd2)
  • client: add write-timeout to prevent blocking (01367f59)
  • wm: move ops on floating workspaces (e6ddccc5)
  • wm: cross-monitor max floating window moves (6f00c527)
  • wm: resize float windows moved across monitors (3ad4090d)
  • subscriptions: add override for title updates (9c09284b)
  • bar: correct network widget icon colour (b14c0d07)
  • wm: disallow focusing other windows when there is a maximized_window (3615451f)
  • wm: focus maximized windows when moving focus across monitors (6893f39d)
  • bar: read latest transparency_alpha value (ac243c69)
  • wm: ensure focus restore on float + max hwnds (d001d8a7)
  • wm: add read timeout to command socket (7f0b54c3)
  • animation: set pos for all container windows (b1726af2)
  • wm: apply ws cfgs only to declared ws indices (172988ed)
  • bar: retain exact workspace indices (36e3eaad)
  • cli: expand list of ahk executable names (dc1eb8ff)
  • cli: handle spaces in bar config paths (166f505a)

Code Refactoring

  • clippy: apply rust 1.83.0 lints (b22ec904)
  • animation: new animations engine (449ccac6)
  • bar: use monitor idx when switching ws (041ef573)

Features

  • bar: only collect enabled widgets (9d6173ec)
  • bar: network widget - added show_default_interface and use enable to toggle the whole widget (830da895)
  • bar: indicate clickable widgets (f59d7a51)
  • bar: 5 new grouping styles for shadow and glow (1470c63c)
  • borders: track window movements + animations (ede0b23b)
  • cli: add kill cmd (e6b5b788)
  • cli: add support for starting/stopping masir (440d78e8)
  • bar: komorebi widget visual changes (bb31e715)
  • bar: floating center area for widgets (46b81e43)
  • bar: support floating window title updates (3de96609)
  • bar: add widget grouping options (219fa8e1)
  • borders: use direct2d for anti-aliasing (e4e94fd1)
  • cli: add cycle-stack-index cmd (cc196db0)
  • cli: add close-workspace cmd (0f022d47)

Performance Improvements

  • bar: add icon cache (9bd1073a)
  • cli: validate komorebi proc earlier on start (280ca0ff)

Style Changes

  • bar: add aliases for default grouping style (0e48370b)

Documentation

  • schema: update all json schemas (53c19904)
  • schema: update all json schemas (4f306e5b)
  • schema: update all json schemas (779c12bc)
  • bar: add a position.end.y val warning (8de92ec3)
  • readme: add gazafunds link (e707a14b)
  • github: add pull request template (fd8cd4bb)

Continuous Integration

  • github: bump winget-releaser from v2 to main (91b25528)

Chore

  • release: v0.1.31 (40c55dec)
  • deps: cargo update (5cc2d9d4)
  • deps: cargo update (33800903)
  • deps: bump serde from 1.0.214 to 1.0.215 (1d001962)
  • deps: bump serde_json from 1.0.132 to 1.0.133 (639ebd0b)
  • deps: bump clap from 4.5.20 to 4.5.21 (e22eafbc)
  • deps: bump rustls from 0.23.16 to 0.23.18 (46c2ad51)
  • deps: bump catppuccin-egui from 5.3.0 to 5.3.1 (818ec1c6)
  • deps: bump thiserror from 1.0.68 to 2.0.3 (a10bb467)
  • deps: bump image from 0.25.4 to 0.25.5 (4fd60bbf)
  • dev: begin v0.1.31-dev (d55d356b)