| Date | Message | Author |
| 2026-09-24 | Eat portal-bound global shortcuts for the GlobalShortcuts backend | Lucas Galante |
| 2026-09-24 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-24 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-24 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-24 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-24 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-22 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-22 | fix(window): a restored window keeps its size until the client answers | Lucas Galante |
| 2026-09-22 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-22 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-22 | fix(input): the swipe lean never reverses at the fire | Lucas Galante |
| 2026-09-22 | fix(input): the swipe leans toward where the bind will take the camera | Lucas Galante |
| 2026-09-22 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-22 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-22 | fix(input): the swipe lean follows the dominant axis only | Lucas Galante |
| 2026-09-22 | feat(menu): Minimize and Close Window in the desktop menu | Lucas Galante |
| 2026-09-22 | feat(menu): the desktop menu gets a Window Mode page for the focused window | Lucas Galante |
| 2026-09-22 | feat(input): right-click on a window in overview opens its context menu | Lucas Galante |
| 2026-09-21 | feat(config): window_manager { swipe_threshold } sets when a swipe fires | Lucas Galante |
| 2026-09-21 | feat(config): window_manager { swipe_peek } sets the swipe lean | Lucas Galante |
| 2026-09-21 | feat(input): a swipe bind peeks the camera before it fires | Lucas Galante |
| 2026-09-21 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-21 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-21 | Pin workspace dependencies to GitHub, the crates' origin | Lucas Galante |
| 2026-09-21 | xdg-activation focuses and raises a mapped window; a borrowed state never births one minimized | Lucas Galante |
| 2026-09-21 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-21 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Pin cce-window-manager to 416f42c: footprint-based directional focus | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | ccebuild install-system: ship udev rules, and install a new root binary | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-20 | Repin workspace dependencies to their published revs | Lucas Galante |
| 2026-09-19 | Depend on cce-ui and cce-window-manager through git.lucas.co, so this crate builds alone | Lucas Galante |
| 2026-09-19 | test: check CLAUDE.md's test-count claims; move the size check out of src/ | Lucas Galante |
| 2026-09-19 | test: fail when CLAUDE.md's line-count figures drift from the source | Lucas Galante |
| 2026-09-19 | docs: eight test modules, not six; window_manager.rs and window.rs resized | Lucas Galante |
| 2026-09-19 | A locked session gets its locker back | Lucas Galante |
| 2026-09-19 | grid: the exit's patch lands before the ramp does | Lucas Galante |
| 2026-09-19 | install-system: authenticate through polkit when there is no terminal | Lucas Galante |
| 2026-09-19 | install-system: plan as the user, apply in one root batch | Lucas Galante |
| 2026-09-19 | Windows dissolve in and out, and the compositor owns both | Lucas Galante |
| 2026-09-18 | docs: the bulk pusher works again, and is versioned now | Lucas Galante |
| 2026-09-18 | docs: publishing is a push now, not a commit | Lucas Galante |
| 2026-09-18 | feat(xwayland): leave no-activate helper windows to their app | Lucas Galante |
| 2026-09-18 | fix(cursor): an X11 cursor is a physical-pixel bitmap, exempt window or not | Lucas Galante |
| 2026-09-18 | fix(xwayland): an exempt game's whole-root request is the whole screen; its unfullscreen is ignored | Lucas Galante |
| 2026-09-18 | fix(xwayland): a hidpi-exempt game keeps its own size and takes a fullscreen | Lucas Galante |
| 2026-09-18 | fix(grid): keep the fallback cells up after a flight until the client's patch lands | Lucas Galante |
| 2026-09-18 | fix(borders): in overview the ring is on the hovered window only | Lucas Galante |
| 2026-09-18 | fix(input): a Tiled window's pointer resize snaps to whole cells | Lucas Galante |
| 2026-09-18 | feat(status): `adjust` topic — "on"/"off" as window-adjust mode comes and goes | Lucas Galante |
| 2026-09-18 | fix(borders): scale the handle discs by the output scale | Lucas Galante |
| 2026-09-18 | feat(borders): dim a Floating window that covers the adjust target | Lucas Galante |
| 2026-09-18 | feat(borders): resize handles are eight discs, not a ring | Lucas Galante |
| 2026-09-18 | fix(input): Super-held adjust mode targets the hovered window; a drag never focuses | Lucas Galante |
| 2026-09-17 | fix(grid): cell labels above the cells; `desktop cell_labels=` toggle | Lucas Galante |
| 2026-09-17 | feat(borders): slower handle fade, and the ring fades OUT on release | Lucas Galante |
| 2026-09-17 | fix(input): read the Super-held state from the group keyboard's modifiers | Lucas Galante |
| 2026-09-17 | fix(input): a Super-held body grab focuses the window it moves | Lucas Galante |
| 2026-09-17 | fix(input): Super-held adjust mode keeps focus; hover-to-focus is overview only | Lucas Galante |
| 2026-09-17 | feat(input): holding Super is window-adjust mode at zoom 1 | Lucas Galante |
| 2026-09-17 | feat(cursor): horizontal trackpad scroll as Shift+vertical for named apps | Lucas Galante |
| 2026-09-17 | feat(input): scroll_method for the trackpoint and mouse classes | Lucas Galante |
| 2026-09-16 | fix(status): a still click in adjust mode is a click, not a snap | Lucas Galante |
| 2026-09-16 | feat(idle): display-off and sleep timeouts from an `idle { }` config block | Lucas Galante |
| 2026-09-15 | feat(camera): sub-pixel desk placement at HiDPI (device-pixel pans) | Lucas Galante |
| 2026-09-15 | perf(blur): keep optimized-blur bakes frozen through animated zooms | Lucas Galante |
| 2026-09-15 | perf(camera): coalesce pinch per frame; treat sub-pixel pans as still | Lucas Galante |
| 2026-09-15 | feat(camera): animate on a vblank-locked presentation clock; count drops | Lucas Galante |
| 2026-09-15 | feat(input): bind touchpad gestures from input.kdl; ccectl pointer-swipe | Lucas Galante |
| 2026-09-14 | fix(restore): keep a floating window remembered beside the tiled desk | Lucas Galante |
| 2026-09-14 | fix(cursor): the touchpad view drag follows the fingers under natural scrolling | Lucas Galante |
| 2026-09-14 | feat(ccectl): let an app confine the touchpad view drag to its view panes | Lucas Galante |
| 2026-09-14 | fix(xwayland): a transient maps where it asked before mapping | Lucas Galante |
| 2026-09-12 | fix(xwayland): grant a client's geometry on the logical grid | Lucas Galante |
| 2026-09-12 | fix(xwayland): a transient's self-move updates its virtual origin too | Lucas Galante |
| 2026-09-12 | feat(camera): focus-follow takes the minimal pan at every distance | Lucas Galante |
| 2026-09-11 | fix(overview): the resize ring paints in the focused color, not a stale plan | Lucas Galante |
| 2026-09-11 | feat(stacking): the focused window's menus clear the floating plane | Lucas Galante |
| 2026-09-11 | feat(stacking): floating windows are a plane in front of the tiled ones | Lucas Galante |
| 2026-09-11 | fix(xwayland): anchor a left/top resize on the LOGICAL committed size | Lucas Galante |
| 2026-09-11 | fix(scenefx): a blur node re-blurs only when the expanded damage actually reaches it | Lucas Galante |
| 2026-09-11 | startcce: restore WLR_NO_HARDWARE_CURSORS — the hardware cursor plane shows nothing on this panel | Lucas Galante |
| 2026-09-11 | startcce: --logging no longer means debug level; drop WLR_NO_HARDWARE_CURSORS | Lucas Galante |
| 2026-09-11 | feat(cursor): scroll an app's popups with a synthetic wheel, under Ctrl | Lucas Galante |
| 2026-09-10 | fix(cursor): keep an emulated view drag alive across a mid-gesture pause | Lucas Galante |
| 2026-09-10 | perf: gate per-frame work — backdrop measurement, ovdbg probe, stream tick, tearing test, label and role allocations | Lucas Galante |
| 2026-09-10 | perf: stop ticking while idle — fd-driven IPC, poll()ed status server, throttled state saves, gated dirtying | Lucas Galante |
| 2026-09-10 | fix(cursor): draw an X11 client's cursor at 1/scale, like its window | Lucas Galante |
| 2026-09-10 | fix(seat): report held keys to a new focus in evdev codes, not xkb | Lucas Galante |
| 2026-09-09 | feat(output): per-output size_mm override and `ccectl outputs` | Lucas Galante |
| 2026-09-09 | startcce: import VK_DRIVER_FILES into the systemd user manager | Lucas Galante |
| 2026-09-09 | fix(restore): a floating window remembered off-view reopens centered in view | Lucas Galante |
| 2026-09-09 | fix(state): restore a window by its bare name when a PATH wrapper launched it | Lucas Galante |
| 2026-09-08 | fix(scenefx): hit-test a clipped surface at ratio 1, not surface/geometry | Lucas Galante |
| 2026-09-08 | docs(ccectl): move-window-left/-right/-up/-down step floating windows too | Lucas Galante |
| 2026-09-08 | fix(xwayland): send the configure a restored window's mirror already claims | Lucas Galante |
| 2026-09-08 | feat(xwayland): per-app exception to xwayland_hidpi for full-screen X11 games | Lucas Galante |
| 2026-09-08 | fix(xwayland): keep X11 geometry sane across an output going away and back | Lucas Galante |
| 2026-09-08 | feat(input): trackpad-to-view-drag emulation for apps that cannot see a trackpad | Lucas Galante |
| 2026-09-08 | feat(ccectl): inject touchpad finger scrolls and pinches for headless testing | Lucas Galante |
| 2026-09-08 | fix(xwayland): derive X11 surface pointer coordinates from geometry, not dest state | Lucas Galante |
| 2026-09-08 | fix(xwayland): keep X11 pointer coordinates stable across commits and drags | Lucas Galante |
| 2026-09-08 | feat(xwayland): HiDPI X11 — a physical-pixel screen for Xwayland, drawn at 1/scale | Lucas Galante |
| 2026-09-08 | fix(exit): a save prompt now cancels the logout instead of being killed | Lucas Galante |
| 2026-09-08 | fix(xwayland): X11 root coordinates are logical, not output-scaled | Lucas Galante |
| 2026-09-08 | fix(restore): never restore or save state for a transient window | Lucas Galante |
| 2026-09-06 | perf(resize): configure and relayout the dragged window once per frame, not per pointer event | Lucas Galante |
| 2026-09-06 | fix(scene): client backgrounds paint between the grid backdrop and the cells | Lucas Galante |
| 2026-09-06 | fix(resize): one rounded virtual-to-screen conversion for every writer of a window's origin | Lucas Galante |
| 2026-09-06 | Rename the internal backplate vocabulary to root plate (cce-ui RFC 7a-4) | Lucas Galante |
| 2026-09-06 | fix(fullscreen): honour a client's fullscreen request in-process, including one set before its first commit | Lucas Galante |
| 2026-09-06 | Drop the legacy backplate node fallback for the root-plate style | Lucas Galante |
| 2026-09-06 | fix(fullscreen, corners): restore the pre-fullscreen mode; crop CSD toplevels to their geometry | Lucas Galante |
| 2026-09-06 | docs(workspace): cce-test-interface is now cce-gallery | Lucas Galante |
| 2026-09-05 | fix(resize): anchor the dragged left/top edge for Xwayland windows too | Lucas Galante |
| 2026-09-04 | feat(handles): the ring's inner edge is a wave of eight hills and eight valleys | Lucas Galante |
| 2026-09-04 | fix(overview): key and gesture toggles exit onto the focused window, not the pointer | Lucas Galante |
| 2026-09-04 | fix(ctl): exit overview onto the focused window, not the idle pointer | Lucas Galante |
| 2026-09-04 | fix(handles): highlight the zone under the pointer, not a mirrored or stale one | Lucas Galante |
| 2026-09-04 | fix(overview): deliver pointer motion and wheel to chrome, not the desktop | Lucas Galante |
| 2026-09-04 | fix(overview): keep the launcher focused when it opens in overview | Lucas Galante |
| 2026-09-04 | perf(blur): margin cache with anchored strip bakes — no settle re-bake for windows hanging off the output | Lucas Galante |
| 2026-09-04 | perf(blur): no re-bake at pan start or end — bakes stay anchored, thaw re-bakes only what a pan could break | Lucas Galante |
| 2026-09-04 | fix(blur): anchor each frozen blur to where its bake lives — no more offset ghosts mid-pan | Lucas Galante |
| 2026-09-04 | fix(pan): sample frozen blur bakes at the desktop's screen delta — no more blur artifacts on blurred windows while panning | Lucas Galante |
| 2026-09-04 | perf(pan): skip the status-bar backdrop measurement while the camera is moving | Lucas Galante |
| 2026-09-04 | fix(pan): round the grid-patch latch and restore-placeholder positions like the arrange pass | Lucas Galante |
| 2026-09-04 | fix(pan): keep non-cce windows blurred through camera motion — no more blur pop at the end of a pan | Lucas Galante |
| 2026-09-04 | perf(pan): step the camera on the output frame, not a 16ms timer or per input event | Lucas Galante |
| 2026-09-04 | perf(pan): freeze blur caches during camera motion, fixed-size grid patches, prefetch by velocity | Lucas Galante |
| 2026-09-03 | docs(workspace): name the smooth-scroll input keys and where each side reads them | Lucas Galante |
| 2026-09-03 | feat(camera): smooth desktop scrolling — dt-correct glide, kinetic finger coast, anchored wheel zoom | Lucas Galante |
| 2026-09-03 | fix(resize): clamp interactive resizes to the client's min/max size hint | Lucas Galante |
| 2026-09-03 | fix(grid): re-issue the grid client's patch after a config reload | Lucas Galante |
| 2026-09-03 | docs: the undo/redo chords live in the cce-ui input domain | Lucas Galante |
| 2026-09-03 | feat(shadow): `surface { shadow tiled=false }` drops the drop shadow on tiled windows | Lucas Galante |
| 2026-09-02 | fix(focus): parented cce-cloud popups return focus to their parent on unmap | Lucas Galante |
| 2026-09-02 | docs: pkill -x cannot match cce binary names over 15 chars | Lucas Galante |
| 2026-09-02 | feat(ipc): set-mode — set a window's tiling mode outright | Lucas Galante |
| 2026-09-01 | fix(scenefx): hit-test a dest-scaled surface in surface coordinates | Lucas Galante |
| 2026-09-01 | fix: a camera flight mid-grab flung the grabbed desktop item | Lucas Galante |
| 2026-09-01 | feat: desktop images are draggable in overview mode | Lucas Galante |
| 2026-08-31 | Drop the retired keyring-unlock residue from ccebuild and docs | Lucas Galante |
| 2026-08-31 | docs: the real reason cce-browser is cheap to sweep | Lucas Galante |
| 2026-08-30 | fix: closed windows keep their squares across a grid change | Lucas Galante |
| 2026-08-30 | feat: clip the resize ring under a client's in-surface popover | Lucas Galante |
| 2026-08-30 | test: behavioral test for the Escape-closes-status-menus arm | Lucas Galante |
| 2026-08-30 | feat: wire virtual keyboards into the keyboard stack | Lucas Galante |
| 2026-08-30 | feat: Escape closes any open in-surface status menu | Lucas Galante |
| 2026-08-30 | Revert "fix(handles): mirror the waist — both pieces leave a seam at the same slope" | Lucas Galante |
| 2026-08-30 | fix(handles): mirror the waist — both pieces leave a seam at the same slope | Lucas Galante |
| 2026-08-30 | feat(handles): pinch the band at the seams | Lucas Galante |
| 2026-08-30 | feat(handles): longer corner runs, clamped per side | Lucas Galante |
| 2026-08-30 | feat(handles): round corner pads — a bulge, not a thicker band | Lucas Galante |
| 2026-08-30 | feat(handles): corner bosses — every piece of the frame is its own swell | Lucas Galante |
| 2026-08-29 | docs: cce-browser rejoins the cce-ui dependent sweep | Lucas Galante |
| 2026-08-29 | Restore keepassxc like any other app | Lucas Galante |
| 2026-08-29 | feat(handles): ring on the focused window only; focus follows hover | Lucas Galante |
| 2026-08-29 | feat(handles): swell_curve — a corner that actually swells | Lucas Galante |
| 2026-08-29 | feat(handles): carry the swell through the corners, and spread it | Lucas Galante |
| 2026-08-29 | fix(handles): give the ring its own width, not the border's | Lucas Galante |
| 2026-08-29 | fix(handles): pin the ring's thickness to screen, not world, space | Lucas Galante |
| 2026-08-29 | feat(handles): a picture-frame ring that swells toward each side's middle | Lucas Galante |
| 2026-08-29 | fix: a restored tiling mode is latched, so tiled survives a restart | Lucas Galante |
| 2026-08-29 | feat: move and resize only in overview, on handles inside the window | Lucas Galante |
| 2026-08-28 | feat(ccectl): move-window-left/right/up/down | Lucas Galante |
| 2026-08-28 | feat(bevel): focus_sharpness as a config knob | Lucas Galante |
| 2026-08-28 | feat(bevel): concentrate the focus glint at the silhouette | Lucas Galante |
| 2026-08-28 | fix(bevel): the focus glint adds light instead of cross-fading to it | Lucas Galante |
| 2026-08-28 | docs: the scenefx build dir a moved workspace leaves behind, and what strings cannot tell you | Lucas Galante |
| 2026-08-28 | docs: a proper pass over this file against the code | Lucas Galante |
| 2026-08-27 | feat: read window content for the backdrop, instead of calling it unknown | Lucas Galante |
| 2026-08-27 | feat: the backdrop topic — tell each status segment what it sits over | Lucas Galante |
| 2026-08-27 | feat: the focused window wears the DE focus glint on its rim | Lucas Galante |
| 2026-08-27 | feat: a tiled window never spawns on top of another tiled window | Lucas Galante |
| 2026-08-27 | feat: place-next-cell — launch a window onto the square you asked from | Lucas Galante |
| 2026-08-26 | desktop menu: resolve the Terminal entry like the launcher | Lucas Galante |
| 2026-08-26 | ccebuild: install timers, and the services their timers activate | Lucas Galante |
| 2026-08-26 | fix: never focus the grid window | Lucas Galante |
| 2026-08-26 | feat: let the grid layer be hit-tested through its input region | Lucas Galante |
| 2026-08-26 | feat: make the desktop background a drop target during a drag | Lucas Galante |
| 2026-08-25 | config: accept the canonical plate.root spelling for the root-plate style | Lucas Galante |
| 2026-08-25 | fix: droplet lens joins the blur damage-extension machinery | Lucas Galante |
| 2026-08-25 | docs: move the cce-ui rebuild note into the workspace guide | Lucas Galante |
| 2026-08-25 | docs: a cce-ui change reaches a client only when that client is rebuilt | Lucas Galante |
| 2026-08-25 | fix: stop resending byte-identical dmabuf feedback to every client | Lucas Galante |
| 2026-08-25 | fix: don't give focus to a client that only reappeared after crashing | Lucas Galante |
| 2026-08-25 | feat: keep shadow cleanup from reaching another session's instance | Lucas Galante |
| 2026-08-25 | fix: stop an app rename from silently undecorating its window | Lucas Galante |
| 2026-08-25 | fix: droplet lens orientation and content source | Lucas Galante |
| 2026-08-24 | feat: droplet backdrop refraction — the bar's drops bend what's behind them | Lucas Galante |
| 2026-08-24 | window: the file chooser opens centered on the current view | Lucas Galante |
| 2026-08-24 | ccebuild: per-crate restart form | Lucas Galante |
| 2026-08-24 | WORKSPACE.md: document concurrent-session etiquette | Lucas Galante |
| 2026-08-24 | startcce: enable rusticl — the session had zero OpenCL platforms | Lucas Galante |
| 2026-08-22 | feat: give each shadow session its own instance | Lucas Galante |
| 2026-08-22 | refactor: call the desktop menu's overview entry by its current name | Lucas Galante |
| 2026-08-22 | feat: give a keyboard-less seat a synthetic keyboard | Lucas Galante |
| 2026-08-22 | fix: let a view-centered modal be a Utility window, and center it at its real size | Lucas Galante |
| 2026-08-22 | build: ship cce-session.target; teach ccebuild non-.service units | Lucas Galante |
| 2026-08-22 | feat: version cce-keyring-selftest | Lucas Galante |
| 2026-08-22 | fix: move session logs and the generated launcher out of /tmp into XDG_RUNTIME_DIR | Lucas Galante |
| 2026-08-22 | fix: route startcce through $HOME/XDG instead of a baked-in home directory | Lucas Galante |
| 2026-08-22 | feat: version startcce, and import XDG_SESSION_ID into the user manager | Lucas Galante |
| 2026-08-21 | feat: open cce-authenticator centered on the current view, not where it last sat | Lucas Galante |
| 2026-08-21 | feat: re-tile Tiled windows when the grid geometry changes | Lucas Galante |
| 2026-08-21 | feat: grid_cell_width / grid_cell_height config keys | Lucas Galante |
| 2026-08-21 | feat: click-away dismisses cce-cloud popups in overview without exiting it | Lucas Galante |
| 2026-08-21 | grid: flight-aware patches — union coverage, latch-time anchor, native fill | Lucas Galante |
| 2026-08-21 | grid: quantize patches from the flight's target zoom; strict drift at rest | Lucas Galante |
| 2026-08-21 | fix: overview-click exit flight landed above-left of the clicked window | Lucas Galante |
| 2026-08-20 | ccebuild: install-system also syncs system units and PAM stacks | Lucas Galante |
| 2026-08-20 | overview: animate the spawn-exit camera too | Lucas Galante |
| 2026-08-20 | overview: animate the click-exit camera | Lucas Galante |
| 2026-08-20 | overview: a world window spawning during overview exits onto it | Lucas Galante |
| 2026-08-20 | scenefx: per-corner radii rendered vertically mirrored — swap at upload | Lucas Galante |
| 2026-08-20 | borders: corner handles follow the window silhouette arc | Lucas Galante |
| 2026-08-20 | overview: chrome departures never fire the on_app_exit reaction | Lucas Galante |
| 2026-08-20 | overview: chrome windows (Popup/Overlay) stay fully interactive | Lucas Galante |
| 2026-08-20 | feat: on_app_exit — choose the camera's reaction to a closed app | Lucas Galante |
| 2026-08-20 | Pinch on the desktop background zooms the camera | Lucas Galante |
| 2026-08-19 | wm: fix the status-segment mis-slot wedge and the fd-leak session collapse | Lucas Galante |
| 2026-08-18 | grid: honor a (relief) line_relief value's width in the fallback | Lucas Galante |
| 2026-08-18 | grid: honor style.surface.desktop.line_relief in the fallback | Lucas Galante |
| 2026-08-18 | grid: fallback rails match the client's backplate-edge roll | Lucas Galante |
| 2026-08-18 | grid: fallback rails get the same raised-grout chamfer as the client | Lucas Galante |
| 2026-08-18 | grid: native-res patches on scaled outputs; flat fallback cells; re-bake optimized blur when backdrop content changes | Lucas Galante |
| 2026-08-18 | grid: stack the grid client in layers.bottom, not by render-list order | Lucas Galante |
| 2026-08-18 | grid: shrink the patch envelope; never focus the grid at map | Lucas Galante |
| 2026-08-17 | fix: remove destroyed toplevel resources from the tracking list (UAF) | Lucas Galante |
| 2026-08-17 | feat: world-anchored grid client — protocol, patch manager, fallback swap | Lucas Galante |
| 2026-08-17 | overview: displacement is provisional while the button is held | Lucas Galante |
| 2026-08-17 | grid: widen cell corners like the windows'; rim reach = corner radius | Lucas Galante |
| 2026-08-17 | grid: lit bevel rims on the cells — the lines fillet around each corner | Lucas Galante |
| 2026-08-17 | scenefx: fade follows the rounded outline; fix fade-mode scale corruption | Lucas Galante |
| 2026-08-17 | restore: promote cell-aligned Floating windows to Tiled at map time | Lucas Galante |
| 2026-08-17 | grid: cells inherit the window backplate corner radius | Lucas Galante |
| 2026-08-16 | feat: set_utility — content-shaped windows the compositor never resizes | Lucas Galante |
| 2026-08-16 | ccebuild: install app icons from any crate's hicolor/ tree | Lucas Galante |
| 2026-08-16 | Install D-Bus activation files crates ship in dbus/ | Lucas Galante |
| 2026-08-16 | Install helper scripts from any crate's scripts/ dir | Lucas Galante |
| 2026-08-16 | feat: ccebuild installs the .desktop entries crates ship | Lucas Galante |
| 2026-08-16 | Hold keyring clients back until the Secret Service is unlocked | Lucas Galante |
| 2026-08-16 | feat: cce-shadow — an invisible session to verify in | Lucas Galante |
| 2026-08-15 | fix: screenshots on 24-bit readback, honest replies, unique names | Lucas Galante |
| 2026-08-15 | Drive animated XCursor frames | Lucas Galante |
| 2026-08-15 | docs: cce-email is now cce-mail | Lucas Galante |
| 2026-08-15 | docs: cce-ui's extra bin is cce-relief now | Lucas Galante |
| 2026-08-14 | fix: find stale processes by exe, not by a guess at their argv | Lucas Galante |
| 2026-08-14 | chore: refresh Cargo.lock against the current dependency graph | Lucas Galante |
| 2026-08-13 | docs: cce-ui shapes text with cosmic-text directly, not glyphon | Lucas Galante |
| 2026-08-13 | Fix infinite spin on a value-less flag in the menu scripts | Lucas Galante |
| 2026-08-13 | docs: adopt the workspace guide from the unversioned root | Lucas Galante |
| 2026-08-13 | docs: ccebuild is the build/install entry point | Lucas Galante |
| 2026-08-13 | feat: ccebuild package filter; Makefile delegates to it | Lucas Galante |
| 2026-08-13 | feat: ccebuild restart — cycle services left on a replaced binary | Lucas Galante |
| 2026-08-13 | feat: ccebuild prune + install-system | Lucas Galante |
| 2026-08-13 | feat: ccebuild — one metadata-driven build/install for the whole workspace | Lucas Galante |
| 2026-08-13 | fix: the bevel rim traced a circle where the corner is a superellipse | Lucas Galante |
| 2026-08-13 | fix: the backplate takes backplate_corner_radius, not the border's | Lucas Galante |
| 2026-08-13 | feat: bevel_apps — only bevel apps that don't bevel themselves | Lucas Galante |
| 2026-08-13 | tune: raise the bevel defaults to something you can actually see | Lucas Galante |
| 2026-08-13 | feat: edge bevel — a lit chamfer around the inside of decorated windows | Lucas Galante |
| 2026-08-13 | fix: the tiled hard-snap gate was inert — ask what the window WAS at grab | Lucas Galante |
| 2026-08-13 | feat: label every desktop square in overview, chess style | Lucas Galante |
| 2026-08-13 | feat: report and command desktop squares; Tiled drags snap to squares | Lucas Galante |
| 2026-08-13 | fix: keep the drop shadow in step with the zoom during camera motion | Lucas Galante |
| 2026-08-13 | fix: don't park viewport-hidden windows in hidden_tree — the off-screen reveal delay | Lucas Galante |
| 2026-08-13 | debug: file-gated scene-buffer state dump (/tmp/cce-ovdbg) for the off-screen reveal delay | Lucas Galante |
| 2026-08-13 | debug: per-stage timing of the manage/render transaction (CCE_MANAGE_DEBUG) | Lucas Galante |
| 2026-08-13 | fix: explicitly initialize last_saved_state_json in Server::default | Lucas Galante |
| 2026-08-13 | perf: only write state.json when the serialized state actually changed | Lucas Galante |
| 2026-08-13 | perf: gate arrange_views tracing, drop the wl_list_insert trace | Lucas Galante |
| 2026-08-13 | perf: gate the dirty_windowing backtrace behind CCE_DIRTY_BACKTRACE | Lucas Galante |
| 2026-08-12 | debug: time each stage of handle_motion under CCE_FRAME_DEBUG | Lucas Galante |
| 2026-08-12 | debug: report listener + pending-callback state in CCE_FRAME_DEBUG | Lucas Galante |
| 2026-08-12 | perf+debug: gate the per-frame blur traces, add CCE_FRAME_DEBUG | Lucas Galante |
| 2026-08-12 | fix: optimized blur works for rounded windows — drop the radius opt-out | Lucas Galante |
| 2026-08-12 | fix: overview scale survives client commits (Firefox pop-to-full-size) | Lucas Galante |
| 2026-08-12 | feat: geometric Tiled mode + live overview displacement (policy rework) | Lucas Galante |
| 2026-08-12 | feat: rounded_apps allowlist — decorated treatment for foreign apps | Lucas Galante |
| 2026-08-10 | fix: mid-session spawns must focus + spawn-pan despite borrowed geometry | Lucas Galante |
| 2026-08-10 | feat: anchored overview transitions; fix IPC killing camera flights | Lucas Galante |
| 2026-08-10 | fix: raise light_source explicitly in the reorder pass | Lucas Galante |
| 2026-08-10 | feat: traveling light_source segment stacks in front of its siblings | Lucas Galante |
| 2026-08-10 | refactor: remove the viewport tag feature | Lucas Galante |
| 2026-08-10 | refactor: viewport status payload carries only the active viewport number | Lucas Galante |
| 2026-08-10 | fix: viewport status payload is tab markup, not live camera text | Lucas Galante |
| 2026-08-10 | fix: per-client line dedup in the status server | Lucas Galante |
| 2026-08-09 | fix: blur transparency mask samples 1:1 over the blur box | Lucas Galante |
| 2026-08-09 | fix: refresh pointer focus when the scene mapping changes under a stationary cursor | Lucas Galante |
| 2026-08-08 | feat: border move/resize controls work at any zoom | Lucas Galante |
| 2026-08-08 | fix: status feed reports Focus::None honestly | Lucas Galante |
| 2026-08-06 | feat: drive the traveling light_source segment (day fraction + minute tick) | Lucas Galante |
| 2026-08-06 | feat: push one-shot menu-dismiss on click-away from expanded status segments | Lucas Galante |
| 2026-08-05 | fix: sync status box_geom from the live commit, like self-sizing overlays | Lucas Galante |
| 2026-08-05 | fix: hash status-segment expansion into the render order hash | Lucas Galante |
| 2026-08-05 | fix: size status-segment blur from committed geometry, not rendering_sent | Lucas Galante |
| 2026-08-05 | fix: exempt status segments from the backplate corner clip | Lucas Galante |
| 2026-08-05 | fix: expanded status segments stack in the popups layer | Lucas Galante |
| 2026-08-05 | feat: mechanism side of expanded status segments | Lucas Galante |
| 2026-08-05 | feat: module { height } from the bar's config file sets bar_height | Lucas Galante |
| 2026-08-05 | feat: status segment spacing from the bar's own config file | Lucas Galante |
| 2026-08-04 | feat: placeholder clicks follow the focus-follow camera rules | Lucas Galante |
| 2026-08-04 | fix: border taps pan to mostly-hidden windows; drags still don't | Lucas Galante |
| 2026-08-04 | fix: re-clicking a focused off-screen window pans to it | Lucas Galante |
| 2026-08-04 | fix: user clicks pan to restored windows on first focus | Lucas Galante |
| 2026-08-04 | feat: focus-follow nudges clipped windows fully into view | Lucas Galante |
| 2026-08-04 | fix: echo absorb also fires in the timeout recovery states | Lucas Galante |
| 2026-08-04 | feat: ramp-driven overview transition — desktop overview_ramp/overview_ms | Lucas Galante |
| 2026-08-04 | feat: eased camera for animated overview transitions | Lucas Galante |
| 2026-08-04 | fix: echo absorb — bounds tracking the echoed size are part of the echo | Lucas Galante |
| 2026-08-04 | fix: echo absorb must also fire in Committed state, not just Idle | Lucas Galante |
| 2026-08-04 | fix: absorb size-only configure echoes instead of sending them | Lucas Galante |
| 2026-08-01 | fix: honor the window-management popup flag over the cce-cloud app_id heuristic | Lucas Galante |
| 2026-08-01 | fix: skip Windows-path restore commands at session start | Lucas Galante |
| 2026-07-31 | feat: place-next — one-shot placement hint for widget-spawned windows | Lucas Galante |
| 2026-07-29 | feat: animated fullscreen toggle | Lucas Galante |
| 2026-07-28 | feat: keep optional command= on media-key input.kdl bindings | Lucas Galante |
| 2026-07-28 | fix: zoom-aware snap threshold at both resize-size computation sites | Lucas Galante |
| 2026-07-28 | fix: overlay UI is transparent to the WM's focused-window concept | Lucas Galante |
| 2026-07-28 | fix: strict login focus settling + restore placeholders | Lucas Galante |
| 2026-07-28 | fix: scale the surface-clip corner radius with the window | Lucas Galante |
| 2026-07-28 | feat: PrintScreen captures a screenshot | Lucas Galante |
| 2026-07-28 | feat: ccectl debug-scene — whole-scene buffer dump with owner pids | Lucas Galante |
| 2026-07-28 | fix: draw grid cells at exact-period positions | Lucas Galante |
| 2026-07-28 | Revert "fix: every normal window casts the DE shadow, not just cce/ssd ones" | Lucas Galante |
| 2026-07-28 | fix: every normal window casts the DE shadow, not just cce/ssd ones | Lucas Galante |
| 2026-07-28 | fix: full-repaint chokepoint in the output frame handler — zoom ghosts | Lucas Galante |
| 2026-07-28 | fix: frozen saved-surface copies keep their save-time size — zoom ghosts | Lucas Galante |
| 2026-07-28 | fix: force a full repaint on camera-motion frames — stale-zoom slivers | Lucas Galante |
| 2026-07-28 | fix: autostarts can't steal focus from the restored session before input | Lucas Galante |
| 2026-07-28 | chore: HOME-relative paths, untrack scratch/, refresh CLAUDE.md | Lucas Galante |
| 2026-07-28 | chore: drop the CCE_BLUR_LEGACY diagnostic and the dead client-resize arm | Lucas Galante |
| 2026-07-28 | refactor: overlay arms to policy dispatch; focus helper delegates to rule | Lucas Galante |
| 2026-07-28 | refactor: draw_grid renders from BackgroundSpec via policy grid_frame | Lucas Galante |
| 2026-07-28 | refactor: find_window_by_query delegates to policy::query | Lucas Galante |
| 2026-07-28 | refactor: Toggle arm replaced by policy dispatch | Lucas Galante |
| 2026-07-28 | refactor: window-management action arms replaced by policy dispatch | Lucas Galante |
| 2026-07-28 | refactor: dispatch camera actions through the Policy/Compositor traits | Lucas Galante |
| 2026-07-28 | refactor: route all camera math through policy::camera | Lucas Galante |
| 2026-07-28 | feat: edge auto-pan during interactive move/resize | Lucas Galante |
| 2026-07-28 | feat: wheel-scroll pan glides via the pan animation | Lucas Galante |
| 2026-07-28 | feat: keyed pans step cell-by-cell and animate to an aligned viewport | Lucas Galante |
| 2026-07-28 | feat: doubled border band, foam-clipped between neighbors, rounded-L corners | Lucas Galante |
| 2026-07-28 | feat: curvature-matched squircle corner spans, mirroring cce-ui | Lucas Galante |
| 2026-07-28 | feat: implicit pointer grab — held-button motion stays surface-relative | Lucas Galante |
| 2026-07-22 | fix: don't double-subtract xdg geometry from the surface tree | Lucas Galante |
| 2026-07-21 | feat: close-window IPC command | Lucas Galante |
| 2026-07-21 | feat: restart-compositor IPC command | Lucas Galante |
| 2026-07-21 | feat: window-stream socket — damage-driven frame export per window | Lucas Galante |
| 2026-07-21 | fix: pan the viewport when focusing maximized windows, not just floating | Lucas Galante |
| 2026-07-20 | feat: cycle the window switcher with repeat super+tab / super+shift+tab | Lucas Galante |
| 2026-07-20 | feat: squircle window corners — scenefx corner cut follows corner_shape | Lucas Galante |
| 2026-07-19 | feat: cast a drop shadow under cce/ssd windows | Lucas Galante |
| 2026-07-18 | fix: round the backdrop blur to match the window's corner radius | Lucas Galante |
| 2026-07-18 | feat: hide window borders until the pointer hovers them | Lucas Galante |
| 2026-07-18 | feat: add window_manager.center_on_spawn to control spawn panning | Lucas Galante |
| 2026-07-18 | fix: track a self-sizing overlay's border with its live geometry | Lucas Galante |
| 2026-07-17 | fix: keep blur during viewport pan for all cce-* apps | Lucas Galante |
| 2026-07-17 | fix: suppress activation-attention notifications during startup | Lucas Galante |
| 2026-07-17 | feat: restore foot terminal shell cwd on window restore | Lucas Galante |
| 2026-07-17 | fix: regular blur for Top/Overlay layer surfaces (stop notifier flicker) | Lucas Galante |
| 2026-07-17 | fix(scenefx): stop blur-node reorder churn in river_scene_node_enable_blur | Lucas Galante |
| 2026-07-16 | fix(scenefx): re-blur whole blur nodes and test real damage coverage | Lucas Galante |
| 2026-07-16 | fix: debounce backdrop blur toggling during viewport pan/zoom | Lucas Galante |
| 2026-07-16 | feat: native screenshots — ccectl screenshot [region|window] | Lucas Galante |
| 2026-07-16 | feat: dispatch directional focus actions; ccectl focus-up/down/left/right | Lucas Galante |
| 2026-07-16 | feat(input): mouse device class and per-class scroll factors | Lucas Galante |
| 2026-07-16 | fix(migrate-input): silently skip gesture values in window_manager slots | Lucas Galante |
| 2026-07-16 | fix: drop unneeded mut on migrate-input write closure | Lucas Galante |
| 2026-07-16 | feat: load keybindings from input.kdl domains; ccectl migrate-input | Lucas Galante |
| 2026-07-15 | fix(cursor): always pair a forwarded press with its release | Lucas Galante |
| 2026-07-15 | refactor: remove the solid desktop background mode | Lucas Galante |
| 2026-07-15 | fix(snap): route both resize-size computations through snap::resize_axis | Lucas Galante |
| 2026-07-15 | feat: plumb grid gap/inset into Maximized cell snapping | Lucas Galante |
| 2026-07-15 | fix(snap): feed gap_width and cell fade inset into snap params | Lucas Galante |
| 2026-07-15 | feat: grid-snap interactive move/resize via policy snap module | Lucas Galante |
| 2026-07-15 | fix(resize): render_finish sizes from current committed geometry mid-resize | Lucas Galante |
| 2026-07-15 | fix(resize): only move the scene tree synchronously for live buffers | Lucas Galante |
| 2026-07-15 | feat: border segment_gap/corner_length config keys; fix resize jitter | Lucas Galante |
| 2026-07-15 | feat: segmented border visuals — 8 gap-separated zone elements with per-zone hover | Lucas Galante |
| 2026-07-15 | feat: borders as the interactive grab surface with hover highlight | Lucas Galante |
| 2026-07-15 | refactor: extract policy layer to the cce-window-manager crate | Lucas Galante |
| 2026-07-15 | feat: focused border color and border-inclusive layout insets | Lucas Galante |
| 2026-07-14 | feat: server-side window borders driven by policy DecorationSpec | Lucas Galante |
| 2026-07-14 | refactor: consolidate arrange_views into one snapshot -> plan -> apply pass | Lucas Galante |
| 2026-07-14 | refactor: extract pure window-management policy layer from arrange_views | Lucas Galante |
| 2026-07-14 | fix(scenefx): gate optimized-blur re-bake on dirty to stop cache poisoning | Lucas Galante |
| 2026-07-14 | fix: exclude cce-cloud popups from window-state save/restore | Lucas Galante |
| 2026-07-14 | fix(scenefx): union cursor history into damage instead of punching blur padding | Lucas Galante |
| 2026-07-14 | fix(scenefx): re-enable blur artifact compensation around damage | Lucas Galante |
| 2026-07-13 | feat: super+left-drag moves status-bar segments without adjust mode | Lucas Galante |
| 2026-07-13 | feat(ipc): windows --json output and adjust-position-mode query | Lucas Galante |
| 2026-07-13 | feat(ipc): injected key-down/key-up now carries modifier state | Lucas Galante |
| 2026-07-13 | feat(ipc): ccectl synthetic input — full wlrctl replacement with held buttons | Lucas Galante |
| 2026-07-07 | feat(switcher): add super+tab window switcher driven by config key | Lucas Galante |
| 2026-07-07 | feat(ipc): add center-window command to pan a window on-screen | Lucas Galante |
| 2026-07-07 | docs: update README and add compositor CLAUDE.md | Lucas Galante |
| 2026-07-07 | feat: rename status bar to cce-status-interface; derive light_source edge | Lucas Galante |
| 2026-07-07 | refactor: split control CLI into a dedicated ccectl binary | Lucas Galante |
| 2026-07-07 | refactor: drop hardcoded /home/lsgalante HOME fallback | Lucas Galante |
| 2026-07-06 | Allow unused assignments for min_dist in seat.rs and cursor.rs | Lucas Galante |
| 2026-07-05 | Update desktop context menu Settings entry to System Settings | Lucas Galante |
| 2026-07-05 | Add gpu-watcher script and systemd service to main repo install target | Lucas Galante |
| 2026-07-04 | Exiting overview: focus and center on window under cursor if present, otherwise center on pointer location | Lucas Galante |
| 2026-07-04 | Center viewport on mouse pointer when exiting overview mode | Lucas Galante |
| 2026-07-04 | Fix toggle_overview gesture bindings being cleared in parse_config | Lucas Galante |
| 2026-07-04 | Mask out Lock keys (NumLock/CapsLock) in gesture modifier matching | Lucas Galante |
| 2026-07-04 | Remove hardcoded 3-finger swipe zoom gesture behavior | Lucas Galante |
| 2026-07-04 | Add window_manager.toggle_overview config parsing and support | Lucas Galante |
| 2026-07-04 | Add window manager.toggle_fullscreen keybind option mapped to super+f | Lucas Galante |
| 2026-07-04 | feat: add style.surface.cloud.position_default config key | Lucas Galante |
| 2026-07-04 | Keep backdrop blur enabled on cce-data-editor during active pan/zoom | Lucas Galante |
| 2026-07-04 | Support display output brightness_up, brightness_down, and brightness_interval configuration and tests | Lucas Galante |
| 2026-07-03 | Update output scaling and window manager keybind configuration parsing | Lucas Galante |
| 2026-07-03 | Implement status bar module-specific snapping, vertical centering, and persistent layout config saving | Lucas Galante |
| 2026-07-03 | Flip status module orientation dynamically during adjustment dragging | Lucas Galante |
| 2026-07-03 | Synchronize adjust mode state using /tmp/cce-status-adjust-mode lockfile | Lucas Galante |
| 2026-07-03 | Render target compass zone snap overlays (semicircles) when adjust position mode is enabled | Lucas Galante |
| 2026-07-03 | Support 8 compass directions for status module layout (nw, n, ne, sw, s, se, w, e) with center alignment | Lucas Galante |
| 2026-07-03 | Restrict left status modules' widths to prevent overlaps with right status modules on horizontal edges | Lucas Galante |
| 2026-07-03 | Exclude active status bar edges from tiling layout usable workspace bounds to prevent overlaps | Lucas Galante |
| 2026-07-03 | Fix status layout calculations to use maximum dimension to prevent vertical status windows from shrinking to 24px | Lucas Galante |
| 2026-07-03 | Fix status window move calculations to use raw screen coordinates instead of desk virtual coordinates | Lucas Galante |
| 2026-07-03 | Support dragging and edge-snapping status windows in adjust-position-mode | Lucas Galante |
| 2026-07-03 | Implement status hide mode with configurable preview height | Lucas Galante |
| 2026-07-03 | Offset cce-cloud sub-menus by their parent status module position | Lucas Galante |
| 2026-07-02 | Implemented keypress / key-press IPC command in compositor | Lucas Galante |
| 2026-07-02 | Fix state saving during clean exit to prevent empty window list on login | Lucas Galante |
| 2026-07-02 | Implement clean exit of applications on compositor exit and fix blur scaling | Lucas Galante |
| 2026-07-02 | Migrate all input configurations and keybindings to input.kdl | Lucas Galante |
| 2026-07-02 | Support loading and saving keybindings to keybinds.kdl | Lucas Galante |
| 2026-07-02 | Refactor ScrollingList to List and fix window decoration blur and styling | Lucas Galante |
| 2026-07-02 | feat: return to normal mode when clicking on desktop background in overview mode | Lucas Galante |
| 2026-07-02 | Fix status bar flickering during viewport panning and optimize backdrop blur | Lucas Galante |
| 2026-07-01 | Implement dynamic relative fade scaling and add gaussian fade mode with gamma correction in quad_round shader | Lucas Galante |
| 2026-07-01 | Use separable horizontal and vertical fade calculation to eliminate diagonal X crease artifact | Lucas Galante |
| 2026-07-01 | Add desktop.grid_fade_mode menu key and implement linear, smoothstep, quadratic, and cosine fade modes in quad_round shader | Lucas Galante |
| 2026-07-01 | Use configured corner radius directly in quad_round shader instead of expanding by fade_inset | Lucas Galante |
| 2026-07-01 | Exclude rect nodes with active fade_inset from opaque region and black opaque optimization checks | Lucas Galante |
| 2026-07-01 | Fix wlr_scene damage tracking bugs when setting position/size/transform on nodes | Lucas Galante |
| 2026-07-01 | Clear grid_rect_pool when grid_tree is destroyed in output_manager | Lucas Galante |
| 2026-07-01 | Enforce strictly integer cell spacing to avoid panning boundary mismatch | Lucas Galante |
| 2026-07-01 | Synchronize grid translation rounding with window layout rounding | Lucas Galante |
| 2026-07-01 | Restore modulo root translation for zero-jitter infinite scrolling | Lucas Galante |
| 2026-07-01 | Replace discrete LOD doubling with smooth density fade | Lucas Galante |
| 2026-07-01 | Simplify fade_inset updates in output.rs | Lucas Galante |
| 2026-07-01 | Fix wallpaper grid mode graphical glitches | Lucas Galante |
| 2026-07-01 | Rewrite draw_grid logic from scratch to be performance-optimized and robust | Lucas Galante |
| 2026-07-01 | Update desktop solid color config key enable_solid_color to mode | Lucas Galante |
| 2026-07-01 | Support nested key_bindings inside input node in config.kdl, and other updates | Lucas Galante |
| 2026-07-01 | Support all built-in commands via cce-ctl IPC, remove server direct action parser mapping | Lucas Galante |
| 2026-07-01 | Support nested KDL keybindings, conflict warnings and command PATH validation | Lucas Galante |
| 2026-07-01 | Rename SurfacesConfig/surfaces to SurfaceConfig/surface | Lucas Galante |
| 2026-06-30 | fix: reparent popups to window's layer for correct stacking and blur | Lucas Galante |
| 2026-06-30 | fix: enable blur effect on CSD windows | Lucas Galante |
| 2026-06-30 | fix(scenefx): mark optimized blur dirty when underlying nodes update | Lucas Galante |
| 2026-06-30 | fix: enable blur effect on window backplate and sync corner radius | Lucas Galante |
| 2026-06-30 | Extract cce-wallpaper into its own project | Lucas Galante |
| 2026-06-30 | Disable compositor corner rounding for client-side decorated (CSD) windows | Lucas Galante |
| 2026-06-30 | Only enable backdrop blur for windows with server-side decorations (SSD) | Lucas Galante |
| 2026-06-30 | Scale explicit blur bounds by output scale factor | Lucas Galante |
| 2026-06-30 | Pass explicit geometry bounds to river_scene_node_enable_blur to match window content | Lucas Galante |
| 2026-06-30 | Render software cursors after restoring saved pixels in wlr_scene | Lucas Galante |
| 2026-06-30 | Use correct blend mode for scene rects based on alpha values | Lucas Galante |
| 2026-06-30 | Fix window decoration negotiation mode and transparent borders clipping, and complete migration to wlroots-0.20 and scenefx-0.5 | Lucas Galante |
| 2026-06-30 | Scale cell corner radius by zoom factor so that cell rounded corners and fade shaders scale proportionally during zoom | Lucas Galante |
| 2026-06-30 | Integrate local scenefx fork renamed to cce-fx, add native GPU fade_inset shader, and add standalone wallpaper client stub | Lucas Galante |
| 2026-06-30 | Implement background scene rect pooling to restore grid cell fade resolution and eliminate finalize frame lag spikes | Lucas Galante |
| 2026-06-30 | Optimize grid cell fade drawing on zoom finalize to eliminate lag spikes | Lucas Galante |
| 2026-06-30 | Dynamically disable window backdrop blur and grid fade layers during active zoom/pan | Lucas Galante |
| 2026-06-30 | Introduce render_viewport_update fast-path to bypass expensive redraw logic during pan/zoom | Lucas Galante |
| 2026-06-30 | Implement window scale caching in scale_only_render_finish | Lucas Galante |
| 2026-06-30 | Hide off-screen windows during zoom and pan to optimize CPU/GPU overhead | Lucas Galante |
| 2026-06-30 | Implement dynamic grid LOD scaling during viewport zoom | Lucas Galante |
| 2026-06-30 | Increase grid cell fade resolution by setting step size to 1 | Lucas Galante |
| 2026-06-30 | Keep grid cell corner radius constant in fade layers | Lucas Galante |
| 2026-06-30 | Optimize viewport panning and grid rendering performance | Lucas Galante |
| 2026-06-29 | Support backplate_corner_radius and fix CSD blur override on scaled outputs in compositor | Lucas Galante |
| 2026-06-29 | Support parsing backplate.blur/color/corner_radius properties on compositor layout config | Lucas Galante |
| 2026-06-29 | Add backdrop_blur_ignore_transparent configuration support to decouple status background color and blur opacity | Lucas Galante |
| 2026-06-29 | Add output.scenefx_optimized_blur configuration support to toggle SceneFX optimized blur path | Lucas Galante |
| 2026-06-29 | Apply status_background_blur config to status bar window in window manager | Lucas Galante |
| 2026-06-29 | Support status_background_blur config and conditionally enable layer surface blur | Lucas Galante |
| 2026-06-29 | clean: remove style.background.color from layout config struct and parser | Lucas Galante |
| 2026-06-29 | Rename desktop_background to desktop_background_color | Lucas Galante |
| 2026-06-29 | Remove style.border domain, fields, defaults, command-line usage, and config parsing from cce compositor | Lucas Galante |
| 2026-06-29 | Remove legacy layout fallback routines in server | Lucas Galante |
| 2026-06-29 | Group configuration styling properties into nested nodes (Option C) | Lucas Galante |
| 2026-06-29 | Transition from JSON to KDL format configuration | Lucas Galante |
| 2026-06-29 | Add gestures config to input section, toggle trackpad gesture handlers, and support window focus raising | Lucas Galante |
| 2026-06-28 | Update server status bar reference and tiling logic for cce-status | Lucas Galante |
| 2026-06-28 | Implement per-output display scale configuration and menus support | Lucas Galante |
| 2026-06-27 | Toggle window between Maximized and Floating modes on titlebar double click | Lucas Galante |
| 2026-06-27 | Remove all visible server-side borders and disable special Wine/Proton rules | Lucas Galante |
| 2026-06-27 | Bypass overview input blocking for cce-cloud layer shell surface | Lucas Galante |
| 2026-06-27 | Fix status bar display to show Overlay mode for cce-cloud layer surface | Lucas Galante |
| 2026-06-27 | Rename Pinned to Overlay mode, set cce-cloud to Overlay, bypass overview input block | Lucas Galante |
| 2026-06-27 | Implement standalone Maximized window mode with grid snapping | Lucas Galante |
| 2026-06-27 | fix(server): safely validate list links when raising/raising status bar to prevent reload segfaults | Lucas Galante |
| 2026-06-27 | Remove pinned_border_opacity parameter from compositor config and styling | Lucas Galante |
| 2026-06-27 | fix(server): resolve lagging and duplicating window shadows during resize scaling | Lucas Galante |
| 2026-06-27 | feat(server): support click-to-drag resizing via transparent virtual borders for CSD and borderless windows | Lucas Galante |
| 2026-06-27 | fix: disable backdrop blur on windows with CSD margins to prevent shadow blurring | Lucas Galante |
| 2026-06-27 | fix: force server side decorations to eliminate client CSD borders and shadows | Lucas Galante |
| 2026-06-27 | fix: resolve compositor window border issue and add decoration mode checks | Lucas Galante |
| 2026-06-27 | perf: bypass configure wait tracking during interactive resizing | Lucas Galante |
| 2026-06-27 | fix: layer popups above pinned windows & add smooth 3-finger swipe zoom | Lucas Galante |
| 2026-06-26 | fix(cce-server): scale resize deltas by desk_zoom to fix resizing choppiness | Lucas Galante |
| 2026-06-26 | window_manager: support unique window ID focus lookup and minimize restore | Lucas Galante |
| 2026-06-26 | Ensure trackpad panning persists when pointer moves over windows | Lucas Galante |
| 2026-06-26 | Optimize keystroke event handler by downgrading logging to debug level | Lucas Galante |
| 2026-06-26 | Optimize hot paths by avoiding backtrace capture and allocations in standard log levels | Lucas Galante |
| 2026-06-26 | Optimize desktop grid rendering by caching layout/viewport parameters | Lucas Galante |
| 2026-06-26 | feat: refine overview input disabling to ensure release safety and keep status bar interactive | Lucas Galante |
| 2026-06-26 | feat: disable keyboard, pointer button, and touch inputs on windows in Overview mode, and make scroll events pan the viewport globally | Lucas Galante |
| 2026-06-26 | feat: enable viewport panning by scrolling on the desktop background without holding the Super key | Lucas Galante |
| 2026-06-26 | feat: unfocus the current window when left-clicking on the desktop background | Lucas Galante |
| 2026-06-26 | feat: refine Overview mode interaction to support click-and-drag window movement without automatic zoom-in, and only zoom/focus on click release | Lucas Galante |
| 2026-06-26 | feat: implement WindowManagerMode (Normal, Overview), add wm-mode IPC command, and integrate mode checking | Lucas Galante |
| 2026-06-25 | Set cursor to grab or resize icon on client-requested move/resize | Lucas Galante |
| 2026-06-25 | Do not pan to center window if 75% or more of it is visible in the viewport | Lucas Galante |
| 2026-06-25 | Use app_id instead of title in focus-window command | Lucas Galante |
| 2026-06-25 | Restore focused window state on startup and prevent focus stealing race condition | Lucas Galante |
| 2026-06-25 | Check for WindowState::Mapped in focused window visibility check | Lucas Galante |
| 2026-06-25 | Focus most recently focused window when closing pinned or system windows | Lucas Galante |
| 2026-06-25 | Skip desktop camera panning when focusing cce-cloud dropdown window | Lucas Galante |
| 2026-06-25 | feat: implement desktop zoom via super+control+scrolling | Lucas Galante |
| 2026-06-25 | feat(server): add desktop grid configuration controls (color, scale, line width) | Lucas Galante |
| 2026-06-25 | Sort visible windows stably by SlotMap key index during focus cycle actions | Lucas Galante |
| 2026-06-24 | Rename tags to viewport and remove unused tags code | Lucas Galante |
| 2026-06-24 | Support focusing hovered window during swipe-back gesture when zoomed out | Lucas Galante |
| 2026-06-24 | Fix window centering bug when zooming back from zoomed out state | Lucas Galante |
| 2026-06-24 | Remove expose mode and replace with viewport zoom-out/zoom-in gestures | Lucas Galante |
| 2026-06-24 | window_manager: output focused status of windows in IPC windows command | Lucas Galante |
| 2026-06-24 | window_manager: improve focus-window IPC to use weighted scoring instead of first match | Lucas Galante |
| 2026-06-24 | layer_shell: trigger dirty_windowing on scheduled_focus changes to fix focus on map | Lucas Galante |
| 2026-06-24 | fix: restore animation timer update and prevent viewport panning on startup | Lucas Galante |
| 2026-06-24 | Fix window size restoration and matching on resume, and add modifiers status support | Lucas Galante |
| 2026-06-24 | fix: prevent segfault on reload_config by using safe C wrapper for wlr_input_device.name | Lucas Galante |
| 2026-06-24 | fix: identify status bar as TilingMode::Status and block keyboard focus on it | Lucas Galante |
| 2026-06-24 | fix: stop panning animation on interaction and use correct module path for animation timer | Lucas Galante |
| 2026-06-24 | feat: automatically center focused floating window by panning viewport | Lucas Galante |
| 2026-06-23 | fix: allow dragging pinned windows anywhere on the screen and keeping them at their drop coordinates | Lucas Galante |
| 2026-06-23 | fix: update pinned_position when dragging and releasing a pinned window to left/right half | Lucas Galante |
| 2026-06-23 | fix: allow dragging pinned windows and keep them locked on screen during panning | Lucas Galante |
| 2026-06-23 | feat: keep windows in Pinned mode in Pinned mode when moved | Lucas Galante |
| 2026-06-23 | Fix window sizing restore race by matching and restoring in notify_app_id/notify_title | Lucas Galante |
| 2026-06-23 | Implement window layout and session serialization, restoration, and auto-spawning | Lucas Galante |
| 2026-06-23 | feat: replace SidePanel window mode with Pinned | Lucas Galante |
| 2026-06-23 | feat: restart once=false startup programs on config reload | Lucas Galante |
| 2026-06-23 | feat: report focused window mode in status layout module | Lucas Galante |
| 2026-06-23 | Implement Super + two-finger scroll panning and include other local server/seat updates | Lucas Galante |
| 2026-06-23 | Fix focus fight and side panel opacity flicker on window clicks | Lucas Galante |
| 2026-06-23 | fix(side-panel): associate pinned side panels with active tag quadrant and clean up event flags | Lucas Galante |
| 2026-06-23 | Update default zoom keybindings and implement dynamic desktop background grid | Lucas Galante |
| 2026-06-23 | Implement infinite pannable and zoomable coordinate desktop | Lucas Galante |
| 2026-06-22 | fix: resolve Xwayland startup failure by implementing proper SIGCHLD signal handling | Lucas Galante |
| 2026-06-22 | fix: reset window scale to 1.0 when exiting expose mode | Lucas Galante |
| 2026-06-22 | fix: ensure side panel is stacked above other tiling mode windows when behavior is above | Lucas Galante |
| 2026-06-20 | Separate window_opacity and menubar_opacity configuration in cce | Lucas Galante |
| 2026-06-20 | Workaround CSD window buffer-size bug for Electron/Chromium apps | Lucas Galante |
| 2026-06-20 | Fix CSD window gaps in tiled layouts by avoiding decoration subtraction and maintaining surface alignment | Lucas Galante |
| 2026-06-19 | fix: correctly place wm-toggled fullscreen windows in fullscreen rendering layer | Lucas Galante |
| 2026-06-19 | fix: correctly inform client and draw borders/background when wm toggles fullscreen | Lucas Galante |
| 2026-06-19 | feat: implement Status tiling mode for status bar windows and fix fullscreen reporting | Lucas Galante |
| 2026-06-19 | fix: change tiling fullscreen mode to occupy entire physical screen | Lucas Galante |
| 2026-06-19 | fix: disable wine shadow workaround for fullscreen windows to resolve TrackMania resize issues | Lucas Galante |
| 2026-06-19 | Fix Trackmania flickering by improving wine window detection and enforcing tiling bounds for non-floating/non-popup windows | Lucas Galante |
| 2026-06-19 | Clean up compiler warnings | Lucas Galante |
| 2026-06-19 | Allow clients to get toplevel and set popup mode without hijacking active WM | Lucas Galante |
| 2026-06-19 | protocol: allow windows to request popup mode via zcce_toplevel_v1 | Lucas Galante |
| 2026-06-19 | Rename clearctl to cce-ctl | Lucas Galante |
| 2026-06-19 | Fix layout configure loop for layer shell outputs when object is null | Lucas Galante |
| 2026-06-19 | Fix window flicker loop by dirtying rendering instead of windowing in layer shell events | Lucas Galante |
| 2026-06-19 | Update tiled window tiling_mode to current_layout in arrange_views | Lucas Galante |
| 2026-06-19 | Migrate configuration from TOML to JSON | Lucas Galante |
| 2026-06-19 | Allow Ready and Initialized windows in layout arrange loop to ensure they get configured | Lucas Galante |
| 2026-06-19 | Refresh grid window layout when a window is closed | Lucas Galante |
| 2026-06-19 | Implement expose mode border highlight and pointer focus transitions | Lucas Galante |
| 2026-06-19 | Replace river-window-management-v1 with cce-window-management-v1 | Lucas Galante |
| 2026-06-19 | Rename clear-inspector-v1 protocol to cce-inspector-v1 | Lucas Galante |
| 2026-06-19 | Add custom cce-window-management-v1 protocol and server backend | Lucas Galante |
| 2026-06-18 | fix: make hex color parsing robust against extra quotes and spaces | Lucas Galante |
| 2026-06-18 | fix: prevent segfault in layer shell when output is destroyed | Lucas Galante |
| 2026-06-18 | Migrate configuration from TOML to JSON | Lucas Galante |
| 2026-06-17 | refactor: rename socket files and update logging paths to remove 'client' and 'clear-' | Lucas Galante |
| 2026-06-16 | fix: preserve maximized layout flag in configure during expose mode | Lucas Galante |
| 2026-06-16 | feat: adjust CSD geometry calculations and resolve layout gaps on transitions | Lucas Galante |
| 2026-06-16 | feat: switch window to cascade mode on maximize and fix client maximized state notification | Lucas Galante |
| 2026-06-16 | fix: support drag-to-resize and drag-to-move for CSD windows | Lucas Galante |
| 2026-06-16 | Set DISPLAY env var in compositor process when Xwayland is ready | Lucas Galante |
| 2026-06-16 | feat: automatically enter floating mode on window move or resize | Lucas Galante |
| 2026-06-16 | Disable compositor window background under CSD | Lucas Galante |
| 2026-06-16 | Transition CCE to CSD by default | Lucas Galante |
| 2026-06-16 | fix: delay IPC server startup until WAYLAND_DISPLAY is set | Lucas Galante |
| 2026-06-16 | Support transparency toggle from settings config | Lucas Galante |
| 2026-06-16 | fix(render): include window hidden state in layout order hash | Lucas Galante |
| 2026-06-16 | fix(focus): protect non-window focus from layout autofocus stealing | Lucas Galante |
| 2026-06-16 | fix(tag): resolve window rendering deadlock when switching tags | Lucas Galante |
| 2026-06-16 | fix(window): inherit active window manager tags on creation | Lucas Galante |
| 2026-06-16 | fix(focus): restore window manager focus when layer-surface unmaps | Lucas Galante |
| 2026-06-16 | fix(status): resolve focused window title for layer-shell surfaces (cce-cloud) | Lucas Galante |
| 2026-06-16 | fix(cce): status interface tag visibility, focus updates, and window layout/size checks | Lucas Galante |
| 2026-06-16 | fix: re-apply scale to all windows right before scene graph render build, ensuring subsurfaces are scaled correctly | Lucas Galante |
| 2026-06-16 | fix: immediately re-apply scaled dimensions on window commits during expose mode to prevent snapping/flickering | Lucas Galante |
| 2026-06-16 | fix: resolve expose status updates feedback loop and HiDPI window scale restoration | Lucas Galante |
| 2026-06-16 | fix: resolve flickering by only updating scene node geometry if it changed | Lucas Galante |
| 2026-06-16 | feat: implement dedicated Expose tiling mode with visual window scaling | Lucas Galante |
| 2026-06-16 | Decrease swipe gesture threshold to 50.0 pixels for better responsiveness | Lucas Galante |
| 2026-06-16 | Implement expose mode (as Grid layout toggle) and expose IPC command | Lucas Galante |
| 2026-06-16 | Show desktop notification on config reload | Lucas Galante |
| 2026-06-16 | Add config reload action, bind it to super+shift+r, and add trackpad gesture config support | Lucas Galante |
| 2026-06-15 | fix: restrict resize zone to outer border edge and implement layout resize preservation for floating windows | Lucas Galante |
| 2026-06-15 | fix: make entire border a resize zone to prevent accidental window movement | Lucas Galante |
| 2026-06-15 | fix: resolve crash during window resize by allowing configure in intermediate states | Lucas Galante |
| 2026-06-15 | Transition windows from Cascade mode to Floating mode on border drag/resize | Lucas Galante |
| 2026-06-15 | Implement dragging and resizing for server-side borders on floating windows | Lucas Galante |
| 2026-06-15 | feat: set window clipping margin to 0 to remove window edge fade/shadows | Lucas Galante |
| 2026-06-15 | Implement window surface backdrop matching border color and opacity | Lucas Galante |
| 2026-06-15 | Cascade mode improvements and layout-specific border widths | Lucas Galante |
| 2026-06-15 | Remove legacy startup scripts | Lucas Galante |
| 2026-06-15 | Fix compositor exit core dump and cleanly terminate background startup processes | Lucas Galante |
| 2026-06-15 | fix: resolve core dump on compositor shutdown by unregistering cursor event listeners and detaching devices from seat | Lucas Galante |
| 2026-06-15 | feat(server): render desktop background using layout low_color config | Lucas Galante |
| 2026-06-15 | feat: parse and apply touchpad/mouse input settings in monolithic server | Lucas Galante |
| 2026-06-15 | Center window content and clip shadows completely when SSD is active | Lucas Galante |
| 2026-06-15 | Allow client shadows under SSD borders and clip precisely to border edges | Lucas Galante |
| 2026-06-15 | Override geometry offset to 0 when SSD is active to prevent off-center layout | Lucas Galante |
| 2026-06-15 | Allow client-requested CSD mode while keeping compositor border active | Lucas Galante |
| 2026-06-15 | Fix border color depth calculation for unfocused windows | Lucas Galante |
| 2026-06-15 | feat: implement scroll scaling and sensitivity config | Lucas Galante |
| 2026-06-15 | Fix compositor focus capture in monolithic mode and untangle pointer hover focus | Lucas Galante |
| 2026-06-15 | Fix status server socket display naming initialization order | Lucas Galante |
| 2026-06-15 | Restrict status bar window height to bar_height and fix install target path | Lucas Galante |
| 2026-06-15 | Fix border color parsing bug by replicating color channel bytes to 32-bit format | Lucas Galante |
| 2026-06-15 | Implement output scaling, side panel support, restacking stability fixes, and general cleanup in monolithic cce-server | Lucas Galante |
| 2026-06-14 | Fix monolithic window mapping, layer shell support, and rendering lifecycle assertions | Lucas Galante |
| 2026-06-14 | Reorganize project structure: promote client and server to root modules | Lucas Galante |
| 2026-06-14 | Update sub-project Makefiles to support workspace target directories | Lucas Galante |
| 2026-06-14 | Add workspace Cargo.toml | Lucas Galante |
| 2026-06-14 | Merge cce-client into cce monorepo | Lucas Galante |
| 2026-06-14 | Merge cce-server into cce monorepo | Lucas Galante |
| 2026-06-14 | Initial commit of cce monorepo with README | Lucas Galante |
| 2026-06-14 | Move all files to cce-client subdirectory for monorepo merge | Lucas Galante |
| 2026-06-14 | Move all files to cce-server subdirectory for monorepo merge | Lucas Galante |
| 2026-06-14 | Fix Chromium margin right/bottom scale 2 gap | Lucas Galante |
| 2026-06-13 | Improve XWayland window and window manager node handling in server | Lucas Galante |
| 2026-06-13 | Refactor client window manager: update Wayland, input, and decorations handling | Lucas Galante |
| 2026-06-10 | Update Wayland client window decorations, borders, and restart handling | Lucas Galante |
| 2026-06-09 | Refactor and adapt widgets to use UiContext and scale factor | Lucas Galante |
| 2026-06-09 | Refactor and adapt widgets to use UiContext and scale factor | Lucas Galante |
| 2026-06-06 | Update clear-computing-environment-client to adapt to Element trait refactoring (modified: src/config.rs, src/decorations.rs, src/inspector_cli.rs and 4 others) | Lucas Galante |
| 2026-06-05 | feat: implement set_blur request for window and decoration interfaces | Lucas Galante |
| 2026-06-05 | feat: support SidePanel tiling, window border blur, 3D shading, and rounded corners | Lucas Galante |
| 2026-06-03 | Update and align interface features | Lucas Galante |
| 2026-06-03 | Update and align interface features | Lucas Galante |
| 2026-06-02 | Update system configuration and interface modules | Lucas Galante |
| 2026-06-02 | Update system configuration and interface modules | Lucas Galante |
| 2026-06-01 | Fix: session-scope ccec state and default tag layouts to Cascade to align with layout page | Lucas Galante |
| 2026-06-01 | Commit outstanding clear-computing-environment-client tiling fixes | Lucas Galante |
| 2026-06-01 | Implement clear-inspector-v1 protocol and add inspector capability to server | Lucas Galante |
| 2026-06-01 | Implement clear-inspector-v1 protocol and add inspector CLI client | Lucas Galante |
| 2026-05-29 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-29 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-28 | Add backdrop blur for transparent windows via SceneFX | Lucas Galante |
| 2026-05-28 | Implement handle_request_set_cursor_shape to support cursor-shape-v1 protocol | Lucas Galante |
| 2026-05-28 | Export WLR_NO_HARDWARE_CURSORS=1 in startup script to fix disappearing cursor on NVIDIA hybrid GPU systems | Lucas Galante |
| 2026-05-28 | Add no-op handlers for inert River resources to prevent NULL listener aborts | Lucas Galante |
| 2026-05-28 | Fix compositor crash on TTY switch by implementing inert resource stubs | Lucas Galante |
| 2026-05-28 | Rename binary and start script references to clear-river | Lucas Galante |
| 2026-05-28 | Fix compositor crash on drag icon destruction | Lucas Galante |
| 2026-05-28 | Update build.rs to use local protocol paths directly | Lucas Galante |
| 2026-05-28 | Fix use-after-free and structure casting crashes during device destruction | Lucas Galante |
| 2026-05-28 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-28 | Commit local changes: unify protocol/opcodes, fix pointer focus and keybind safety | Lucas Galante |
| 2026-05-27 | Implement XKB Keyboard Status Broadcasting (river_xkb_keyboard_v1) | Lucas Galante |
| 2026-05-27 | Implement libinput physical device configuration and river_input_management_v1 integration | Lucas Galante |
| 2026-05-27 | feat: Port compositor core to Rust up to Phase 14 (Keyboard Grouping) | Lucas Galante |
| 2026-05-26 | Initialize clear-river-rust port project on rust-port branch | Lucas Galante |
| 2026-05-26 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-26 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-25 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-25 | Update system configuration and interface modules | Lucas Galante |
| 2026-05-24 | Fix IPC view/toggle/set-tag commands to trigger render and status updates, fix clearctl socket leak | Lucas Galante |
| 2026-05-24 | Update components and system settings | Lucas Galante |
| 2026-05-23 | focus: prevent clear-notifier from auto-focusing on spawn | Lucas Galante |
| 2026-05-23 | Implement wake-up pipe to make IPC command execution instant and thread-safe | Lucas Galante |
| 2026-05-23 | Honor size hints for floating window defaults and map reload to restart | Lucas Galante |
| 2026-05-23 | feat: Implement window title decorations on borders | Lucas Galante |
| 2026-05-23 | Ignore clear-status-interface in focus/tiling; support logical screen geometry scaling | Lucas Galante |
| 2026-05-23 | feat: add system notifications support and notify IPC command | Lucas Galante |
| 2026-05-21 | feat: add IPC server and title-based fallback matching for window rules | Lucas Galante |
| 2026-05-19 | add state persistence, xprop parent detection, libinput tap-to-click, per-tag layouts, and window management improvements | Lucas Galante |
| 2026-05-19 | protocol: fix typo in description | Isaac Freund |
| 2026-05-13 | fix startup spawn: use spawn_command_bg for fd-closing | Lucas Galante |
| 2026-05-13 | add tag visibility, output scale, status socket, deferred spawn model, and fd-closing fixes | Lucas Galante |
| 2026-05-12 | build: don't override use_llvm/lld defaults | Isaac Freund |
| 2026-05-11 | add tiling, IPC, config, borders, status, restart, and Wayland protocol handling | Lucas Galante |
| 2026-05-10 | init: cargo project with wayland protocol codegen | Lucas Galante |
| 2026-05-09 | WindowManager: process hidden fullscreen windows correctly | Kirill Primak |
| 2026-04-30 | Window: clear focus in makeInert() rather than unmap() | Isaac Freund |
| 2026-04-29 | protocol: fix accel profile message summaries | Kirill Primak |
| 2026-04-29 | XdgPopup: fix positioning to respect parent geometry | Isaac Freund |
| 2026-04-29 | Seat: fix memory leak | Isaac Freund |
| 2026-04-29 | XdgPopup: improve output selection | Isaac Freund |
| 2026-04-27 | protocol: add "done" event to input management objects | Kirill Primak |
| 2026-04-27 | river: eliminate unnecessary global variables | Isaac Freund |
| 2026-04-27 | river: use std.process.fatal | Isaac Freund |
| 2026-04-27 | river: leverage std.log.defaultLog() | Isaac Freund |
| 2026-04-27 | protocol: clarify semantics of 32-bit RGBA values | Isaac Freund |
| 2026-04-25 | river: add xdg-foreign-v2 support | Kirill Primak |
| 2026-04-25 | build: bump dependencies to tagged versions | Isaac Freund |
| 2026-04-25 | river: fix double free | Isaac Freund |
| 2026-04-24 | OutputManager: fix assertion failure on hotplug | Isaac Freund |
| 2026-04-22 | river: downgrade log on incompatibility heuristic failure | Isaac Freund |
| 2026-04-22 | protocol: add xkb_binding_seat_v1.modifiers_{watch,update} | Isaac Freund |
| 2026-04-22 | XdgToplevel: clip capture scene tree to geometry | Kirill Primak |
| 2026-04-22 | ci: workaround upstream zig bug | Isaac Freund |
| 2026-04-22 | build: add -Dllvm option | Isaac Freund |
| 2026-04-22 | build: switch back to upstream translate-c | Isaac Freund |
| 2026-04-22 | LayerSurface: check keyboard_interactivity before focusing | Isaac Freund |
| 2026-04-19 | build: use translate-c fork to fix FreeBSD build | Isaac Freund |
| 2026-04-19 | build: switch to translate-c build step | Isaac Freund |
| 2026-04-19 | build: use std.Deque | Isaac Freund |
| 2026-04-16 | build: update to Zig 0.16 | Isaac Freund |
| 2026-04-18 | river: log whether Xwayland is disabled at runtime | Kirill Primak |
| 2026-04-18 | river: add Xwayland support info to version | Kirill Primak |
| 2026-04-17 | Window: fix frame perfection edge case on map | Isaac Freund |
| 2026-04-17 | XdgToplevel: fix initial configure with 0 dimension | Isaac Freund |
| 2026-04-16 | Output: send river_output_v1.wl_output immediately | Isaac Freund |
| 2026-04-13 | TabletTool: ignore inconsistent tip down/up events | Isaac Freund |
| 2026-04-13 | Seat: support hold pointer gestures | Isaac Freund |
| 2026-04-13 | protocol: fix documentation typos | Isaac Freund |
| 2026-04-11 | TabletTool: don't set wlr_tool.data to null on destroy | Kirill Primak |
| 2026-04-06 | Xwayland: add missing null check | Isaac Freund |
| 2026-03-31 | Server: set and reuse capture_source per window | Peter Kaplan |
| 2026-03-31 | build: update to tagged zig-wlroots release | Isaac Freund |
| 2026-03-31 | Xwayland: update dimensions hint on change | Isaac Freund |
| 2026-03-23 | wlr-foreign-toplevel-management: implement subset | Anatolii Smolianinov |
| 2026-03-31 | forgejo: add wm fields to bug report template | Isaac Freund |
| 2026-03-30 | Keyboard: work around wlroots modifiers limitation | Isaac Freund |
| 2026-03-30 | KeyboardGroup: sync LEDs | Isaac Freund |
| 2026-03-30 | ext-image-capture-source: support toplevels | Isaac Freund |
| 2026-03-29 | Server: implement color management protocols | Isaac Freund |
| 2026-03-29 | cursor-shape: implement version 2 | Isaac Freund |
| 2026-03-29 | Server: implement wl_fixes | Isaac Freund |
| 2026-03-29 | protocol: improve set_keymap docs | Isaac Freund |
| 2026-03-28 | Window: remove redundant code after wlroots update | Isaac Freund |
| 2026-03-28 | InputRelay: adapt to wlroots breaking change | Isaac Freund |
| 2026-03-27 | build: update to wlroots 0.20 | Isaac Freund |
| 2026-03-21 | Seat: fix state reset on river_seat_v1 destroy | Isaac Freund |
| 2026-03-20 | Seat: actually update sent pointer position | kewuaa |
| 2026-03-19 | docs: wording tweak | Isaac Freund |
| 2026-03-19 | docs: improve donation plea | Isaac Freund |
| 2026-03-19 | docs: add no-AI/LLM policy to CONTRIBUTING.md as well | Isaac Freund |
| 2026-03-19 | docs: document strict no AI/LLM policy | Isaac Freund |
| 2026-03-18 | Window: clear focus on unmap | Isaac Freund |
| 2026-03-17 | WindowManager: make all objects inert on wm destroy | Isaac Freund |
| 2026-03-16 | WindowManager: fix possible manage_dirty related hang | Isaac Freund |
| 2026-03-16 | XkbBinding: restore assertion in pressed() | Isaac Freund |
| 2026-03-16 | KeyboardGroup: release keys on keyboard removal | Isaac Freund |
| 2026-03-16 | InputDevice: fix assertion failure | Isaac Freund |
| 2026-03-15 | deps: update to tagged releases | Isaac Freund |
| 2026-03-15 | docs: add missing commas in readme | Isaac Freund |
| 2026-03-15 | build: bump version to 0.5.0-dev | Isaac Freund |
| 2026-03-15 | build: bump version to 0.4.0 | Isaac Freund |
| 2026-03-15 | docs: update README for 0.4.0 release | Isaac Freund |
| 2026-03-14 | forgejo: add use case issue template | Isaac Freund |
| 2026-03-14 | Seat: eliminate input device pointers in event queue | Isaac Freund |
| 2026-03-13 | WindowManager: handle destroy during manage/render sequence | Sivecano |
| 2026-03-12 | docs: improve protocol wording | Isaac Freund |
| 2026-03-11 | river: fix assertion failure on relative init path | Isaac Freund |
| 2026-03-11 | docs: attempt to disambiguate get_decoration_{above,below} | Isaac Freund |
| 2026-03-11 | river: detect riverctl in init file and bail | Isaac Freund |
| 2026-03-10 | InputDevice: fix cleanup | Isaac Freund |
| 2026-03-10 | xkb-config: don't expose virtual keyboards | Isaac Freund |
| 2026-03-10 | protocol: improve fullscreen_requested docs | Isaac Freund |
| 2026-03-06 | docs: tweak tinyrwm link wording | Isaac Freund |
| 2026-03-06 | docs: link to tinyrwm repo | Isaac Freund |
| 2026-03-05 | Window: fix assertion failure on wm restart | Isaac Freund |
| 2026-03-05 | river: remove hardcoded Ctrl+Alt+Delete keybinding | Isaac Freund |
| 2026-03-05 | protocol: add river_window_manager_v1.exit_session | Isaac Freund |
| 2026-02-23 | protocol: clarify op_start_pointer focus semantics | Isaac Freund |
| 2026-02-23 | protocol: implement river_window_v1.set_dimension_bounds | Isaac Freund |
| 2026-02-20 | Window: implement river_window_v1.identifier event | Peter Kaplan |
| 2026-02-19 | protocol: add river_window_v1.identifier | Isaac Freund |
| 2026-02-11 | protocol: allow wm to set pointer cursor | Isaac Freund |
| 2026-02-11 | protocol: clean up river_seat_v1 description | Isaac Freund |
| 2026-02-05 | protocol: add river_output_v1.set_presentation_mode | Isaac Freund |
| 2026-02-05 | protocol: bump river-window-management-v1 minor version | Isaac Freund |
| 2026-03-04 | OutputManager: fix inconsistent modeset test/commit failure | Isaac Freund |
| 2026-03-04 | OutputManager: exit river if initial modeset fails | Isaac Freund |
| 2026-03-04 | OutputManager: fix assertion on failed commit | Isaac Freund |
| 2026-03-03 | layer-shell: send focus_none more consistently | Isaac Freund |
| 2026-03-03 | protocol: improve river-layer-shell-v1 docs | Isaac Freund |
| 2026-03-02 | libinput-config: fix set_accel_speed type | Isaac Freund |
| 2026-03-02 | build: add -Dversion-string option | Isaac Freund |
| 2026-02-28 | build: replace use of deprecated functions | Luuk Machielse |
| 2026-03-02 | OutputManager: don't forget .soft_disabled state | Isaac Freund |
| 2026-02-28 | Xwayland: minor cleanup | Isaac Freund |
| 2026-02-28 | Xwayland: don't use min_width/min_height as fallback max_width/max_height | Zuki Air |
| 2026-02-26 | build: move constanst to top of file | Isaac Freund |
| 2026-02-26 | build: use type inference for manifest import | Luuk Machielse |
| 2026-02-26 | Xwayland: ensure fullscreen_requested sent for new windows | Isaac Freund |
| 2026-02-26 | Revert "Xwayland: ensure all state sent for new windows" | Isaac Freund |
| 2026-02-26 | Xwayland: ensure all state sent for new windows | Isaac Freund |
| 2026-02-24 | river: implement ext-data-control-v1 | Isaac Freund |
| 2026-02-24 | linux-dmabuf: bump to version 5 | Isaac Freund |
| 2026-02-24 | build: remove dead code | Isaac Freund |
| 2024-09-04 | build: load tablet-v2 protocol from its new location | tiosgz |
| 2025-01-07 | Xwayland: don't inherit rlimit changes from river | Isaac Freund |
| 2024-12-30 | river: wrap monotonic time > 2^32-1 milliseconds | Isaac Freund |
| 2026-02-24 | river: implement alpha-modifier-v1 | Isaac Freund |
| 2026-02-23 | river: implement ext-image-capture-source/copy-capture | Isaac Freund |
| 2026-02-20 | docs: link to nice protocol docs in readme | Isaac Freund |
| 2026-02-20 | protocol: add libinput-config nested sessions note | Isaac Freund |
| 2026-02-20 | protocol: fix wlr layer shell reference | Isaac Freund |
| 2026-02-20 | protocol: improve more toplevel summaries | Isaac Freund |
| 2026-02-20 | protocol: improve toplevel summaries | Isaac Freund |
| 2026-02-19 | forgejo: this ain't gitea | Isaac Freund |
| 2026-02-19 | github: delete unneeded close_prs workflow | Isaac Freund |
| 2026-02-19 | ci: stop running redundant jobs on every git.sr.ht push | Isaac Freund |
| 2026-02-19 | XwaylandWindow: send correct position take 2 | Isaac Freund |
| 2026-02-19 | XwaylandWindow: send correct position during fullscreen | Isaac Freund |
| 2026-02-14 | protocol: add arg summaries for river-window-management-v1 | Isaac Freund |
| 2026-02-13 | OutputManager: reject coordinates too large for X11 | Isaac Freund |
| 2026-02-13 | Keyboard: fix modifiers with X11/Wayland backend | Isaac Freund |
| 2026-02-13 | WindowManager: make render order workaround safer | Isaac Freund |
| 2026-02-13 | Xwayland: send configure on renderFinish() as well | Isaac Freund |
| 2026-02-12 | Scene: workaround wlroots API limitations | Isaac Freund |
| 2026-02-12 | Cursor: fix handling of pointer bindings during op | Isaac Freund |
| 2026-02-10 | layer-shell: ensure non_exclusive_area sent on x/y change | Isaac Freund |
| 2026-02-09 | protocol: clarify fullscreen initial configure | Isaac Freund |
| 2026-02-05 | build: match wayland-protocols pc file conventions | Isaac Freund |
| 2026-02-05 | build: install all river protocols | Sivecano |
| 2026-02-03 | Keyboard: use more "normal" repeat info defaults | Isaac Freund |
| 2026-01-30 | Seat: fix spurious window_interaction on wm connect | Isaac Freund |
| 2026-01-30 | LayerShellOutput: ensure non_exclusive_area sent | Sivecano |
| 2026-01-29 | doc: more concise readme | Isaac Freund |
| 2026-01-29 | doc: readme tweak order | Isaac Freund |
| 2026-01-29 | doc: tweak readme wording | Isaac Freund |
| 2026-01-29 | protocol: remove "testing phase" disclaimers | Isaac Freund |
| 2026-01-27 | protocol: scroll factor < 0 is a protocol error | Isaac Freund |
| 2026-01-28 | protocol: fix typos/copy paste errors | nate zhou |
| 2026-01-27 | doc: list xkbcommon version requirement | Isaac Freund |
| 2026-01-23 | doc: fix missing closing paren in readme | Isaac Freund |
| 2026-01-21 | doc: keyboard layout configuration is implemented | Isaac Freund |
| 2026-01-09 | protocol: implement river-xkb-config-v1 | Isaac Freund |
| 2026-01-20 | doc: link IRC logs in readme | Isaac Freund |
| 2026-01-15 | KeyboardGroup: don't eat modifiers due to ensure_next_key_eaten | Isaac Freund |
| 2026-01-15 | XwaylandWindow: send parent event | Isaac Freund |
| 2026-01-15 | protocol: add xkb_binding_v1.stop_repeat | Isaac Freund |
| 2026-01-14 | protocol: add xkb_bindings_seat_v1.ensure_next_key_eaten | Isaac Freund |
| 2026-01-14 | protocol: bump river-xkb-binding-v1 minor version | Isaac Freund |
| 2026-01-15 | XwaylandWindow: set dimensions hint | Isaac Freund |
| 2026-01-14 | WindowManager: fix typo | Isaac Freund |
| 2026-01-12 | WindowManager: disconnect wm if unresponsive | Isaac Freund |
| 2026-01-12 | doc: link window manager list in man page | Isaac Freund |
| 2026-01-09 | Window: actually disable borders when fullscreen | Isaac Freund |
| 2026-01-09 | OutputManager: fix assertion failure | Isaac Freund |
| 2026-01-08 | protocol: specify fullscreen/clip interaction | Isaac Freund |
| 2026-01-07 | Window: reset requested state on object destroy | Isaac Freund |
| 2026-01-07 | protocol: add river_seat_v1.pointer_warp | Isaac Freund |
| 2026-01-07 | protocol: add river_window_v1.set_content_clip_box | Isaac Freund |
| 2026-01-07 | protocol: bump river-window-management-v1 minor version | Isaac Freund |
| 2026-01-08 | river: support wl_shm version 2 | Isaac Freund |
| 2026-01-08 | XwaylandWindow: fix maximized/fullscreen typo | Isaac Freund |
| 2026-01-08 | XwaylandWindow: handle window setting dimensions | Isaac Freund |
| 2026-01-07 | Window: fix missing returns after sending an error | Sivecano |
| 2026-01-06 | Output: set app-id to "river" for Wayland backend | Isaac Freund |
| 2026-01-06 | Server: recover from GPU resets | Isaac Freund |
| 2026-01-04 | protocol: minor clarifications | Isaac Freund |
| 2026-01-04 | Cursor: never set XCURSOR_* env variables | Isaac Freund |
| 2026-01-04 | Output: slightly reduce code duplication | Isaac Freund |
| 2026-01-04 | LayerShellOutput: reset state on object destroy | Isaac Freund |
| 2026-01-04 | Output: ensure river_output_v1.wl_output is sent | Isaac Freund |
| 2026-01-03 | InputDevice: don't advertise if virtual | Isaac Freund |
| 2026-01-02 | Decoration: fix clip x/y coordinates | Isaac Freund |
| 2026-01-02 | InputDevice: do wlroots-suggested output mappings | Isaac Freund |
| 2026-01-02 | Seat: apply mappings in attachDevice() | Isaac Freund |
| 2026-01-02 | protocol: fix typos | Isaac Freund |
| 2026-01-01 | editorconfig: remove dead code | Isaac Freund |
| 2026-01-01 | doc: fix last missing © symbols | Isaac Freund |
| 2026-01-01 | ci: check REUSE specification compliance | Isaac Freund |
| 2026-01-01 | doc: use the REUSE licensing specification [1] | Isaac Freund |
| 2025-12-31 | doc: input configuration is now implemented | Isaac Freund |
| 2025-12-28 | protocol: implement river-libinput-config-v1 | Isaac Freund |
| 2025-12-22 | protocol: implement river-input-management-v1 | Isaac Freund |
| 2025-12-23 | build: remove unused globber module | Isaac Freund |
| 2025-12-23 | river: remove dead input config code | Isaac Freund |
| 2025-12-23 | river: remove dead switch input device code | Isaac Freund |
| 2025-12-30 | doc: tweak README links | Isaac Freund |
| 2025-12-30 | doc: add Zulip link to README, reorganize | Isaac Freund |
| 2025-12-27 | protocol: add river_window_v1.unreliable_pid | Isaac Freund |
| 2025-12-27 | protocol: add river_window_v1.set_clip_box | Isaac Freund |
| 2025-12-27 | protocol: add river_seat_v1.pointer_position | Isaac Freund |
| 2025-12-22 | protocol: add river_seat_v1.set_xcursor_theme | Isaac Freund |
| 2025-12-22 | protocol: bump river-window-management-v1 minor version | Isaac Freund |
| 2025-12-26 | OutputManager: round scale to nearest 1/120 | Isaac Freund |
| 2025-12-26 | Output: stop using default field values for State | Isaac Freund |
| 2025-12-26 | OutputManager: fix setting output scale | Isaac Freund |
| 2025-12-21 | contrib: fix tagline in .desktop file | Isaac Freund |
| 2025-12-21 | river: implement ext-foreign-toplevel-list | Peter Kaplan |
| 2025-12-20 | doc: link wm list in README | Isaac Freund |
| 2025-12-20 | LayerSurface: don't configure in response to unmap | Isaac Freund |
| 2025-12-20 | Window: only close toplevel once on request | Isaac Freund |
| 2025-12-20 | build: ignore stderr from git | Isaac Freund |
| 2025-12-19 | XdgToplevel: initialize geometry | Isaac Freund |
| 2025-12-19 | protocol: clarify get_decoration_{above,below} | Isaac Freund |
| 2025-12-18 | WindowManager: fix shell surfaces above fullscreen | Isaac Freund |
| 2025-12-17 | Scene: place fullscreen windows on new layer | Gabriel Sanches |
| 2025-12-15 | docs: fix repology link | Isaac Freund |
| 2025-12-15 | WindowManager: fix possible assertion failure | Isaac Freund |
| 2025-12-15 | XdgToplevel: only track size change configures | Isaac Freund |
| 2025-12-12 | WindowManager: fix fullscreen-related rendering order | Isaac Freund |
| 2025-12-12 | Xwayland: fix use after free | Isaac Freund |
| 2025-12-11 | docs: list builtin keybindings | Isaac Freund |
| 2025-12-10 | docs: barrier to entry, not of entry | Isaac Freund |
| 2025-12-10 | codeberg: redirect to river-classic in issue template | Isaac Freund |
| 2025-12-10 | docs: tweak wording in README | Isaac Freund |
| 2025-12-10 | river: remove dead code | Isaac Freund |
| 2025-12-10 | docs: update for river-window-management-v1 | Isaac Freund |
| 2025-12-10 | XdgToplevel: don't send redundant configures | Isaac Freund |
| 2025-12-08 | Output: improve Wayland backend TODO comment | Isaac Freund |
| 2025-12-08 | OutputManager: fix initial modeset on DRM backend | Isaac Freund |
| 2025-12-04 | rwm: remove unimplemented events/requests | Isaac Freund |
| 2025-12-04 | river: clean up remaining XXX comments | Isaac Freund |
| 2025-12-04 | WindowManager: send session lock events | Isaac Freund |
| 2025-12-04 | Output: fix mode lifetime | Isaac Freund |
| 2025-12-04 | OutputManager: tighten asserts, resolve XXX comments | Isaac Freund |
| 2025-12-04 | WindowManager: fix redundant naming | Isaac Freund |
| 2025-12-04 | OutputManager: fix disabling outputs | Isaac Freund |
| 2025-12-03 | session-lock: unbreak implementation | Isaac Freund |
| 2025-12-02 | layer-shell: fix clip box, clarify protocol | Isaac Freund |
| 2025-12-01 | ShellSurface: fix destroy handling | Isaac Freund |
| 2025-12-01 | OutputManager: fix missing null check | Isaac Freund |
| 2025-12-01 | Output: never send 0 Output dimensions | Isaac Freund |
| 2025-12-01 | Output: fix sending river_output_v1.removed event | Isaac Freund |
| 2025-12-01 | river: ctrl+alt+delete to exit | Isaac Freund |
| 2025-11-29 | XkbBinding: don't log undefined memory | Isaac Freund |
| 2025-11-29 | Output: destroy layer surfaces on destroy | Isaac Freund |
| 2025-11-27 | ci: fix build | Isaac Freund |
| 2025-11-27 | Xwayland: bring up to speed with rwm changes | Isaac Freund |
| 2025-11-27 | Window: fix sending activated | Isaac Freund |
| 2025-11-19 | layer-shell: implement protocol | Isaac Freund |
| 2025-09-14 | river: zig 0.15 fmt | Isaac Freund |
| 2025-09-14 | security-context: fix assertion failure | Isaac Freund |
| 2025-08-25 | build: update to Zig 0.15 | Isaac Freund |
| 2025-08-23 | rivercompat: delete | Isaac Freund |
| 2025-08-19 | Cursor: fix DnD related assertion failure | Isaac Freund |
| 2025-08-12 | xkb-bindings: fix description | Isaac Freund |
| 2025-08-11 | rwm: extract xkb bindings to an extension protocol | Isaac Freund |
| 2025-08-11 | build: delete dead riverctl/rivertile code | Isaac Freund |
| 2025-08-05 | Window: send river_window_v1.show_window_menu_requested | Isaac Freund |
| 2025-08-05 | Window: send river_window_v1.parent | Isaac Freund |
| 2025-08-04 | Window: store in SlotMap | Isaac Freund |
| 2025-08-04 | common/slotmap: test removal during iteration | Isaac Freund |
| 2025-08-04 | Window: send (un)maximize/minimize_requsted | Isaac Freund |
| 2025-07-28 | rwm: rework window-initiated interactive move/resize | Isaac Freund |
| 2025-07-21 | InputPopup: support river shell surfaces | Isaac Freund |
| 2025-07-21 | InputPopup: fix a TODO panic | Isaac Freund |
| 2025-07-20 | rwm: add missing protocol errors | Isaac Freund |
| 2025-07-20 | output: let wlr_output_layout manage wl_output globals | Isaac Freund |
| 2025-07-19 | input: remove outdated XXX comment | Isaac Freund |
| 2025-07-19 | input: rewrite keyboard handling | Isaac Freund |
| 2025-07-14 | XdgPopup: fix TODO panic | Isaac Freund |
| 2025-07-14 | rwm: expand on keyboard design issue comment | Isaac Freund |
| 2025-06-30 | Seat: ignore virtual keyboards until keymap set | Isaac Freund |
| 2025-06-25 | Keyboard: don't add virtual keyboards to group | Isaac Freund |
| 2025-07-13 | river: remove dead keyboard group code | Isaac Freund |
| 2025-07-13 | rwm: remove stray reference to window cropping | Isaac Freund |
| 2025-07-13 | common/slotmap: add iterator | Isaac Freund |
| 2025-07-12 | common: add a basic SlotMap implementation | Isaac Freund |
| 2025-07-12 | river: clean up some TODO comments | Isaac Freund |
| 2025-07-12 | rwm: implement fullscreen | Isaac Freund |
| 2025-07-10 | rwm: use global names for wl_output/wl_seat references | Isaac Freund |
| 2025-04-27 | river: drop wl_drm support | Isaac Freund |
| 2025-04-27 | linux-drm-syncobj: implement protocol | Isaac Freund |
| 2025-07-05 | linux-dmabuf: re-enable per-surface feedback | Isaac Freund |
| 2025-07-05 | build: update to wlroots 0.19 | Isaac Freund |
| 2025-07-05 | WindowManager: fix window borders rendering after close | Isaac Freund |
| 2025-07-05 | Window: remove bad assertion | Isaac Freund |
| 2025-07-04 | Window: consolidate state | Isaac Freund |
| 2025-07-04 | Window: refactor away redundant destroying bool | Isaac Freund |
| 2025-07-04 | Window: fix destroy post initial commit/pre map (take 2) | Isaac Freund |
| 2025-07-04 | river: remove bad assertion | Isaac Freund |
| 2025-07-03 | security-context: add river_window_manager_v1 to blocklist | Isaac Freund |
| 2025-03-10 | security-context: fix assertion failure | Isaac Freund |
| 2025-07-03 | rwm: make naming more concise | Isaac Freund |
| 2025-07-02 | WindowManager: fix switching between wms | Isaac Freund |
| 2025-07-02 | rwm: add river_seat_v1.wl_seat | Isaac Freund |
| 2025-07-02 | rwm: add river_output_v1.wl_output | Isaac Freund |
| 2025-07-02 | river: leverage decl literals | Isaac Freund |
| 2025-07-01 | build: update to zig 0.14 | Isaac Freund |
| 2025-06-30 | Window: fix destroy post initial commit/pre map | Isaac Freund |
| 2025-06-25 | rwm: simplify pointer_leave | Isaac Freund |
| 2025-04-27 | rwm: shift move/resize application to client | Isaac Freund |
| 2025-04-27 | Output: fix drm backend support | Isaac Freund |
| 2025-04-22 | Cursor: fix pointer enter/leave events | Isaac Freund |
| 2025-04-15 | rwm: fix contradiction | Isaac Freund |
| 2025-03-23 | Seat: send rwm pointer_enter/leave events | Isaac Freund |
| 2025-03-23 | rivercompat: change border color on focus | Isaac Freund |
| 2025-03-23 | Decoration: make frame perfect on window close | Isaac Freund |
| 2025-03-23 | Window: simplify destroy() | Isaac Freund |
| 2025-03-23 | Window: fix frame perfection on close | Isaac Freund |
| 2025-03-23 | rivercompat: don't pass WAYLAND_DEBUG to children | Isaac Freund |
| 2025-03-23 | rivercompat: implement more actions | Isaac Freund |
| 2025-03-23 | rivercompat: fix closing windows | Isaac Freund |
| 2025-03-23 | rivercompat: reorganize global state | Isaac Freund |
| 2025-03-21 | rivercompat: start implementing 0.3 window management | Isaac Freund |
| 2025-03-20 | rwm: allow consecutive rendering update sequences | Isaac Freund |
| 2025-03-20 | Decoration: fix destruction | Isaac Freund |
| 2025-03-20 | Window: fix first configure timeout handling | Isaac Freund |
| 2025-03-20 | Window: implement river_decoration_v1 | Isaac Freund |
| 2025-03-19 | river: implement new rwm update sequence | Isaac Freund |
| 2025-03-12 | rivercompat: implement new rwm update sequence | Isaac Freund |
| 2025-03-11 | rwm: specify new update sequence "main loop" | Isaac Freund |
| 2025-01-15 | rwm: clarify shell_surface_interaction description | Isaac Freund |
| 2025-01-09 | ShellSurface: implement input/focus handling | Isaac Freund |
| 2025-01-09 | Window: ensure closed is sent in update sequence | Isaac Freund |
| 2025-01-08 | river: fix issues with window destruction | Isaac Freund |
| 2025-01-08 | Window: implement river_window_v1.set_app_id/title | Isaac Freund |
| 2025-01-08 | WindowManager: remove faulty assert | Isaac Freund |
| 2025-01-06 | river: mostly implement river_shell_surface_v1 | Isaac Freund |
| 2025-01-05 | rwm: note that position/dimensions ignore borders | Isaac Freund |
| 2025-01-04 | Window: implement river_window_v1.set_borders | Isaac Freund |
| 2025-01-04 | Seat: fix race on ending resize op | Isaac Freund |
| 2025-01-04 | Window: refactor states to better reflect reality | Isaac Freund |
| 2025-01-02 | Cursor: delete dead code | Isaac Freund |
| 2025-01-02 | Seat: implement resize operations | Isaac Freund |
| 2025-01-01 | Seat: implement pointer move operations | Isaac Freund |
| 2025-01-01 | InputConfig: do default input mapping for nested sessions | Isaac Freund |
| 2024-12-30 | rwm: generalize interactive seat operations | Isaac Freund |
| 2024-12-30 | WindowManager: remove unneeded lists | Isaac Freund |
| 2024-12-30 | rwm: rework interactive move/resize | Isaac Freund |
| 2024-12-30 | river: implement river_window_v1.hide | Isaac Freund |
| 2024-12-29 | rwm: add and implement river_window_v1.dimensions_hint | Isaac Freund |
| 2024-12-29 | Seat: stop trying to ensure pointer frames are sent synchronously | Isaac Freund |
| 2024-12-29 | rwm: specify dimensions event behavior | Isaac Freund |
| 2024-12-29 | Window: reply to proposed_dimensions with dimensions | Isaac Freund |
| 2024-12-29 | Window: send dimensions event on change | Isaac Freund |
| 2024-12-29 | river: implement river_window_v1.close | Isaac Freund |
| 2024-12-29 | river: implement river_pointer_binding_v1 | Isaac Freund |
| 2024-12-28 | river: implement river_xkb_binding_v1 | Isaac Freund |
| 2024-12-27 | WindowManager: send update on bind | Isaac Freund |
| 2024-12-27 | WindowManager: commit transaction on update timeout | Isaac Freund |
| 2024-12-27 | river: handle rwm object destruction properly | Isaac Freund |
| 2024-12-26 | river: fix rendering order | Isaac Freund |
| 2024-12-26 | rwm: add river_node_v1.place_{top,bottom} | Isaac Freund |
| 2024-12-26 | rwm: fix assertion failures, cleanup | Isaac Freund |
| 2024-12-26 | river: add log scope filtering | Isaac Freund |
| 2024-12-26 | river: clean up logging scopes | Isaac Freund |
| 2024-12-26 | rwm: expand on river_output_v1 event timing | Isaac Freund |
| 2024-12-25 | Seat: start integration with rwm state machine | Isaac Freund |
| 2024-12-22 | InputManager: remove dead code | Isaac Freund |
| 2024-12-22 | rwm: align river_seat_v1 with river_output_v1 | Isaac Freund |
| 2024-12-21 | XdgToplevel: remove redundant code | Isaac Freund |
| 2024-12-21 | WindowManager: actually destroy windows | Isaac Freund |
| 2024-12-21 | river: render a window with the rwm protocol | Isaac Freund |
| 2024-12-21 | rivercompat: initial skeleton | Isaac Freund |
| 2024-12-20 | Root: rename to OutputManager | Isaac Freund |
| 2024-12-20 | Scene: split out from Root | Isaac Freund |
| 2024-12-20 | Output: rework for rwm protocol | Isaac Freund |
| 2024-09-16 | river: delete wlr-layer-shell-v1 support | Isaac Freund |
| 2024-08-12 | rwm: clarify binding release event behavior | tiosgz |
| 2024-08-10 | Root: restructure scene graph for rwm protocol | Isaac Freund |
| 2024-08-07 | rwm: unavailable is first/only event if sent | Isaac Freund |
| 2024-08-07 | rwm: specify border corner drawing | Isaac Freund |
| 2024-08-07 | rwm: clarify close/destroy details | Isaac Freund |
| 2024-08-07 | rwm: initial configure may be delayed | Isaac Freund |
| 2024-08-07 | rwm: clean up place_above/below | Isaac Freund |
| 2024-07-31 | WindowManager: send configures | Isaac Freund |
| 2024-07-31 | Xwayland: shorten naming conventions | Isaac Freund |
| 2024-07-29 | Window: handle most rwm protocol requests | Isaac Freund |
| 2024-07-29 | rwm: river_node_v1 tweaks | Isaac Freund |
| 2024-07-29 | rwm: fix set_capabilities argument | Isaac Freund |
| 2024-07-28 | WindowManager: state machine transitions | Isaac Freund |
| 2024-07-25 | Window: add update sequence machinery | Isaac Freund |
| 2024-07-24 | WindowManager: continue fleshing out state machine | Isaac Freund |
| 2024-07-21 | WindowManager: start structuring state | Isaac Freund |
| 2024-07-19 | river: move transaction code to WindowManager | Isaac Freund |
| 2024-07-19 | WindowManager: create global | Isaac Freund |
| 2024-07-17 | river: rename view -> window | Isaac Freund |
| 2024-07-17 | river: remove some dead code | Isaac Freund |
| 2024-06-28 | Output: remove wm_stack | Isaac Freund |
| 2024-06-28 | Seat: remove repeat mappings | Isaac Freund |
| 2024-06-28 | river: remove focus stack | Isaac Freund |
| 2024-06-28 | river: remove float special casing | Isaac Freund |
| 2024-06-28 | river: remove tags | Isaac Freund |
| 2024-06-28 | river: remove modes | Isaac Freund |
| 2024-06-28 | river: remove more unneeded config bits | Isaac Freund |
| 2024-06-28 | river: remove rules | Isaac Freund |
| 2024-06-28 | river: remove various config options | Isaac Freund |
| 2024-06-28 | river: remove river-layout-v3 | Isaac Freund |
| 2024-06-28 | river: remove river-control-unstable-v1 | Isaac Freund |
| 2024-06-28 | river: remove river-status-unstable-v1 | Isaac Freund |
| 2024-07-21 | rwm: add missing decoration hint | Isaac Freund |
| 2024-07-21 | rwm: tighten up window creation sequence | Isaac Freund |
| 2024-07-03 | rwm: rename (un)maximize -> inform_(un)maximized | Isaac Freund |
| 2024-07-03 | rwm: clarify behavior of multiple set_borders | Isaac Freund |
| 2024-07-03 | rwm: be explicit about surface role assignment | Isaac Freund |
| 2024-07-03 | rwm: document pointer warp/confinement interaction | Isaac Freund |
| 2024-07-03 | rwm: window may never set app-id/title | Isaac Freund |
| 2024-06-25 | rwm: pointer confine and warp | Isaac Freund |
| 2024-06-25 | rwm: add output usable area hint | Isaac Freund |
| 2024-06-19 | rwm: csd/ssd negotiation | Isaac Freund |
| 2024-06-19 | rwm: set tiled state | Isaac Freund |
| 2024-06-19 | rwm: parent/child window relationship | Isaac Freund |
| 2024-06-19 | rwm: window app-id, title | Isaac Freund |
| 2024-06-17 | rwm: capabilities, window_menu, minimize | Isaac Freund |
| 2024-06-17 | rwm: notify of session lock/unlock | Isaac Freund |
| 2024-06-17 | rwm: fullscreen, maximize, cleanups | Isaac Freund |
| 2024-06-17 | xkb-keybinds: delete protocol | Isaac Freund |
| 2024-06-17 | rwm: add key bindings and pointer bindings | Isaac Freund |
| 2024-06-12 | xkb-keybinds: clarify behavior of modifiers | Isaac Freund |
| 2024-06-12 | xkb-keybinds: check modifiers only on key press | Isaac Freund |
| 2024-06-12 | xkb-keybinds: improve naming and descriptions | Isaac Freund |
| 2024-06-09 | xkb-keybinds: add protocol | Isaac Freund |
| 2024-04-29 | rwm: add interactive pointer move/resize | Isaac Freund |
| 2024-04-27 | rwm: add river_seat_v1 and focus management | Isaac Freund |
| 2024-04-26 | rwm: remove edges arg of get_decoration | Isaac Freund |
| 2024-04-26 | rwm: disambiguate some things based on feedback | Isaac Freund |
| 2024-04-25 | rwm: add render list and shell surfaces | Isaac Freund |
| 2024-04-25 | rwm: s/done/update/ and add ack_update | Isaac Freund |
| 2024-04-24 | rwm: sketch out window decorations | Isaac Freund |
| 2024-04-23 | rwm: start sketching out protocol | Isaac Freund |
| 2024-07-17 | LayerSurface: minor style/naming tweaks | Isaac Freund |
| 2024-07-16 | LayerSurface: focus on_demand-interactive surfaces on map | tiosgz |
| 2024-07-16 | build: update to wlroots 0.18.0 | Isaac Freund |
| 2024-07-12 | completions: zsh click-method option fix | Felix Bowman |
| 2024-07-10 | PointerConstraint: fix assertion failure | Isaac Freund |
| 2024-07-07 | docs: mention zig build -h in readme | Palanix |
| 2024-07-02 | layer-shell: fix on_demand keyboard focus | Isaac Freund |
| 2024-07-01 | XdgPopup: send configure after initial commit | Isaac Freund |
| 2024-07-01 | Output: fix Wayland backend support | Isaac Freund |
| 2024-06-30 | docs: tweak repology link wording in readme | Isaac Freund |
| 2024-06-25 | Xwayland: fix unsound cast | Isaac Freund |
| 2024-06-24 | Output: flag gamma as dirty on enable | Isaac Freund |
| 2024-06-14 | input: apply map-to-output on output activation | Isaac Freund |
| 2024-06-13 | SceneNodeData: fix fromSurface() use after free | Isaac Freund |
| 2024-06-13 | ci: log build summaries | Isaac Freund |
| 2024-06-13 | ci: re-enable FreeBSD builds | Isaac Freund |
| 2024-06-13 | ci: use mirror for zig tarball downloads | Isaac Freund |
| 2024-06-07 | build: update to Zig 0.13.0 | Isaac Freund |
| 2024-05-23 | ci: cleanup messy tar invocations | Isaac Freund |
| 2024-05-20 | ci: Check the formatting of build.zig.zon | Hugo Machet |
| 2024-05-20 | ci: drop FreeBSD CI for now | Isaac Freund |
| 2024-05-20 | build: switch to the Zig package manager | Isaac Freund |
| 2024-04-20 | build: add -Dno-llvm build option | Isaac Freund |
| 2024-03-07 | build: update to Zig 0.12 | Isaac Freund |
| 2024-05-18 | PointerConstraint: remove overly tight assert 2 | Isaac Freund |
| 2024-05-18 | PointerConstraint: remove overly tight assert | Isaac Freund |
| 2024-05-15 | InputPopup: fix minor issues, simplify code | Isaac Freund |
| 2024-05-15 | TextInput: ignore enable requests without focus | Isaac Freund |
| 2024-05-15 | InputPopup: fix naming | Isaac Freund |
| 2024-04-01 | input-method-v2: Implement popups | leviathan |
| 2024-05-15 | Server: fix filtering of newly created globals | Isaac Freund |
| 2024-05-14 | command/swap: fix cursor warp on focus change | ymcx |
| 2024-05-14 | github: automatically close prs | Isaac Freund |
| 2024-05-12 | Keyboard: fix redundant leave/enter on creation | Isaac Freund |
| 2024-05-12 | Cursor: don't hide while pointer constraint active | Isaac Freund |
| 2024-05-01 | Xwayland: disallow negative output coordinates | LordMZTE |
| 2024-04-24 | input: change ScrollFactor and MapToOutput to align with other options | Alex Mirrlees-Black |
| 2024-04-23 | input: fix scroll-factor resetting if unspecified | Alex Mirrlees-Black |
| 2024-04-23 | input: prevent duplicate input configs | Alex Mirrlees-Black |
| 2024-04-19 | XdgToplevel: update clip on geometry x/y change | Isaac Freund |
| 2024-04-18 | XdgToplevel: don't update geometry if configure inflight | Isaac Freund |
| 2024-04-17 | build: bump version to 0.4.0-dev | Isaac Freund |
| 2024-04-16 | build: bump version to 0.3.0 | Isaac Freund |
| 2024-04-16 | docs: remove website url at top of readme | Isaac Freund |
| 2024-04-16 | docs: freshen up readme with text from website | Isaac Freund |
| 2024-04-16 | input: minor fixes and cleanups for scroll-factor | Isaac Freund |
| 2024-04-11 | input: add scroll-factor configuration | István Donkó |
| 2024-04-16 | layer-surface: close if exclusive zones too large | Isaac Freund |
| 2024-04-15 | docs: update URL in man pages | Isaac Freund |
| 2024-04-09 | docs: redefine Code of Conduct scope | Isaac Freund |
| 2024-04-09 | logo: make readme logo bigger on small displays | Isaac Freund |
| 2024-04-09 | docs: fix another broken link in the coc | Isaac Freund |
| 2024-04-09 | docs: fix broken link in coc | Isaac Freund |
| 2024-04-09 | docs: add Code of Conduct | Isaac Freund |
| 2024-04-08 | river: raise the file descriptor limit | Isaac Freund |
| 2024-04-08 | View: add more assertions around destruction | Isaac Freund |
| 2024-04-08 | Root: fix leak on view destroy | Isaac Freund |
| 2024-04-08 | Output: fix possible assertion failure on enable | Isaac Freund |
| 2024-04-08 | View: fix assertion failure if focused while destroying | Isaac Freund |
| 2024-04-08 | logo: use adaptive color/no background for readme | Isaac Freund |
| 2024-04-03 | View: always check if current.output is null | Isaac Freund |
| 2024-04-01 | ci: migrate to codeberg | Isaac Freund |
| 2024-03-26 | docs: fix typo in previous commit | Isaac Freund |
| 2024-03-26 | docs: update README stability disclaimer | Isaac Freund |
| 2024-03-21 | logo: add an official river logo | Isaac Freund |
| 2024-03-18 | Keyboard: ignore multiple presses of a key | tiosgz |
| 2024-03-25 | docs: update release urls for codeberg migration | Isaac Freund |
| 2024-03-25 | docs: update wiki url | Isaac Freund |
| 2024-03-25 | codeberg: maybe fix issue template take 2 | Isaac Freund |
| 2024-03-25 | codeberg: maybe fix issue template | Isaac Freund |
| 2024-03-25 | codeberg: add bug report issue template | Isaac Freund |
| 2024-03-24 | command/map: add note about upstream xkbcommon fix | Isaac Freund |
| 2024-03-22 | docs: migrate to codeberg | Isaac Freund |
| 2023-11-10 | command/focus-view: add -skip-floating | Leon Henrik Plickat |
| 2024-03-20 | layer-shell: crop surfaces to output bounds | Isaac Freund |
| 2024-03-18 | View: fix potential assertion failure on destroy | Isaac Freund |
| 2024-03-15 | TabletTool: use "pencil" cursor shape | Leon Henrik Plickat |
| 2024-03-17 | Root: increase transaction timeout to 100ms | Isaac Freund |
| 2024-03-16 | README: update required wlroots version to 0.17.2 | Yutaro Ohno |
| 2024-03-15 | deps: update zig-wayland for a minor cleanup | Isaac Freund |
| 2024-03-15 | touch: handle cancel event, fix assertion failure | Isaac Freund |
| 2024-03-15 | XdgToplevel: validate move/resize request serial | Isaac Freund |
| 2024-03-15 | security-context: implement protocol | Isaac Freund |
| 2024-03-15 | pointer-gestures: move to input manager | Isaac Freund |
| 2024-03-14 | Server: remove all listeners on deinit() | Isaac Freund |
| 2024-03-14 | RuleList: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Vector: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Switch: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | SwitchMapping: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Control: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Mode: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | LayoutDemand: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | PointerMapping: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | StatusManager: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | SeatStatus: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | InputConfig: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | idle-inhibit: fix naming, eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | LayoutManager: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Config: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Keyboard: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | InputManager: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | XwaylandOverrideRedirect: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Mapping: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | XwaylandView: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | XdgToplevel: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Cursor: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | View: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Output: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Seat: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Root: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Layout: eliminate "self" naming convention | Isaac Freund |
| 2024-03-14 | Server: clean up initialization | Isaac Freund |
| 2024-03-08 | mailmap: map Hugo's old emails to new one | Hugo Machet |
| 2024-03-08 | completions: Add missing completions | Hugo Machet |
| 2023-11-10 | View: restore to previous output on reconnect | Leon Henrik Plickat |
| 2024-03-13 | View: fix SSD desync on consecutive timeouts | Isaac Freund |
| 2024-03-13 | View: improve transaction timeout handling | Isaac Freund |
| 2024-03-12 | deps: switch to codeberg upstreams, update | Isaac Freund |
| 2024-03-11 | build: require wlroots version 0.17.2 | Isaac Freund |
| 2024-03-11 | tablet-v2: implement tablet tool support | Isaac Freund |
| 2024-03-09 | View: remove faulty assertion | Isaac Freund |
| 2024-03-08 | Root: reduce transaction timeout to 50ms | Isaac Freund |
| 2024-03-08 | View: clean up attach-mode code, add assert | Isaac Freund |
| 2024-03-05 | View: Add attachRelative function | Peter Kaplan |
| 2024-03-07 | build: enable frame pointers in release safe | Isaac Freund |
| 2024-03-05 | completions/zsh: Update attach-modes | Peter Kaplan |
| 2024-03-05 | command/attach-modes: above and below options | Peter Kaplan |
| 2024-03-05 | example/init: Replace light with brightnessctl | Hugo Machet |
| 2024-03-04 | mailmap: map Isaac's old email to the new one | Isaac Freund |
| 2024-03-02 | river: only expose xwayland_shell_v1 to Xwayland | Isaac Freund |
| 2024-03-02 | deps: update to latest zig-wayland and zig-wlroots | Isaac Freund |
| 2024-02-27 | linux-dmabuf: disable per-surface feedback | Isaac Freund |
| 2024-02-25 | Root: fix auto-layout output coordinates | Isaac Freund |
| 2024-02-25 | output-management: fix output destroy handling | Isaac Freund |
| 2024-02-23 | InputConfig: code style cleanups | Isaac Freund |
| 2024-02-20 | command/input: add map-to-output | LordMZTE |
| 2024-02-22 | XdgToplevel: work around buggy clients | Isaac Freund |
| 2024-02-21 | rules: fix assertion failure | Isaac Freund |
| 2024-02-20 | Root: fix crash on deinit() | Isaac Freund |
| 2024-02-20 | Root: fix crash on output disable | Isaac Freund |
| 2024-02-20 | XdgToplevel: handle timed out state in configure() | Isaac Freund |
| 2024-02-20 | InputConfig: simplify libinput API usage | Isaac Freund |
| 2023-01-06 | InputConfig: Implement disable while trackpointing | Hugo Machet |
| 2024-02-19 | Root: trival code cleanup in deactivateOutput() | Isaac Freund |
| 2024-02-19 | command/map: remove references to locked mods | Isaac Freund |
| 2024-02-16 | river: clear up docs on -c parameter | LordMZTE |
| 2024-02-19 | command/input: cleanup memory manangement a bit | Isaac Freund |
| 2024-01-08 | command/input: support globs | Leon Henrik Plickat |
| 2024-02-19 | river: add -no-xwayland cli flag | Hugo Machet |
| 2024-02-19 | Keyboard: ignore >32 simultaneous key presses | Isaac Freund |
| 2024-02-19 | Keyboard: don't crash when coming from a different tty | tiosgz |
| 2024-02-18 | Keyboard: style/naming nits and comment tweaks | Isaac Freund |
| 2024-02-18 | deps: update zig-wlroots | tiosgz |
| 2024-02-18 | Keyboard: rework key processing semantic | tiosgz |
| 2024-02-18 | KeycodeSet: move to Keyboard.zig | tiosgz |
| 2024-02-15 | View: don't clip off CSD shadow and the like | Isaac Freund |
| 2024-02-15 | river: fix names of input config settings | Leon Henrik Plickat |
| 2024-02-14 | refactor input configuration | Leon Henrik Plickat |
| 2024-02-13 | XdgToplevel: handle configure timeout gracefully | Isaac Freund |
| 2024-02-10 | View: clip scene tree to output | Isaac Freund |
| 2024-02-10 | command/zoom: always warp cursor if configured | Isaac Freund |
| 2024-02-06 | xdg-toplevel: handle destroy before xdg-decoration | Isaac Freund |
| 2024-02-04 | Keyboard: eat key before running mapping | tiosgz |
| 2024-01-27 | Keyboard: fix key handling/eating logic | tiosgz |
| 2024-01-13 | attach-mode: code/documentation style tweaks | Isaac Freund |
| 2024-01-03 | attach-mode: implement after <N> | Orfeas |
| 2024-01-12 | Root: use Output.PendingState for fallback | Isaac Freund |
| 2024-01-11 | river: fix -log-level filtering | Isaac Freund |
| 2024-01-11 | Keyboard: don't send enter before keymap event | Isaac Freund |
| 2024-01-11 | Keyboard: check translated keysyms for mappings | Isaac Freund |
| 2024-01-10 | river: log version during startup | Isaac Freund |
| 2024-01-09 | Root: fix stack order on restore from 0 outputs | Isaac Freund |
| 2024-01-09 | Root: remove unneeded fallback.inflight lists | Isaac Freund |
| 2024-01-07 | Seat: fix potential crash in handleMapping() | Isaac Freund |
| 2024-01-03 | keyboard-groups: use globber for identifier matching | Leon Henrik Plickat |
| 2024-01-06 | Keyboard: fix mapping XF86ScreenSaver | Isaac Freund |
| 2024-01-06 | river: re-add wl_drm support for now | Isaac Freund |
| 2024-01-06 | Cursor: Focus follows cursor focuses empty outputs | Wouter van Heijst |
| 2024-01-05 | Output: fix possible crash on destroy | Isaac Freund |
| 2024-01-05 | Keyboard: delete some uneeded code | Isaac Freund |
| 2024-01-04 | Cursor: clean up cursor theme loading | Isaac Freund |
| 2024-01-04 | river: Implement cursor_shape_v1 | MaxVerevkin |
| 2024-01-04 | Cursor: actually set xcursor_name | MaxVerevkin |
| 2024-01-03 | Keyboard: Add new keyboards to groups if matched | Leon Henrik Plickat |
| 2024-01-03 | xdg-activation: fix race with transaction system | Isaac Freund |
| 2024-01-03 | linux-dmabuf: send better per-surface feedback | Isaac Freund |
| 2024-01-03 | river: drop support for wl_drm | Isaac Freund |
| 2024-01-03 | river: Implement fractional_scale_v1 | MaxVerevkin |
| 2024-01-03 | XdgToplevel: fix frame perfection on unmap | Isaac Freund |
| 2024-01-01 | Keyboard: clarify keypress routing logic | Isaac Freund |
| 2024-01-01 | TextInput: fix consecutive enable requests | Isaac Freund |
| 2024-01-01 | TextInput/InputRelay: style nits | Isaac Freund |
| 2023-12-31 | TextInput: handle multiple text inputs correctly | Isaac Freund |
| 2023-12-31 | TextInput: remove pending_focused_surface | Isaac Freund |
| 2023-12-31 | input-method: address nits | praschke |
| 2023-12-21 | input-method: check that the input method is active when committing | praschke |
| 2023-12-06 | input-method: send text-input enter event after all leave events | praschke |
| 2023-12-05 | input-method: setKeyboard already sends modifiers | praschke |
| 2023-07-11 | river: Implement input_method and text_input | praschke |
| 2024-01-01 | build: require at least wlroots 0.17.1 | Isaac Freund |
| 2023-12-31 | output-management: work around wlroots crash | Isaac Freund |
| 2023-12-29 | output-management: fix output config application | Isaac Freund |
| 2023-12-29 | gamma-control: track wlroots 0.17 changes | Isaac Freund |
| 2023-12-05 | deps: update to lastest zig-wlroots | Isaac Freund |
| 2023-12-05 | build: fix comment on scanner.generate() versions | Isaac Freund |
| 2023-12-05 | ci: fix arch and alpine | Isaac Freund |
| 2023-12-05 | Output: fix initial commit for wayland backend | Isaac Freund |
| 2023-12-05 | Root: fix faulty assertion, cleanup | Isaac Freund |
| 2023-12-05 | Output: fix regression of initial mode logic | Isaac Freund |
| 2023-12-04 | SceneNodeData: fix fromNode() | Isaac Freund |
| 2023-12-01 | build: update to wlroots 0.17 | Isaac Freund |
| 2023-11-17 | session-lock: fix pointer focus handling on map | Isaac Freund |
| 2023-11-14 | Cursor: fix high polling rate resize regression | Isaac Freund |
| 2023-11-13 | Cursor: clamp cursor movement to resize bounds | Isaac Freund |
| 2023-11-09 | View: handle map while no outputs are available | Isaac Freund |
| 2023-08-12 | keyboard: add the ability to load layout from file | István Donkó |
| 2023-11-09 | river: remove dead code | Isaac Freund |
| 2023-11-08 | xdg-toplevel: ignore redundant move/resize requests | Isaac Freund |
| 2023-11-08 | rules: rename "tag" action to "tags" | Isaac Freund |
| 2023-11-06 | river: add fullscreen rule | polykernel |
| 2023-08-29 | river: add position and dimensions rules | polykernel |
| 2023-11-06 | pointer-constraints: fix assertion failure | Isaac Freund |
| 2023-11-03 | XdgToplevel: tweak fullscreen state policy | Isaac Freund |
| 2023-11-03 | Cursor: use inflight_mode as needed in updateState() | Isaac Freund |
| 2023-10-30 | riverctl(1): add a section on terminology | tiosgz |
| 2023-10-26 | rivertile: eliminate an @intCast() | Isaac Freund |
| 2023-10-25 | DragIcon: set position on creation | Isaac Freund |
| 2023-10-22 | editorconfig: reflect state of bash completion | tiosgz |
| 2023-10-22 | completions/bash: complete input devices, fix typos | tiosgz |
| 2023-10-22 | completions/fish: partial overhaul | tiosgz |
| 2023-10-25 | docs: update PACKAGING.md for Zig 0.11 | Isaac Freund |
| 2023-10-21 | docs: explain unknown info in output identifiers | Isaac Freund |
| 2023-10-19 | river: add outputs rule | Doclic |
| 2023-10-19 | river: make RuleList return deleted items | Doclic |
| 2023-10-18 | completions/zsh: Fix incomplete input names | Hugo Machet |
| 2023-10-17 | completions: Rewrite zsh | Hugo Machet |
| 2023-10-17 | Cursor: use total delta for resize calculation | Isaac Freund |
| 2023-10-01 | riverctl: rule-{add,del}: reorder parameters | tiosgz |
| 2023-10-16 | View: clean up after Zig update | Isaac Freund |
| 2023-10-16 | build: update to Zig 0.11.0 | Isaac Freund |
| 2023-03-25 | Cursor: keep focus_follows_cursor_target updated | tiosgz |
| 2023-08-06 | Root: fix inflight_layout_demands counting | tiosgz |
| 2023-08-06 | Root: migrate {all,active}_outputs to wl.list | tiosgz |
| 2023-08-04 | Root: make 'fallback output empty' assertion stricter | tiosgz |
| 2023-08-03 | Root: rename field outputs to active_outputs | tiosgz |
| 2023-08-03 | river: update some comments | tiosgz |
| 2023-07-11 | river: fix spatial direction focusing / swapping | Leon Henrik Plickat |
| 2023-07-08 | river: focus-view and swap by spatial direction | Leon Henrik Plickat |
| 2023-06-30 | river: fix crash when trying to add tag rule without tag argument | Leon Henrik Plickat |
| 2023-06-27 | river: add tags rule | Leon Henrik Plickat |
| 2023-06-27 | river: change order of colums in list-rules command | Leon Henrik Plickat |
| 2023-06-27 | river: allow settings child type of RuleList | Leon Henrik Plickat |
| 2023-06-20 | river-layout: Remove incorrect assertion | Isaac Freund |
| 2023-06-04 | riverctl: Add error messages for failed connections | Leon Henrik Plickat |
| 2023-06-05 | XdgToplevel: store scene node in wlr_surface data | Isaac Freund |
| 2023-05-08 | XdgToplevel: keep wlroots updated on view sizes | Väinö Mäkelä |
| 2023-05-02 | editorconfig: fix typo | Sage Hane |
| 2023-03-23 | command/send-to-output: add -current-tags flag | Pablo Ovelleiro Corral |
| 2023-03-23 | Server: remove debug leftover | tiosgz |
| 2023-03-24 | session-lock: fix assertion failures and clean up | Isaac Freund |
| 2023-03-16 | LayerSurface: fix surfaces on multiple outputs at once | Isaac Freund |
| 2023-03-16 | LayerSurface: handle focus when switching outputs | Isaac Freund |
| 2023-03-15 | build: work around zig 0.10.0 bug to fix CI | Isaac Freund |
| 2023-03-14 | Cursor: apply x/y change during resize on commit | Isaac Freund |
| 2023-03-14 | Cursor: lock to current geometry during move/resize | Isaac Freund |
| 2023-03-14 | XdgToplevel: ensure view dimensions match geometry | Isaac Freund |
| 2023-03-14 | Cursor: fix warp on output change with no views | Isaac Freund |
| 2023-03-14 | Root: separate fallback list to handle 0 outputs | Isaac Freund |
| 2023-03-14 | Root: remove incorrect assertions in addOutput() | Isaac Freund |
| 2023-03-14 | Output: reinitialize output_status, cleanup | Isaac Freund |
| 2023-03-13 | doc: fix typo in riverctl man page | Isaac Freund |
| 2023-03-12 | example/init: update for rules system | Isaac Freund |
| 2023-03-12 | docs: fix typo in riverctl man page | Isaac Freund |
| 2023-03-12 | river: add rules system | Isaac Freund |
| 2023-03-10 | xdg-decoration: clean up implementation | Isaac Freund |
| 2023-03-10 | View: add `none` impl tag for better safety checks | Isaac Freund |
| 2023-03-06 | xdg-shell: determine tiled state by float state | Isaac Freund |
| 2023-03-09 | example/init: Fix confusing comments | Isaac Freund |
| 2023-03-09 | river-status: only send layout name if changed | Isaac Freund |
| 2023-03-08 | XdgToplevel: clean up wlr_surface data on destroy | Isaac Freund |
| 2023-03-08 | Xwayland: eliminate unneeded user data usage | Isaac Freund |
| 2023-03-07 | layer-shell: apply exclusive zones in separate pass | Isaac Freund |
| 2023-03-06 | Seat: fix potential assertion failure | Isaac Freund |
| 2023-03-06 | river: improve comments on pending/inflight/current | Isaac Freund |
| 2023-03-06 | wlr-foreign-toplevel-management: implement protocol | Isaac Freund |
| 2023-03-06 | Xwayland: only raise views if activated | Isaac Freund |
| 2023-03-05 | pointer-constraints: implement protocol | Isaac Freund |
| 2023-03-05 | Seat: use the grab aware API to clear focus | Isaac Freund |
| 2023-03-05 | Cursor: use pending position to warp during move | Isaac Freund |
| 2023-03-04 | presentation-time: support protocol | Isaac Freund |
| 2023-03-04 | Server: remove headless backend | Isaac Freund |
| 2023-03-04 | SceneNodeData: allow access from wlr_surfaces | Isaac Freund |
| 2023-03-04 | river: clean up some uneeded TODOs | Isaac Freund |
| 2023-03-04 | river: fix a few leaks | Isaac Freund |
| 2023-03-04 | Cursor: store offset and warp cursor during move | Isaac Freund |
| 2023-03-04 | View: rework configure abstraction | Isaac Freund |
| 2023-03-03 | xdg-shell: honor client move/resize requests | Isaac Freund |
| 2023-03-03 | Cursor: allow resizing from all edges | Isaac Freund |
| 2023-03-03 | deps: update zig-wlroots to fix Xwayland crash | Isaac Freund |
| 2023-03-03 | Xwayland: hide override redirect windows if locked | Isaac Freund |
| 2023-03-03 | Root: keep all fullscreen views the correct size | Isaac Freund |
| 2023-03-02 | XdgToplevel: fix size_changed check on commit | Isaac Freund |
| 2023-03-02 | Xwayland: fix has_fixed_size heuristic for floating | Isaac Freund |
| 2023-03-02 | View: handle destroy during inflight layout demand | Isaac Freund |
| 2023-03-02 | river: render floating views above the layout | Isaac Freund |
| 2023-03-01 | View: fix frame perfection on unmap | Isaac Freund |
| 2023-03-01 | View: only send configures through transactions | Isaac Freund |
| 2023-03-01 | Output: fix background of transformed outputs | Isaac Freund |
| 2023-03-01 | Root: fix use of view.current before update | Isaac Freund |
| 2023-03-01 | View: clamp to output on exiting float/fullscreen | Isaac Freund |
| 2023-03-01 | View: move borders state to State struct | Isaac Freund |
| 2023-03-01 | Root: fix more fullscreen bugs | Isaac Freund |
| 2023-03-01 | session-lock: fix race with multiple outputs | Isaac Freund |
| 2023-03-01 | Output: inline renderOutput function | Isaac Freund |
| 2023-03-01 | Root: centralize focus(null) calls in applyPending() | Isaac Freund |
| 2023-02-28 | csd-filter-add/remove: add missing applyPending() | Isaac Freund |
| 2023-02-28 | river: fix various fullscreen related bugs | Isaac Freund |
| 2023-02-28 | LayerSurface: fix use-after-free on destroy | Isaac Freund |
| 2023-02-28 | OutputStatus: rework implementation | Isaac Freund |
| 2023-02-24 | river: rework core data structures & transactions | Isaac Freund |
| 2023-02-22 | View: use saved surface trees for transactions | Isaac Freund |
| 2023-02-20 | Xwayland: render using the scene graph | Isaac Freund |
| 2023-02-16 | DragIcon: render using the scene graph | Isaac Freund |
| 2023-02-12 | xdg-shell: implement version 5 | Isaac Freund |
| 2023-02-12 | XdgPopup: reimplement using the scene graph | Isaac Freund |
| 2023-02-11 | LayerSurface: render using the scene graph | Isaac Freund |
| 2023-02-10 | View: remove dead code | Isaac Freund |
| 2023-02-01 | Xwayland: create scene tree | Isaac Freund |
| 2023-02-01 | View: implement borders with scene graph | Isaac Freund |
| 2023-02-01 | Output: use separate scene trees for layers | Isaac Freund |
| 2023-01-31 | session-lock: use the scene graph | Isaac Freund |
| 2023-01-29 | Cursor: remove surfaceAt() | Isaac Freund |
| 2023-01-27 | render: use wlr_scene to render views | Isaac Freund |
| 2023-01-27 | wlr-foreign-toplevel-management: remove protocol | Isaac Freund |
| 2023-01-27 | render: remove damage tracking | Isaac Freund |
| 2023-01-23 | pointer-constraints: remove protocol | Isaac Freund |
| 2023-02-28 | Keyboard: fix keyboard-layout mapping crash | Isaac Freund |
| 2023-02-27 | deps: update to latest zig-wayland/zig-wlroots | Isaac Freund |
| 2023-02-27 | deps: update to latest zig-wayland/zig-wlroots | Isaac Freund |
| 2023-02-10 | Seat: guard setFocusRaw() usage while locked | Isaac Freund |
| 2023-02-03 | docs: remove repology badge from readme | Isaac Freund |
| 2023-02-03 | docs: fix typos in riverctl man page | Isaac Freund |
| 2023-01-30 | wlr-output-management: fix bug due to zig miscompilation | Isaac Freund |
| 2023-01-25 | session-lock: fix assertion failure on hot-plug while locked | Isaac Freund |
| 2023-01-24 | wlr-output-management: leverage new wlroots APIs | Isaac Freund |
| 2023-01-24 | wlr-output-management: apply adaptive sync state | Alexander Courtis |
| 2023-01-21 | idle-inhibit: fix use-after-free | Isaac Freund |
| 2023-01-18 | session-lock: properly handle disabled outputs | Isaac Freund |
| 2023-01-12 | View: fix pointer comparison in notifyTitle() | Hugo Machet |
| 2023-01-13 | Cursor: fix incorrect lock manager state assertion | Zakariyya Von Forslun |
| 2023-01-12 | command/layout: fix a memory leak | Isaac Freund |
| 2023-01-12 | Seat: rework Xwayland Override Redirect focus | Isaac Freund |
| 2023-01-11 | Seat: keep parent Xwayland view of a focused OR surface activated | Zakariyya Von Forslun |
| 2023-01-09 | deps: update zig-wayland to fix build on aarch64 | Isaac Freund |
| 2023-01-08 | flags: further cleanup after Zig 0.10 | Isaac Freund |
| 2022-11-05 | deps: update to Zig 0.10 | Isaac Freund |
| 2023-01-08 | render: fix rounding for fractional scaling | Isaac Freund |
| 2023-01-07 | session-lock: fix assertion failure on abnormal client behavior | Isaac Freund |
| 2023-01-07 | session-lock: fix assertion failure due to race | Isaac Freund |
| 2023-01-06 | session-lock: wait for present before locking | Isaac Freund |
| 2023-01-06 | rivertile: fix code to disallow 0 main count | Isaac Freund |
| 2023-01-06 | render: premultiply alpha for user-provided colors | MaxVerevkin |
| 2023-01-06 | completions: add keyboard-layout | Leon Henrik Plickat |
| 2023-01-06 | ci: Use meson setup command | Hugo Machet |
| 2023-01-05 | river: fix bug in snap down / right | alex |
| 2023-01-02 | build: bump version to 0.3.0-dev | Isaac Freund |
| 2023-01-02 | build: bump to version 0.2.0 | Isaac Freund |
| 2023-01-02 | command/spawn-tagmask: apply globally | Isaac Freund |
| 2022-12-31 | Rework focus-follows-cursor to work with warp | shironeko |
| 2022-12-31 | river-control: update zig-wayland to fix leak | Isaac Freund |
| 2022-12-31 | river-control: mark callback events as destructors | MaxVerevkin |
| 2022-12-31 | layout: fix size of CSD views | Isaac Freund |
| 2022-12-30 | touch: support drag and drop | Isaac Freund |
| 2022-12-30 | Config: use a single xkb keymap for all keyboards | Isaac Freund |
| 2022-12-22 | session-lock: fix potential race | Isaac Freund |
| 2022-12-29 | river: fix resize command | Leon Henrik Plickat |
| 2022-12-28 | flags: automatically prepend '-' | Isaac Freund |
| 2022-12-28 | command/map: use flags.zig, cleanup | Isaac Freund |
| 2022-12-28 | docs: improve keyboard layout documentation | Isaac Freund |
| 2022-12-28 | command/keyboard-layout: use flags.zig, cleanup | Isaac Freund |
| 2022-12-28 | flags: rewrite to allow [:0]const u8 arguments | Isaac Freund |
| 2022-10-16 | river: add keyboard-layout command | Leon Henrik Plickat |
| 2022-12-24 | river: support wp-single-pixel-buffer-v1 | Andrea Feletto |
| 2022-12-24 | idle: support ext-idle-notify-v1, drop KDE protocol | Isaac Freund |
| 2022-12-24 | build: handle wlroots built without xwayland support | Isaac Freund |
| 2022-12-24 | View: honor fullscreen requests before map | Isaac Freund |
| 2022-12-01 | river-status: correctly advertise version 4 | MaxVerevkin |
| 2022-12-01 | river-status: fix typo in layout_name_clear description | Aiz |
| 2022-12-01 | river-layout: fix version of layout_name events | Isaac Freund |
| 2022-08-14 | river-status: expose current layout name | Leon Henrik Plickat |
| 2022-08-01 | Cursor: add on-focus-change option | shironeko |
| 2022-11-25 | map-pointer: minor fixes and cleanups | Isaac Freund |
| 2022-09-13 | map-pointer: allow running arbitrary commands | Alexander Courtis |
| 2022-11-25 | example/init: run rivertile in background | Isaac Freund |
| 2022-11-20 | deps: update to latest zig-wlroots | Isaac Freund |
| 2022-11-17 | docs: fix typo in readme | taupiqueur |
| 2022-05-21 | session-lock: send wl_pointer.enter immediately | Isaac Freund |
| 2022-05-21 | session-lock: add basic logging | Isaac Freund |
| 2022-02-09 | session-lock: handle output unplugging better | tiosgz |
| 2021-12-30 | ext-session-lock: implement protocol | Isaac Freund |
| 2021-12-29 | input-inhibit: remove support for protocol | Isaac Freund |
| 2022-11-13 | ci: remove Void Linux CI | Isaac Freund |
| 2022-11-13 | ci: update to wlroots 0.16.0 and wayland 1.21.0 | Isaac Freund |
| 2022-11-11 | river: update to wlroots 0.16 | Isaac Freund |
| 2022-10-26 | contrib: mention default-layout command in FAQ | Campbell Barton |
| 2022-09-17 | river: refactor keyboard groups implementation | Isaac Freund |
| 2022-08-30 | river: add keyboard groups | Leon Henrik Plickat |
| 2022-08-25 | layer-shell: start transaction on map | Isaac Freund |
| 2022-08-19 | river: advertise correct version of layout protocol | Leon Henrik Plickat |
| 2022-08-14 | river-layout: add user_command_tags event | Leon Henrik Plickat |
| 2022-08-15 | layout: only arrange on user command if layout is active | Isaac Freund |
| 2022-07-15 | river: keep floating views within bounds when sending to output | Leon Henrik Plickat |
| 2022-08-11 | river: fix SIGPIPE handling, cleanup fork/execve | Isaac Freund |
| 2022-08-01 | river: ignore SIGPIPE to avoid weird exits | shironeko |
| 2022-07-26 | Seat: send enter event on keyboard device creation | Isaac Freund |
| 2022-07-19 | LayoutDemand: handle too many view dimensions correctly | tiosgz |
| 2022-07-18 | XdgPopup: fix unconstrain rect with layer surfaces | tiosgz |
| 2022-07-10 | Output: retry other modes if preferred fails | tiosgz |
| 2022-07-10 | ci: explicitly install libevdev | Isaac Freund |
| 2022-07-02 | docs: better connect 'index' to -layout in riverctl(1) | tiosgz |
| 2022-07-01 | deps: update to latest zig-wlroots | Isaac Freund |
| 2022-06-24 | Xwayland: fix View.fromWlrSurface for OR surfaces | Isaac Freund |
| 2022-06-23 | deps: update to latest zig-wlroots | Isaac Freund |
| 2022-06-22 | Cursor: implement initial touch support | Isaac Freund |
| 2022-06-22 | Xwayland: restrict OR focus changes based on ICCCM input model | Zakariyya Von Forslun |
| 2022-06-21 | Seat: refactor InputDevice handling | Isaac Freund |
| 2022-06-20 | InputDevice: use "switch" in input device names | Isaac Freund |
| 2022-06-20 | InputDevice: move to separate file | Isaac Freund |
| 2022-06-17 | example/init: don't use exec | Isaac Freund |
| 2022-06-09 | Cursor: fix focus for Xwayland override redirect windows | Zakariyya Von Forslun |
| 2022-06-06 | river: error out if default init is not executable | Leon Henrik Plickat |
| 2022-06-03 | build: don't scan xdg-output | Isaac Freund |
| 2022-06-03 | Cursor: revive 'always' focus-follows-cursor mode | Isaac Freund |
| 2022-06-02 | river-status: only send mode event if client bound version 3 | Isaac Freund |
| 2022-05-31 | river-status: add mode event to seat status | Isaac Freund |
| 2022-05-30 | Xwayland: Rename XwaylandUnmanaged to XwaylandOverrideRedirect | Isaac Freund |
| 2022-05-29 | Seat: avoid leaking eaten keys to client on focus | tiosgz |
| 2022-05-28 | Keyboard: eat key release event for mappings | tiosgz |
| 2022-05-29 | ci: fix xbps invocation | Isaac Freund |
| 2022-05-30 | Xwayland: add handling of override redirect listeners | Zakariyya Von Forslun |
| 2022-05-29 | View: refactor initialization | Isaac Freund |
| 2022-05-29 | Xwayland: handle override redirect state changes | Isaac Freund |
| 2022-05-29 | cursor: fix Xwayland unmanaged surfaceAt coordinates | Zakariyya Von Forslun |
| 2022-05-28 | xwayland-unmanaged: handle focus on map/cursor button | Zakariyya Von Forslun |
| 2022-05-24 | example/init: fix typos | Jan Evers |
| 2022-05-22 | docs: add note on example init file to PACKAGING.md | Isaac Freund |
| 2022-05-22 | docs: expand on -Dcpu in PACKAGING.md | Isaac Freund |
| 2022-05-22 | docs: create PACKAGING.md | Isaac Freund |
| 2022-05-22 | build: add -Dstrip and -Dpie build options | Isaac Freund |
| 2022-05-20 | Output: remove overzealous assert | Isaac Freund |
| 2022-05-16 | build: follow semantic versioning for -dev versions | Isaac Freund |
| 2022-05-16 | layer-shell: fix overflow if desired size exceeds output bounds | Isaac Freund |
| 2022-05-15 | Mapping: Do not translate keys with xkb | Peter Kaplan |
| 2022-05-09 | deps: update to latest zig-wayland | Isaac Freund |
| 2022-05-11 | idle-inhibit: implement protocol | dfangx |
| 2022-05-01 | ci: make wget output non verbose | Isaac Freund |
| 2022-04-30 | Switch: register destroy listener | tiosgz |
| 2022-04-30 | input: fix typo in natural-scroll | Jackson Abascal |
| 2022-04-20 | command/map: layout-pinned mappings | Peter Kaplan |
| 2022-04-20 | completions: fish: new completions for the ‘hide-cursor’ command | Daniel Eklöf |
| 2022-04-20 | completions: bash: new completions for the ‘hide-cursor’ command | Daniel Eklöf |
| 2022-04-20 | completions: zsh: new completions for the ‘hide-cursor’ command | Daniel Eklöf |
| 2022-04-19 | Cursor: Don't passthrough() on update if hidden | Isaac Freund |
| 2022-04-14 | command/hide-cursor: fix crash on missing option | Peter Kaplan |
| 2022-02-28 | Cursor: Add a hide-cursor command | Duncan Overbruck |
| 2022-02-07 | input: add map-switch/unmap-switch commands | Peter Kaplan |
| 2022-03-28 | layer-shell: fix overflow with large bottom margin | Isaac Freund |
| 2022-03-05 | ci: Fix builds manifests | Hugo Machet |
| 2022-03-05 | layer-shell: allow surfaces larger than the output | Isaac Freund |
| 2022-03-05 | docs: fix typo in river(1) man page | Leonardo Gibrowski Faé |
| 2022-03-02 | view: stop enforcing custom minimum size | tiosgz |
| 2022-03-02 | doc: Add additional style rule to CONTRIBUTING.md | Isaac Freund |
| 2022-02-26 | DragIcon: Properly initialize if already mapped | Isaac Freund |
| 2022-02-26 | rivertile: use u31s to remove most @intCast()s | Isaac Freund |
| 2022-02-19 | rivertile: Use saturating arithmetics to prevent over-/underflow when using user defined values | Leon Henrik Plickat |
| 2022-02-21 | rivertile: properly validate -main-ratio flag | Isaac Freund |
| 2022-02-16 | ci: Update to zig 0.9.1 | Hugo Machet |
| 2022-02-08 | command: Remove allocator arg | Hugo Machet |
| 2022-02-07 | code: Cleanup use of std library for consistancy | Hugo Machet |
| 2022-02-07 | Mode: Use ArrayListUnmanaged to save memory | Hugo Machet |
| 2022-02-06 | command: allow targeting outputs by name | pmkap |
| 2022-02-05 | ci: Add sourcehut builds | Hugo Machet |
| 2022-02-03 | input: Improve input device name format | Leon Henrik Plickat |
| 2022-02-02 | input: keep applying input configs after first match | Leon Henrik Plickat |
| 2022-02-05 | View: use last set fullscreen state in applyPending() | Isaac Freund |
| 2022-02-03 | View: fix/simplify logic in applyPending() | Isaac Freund |
| 2022-01-31 | code: relicense to GPL-3.0-only | Isaac Freund |
| 2022-01-29 | Cursor: update image if needed on xcursor theme change | Leon Henrik Plickat |
| 2022-01-29 | ci: run on 0.1.x branch | Isaac Freund |
| 2022-01-28 | wlr-output-management: simplify implementation | Isaac Freund |
| 2022-01-25 | layer-shell: center when opposing anchors are set | Isaac Freund |
| 2022-01-23 | XdgPopup: remove commit listener on destroy if mapped | Isaac Freund |
| 2022-01-23 | docs: fix typo in river(1) man page | Isaac Freund |
| 2022-01-23 | docs: Fix typo in readme | Justin Wood |
| 2022-01-04 | Xwayland: Handle minimize request | Hugo Machet |
| 2022-01-11 | command/map: Warn users on keybinding overwritten | Hugo Machet |
| 2022-01-17 | example/init: Use Alt/Super aliases | Isaac Freund |
| 2022-01-17 | command/map: add Alt/Super as aliases for Mod1/Mod4 | Isaac Freund |
| 2022-01-13 | rivertile: Use saturating addition | Hugo Machet |
| 2022-01-12 | XdgPopup: fix unconstrain from box coords | Isaac Freund |
| 2022-01-08 | contrib: add desktop file | Nick Hastings |
| 2022-01-05 | Cursor: remove minor outdated workaround | Isaac Freund |
| 2022-01-02 | Seat: do a better job of cleaning up listeners | Isaac Freund |
| 2022-01-02 | Xwayland: move window to top of X11 stack on focus | Isaac Freund |
| 2021-12-29 | Cursor: fix down mode motion events for subsurfaces | Isaac Freund |
| 2021-12-24 | docs: update zig version required in readme | Hugo Machet |
| 2021-10-11 | build: update to zig version 0.9.0 | Isaac Freund |
| 2021-12-22 | docs: soften the README disclaimer a bit | Isaac Freund |
| 2021-12-22 | river: remove wlroots 0.14 workarounds | Isaac Freund |
| 2021-12-22 | Subsurface: add commit listener on create if mapped | Isaac Freund |
| 2021-12-22 | Cursor: properly handle clients setting the cursor image | Isaac Freund |
| 2021-12-21 | ci: update for wlroots 0.15.0 | Isaac Freund |
| 2021-12-21 | layer-shell: fix regression from wlroots 0.15 update | Isaac Freund |
| 2021-12-21 | Cursor: dedup XcursorManager.setCursorImage() calls | Isaac Freund |
| 2021-12-21 | river: update to wlroots 0.15.0 | Isaac Freund |
| 2021-12-15 | common/flags: make argFlag() return a slice | Isaac Freund |
| 2021-12-10 | Cursor: improve output focus handling on button press | Leon Henrik Plickat |
| 2021-11-29 | layer-shell: tighten up handling of large margins | Isaac Freund |
| 2021-11-23 | Cursor: add workaround in pointer drag termination | Isaac Freund |
| 2021-11-19 | Cursor: fix pointer drags with focus-follows-cursor | Isaac Freund |
| 2021-11-11 | docs: remove reference to /etc/river/init | Isaac Freund |
| 2021-11-08 | docs: fix wlroots link in readme | Wannes De Meyer |
| 2021-11-03 | docs: clarify description of dependencies | Isaac Freund |
| 2021-11-03 | build: bump version to 0.2.0-dev | Isaac Freund |
| 2021-11-03 | build: bump version to 0.1.0 | Isaac Freund |
| 2021-11-02 | build: fix trailing newline in version string | Isaac Freund |
| 2021-11-02 | docs: remove AUTHORS file | Isaac Freund |
| 2021-11-01 | completions/fish: simplify | FollieHiyuki |
| 2021-11-01 | docs: update URLs for migration to riverwm github org | Isaac Freund |
| 2021-11-01 | common: use -h instead of -help | Isaac Freund |
| 2021-11-01 | docs: assorted fixes/cleanups | Isaac Freund |
| 2021-10-31 | docs: standardize on "layout generator" | Isaac Freund |
| 2021-10-30 | Cursor: fix move/resize with high poll rate/low dpi mice | Isaac Freund |
| 2021-10-30 | View: fix checks to respect client side move/resize | Isaac Freund |
| 2021-10-30 | view: respect client size resize of floating views | Isaac Freund |
| 2021-10-20 | Xwayland: always send configure if requested | Isaac Freund |
| 2021-10-20 | View: send enter/leave events to full surface tree | Isaac Freund |
| 2021-10-20 | Cursor: only trigger focus-follow-cursor on motion | Isaac Freund |
| 2021-10-12 | Xwayland: honor fullscreen requests | Isaac Freund |
| 2021-10-11 | pointer-constraints: fix coordinates | Isaac Freund |
| 2021-10-06 | contrib: recommend using a venv for layout.py | Isaac Freund |
| 2021-08-10 | contrib: make layout.py more pythonic | Michal Siedlaczek |
| 2021-08-10 | contrib: add python layout | Leon Henrik Plickat |
| 2021-10-04 | docs: change Enter to Return | Euro20179 |
| 2021-06-14 | Decrease layout demand timeout to 100ms | Leon Henrik Plickat |
| 2021-10-02 | Server: fix use after free in deinit() | Isaac Freund |
| 2021-10-02 | View: fix unmap/destroy control flow | Isaac Freund |
| 2021-10-02 | doc: update my (Isaac's) email address | Isaac Freund |
| 2021-10-02 | View: add fullscreen check missing in previous commit | Isaac Freund |
| 2021-09-30 | View: resize if moved between outputs while fullscreen | Isaac Freund |
| 2021-09-30 | Subsurface: remove commit listener in destroy() | Isaac Freund |
| 2021-09-27 | ci: fix xbps invocation | Isaac Freund |
| 2021-09-27 | Cursor: implement surfaceAt() for XwaylandUnmanaged | Isaac Freund |
| 2021-09-18 | xdg-toplevel: fix configure serial checking | Isaac Freund |
| 2021-08-12 | command: Use std.ComptimeStringMap to get impl. function from command string | Leon Henrik Plickat |
| 2021-09-11 | river: add send-to-previous-tags command | Peter Rice |
| 2021-09-06 | river: Allow applying CSD based on window titles | Ben Fiedler |
| 2021-09-06 | river: fix viewporter protocol implementation | Isaac Freund |
| 2021-09-06 | river: Fix errdefer in floatFilterAdd | Ben Fiedler |
| 2021-09-06 | docs: update example init for float fitler changes | Isaac Freund |
| 2021-08-31 | river: Allow floating based on window titles | Ben Fiedler |
| 2021-08-12 | river: implement xdg-activation-v1 | novakane |
| 2021-08-18 | docs: default keyboard mapping mode is "normal" | Keith Hubbard |
| 2021-08-15 | command: support repeating keyboard mappings | Keith Hubbard |
| 2021-08-12 | river-status: fix output status destruction | Isaac Freund |
| 2021-08-12 | output: simplify layer shell handling on destroy | Isaac Freund |
| 2021-08-12 | layer-shell: ignore commits on closed layer surface | Isaac Freund |
| 2021-08-10 | seat: always add view to focus stack on map | Isaac Freund |
| 2021-08-09 | config: fix leak of default layout namespace | Isaac Freund |
| 2021-08-09 | Xwayland: fix possible use-after-free on unmap | Isaac Freund |
| 2021-08-05 | render: draw borders before rendering views | Keith Hubbard |
| 2021-08-02 | river: fix crash on disabling all outputs | Isaac Freund |
| 2021-08-02 | river-layout: fix typo in protocol | Isaac Freund |
| 2021-07-31 | util: remove unused function | Isaac Freund |
| 2021-07-29 | completions: Remove strict in focus-follows-cursor | novakane |
| 2021-07-29 | cursor: remove strict focus-follows-cursor mode | Isaac Freund |
| 2021-07-29 | cursor: fix crash if focus-follows-cursor is set | Isaac Freund |
| 2021-07-28 | build: Use pkg-config to handle river protocols | novakane |
| 2021-07-28 | river: properly teardown surface tree | Isaac Freund |
| 2021-07-27 | output: fix debug log on tag change | Isaac Freund |
| 2021-07-26 | docs: fix typo in rivertile man page | Rafael Escobar |
| 2021-07-26 | config: change color format to 0xRRGGBBAA | Isaac Freund |
| 2021-07-26 | docs: Wayland should always be capitalized | Isaac Freund |
| 2021-07-25 | view: arrange when exiting fullscreen to layout | Isaac Freund |
| 2021-07-25 | view: ensure saved buffers are always dropped | Isaac Freund |
| 2021-07-25 | layout: assert output state matches layout applied | Isaac Freund |
| 2021-07-25 | build: install river-layout-v3 to $PREFIX/share/river | Isaac Freund |
| 2021-07-25 | build: remove example river-status client | Isaac Freund |
| 2021-07-25 | river: improve new layer surface log formatting | Isaac Freund |
| 2021-07-25 | river: add custom wlroots log handler | Isaac Freund |
| 2021-07-24 | river: simplify log levels exposed to the user | Isaac Freund |
| 2021-07-24 | docs: fix inconsistent capitalization | Isaac Freund |
| 2021-07-24 | docs: add -help and -version options to man pages | Isaac Freund |
| 2021-07-24 | common: standardize on -help option | Isaac Freund |
| 2021-07-24 | common: remove support for positional arguments | Isaac Freund |
| 2021-07-24 | river: use common CLI arg parsing code | Isaac Freund |
| 2021-07-24 | Add -version flag to river, riverctl and rivertile | novakane |
| 2021-07-24 | layout: cleanup in progress layout demand on destroy | Isaac Freund |
| 2021-07-24 | river: fix crash on parsing empty string as color | Isaac Freund |
| 2021-07-24 | cursor: fix logic in Cursor.updateState() | Isaac Freund |
| 2021-07-23 | cursor: avoid sending unnecessary pointer motion events | Isaac Freund |
| 2021-07-23 | river: destroy backend before Root.deinit() | Isaac Freund |
| 2021-07-23 | cursor: add missing maybeResetState() callsite | Isaac Freund |
| 2021-07-23 | cursor: allow commands to override cursor operations | Isaac Freund |
| 2021-07-23 | cursor: remove surfaceAt() parameters | Isaac Freund |
| 2021-07-23 | cursor: refactor surfaceAt() to return parent | Isaac Freund |
| 2021-07-23 | render: sync with Cursor.surfaceAt(), draw all view popups | Isaac Freund |
| 2021-06-23 | cursor: reset state if needed on transaction commit | Leon Henrik Plickat |
| 2021-07-22 | river-layout: make minor copyediting fixes | Isaac Freund |
| 2021-07-16 | river: make spawn command take only one argument | Isaac Freund |
| 2021-07-16 | contrib: update layout.c for river-layout-v3 | Leon Henrik Plickat |
| 2021-07-15 | rivertile: simplify commands | Isaac Freund |
| 2021-07-15 | completions: Update for river-layout-v3 | novakane |
| 2021-07-15 | river-layout: update to v3 | Isaac Freund |
| 2021-07-15 | river: remove opacity command | Isaac Freund |
| 2021-07-20 | docs: improve formatting consistency | Isaac Freund |
| 2021-07-18 | Fix typo s/ouput/output/ in function name | Alexander Taylor |
| 2021-07-17 | docs: mention man pages before wiki | Isaac Freund |
| 2021-07-17 | docs: simplify README | Isaac Freund |
| 2021-07-17 | river: remove system /etc dir from init search paths | Isaac Freund |
| 2021-07-07 | river: add focus-previous-tags command | Viktor Nagy |
| 2021-07-15 | command: make args type 0-terminated | Isaac Freund |
| 2021-07-14 | view: fix typo causing UB on resizing xwayland views | Isaac Freund |
| 2021-07-14 | xdg-shell: set resizing state during interactive resize | Isaac Freund |
| 2021-07-12 | config: use hash sets for filters, clean up code | Isaac Freund |
| 2021-06-22 | river: make CSD-filters apply to existing views | Leon Henrik Plickat |
| 2021-06-19 | river: add commands to remove filter entries | Leon Henrik Plickat |
| 2021-07-07 | README: add a link to the wiki | novakane |
| 2021-07-02 | completions: typo | Steef Hegeman |
| 2021-06-30 | doc: remove dead wiki link from readme | Isaac Freund |
| 2021-06-27 | render: @panic() if CLOCK_MONOTONIC is not supported | Isaac Freund |
| 2021-06-26 | completions: add set-cursor-warp for zsh/fish | Isaac Freund |
| 2021-06-22 | completions: Add bash completion for set-cursor-warp commands | Leon Henrik Plickat |
| 2021-05-07 | cursor: add option to warp on output change | Leon Henrik Plickat |
| 2021-06-24 | Revert "build: assert wlroots version at comptime" | Isaac Freund |
| 2021-06-24 | build: assert wlroots version at comptime | Isaac Freund |
| 2021-06-23 | ci: build wlroots from source | Isaac Freund |
| 2021-06-14 | code: update to wlroots 0.14.0 | Isaac Freund |
| 2021-06-14 | Add spacial output operations | Leon Henrik Plickat |
| 2021-06-21 | layer-shell: handle commits before map | Isaac Freund |
| 2021-06-17 | xdg-toplevel: remove listeners before view destroy | Isaac Freund |
| 2021-06-16 | render: damage on background/border color change | Isaac Freund |
| 2021-06-16 | Ignore move and resize requests from fullscreened XDG toplevels | Leon Henrik Plickat |
| 2021-06-15 | completions: add fish completion for input command | FollieHiyuki |
| 2021-06-14 | completions/zsh: add input commands | novakane |
| 2021-06-14 | decoration: remove listeners on destroy | Isaac Freund |
| 2021-06-14 | layout: fix use-after-free in destroy() | Isaac Freund |
| 2021-06-14 | view: ensure surface_box is initailized before use | Isaac Freund |
| 2021-06-14 | output: handle OutputDamage destroy | Isaac Freund |
| 2021-06-14 | root: simplify noop output handling | Isaac Freund |
| 2021-06-13 | add bash completion for input commands | Leon Henrik Plickat |
| 2021-06-12 | Add `list-input-configs` command | Leon Henrik Plickat |
| 2021-06-10 | Add `list-inputs` command | Leon Henrik Plickat |
| 2021-06-08 | doc: Document input config commands | Leon Henrik Plickat |
| 2021-06-04 | Add basic input configuration | Leon Henrik Plickat |
| 2021-06-09 | ci: add gcc to fix build | Isaac Freund |
| 2021-06-09 | output: destroy Layouts on Output removal | Isaac Freund |
| 2021-06-08 | config: make attach-mode global | novakane |
| 2021-06-08 | view_stack: update tests for zig 0.8.0 | novakane |
| 2021-06-08 | river: don't extend timeout on transaction preemption | Isaac Freund |
| 2021-06-08 | view: send activated/fullscreen configures immediately | Isaac Freund |
| 2021-06-08 | code: remove now unnecessary zig fmt directives | Isaac Freund |
| 2021-06-08 | view: get rid of notifyConfiguredOrApplyPending() | Isaac Freund |
| 2021-06-07 | render: fix damage tracking of drag icons | Isaac Freund |
| 2021-06-05 | render: track subsurfaces created before role assignment | Isaac Freund |
| 2021-06-05 | doc: correct zig version requirement in readme | Isaac Freund |
| 2021-05-23 | code: update to zig 0.8.0 | Isaac Freund |
| 2021-05-31 | xdg-toplevel: remove set_app_id listener | Isaac Freund |
| 2021-05-31 | render: actually damage output on view opacity change | Isaac Freund |
| 2021-05-31 | render: damage output on view opacity change | Isaac Freund |
| 2021-05-28 | doc: add IRC web client link | Isaac Freund |
| 2021-05-23 | render: do basic yes/no damage tracking | Isaac Freund |
| 2021-05-24 | example/init: use Mod+Shift E for exit | Isaac Freund |
| 2021-05-19 | doc: move IRC channel to libera | Isaac Freund |
| 2021-05-07 | Allow changing output focus with pointer | Leon Henrik Plickat |
| 2021-05-15 | rivertile: clamp main_amount | Leon Henrik Plickat |
| 2021-05-16 | doc: fixed command name in example | Lennard Hofmann |
| 2021-05-13 | river: remove Seat.input_manager | Isaac Freund |
| 2021-05-13 | river: remove all stored *Root pointers | Isaac Freund |
| 2021-05-13 | river: remove misc stored *Server pointers | Isaac Freund |
| 2021-05-13 | river: remove InputManager.server | Isaac Freund |
| 2021-05-13 | river: remove Output.root | Isaac Freund |
| 2021-05-13 | river: remove Root.server | Isaac Freund |
| 2021-05-13 | river: make server a global variable | Isaac Freund |
| 2021-05-07 | contrib: Update layout.c for river-layout-v2 | Leon Henrik Plickat |
| 2021-04-27 | river: always render floating views above layout views | Isaac Freund |
| 2021-05-05 | rivertile: fix typo in error message | Isaac Freund |
| 2021-05-04 | README: don't encourage manual system-wide install | Isaac Freund |
| 2021-05-03 | doc: remove outdated reference to river-layouts(1) | Isaac Freund |
| 2021-05-02 | example/init: fix typo in introductory comment | Callum R. Renwick |
| 2021-05-02 | example/init: Fix typo for main view size change | Callum R. Renwick |
| 2021-05-01 | rivertile: add missing `try` to fix build | Isaac Freund |
| 2021-05-01 | rivertile: add -h/--help, improve man page | Isaac Freund |
| 2021-04-27 | cursor: handle popup subsurfaces properly | Isaac Freund |
| 2021-04-27 | deps: update to latest zig-wayland | Isaac Freund |
| 2021-04-27 | example/init: use riverctl layout value commands | Isaac Freund |
| 2021-04-26 | rivertile: support command line arguments | Isaac Freund |
| 2021-04-26 | river-layout: update to v2 | Isaac Freund |
| 2021-04-26 | river-options: remove protocol | Isaac Freund |
| 2021-04-26 | river: get rid of all server-created options | Isaac Freund |
| 2021-04-22 | pixman: update and fix PointerConstraint | novakne |
| 2021-04-21 | completions: delete more removed commands | Isaac Freund |
| 2021-04-20 | completions: Remove completions for removed subcommand "layout" | skuzzymiglet |
| 2020-12-07 | contrib: update layouts for river-layout and river-options | Leon Henrik Plickat |
| 2021-04-15 | river-options: rework, bump to v2 | Isaac Freund |
| 2021-02-21 | river: send SIGTERM to init command process group | Isaac Freund |
| 2020-10-02 | river-layout: create and implement protocol | Leon Henrik Plickat |
| 2021-04-20 | river: fix to work with latest zig-pixman | novakne |
| 2021-04-15 | README: add repology badge | novakne |
| 2021-04-08 | river: update for wlroots 0.13.0 | Isaac Freund |
| 2021-03-28 | render: don't schedule new frame on output commit failure | Isaac Freund |
| 2021-03-27 | render: schedule new frame on output commit failure | Qiu |
| 2021-03-22 | build: clean up install prefix/config path derivation | Isaac Freund |
| 2021-03-27 | Fix crash when layer surface dimensions or margins are unexpectedly large | Leon Henrik Plickat |
| 2021-03-27 | riverctl: Do not use std.debug.print() | Leon Henrik Plickat |
| 2021-03-27 | riverctl: Print error messages instead of error traces for common user mistakes | Leon Henrik Plickat |
| 2021-03-22 | build: fix config path if DESTDIR is set without --prefix | Isaac Freund |
| 2021-03-22 | build: handle null install_prefix correctly | Isaac Freund |
| 2021-03-16 | riverctl: add fish completion | FollieHiyuki |
| 2021-03-16 | Fix existing typos | FollieHiyuki |
| 2021-03-13 | completions: add zsh completion for riverctl | novakne |
| 2021-03-13 | Add bash completion for riverctl | Leon Henrik Plickat |
| 2021-03-01 | build: fix if wlroots x11 backend is disabled | Isaac Freund |
| 2021-02-15 | river: pointer-constraints and relative-pointer | Bonicgamer |
| 2021-02-19 | river-control: fix various bugs | Isaac Freund |
| 2021-02-17 | toplevel-management: send output enter on map | Isaac Freund |
| 2021-02-17 | Deny move/resize requests from tiled XdgToplevel Views | Leon Henrik Plickat |
| 2021-02-14 | Implement pointer-gestures-unstable-v1 | Marten Ringwelski |
| 2021-02-14 | command: silently ignore re-declaring a mode | Isaac Freund |
| 2021-02-14 | command: allow map/map-pointer overwrite existing | Isaac Freund |
| 2021-02-14 | xdg shell: use XdgSurface.getGeometry() | Isaac Freund |
| 2021-02-10 | swap: use correct direction for it_wrap | Alexey Yerin |
| 2021-02-09 | riverctl: add mod-option command | Leon Henrik Plickat |
| 2021-02-05 | Use std.log instead of log.zig | foxfromabyss |
| 2021-02-07 | riverctl: add -focused-output for option commands | Isaac Freund |
| 2021-02-02 | riverctl: improve handling of null string options | Isaac Freund |
| 2021-02-02 | river-options: fix setting null string options | Isaac Freund |
| 2021-02-01 | output: add output_title default option | Leon Henrik Plickat |
| 2021-01-31 | xwayland: allow setting size if unmapped/floating | Isaac Freund |
| 2021-01-25 | deps: update to lastest zig-wlroots | Isaac Freund |
| 2021-01-21 | river-options: free options of destroyed outputs | Isaac Freund |
| 2021-01-17 | riverctl: implement river-options interface | Isaac Freund |
| 2021-01-18 | river-option: compositor may ignore set requests | Isaac Freund |
| 2021-01-15 | river-options: implement | Isaac Freund |
| 2021-01-14 | river-options: create protocol | Isaac Freund |
| 2021-01-12 | code: remove unneeded c.zig @import()s | Isaac Freund |
| 2021-01-08 | cursor: ensure output focus before focusing layer | Isaac Freund |
| 2021-01-07 | cursor: focus output before view on follow cursor | Isaac Freund |
| 2020-12-29 | xwayland: use layout coords for configures | Isaac Freund |
| 2021-01-07 | XwaylandUnmanaged: remove dead code | Isaac Freund |
| 2021-01-07 | XdgPopup: fix unconstrainFromBox coordinates | Isaac Freund |
| 2021-01-07 | render: iterate subsurfaces of popups manually | Isaac Freund |
| 2021-01-07 | docs: fix typo in example init script | Isaac Freund |
| 2021-01-07 | cursor: fix down mode motion event coords | Isaac Freund |
| 2021-01-06 | render: pass Output by constant pointer | Isaac Freund |
| 2021-01-05 | render: draw popups over borders | Isaac Freund |
| 2021-01-02 | docs: update stance on line length | Isaac Freund |
| 2021-01-02 | command: Implement spawn-tagmask | Marten Ringwelski |
| 2021-01-01 | build: derive default config path from install prefix | Alex Mohr |
| 2021-01-01 | view: fix build with xwayland disabled | Isaac Freund |
| 2021-01-01 | view: fix handling of title/app_id change | Isaac Freund |
| 2020-12-31 | gitignore: remove outdated ignores | Isaac Freund |
| 2020-12-31 | Config: move opacity settings to sub struct | Isaac Freund |
| 2020-12-31 | code: clean up listener initialization | Isaac Freund |
| 2020-12-31 | docs: use less noisy build option forms | Isaac Freund |
| 2020-12-30 | docs: fix riverctl man page syntax | Isaac Freund |
| 2020-12-30 | docs: fix syntax in riverctl man page | Isaac Freund |
| 2020-12-30 | docs: Improve clarity of river/riverctl man pages | Isaac Freund |
| 2020-12-30 | docs: improve startup and config information | Isaac Freund |
| 2020-12-30 | build: install example config to /etc/river/init | Isaac Freund |
| 2020-12-30 | command: s/master/main/g (breaking change) | Isaac Freund |
| 2020-12-30 | docs: improve explanation of tags | Isaac Freund |
| 2020-12-30 | root: improve handling of 0 -> 1 output transition | Isaac Freund |
| 2020-12-29 | root: stop tracking xwayland views in transactions | Isaac Freund |
| 2020-12-27 | cursor: fix motion coords sent in down mode | Isaac Freund |
| 2020-12-27 | OutputManager: delete | Isaac Freund |
| 2020-12-27 | root: merge in OutputManager | Isaac Freund |
| 2020-12-27 | view: unify clamped move logic, fix overflow | Isaac Freund |
| 2020-12-26 | keyboard: set repeat_info to config values on creation | Isaac Freund |
| 2020-12-24 | foreign-toplevel-management: basic implementation | Isaac Freund |
| 2020-12-21 | output: get rid of active field | Isaac Freund |
| 2020-12-18 | xwayland: handle hinted dimension < View.min_size | Isaac Freund |
| 2020-12-12 | OutputManager: get rid of output_config_pending | Isaac Freund |
| 2020-11-04 | code: switch to custom wlroots/libwayland bindings | Isaac Freund |
| 2020-12-13 | doc: Remove outdated configuration instructions | Leon Henrik Plickat |
| 2020-12-13 | contrib: Unify style | Leon Henrik Plickat |
| 2020-12-13 | doc: unify scdoc style | Leon Henrik Plickat |
| 2020-12-12 | render: remove unnecessary call to wlr_output_effective_resolution | Marten Ringwelski |
| 2020-12-10 | config: free filter list items | Isaac Freund |
| 2020-12-07 | focus-follow-cursor: Change output focus when needed | Marten Ringwelski |
| 2020-12-06 | Ignore custom mode requests | Marten Ringwelski |
| 2020-11-23 | Implement wlr_output_management_unstable_v1 | Marten Ringwelski |
| 2020-11-16 | code: Fix render call width and height | Marten Ringwelski |
| 2020-11-16 | code: Add Root.all_outputs | Marten Ringwelski |
| 2020-11-16 | code: Add Root.removeOutput | Marten Ringwelski |
| 2020-11-16 | code: Refactor Root.addOutput | Marten Ringwelski |
| 2020-11-02 | code: Introduce OutputManager | Marten Ringwelski |
| 2020-12-05 | ci: check fmt of build.zig | Isaac Freund |
| 2020-12-05 | screencopy: add workaround for wlroots bug | Isaac Freund |
| 2020-11-29 | keyboard: handle destruction | Isaac Freund |
| 2020-11-20 | style: fix zig fmt regression | Isaac Freund |
| 2020-11-19 | ci: clone submodules, cleanup | Isaac Freund |
| 2020-11-19 | code: Set wlroots loglevel based on -l flag | Marten Ringwelski |
| 2020-11-18 | control: implement set-repeat | Bonicgamer |
| 2020-11-17 | Add default config location | Leon Henrik Plickat |
| 2020-11-11 | doc: add AUTHORS section to man pages | Isaac Freund |
| 2020-11-11 | meta: make copyright headers more maintainable | Isaac Freund |
| 2020-11-10 | layer-shell: render all popups over top layer | Isaac Freund |
| 2020-11-10 | code: use zig 0.7.0 and wlroots 0.12.0 | Isaac Freund |
| 2020-11-04 | docs: improve pamixer mute example | Isaac Freund |
| 2020-11-04 | build: don't link pixman | Isaac Freund |
| 2020-11-03 | server: drop gtk-primary-selection support | Isaac Freund |
| 2020-11-03 | code: use std.ascii.spaces | Isaac Freund |
| 2020-11-02 | code: Replace deprecated std.fmt.trim with std.mem.trim | Marten Ringwelski |
| 2020-11-01 | code: Move wlr_output_layout_add from Output.init to Root.addOutput | Marten Ringwelski |
| 2020-11-02 | code: port riverctl to zig-wayland | Isaac Freund |
| 2020-11-01 | Add submodule | Isaac Freund |
| 2020-10-31 | docs: Advertise irc channel instead of the old matrix channel | Marten Ringwelski |
| 2020-10-28 | render: Print a log message when wlr_output_commit fails | Marten Ringwelski |
| 2020-10-27 | Implement wlr-output-power-management-unstable-v1 protocol | Marten Ringwelski |
| 2020-10-30 | Implement virtual_keyboard_unstable_v1 protocol | Marten Ringwelski |
| 2020-10-30 | Implement wlr_virtual_pointer_unstable_v1 protocol | Marten Ringwelski |
| 2020-10-30 | code: Remove most of the hack around @cImport and flexible arrays | Marten Ringwelski |
| 2020-10-24 | Implement unmap-pointer | Marten Ringwelski |
| 2020-10-24 | Implement unmap | Marten Ringwelski |
| 2020-10-26 | Add tests for ViewStack.swap() | Leon Henrik Plickat |
| 2020-10-25 | docs: add swap to example config script | Isaac Freund |
| 2020-10-25 | Send zriver_seat_status_v1.focused_view when title of focused view changes | Leon Henrik Plickat |
| 2020-10-25 | control: implement swap | Marten Ringwelski |
| 2020-10-25 | code: Remove allocator argument from Mapping.init | Marten Ringwelski |
| 2020-10-22 | Add mediakey maps for locked and normal mode to example config | Leon Henrik Plickat |
| 2020-10-22 | view: update comments | Isaac Freund |
| 2020-10-22 | xwayland: make behavior more like xdg toplevels | Bonicgamer |
| 2020-10-22 | code: update os.waitpid usage for breaking change | Isaac Freund |
| 2020-10-21 | Revert "Remove checking translated keysyms" | Isaac Freund |
| 2020-10-19 | Introduce mode "locked" | Leon Henrik Plickat |
| 2020-10-18 | Remove checking translated keysyms | Leon Henrik Plickat |
| 2020-10-18 | Allow "None" as modifier string for bindings without modifiers | Leon Henrik Plickat |
| 2020-10-17 | Move Cursor.Mode impl functions to Cursor | Leon Henrik Plickat |
| 2020-10-17 | Implement XDG-Toplevel move and resize request handlers | Leon Henrik Plickat |
| 2020-10-17 | Remove unused event parameter from Cursor.Mode.enter() | Leon Henrik Plickat |
| 2020-10-17 | Update view.float_box when setting a floating view to fullscreen | Leon Henrik Plickat |
| 2020-10-08 | Always set fullscreen views to fully opaque | Leon Henrik Plickat |
| 2020-10-07 | introduce Output.getEffectiveResolution() | Leon Henrik Plickat |
| 2020-10-07 | Implement "move", "snap" and "resize" commands | Leon Henrik Plickat |
| 2020-10-06 | Create wlr_viewporter | Leon Henrik Plickat |
| 2020-10-06 | Create wlr_export_dmabuf_manager_v1 | Leon Henrik Plickat |
| 2020-10-06 | Implement primary selection | Leon Henrik Plickat |
| 2020-10-05 | docs: update zig dependency in readme | Isaac Freund |
| 2020-10-05 | Send view tags when applying pending state in XdgToplevel.zig | Leon Henrik Plickat |
| 2020-10-03 | Implement configurable view opacity with fade effect | Leon Henrik Plickat |
| 2020-08-31 | code: update to zig master in prep for 0.7.0 | Isaac Freund |
| 2020-09-30 | server: support wlr-gamma-control | Isaac Freund |
| 2020-09-30 | seat: start transaction on focus-output | Isaac Freund |
| 2020-09-29 | layer-shell: default to focused output | Isaac Freund |
| 2020-09-28 | docs: use foot in the example config.sh | Isaac Freund |
| 2020-09-28 | layer-shell: make invalid 0 dimension a hard error | Isaac Freund |
| 2020-09-28 | view: always set fullscreen x/y to 0,0 | Isaac Freund |
| 2020-09-15 | docs: focus-follows-cursor fix options to be bold | Marten Ringwelski |
| 2020-09-15 | Implement map -release | Marten Ringwelski |
| 2020-09-15 | Implement focus-follows-cursor | Marten Ringwelski |
| 2020-09-10 | seat: implement drag and drop | Isaac Freund |
| 2020-09-08 | cursor: handle borderless views in move/resize | Isaac Freund |
| 2020-08-24 | config: implement map-pointer command | Isaac Freund |
| 2020-08-24 | style: attach_mode() -> attachMode() | Isaac Freund |
| 2020-08-22 | river-status: don't report destroying views | Isaac Freund |
| 2020-08-21 | root: clean up initialization | Isaac Freund |
| 2020-08-21 | river-status: clean up initialization | Isaac Freund |
| 2020-08-21 | output: clean up initialization | Isaac Freund |
| 2020-08-21 | config: handle alloc failure in Mapping init | Isaac Freund |
| 2020-08-21 | Keyboard: clean up initialization | Isaac Freund |
| 2020-08-21 | xdg-decoration: clean up initialization | Isaac Freund |
| 2020-08-21 | river-status: clean up initialization | Isaac Freund |
| 2020-08-21 | config: clean up initialization | Isaac Freund |
| 2020-08-21 | seat: clean up initialization | Isaac Freund |
| 2020-08-21 | layer-surface: clean up initialization | Isaac Freund |
| 2020-08-21 | xdg-popup: clean up initialization | Isaac Freund |
| 2020-08-21 | xwayland: clean up initialization | Isaac Freund |
| 2020-08-21 | xdg-toplevel: clean up initialization | Isaac Freund |
| 2020-08-21 | view: clean up initialization | Isaac Freund |
| 2020-08-21 | cursor: leave mode if target view is destroyed | Isaac Freund |
| 2020-08-21 | view stack: rework iteration for flexibility | Isaac Freund |
| 2020-08-20 | view: implement frame-perfect destroy | Isaac Freund |
| 2020-08-17 | Implement "attach-mode" | Leon Henrik Plickat |
| 2020-08-13 | xwayland: fix signed to unsigned int casting error | Isaac Freund |
| 2020-08-13 | seat: implement kde idle protocol | Isaac Freund |
| 2020-08-12 | layer-shell: improve configure handling | Isaac Freund |
| 2020-08-12 | seat: set focus before starting transactions | Isaac Freund |
| 2020-08-11 | view: handle setting fullscreen in configure() | Isaac Freund |
| 2020-08-11 | root: refactor transaction initiation | Isaac Freund |
| 2020-08-11 | ci: run only on master branch | Isaac Freund |
| 2020-08-10 | Enforce minimum window size also for views with constraints | Leon Henrik Plickat |
| 2020-08-10 | Fix crashing bug for window size smaller than 2 * (border width + gap size) | Leon Henrik Plickat |
| 2020-08-07 | code: clean up cursor resize mode | Isaac Freund |
| 2020-08-07 | cursor: implement implicit grabs | Isaac Freund |
| 2020-08-07 | cursor: refactor mode handling | Isaac Freund |
| 2020-08-03 | view: double buffer focus, use counter not bool | Isaac Freund |
| 2020-08-01 | view: arrange on unmap if fullscreened from layout | Isaac Freund |
| 2020-08-01 | view: fix xdg_toplevel fullscreen request handling | Isaac Freund |
| 2020-08-01 | layout: use fork/execve instead of ChildProcess | Isaac Freund |
| 2020-07-06 | output: simplify layout code | Isaac Freund |
| 2020-08-01 | server: handle SIGINT/SIGTERM with wl_event_loop | Isaac Freund |
| 2020-08-01 | server: use fork/execve for startup command | Isaac Freund |
| 2020-08-01 | doc: shorten riverctl’s synopsis | Lennard Hofmann |
| 2020-07-31 | view: remember floating dimesions | Isaac Freund |
| 2020-07-31 | cursor: handle xwayland views for move/resize | Isaac Freund |
| 2020-07-31 | view: sidestep transaction for float/fullscreen | Isaac Freund |
| 2020-07-29 | cursor: forbid move/resize of fullscreen views | Isaac Freund |
| 2020-07-29 | view: forbid mode change if cursor target | Isaac Freund |
| 2020-07-29 | cursor: implement resize | Isaac Freund |
| 2020-07-28 | code: refactor and simplify cursor move mode | Isaac Freund |
| 2020-07-28 | meta: update layer shell xml | Isaac Freund |
| 2020-07-24 | river-status: note that wl_outputs must be bound | Isaac Freund |
| 2020-07-17 | ci: use void linux | Isaac Freund |
| 2020-07-17 | cursor: ensure theme loaded on output creation | Isaac Freund |
| 2020-07-17 | code: fix a pair of leaks | Isaac Freund |
| 2020-07-17 | cursor: properly set XCURSOR_SIZE if default | Isaac Freund |
| 2020-07-16 | Fix bug causing XDG toplevels with a parent to not respect the CSD filter | Leon Henrik Plickat |
| 2020-07-16 | Implement csd-filter-add and float-filter-add commands | Leon Henrik Plickat |
| 2020-07-16 | Make float_filter a slice list | Leon Henrik Plickat |
| 2020-07-16 | code: update to wlroots 0.11.0 | Isaac Freund |
| 2020-07-16 | Implement csd_filter list | Leon Henrik Plickat |
| 2020-07-15 | ci: run on all branches | Isaac Freund |
| 2020-07-15 | code: use a tagged union to store focus | Isaac Freund |
| 2020-07-15 | code: simplify direction parsing | Isaac Freund |
| 2020-07-15 | code: deduplicate command include code | Isaac Freund |
| 2020-07-15 | command: split set-option into "toplevel" commands | Isaac Freund |
| 2020-07-14 | cursor: make xcursor theme configurable | Isaac Freund |
| 2020-07-12 | command/spawn: use _exit(2) instead of exit(3) | Isaac Freund |
| 2020-07-09 | xwayland: set seat | Isaac Freund |
| 2020-07-08 | command/spawn: clean up and disown children | Isaac Freund |
| 2020-07-08 | cursor: close view on middleclick when pointer_modifier is active | Leon Henrik Plickat |
| 2020-07-07 | cursor: implement moving views | Leon Henrik Plickat |
| 2020-07-06 | xwayland: don't crash on null title | Isaac Freund |
| 2020-07-06 | river-status: fix bug sending old output tag state | Isaac Freund |
| 2020-07-05 | layer-shell: respect single anchor exclusive zones | Isaac Freund |
| 2020-07-05 | code: handle out of memory as well as possible | Isaac Freund |
| 2020-07-05 | server: send SIGTERM to startup process on exit | Isaac Freund |
| 2020-07-05 | server: exit cleanly on SIGINT and SIGTERM | Isaac Freund |
| 2020-07-02 | output: introduce state struct | Isaac Freund |
| 2020-06-29 | docs: Fix duplicate mapping in config.sh | Lennard Hofmann |
| 2020-06-29 | xdg-shell: honor fullscreen requests | Isaac Freund |
| 2020-06-29 | view: save and restore floating dimensions | Isaac Freund |
| 2020-06-29 | docs: add toggle-fullscreen | Isaac Freund |
| 2020-06-29 | render: draw fullscreen views properly | Isaac Freund |
| 2020-06-29 | seat: prioritize fullscreen views for focus | Isaac Freund |
| 2020-06-28 | command: disable focus-view in fullscreen | Isaac Freund |
| 2020-06-28 | river: implement toggle-fullscreen | Isaac Freund |
| 2020-06-28 | view: use saved geometry for borders if needed | Isaac Freund |
| 2020-06-28 | view: replace mode with float/fullscreen bools | Isaac Freund |
| 2020-06-28 | view: draw borders around actual dimensions | Isaac Freund |
| 2020-06-28 | code: fix tests | Isaac Freund |
| 2020-06-28 | cursor: fix viewAt() ordering | Isaac Freund |
| 2020-06-27 | view: simplify default float dimension handling | Isaac Freund |
| 2020-06-27 | view: introduce state struct to simplify code | Isaac Freund |
| 2020-06-27 | view: use a mode enum instead of floating bool | Isaac Freund |
| 2020-06-26 | command: log output of commands run by mappings | Isaac Freund |
| 2020-06-26 | command: allow output on success, refactor | Isaac Freund |
| 2020-06-26 | config: fix leak of hashmap keys | Isaac Freund |
| 2020-06-26 | command: dupe mode name memory | Isaac Freund |
| 2020-06-26 | river-status: fix view-tags array size | Isaac Freund |
| 2020-06-26 | seat: pass a null terminated string | Isaac Freund |
| 2020-06-26 | code: improve error handling consistency | Isaac Freund |
| 2020-06-26 | code: clean up server init | Isaac Freund |
| 2020-06-25 | data-control: implement protocol | Isaac Freund |
| 2020-06-22 | docs: fix typo in README.md | Anatole Lefort |
| 2020-06-19 | command: add background_color option | Isaac Freund |
| 2020-06-19 | river-status: fix memory leak | Isaac Freund |
| 2020-06-19 | bikeshed: rename util.allocator to util.gpa | Isaac Freund |
| 2020-06-19 | code: refactor layoutExternal | Isaac Freund |
| 2020-06-19 | layout: fix loop counter | Isaac Freund |
| 2020-06-19 | rivertile: fix underflow if views < masters | Isaac Freund |
| 2020-06-17 | code: refactor Server.start() | Isaac Freund |
| 2020-06-17 | editorconfig: add scdoc config | Isaac Freund |
| 2020-06-17 | docs: tweak readme | Isaac Freund |
| 2020-06-17 | docs: small man pages fixes and updates | Lennard Hofmann |
| 2020-06-17 | cli: allow setting log level with '-l' flag | Isaac Freund |
| 2020-06-17 | code: improve logging functions | Isaac Freund |
| 2020-06-16 | river-status: fix crash due to bad alignment | Isaac Freund |
| 2020-06-16 | code: create util.allocator and use globally | Isaac Freund |
| 2020-06-16 | code: create voidCast() util function | Isaac Freund |
| 2020-06-15 | river-status: actually destroy the manager object | Isaac Freund |
| 2020-06-15 | river-control: implement protocol changes | Isaac Freund |
| 2020-06-15 | river-control: send output on success, fix issues | Isaac Freund |
| 2020-06-16 | contrib: use rivertile in config.sh example | Isaac Freund |
| 2020-06-16 | docs: update readme | Isaac Freund |
| 2020-06-16 | contrib: add tiled layout in python | Isaac Freund |
| 2020-06-16 | docs: add rivertile man page | Isaac Freund |
| 2020-06-16 | rivertile: create default layout generator | Isaac Freund |
| 2020-06-13 | Doc: Add layout documentation | Leon Henrik Plickat |
| 2020-06-13 | Contrib: Add debug layouts | Leon Henrik Plickat |
| 2020-06-13 | Commands: rework layout command | Leon Henrik Plickat |
| 2020-06-13 | Output: Add layoutExternal() | Leon Henrik Plickat |
| 2020-06-13 | Output: Rework layout switching in arrangeViews() | Leon Henrik Plickat |
| 2020-06-13 | Output: Remove layoutMasterStack() and rework layoutFull() | Leon Henrik Plickat |
| 2020-06-15 | build: allow disabling man-pages if scdoc is found | Isaac Freund |
| 2020-06-15 | org: unify gitignore | Isaac Freund |
| 2020-06-15 | build: add scdoc step to generate man pages | Isaac Freund |
| 2020-06-15 | docs: use scdoc instead of roff for man pages | Lennard Hofmann |
| 2020-06-13 | docs: mention xkb environment variables in readme | Isaac Freund |
| 2020-06-13 | xdg-shell: improve child handling | Isaac Freund |
| 2020-06-13 | command: add view_padding option | Isaac Freund |
| 2020-06-13 | command: allow alpha in colors, simplify code | Isaac Freund |
| 2020-06-13 | code: simplify option handling | Isaac Freund |
| 2020-06-12 | command: add border_focused_color and border_unfocused_color options | lazy-dolphin |
| 2020-06-11 | docs: use release-safe in build instructions | Isaac Freund |
| 2020-06-11 | docs: update disclaimer | Isaac Freund |
| 2020-06-11 | docs: add IRC channel, remove matrix | Isaac Freund |
| 2020-06-11 | code: simplify view rendering | Isaac Freund |
| 2020-06-11 | command: don't zoom floating views | Isaac Freund |
| 2020-06-11 | render: floating as normal, focused views on top | Isaac Freund |
| 2020-06-09 | command: implement set-option | lazy-dolphin |
| 2020-06-10 | transactions: save transform, refactor rendering | Isaac Freund |
| 2020-06-09 | transactions: save and render subsurface buffers | Isaac Freund |
| 2020-06-09 | transactions: handle preemption take 2 | Isaac Freund |
| 2020-06-09 | transactions: revert c0d7e71 | Isaac Freund |
| 2020-06-08 | transactions: propogate x/y of new box if needed | Isaac Freund |
| 2020-06-08 | transactions: set timeout back to 200ms | Isaac Freund |
| 2020-06-08 | transactions: handle preemption properly | Isaac Freund |
| 2020-06-07 | code: remove dead code | Isaac Freund |
| 2020-06-06 | river-status: send view_tags on view output change | Isaac Freund |
| 2020-06-06 | river-status: simplify example client | Isaac Freund |
| 2020-06-05 | build: install man pages | Isaac Freund |
| 2020-06-05 | docs: remove trailing whitespace | Isaac Freund |
| 2020-06-05 | map: allow creating mappings with no modifiers | Isaac Freund |
| 2020-06-05 | docs: fix link to Config.zig | Isaac Freund |
| 2020-06-05 | docs: update commit style guidelines | Isaac Freund |
| 2020-06-05 | river-status: implement example client | Isaac Freund |
| 2020-06-05 | river-status: use correct resource and fix crash | Isaac Freund |
| 2020-06-05 | river-status: send view_tags on view map/unmap | Isaac Freund |
| 2020-06-04 | Add man pages | Lennard Hofmann |
| 2020-06-04 | river-status: implement protocol | Isaac Freund |
| 2020-06-04 | river-status: add seat status object | Isaac Freund |
| 2020-06-04 | editorconfig: trim trailing whitespace | Isaac Freund |
| 2020-06-03 | build: scan river-status protocol | Isaac Freund |
| 2020-06-03 | river-status: fix typo | Isaac Freund |
| 2020-06-03 | river-status: create an object for each output | Isaac Freund |
| 2020-06-03 | Define the river status protocol | Isaac Freund |
| 2020-06-02 | Eliminate some magic numbers | Isaac Freund |
| 2020-06-02 | Use tag masks for tag commands and clean up | Isaac Freund |
| 2020-06-02 | Rename focus -> focus-view | Isaac Freund |
| 2020-06-02 | Clean up some memory leaks | Isaac Freund |
| 2020-06-02 | Don't recreate transaction timer unnecessarily | Isaac Freund |
| 2020-06-01 | Explain config through shell script in readme | Isaac Freund |
| 2020-06-01 | Replace _ with - as separator in commands | Isaac Freund |
| 2020-06-01 | Use + instead of | to separate modifiers | Isaac Freund |
| 2020-06-01 | De-hardcode all mappings | Isaac Freund |
| 2020-06-01 | Add support for running a command on startup | Isaac Freund |
| 2020-06-01 | Really fix zig fmt CI | Isaac Freund |
| 2020-06-01 | Fix zig fmt for CI | Isaac Freund |
| 2020-06-01 | Split river and riverctl directories | Isaac Freund |
| 2020-06-01 | Rename bind -> map | Isaac Freund |
| 2020-06-01 | Implement bind command | Isaac Freund |
| 2020-06-01 | Implement declare_mode | Isaac Freund |
| 2020-06-01 | Rename mode command to enter_mode | Isaac Freund |
| 2020-05-31 | Store modes by id | Isaac Freund |
| 2020-05-31 | Remove dead code | Isaac Freund |
| 2020-05-26 | Rework commands to be string based | Isaac Freund |
| 2020-05-30 | Define _POSIX_C_SOURCE | Isaac Freund |
| 2020-05-29 | Add link to NixOS wiki page in build instructions | Isaac Freund |
| 2020-05-28 | Add missing deps to the readme | Isaac Freund |
| 2020-05-26 | Fix typo | Isaac Freund |
| 2020-05-26 | Add licensing info to readme | Isaac Freund |
| 2020-05-24 | Fix git commit post link | Isaac Freund |
| 2020-05-24 | Correct socket -> protocol in readme | Isaac Freund |
| 2020-05-24 | Split control into separate protocol | Isaac Freund |
| 2020-05-24 | Add CI for xwayland | Isaac Freund |
| 2020-05-24 | Add callback to command request for error handling | Isaac Freund |
| 2020-05-22 | Fix name of struct | Isaac Freund |
| 2020-05-24 | Fix x/y offset in full layout | Isaac Freund |
| 2020-05-22 | Fix layout bugs | Leon Henrik Plickat |
| 2020-05-20 | Run zig fmt in CI builds | Isaac Freund |
| 2020-05-20 | Remove unused variable and fix zig fmt | Isaac Freund |
| 2020-05-20 | Add layout command | Leon Henrik Plickat |
| 2020-05-20 | Add layout variable to Output class | Leon Henrik Plickat |
| 2020-05-20 | Switch to layoutFull() for one or no visible views | Leon Henrik Plickat |
| 2020-05-18 | Add "full" layout | Leon Henrik Plickat |
| 2020-05-18 | Modify default layout to allow master area on all four sides | Leon Henrik Plickat |
| 2020-05-19 | Implement command execution through riverctl | Isaac Freund |
| 2020-05-19 | Implement sending command from riverctl | Isaac Freund |
| 2020-05-19 | Add riverctl binary to build.zig | Isaac Freund |
| 2020-05-19 | Create WindowManagement struct | Isaac Freund |
| 2020-04-23 | Sketch out river-window-management protocol | Isaac Freund |
| 2020-05-19 | Fix crash destroying output with layer surfaces | Isaac Freund |
| 2020-05-18 | Implement popups for layer shell | Isaac Freund |
| 2020-05-17 | Make XdgPopup work with non-XdgToplevel parents | Isaac Freund |
| 2020-05-17 | Implement keybinding modes | Isaac Freund |
| 2020-05-14 | Fix cursor disappearing over xwayland views | Isaac Freund |
| 2020-05-12 | Only store mapped layer surfaces in Output.layers | Isaac Freund |
| 2020-05-11 | Only store mapped views in the view stack | Isaac Freund |
| 2020-05-11 | Implement xwayland unmanaged windows | Isaac Freund |
| 2020-05-09 | Give xwayland views the right x/y coords | Isaac Freund |
| 2020-05-08 | Fix broken crashy behavior of zoom | Isaac Freund |
| 2020-05-08 | Better handle transactions with xwayland views | Isaac Freund |
| 2020-05-08 | Refactor server setup and renderer access | Isaac Freund |
| 2020-05-08 | Implement initial Xwayland support | Isaac Freund |
| 2020-05-04 | Add xwayland build option | Isaac Freund |
| 2020-05-02 | Rename files contatining top level structs | Isaac Freund |
| 2020-05-02 | Relicense to GPL-3.0-or-later | Isaac Freund |
| 2020-05-02 | Add note about wlroots change | Isaac Freund |
| 2020-05-02 | Make Keyboard a toplevel struct | Isaac Freund |
| 2020-05-02 | Make Cursor a toplevel struct | Isaac Freund |
| 2020-05-02 | Make Root a toplevel struct | Isaac Freund |
| 2020-05-02 | Make View a toplevel struct | Isaac Freund |
| 2020-05-02 | Make LayerSurface a toplevel struct | Isaac Freund |
| 2020-05-02 | Make Output a toplevel struct | Isaac Freund |
| 2020-05-02 | Make Seat a toplevel struct | Isaac Freund |
| 2020-05-02 | Make InputManager a toplevel struct | Isaac Freund |
| 2020-05-02 | Make Config a topleve struct | Isaac Freund |
| 2020-05-02 | Make Decoration a toplevel struct | Isaac Freund |
| 2020-05-02 | Make DecorationManager a toplevel struct | Isaac Freund |
| 2020-05-02 | Make Server a toplevel struct | Isaac Freund |
| 2020-05-02 | Fix ensure pixman located | Isaac Freund |
| 2020-05-02 | Handle unmap on never-mapped layer surface | Isaac Freund |
| 2020-04-28 | Improve naming consistency | Isaac Freund |
| 2020-04-28 | Workaround global anonymous field name counter | Isaac Freund |
| 2020-04-27 | Fix a couple typos | Isaac Freund |
| 2020-04-27 | Arrange layers on layer surface destroy | Isaac Freund |
| 2020-04-27 | Float child and fixed-size toplevels by default | Isaac Freund |
| 2020-04-27 | Implement inital xdg popup handling | Isaac Freund |
| 2020-04-27 | Clean up some code using c imported enums | Isaac Freund |
| 2020-04-27 | Fix application of exclusive zones | Isaac Freund |
| 2020-04-27 | Simplify some code | Isaac Freund |
| 2020-04-26 | Flesh out readme and fix typo | Isaac Freund |
| 2020-04-26 | Properly set initial usable box of outputs | Isaac Freund |
| 2020-04-26 | Greatly simplify view offset handling | Isaac Freund |
| 2020-04-26 | Fix view stack tests | Isaac Freund |
| 2020-04-25 | Separate View from its implementation | Isaac Freund |
| 2020-04-26 | Support wlr-screencopy | Isaac Freund |
| 2020-04-26 | Revert "Deduplicate some state" | Isaac Freund |
| 2020-04-25 | Deduplicate some state | Isaac Freund |
| 2020-04-25 | Handle set selection for clipboard support | Isaac Freund |
| 2020-04-24 | Fix pointer focus of top/overlay layers | Isaac Freund |
| 2020-04-24 | Start to handle layer surfaces in cursor code | Isaac Freund |
| 2020-04-23 | Fix crash on non-toplevel views | Isaac Freund |
| 2020-04-23 | Add editorconfig | Isaac Freund |
| 2020-04-22 | Fix crash if floating view doesn't fit | Isaac Freund |
| 2020-04-22 | Add a filter to start views in floating mode | Isaac Freund |
| 2020-04-22 | Implement floating views | Isaac Freund |
| 2020-04-21 | Bikeshed variable names | Isaac Freund |
| 2020-04-21 | Fix uninitialized values in tests | Isaac Freund |
| 2020-04-21 | Add AUR link to readme | Isaac Freund |
| 2020-04-20 | Zoom to second view in stack if top is focused | Isaac Freund |
| 2020-04-20 | Cleanup timespec types | Isaac Freund |
| 2020-04-20 | Add Archlinux CI | Isaac Freund |
| 2020-04-19 | Mention contributing.md in readme | Isaac Freund |
| 2020-04-19 | Fix a typo in contributing.md | Isaac Freund |
| 2020-04-19 | Fix broken matrix link in readme | Isaac Freund |
| 2020-04-19 | Add contributing.md | Isaac Freund |
| 2020-04-19 | Fix layer sufaces holding focus after unmap | Isaac Freund |
| 2020-04-19 | Clear focus if focused layer surface is unmapped | Isaac Freund |
| 2020-04-19 | Implement wlr-input-inhibitor | Isaac Freund |
| 2020-04-18 | Grab seats focused on the output for layer shell | Isaac Freund |
| 2020-04-18 | Implement keyboard interactivity for layer shell | Isaac Freund |
| 2020-04-18 | Remove uneeded abstraction | Isaac Freund |
| 2020-04-18 | Send surface enter/leave events | Isaac Freund |
| 2020-04-18 | Arrange on sending view to output | Isaac Freund |
| 2020-04-18 | Add binds to move views between outputs | Isaac Freund |
| 2020-04-18 | Split up commands into separate files | Isaac Freund |
| 2020-04-18 | Refactor focus next/prev view/output commands | Isaac Freund |
| 2020-04-18 | Remove dead code | Isaac Freund |
| 2020-04-18 | Properly clean up resources on exit | Isaac Freund |
| 2020-04-17 | Only log transactions if actually started | Isaac Freund |
| 2020-04-17 | Close layer surfaces on output destroy | Isaac Freund |
| 2020-04-17 | Clean up listener handling for layer surfaces | Isaac Freund |
| 2020-04-17 | Fix focus handling of newly mapped Views | Isaac Freund |
| 2020-04-17 | Clean up listener handling for Views | Isaac Freund |
| 2020-04-16 | Handle destruction of outputs | Isaac Freund |
| 2020-04-15 | Fix focus handling on output cycle | Isaac Freund |
| 2020-04-15 | Add keybinds to cycle between outputs | Isaac Freund |
| 2020-04-15 | Properly handle coordinates with multiple outputs | Isaac Freund |
| 2020-04-15 | Track the focused output of seats | Isaac Freund |
| 2020-04-15 | Clean up layer arrangement | Isaac Freund |
| 2020-04-15 | Handle exclusive zone of -1 properly | Isaac Freund |
| 2020-04-15 | Improve handling of layer surface output assignment | Isaac Freund |
| 2020-04-15 | Rename render.[hc] to bindings.[hc] | Isaac Freund |
| 2020-04-15 | Get rid of redundant create output global call. | Isaac Freund |
| 2020-04-15 | Don't advertise the noop output | Isaac Freund |
| 2020-04-14 | Rename default seat to "default" | Isaac Freund |
| 2020-04-14 | Add a noop output using the noop backend | Isaac Freund |
| 2020-04-14 | Tweak wording in readme | Isaac Freund |
| 2020-04-14 | Clean up and comment config | Isaac Freund |
| 2020-04-14 | Update readme for zig 0.6.0 release | Isaac Freund |
| 2020-04-13 | Implement the focus stack | Isaac Freund |
| 2020-04-13 | Parially refactor commands to take a *Seat | Isaac Freund |
| 2020-04-13 | Allow storing *View in ViewStack | Isaac Freund |
| 2020-04-12 | Introduce InputManager for eventual multi-seat | Isaac Freund |
| 2020-04-12 | Add run command to readme | Isaac Freund |
| 2020-04-12 | Add building instructions to readme | Isaac Freund |
| 2020-04-12 | Eliminate some code duplication | Isaac Freund |
| 2020-04-12 | Move protocol scanning to build.zig | Isaac Freund |
| 2020-04-11 | Remove unneeded pixman linking | Isaac Freund |
| 2020-04-11 | Arrange layers on layer surface destroy | Isaac Freund |
| 2020-04-11 | Handle layer shell protocol error | Isaac Freund |
| 2020-04-11 | Handle exclusive zones of layer surfaces | Isaac Freund |
| 2020-04-11 | Move output specific code out of root | Isaac Freund |
| 2020-04-10 | Add roadmap to readme and tweak style | Isaac Freund |
| 2020-04-10 | Move rendering out of output to a new namespace | Isaac Freund |
| 2020-04-10 | Implement xdg-output | Isaac Freund |
| 2020-04-10 | Implement initial layer shell support | Isaac Freund |
| 2020-04-09 | Import layer shell protocol | Isaac Freund |
| 2020-04-09 | Go back to using std.ChildProcess | Isaac Freund |
| 2020-04-09 | Properly specify pixman include | Isaac Freund |
| 2020-04-08 | Implement outer padding | Isaac Freund |
| 2020-04-08 | Remove stray default values | Isaac Freund |
| 2020-04-08 | Fix environment of spawned processes | Isaac Freund |
| 2020-04-08 | Add keybind to close views | Isaac Freund |
| 2020-04-08 | Add view all tags and tag with all tags keybinds | Isaac Freund |
| 2020-04-08 | Add binding to toggle tag of focused view | Isaac Freund |
| 2020-04-08 | Add binding to toggle focused tags | Isaac Freund |
| 2020-04-07 | Refactor keybindings to be runtime defined. | Isaac Freund |
| 2020-04-07 | Move commands to a separate file | Isaac Freund |
| 2020-04-07 | Rename gaps -> padding | Isaac Freund |
| 2020-04-06 | Allow switching VTs | Isaac Freund |
| 2020-04-05 | Implement inner gaps | Isaac Freund |
| 2020-04-05 | Fix overdraw of top/bottom borders | Isaac Freund |
| 2020-04-05 | Highlight border of focused view | Isaac Freund |
| 2020-04-05 | Draw borders around views | Isaac Freund |
| 2020-04-04 | Avoid a crash caused by a race conditon | Isaac Freund |
| 2020-04-04 | Take future borders into account for surface size | Isaac Freund |
| 2020-04-04 | Reset focus on switching between tags | Isaac Freund |
| 2020-04-04 | Stop the transaction timer if timeout didn't occur | Isaac Freund |
| 2020-04-04 | Add a bit of logging for transactions | Isaac Freund |
| 2020-04-04 | Fix iteration in handleFrame | Isaac Freund |
| 2020-04-04 | Remove len field from ViewStack | Isaac Freund |
| 2020-04-04 | Test ignoring unmapped view | Isaac Freund |
| 2020-04-04 | Add empty iteration tests | Isaac Freund |
| 2020-04-03 | Add a data structure to manage the view stack | Isaac Freund |
| 2020-04-02 | Focus next view if focused view is hidden | Isaac Freund |
| 2020-04-02 | Implement tag assignment | Isaac Freund |
| 2020-04-01 | Implement switching between single tags | Isaac Freund |
| 2020-04-01 | Implement infrastructure for tags | Isaac Freund |
| 2020-03-29 | Explictly define log level ordering | Isaac Freund |
| 2020-03-29 | Add a log utility | Isaac Freund |
| 2020-03-29 | Make c import a little cleaner | Isaac Freund |
| 2020-03-29 | Fix bug if master count < view count | Isaac Freund |
| 2020-03-29 | Handle timeout of transactions that take too long | Isaac Freund |
| 2020-03-29 | Pass self as immutable where possible | Isaac Freund |
| 2020-03-29 | Add a couple utility functions | Isaac Freund |
| 2020-03-29 | Swap bindngs for send to top and start terminal | Isaac Freund |
| 2020-03-29 | Only move view to top if needed | Isaac Freund |
| 2020-03-29 | Add keybind for adjusting master factor | Isaac Freund |
| 2020-03-29 | Remove outdated entry from gitignore | Isaac Freund |
| 2020-03-28 | Gracefully handle transaction preemption | Isaac Freund |
| 2020-03-28 | Set xdg toplevels to tiled | Isaac Freund |
| 2020-03-28 | Remove the last stray reference to the old name | Isaac Freund |
| 2020-03-28 | Add MIT license | Isaac Freund |
| 2020-03-28 | Add README | Isaac Freund |
| 2020-03-28 | Add new views to the top of the stack | Isaac Freund |
| 2020-03-28 | Add keybindings for changing master count | Isaac Freund |
| 2020-03-28 | Add keybind to move current focus to top of stack | Isaac Freund |
| 2020-03-28 | Focus previous view on close instead of next | Isaac Freund |
| 2020-03-28 | Implement dwm-style tiling layout | Isaac Freund |
| 2020-03-28 | Remove references to old name | Isaac Freund |
| 2020-03-27 | Implement basic xdg decoration management | Isaac Freund |
| 2020-03-27 | Rename to river | Isaac Freund |
| 2020-03-27 | Remove extraneous debug warns | Isaac Freund |
| 2020-03-27 | Add keybind to spawn alacritty instance | Isaac Freund |
| 2020-03-27 | Flesh out focus handling and add keybinds | Isaac Freund |
| 2020-03-26 | Handle arrange after view unmap/destroy properly | Isaac Freund |
| 2020-03-26 | Initial atomic layout update implementation | Isaac Freund |
| 2020-03-25 | Correct a few function names to camelCase | Isaac Freund |
| 2020-03-25 | Simplify initialization functions | Isaac Freund |
| 2020-03-25 | Add Root struct | Isaac Freund |
| 2020-03-24 | Handle destruction of Server properly | Isaac Freund |
| 2020-03-24 | Make function names camelCase | Isaac Freund |
| 2020-03-24 | Use Self = @This() in all structs | Isaac Freund |
| 2020-03-24 | Clean up cursor handling code | Isaac Freund |
| 2020-03-24 | Make all things const | Isaac Freund |
| 2020-03-24 | Remove superfluous .*. | Isaac Freund |
| 2020-03-24 | Get rid of [*c] pointers | Isaac Freund |
| 2020-03-23 | Rework things to stop invalidating pointers | Isaac Freund |
| 2020-03-23 | Get things compiling again | Isaac Freund |
| 2020-03-23 | Refactor xdg_shell handling | Isaac Freund |
| 2020-03-23 | Move rendering functions to output.zig | Isaac Freund |
| 2020-03-23 | Refactor output handling | Isaac Freund |
| 2020-03-23 | Rework Server | Isaac Freund |
| 2020-03-22 | WIP massive refactor | Isaac Freund |
| 2020-03-22 | Use std.ArrayList over wl_list and fix bugs | Isaac Freund |
| 2020-03-21 | Hack around @cImport() not handling flexible arrays | Isaac Freund |
| 2020-03-21 | Spawn a child | Isaac Freund |
| 2020-03-20 | Fix build.zig | Isaac Freund |
| 2020-03-20 | Down to 1 translate c error | Isaac Freund |
| 2020-03-19 | cleanup | Isaac Freund |
| 2020-03-19 | Make more progress towards tinywl in zig | Isaac Freund |
| 2020-03-19 | Add protocol scanning script | Isaac Freund |
| 2020-03-19 | Initial commit | Isaac Freund |