| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-12-30 | layout: Remember whether to unfullscreen back into floating | Ivan Molodetskikh | |
| 2024-12-30 | layout: Move toggle_fullscreen() impl to Workspace | Ivan Molodetskikh | |
| 2024-12-30 | wiki: Document new floating window rule and gesture | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement directional move | Ivan Molodetskikh | |
| 2024-12-30 | layout/floating: Extract move_and_animate() | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement center_window() | Ivan Molodetskikh | |
| 2024-12-30 | floating: Implement directional focus | Ivan Molodetskikh | |
| 2024-12-30 | layout: Implement focus_right_or_first() generically | Ivan Molodetskikh | |
| 2024-12-30 | Extract center_preferring_top_left_in_area() | Ivan Molodetskikh | |
| 2024-12-30 | layout/floating: Move a function higher up | Ivan Molodetskikh | |
| Let's group action functions together. Activate is an action and set width/height too. | |||
| 2024-12-30 | Stub out actions when floating is active | Ivan Molodetskikh | |
| Make sure they don't go to the unfocused scrolling layout at least. | |||
| 2024-12-30 | floating: Implement smarter clamping for window location | Ivan Molodetskikh | |
| A small part of the window always remains on-screen regardless of the working area changes. Interactive move lets the user position the window anywhere; automatic actions like toggle-window-floating and dialog opening try to put the window fully on-screen. The size-fraction canonical floating window position remains unclamped, and clamping happens when recomputing the logical position. | |||
| 2024-12-30 | Make right click during move toggle floating | Ivan Molodetskikh | |
| 2024-12-30 | Stop move grab when the start button is released | Ivan Molodetskikh | |
| Rather than when all buttons are released. | |||
| 2024-12-30 | Implement floating child stacking above parents | Ivan Molodetskikh | |
| 2024-12-30 | layout: Extract TestWindowParams | Ivan Molodetskikh | |
| 2024-12-30 | Make interactive move keep in the same layout (floating/tiling) | Ivan Molodetskikh | |
| 2024-12-30 | Always honor min height in new window size | Ivan Molodetskikh | |
| 2024-12-30 | Honor min/max size in more places like initial configure | Ivan Molodetskikh | |
| 2024-12-30 | Initial WIP floating window implementation | Ivan Molodetskikh | |
| 2024-12-30 | temp: Use patched Smithay (fix VRR cursor-plane-only) | Ivan Molodetskikh | |
| 2024-12-30 | Update for Smithay VRR changes | Ivan Molodetskikh | |
| 2024-12-30 | Update Smithay (presentation-time v2) | Ivan Molodetskikh | |
| 2024-12-27 | config: Fix border rule on -> off merging | Ivan Molodetskikh | |
| 2024-12-27 | config: Add a test for border rule on/off merging | Ivan Molodetskikh | |
| 2024-12-26 | Fix nix flake for client-server tests (#896) | Maximilian Huber | |
| This was suggested by @sodiboo in https://github.com/YaLTeR/niri/issues/894#issuecomment-2562153840 and was copied from https://github.com/sodiboo/niri-flake/commit/350e6b68c70f5002a75e10521f5e66ace4b5eed1i Signed-off-by: Maximilian Huber <gh@maxhbr.de> | |||
| 2024-12-23 | Update Configuration:-Key-Bindings.md (#893) | Nathan | |
| * Update Configuration:-Key-Bindings.md Added Leve5 notes with scant instruction on how to use. * Update wiki/Configuration:-Key-Bindings.md --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> | |||
| 2024-12-22 | Implement client-server test infra and window opening tests | Ivan Molodetskikh | |
| These tests make a real Niri instance and real Wayland clients (via manual wayland-rs implementation), both on the same event loop local to the test. This allows testing the full Wayland interaction, including arbitrary event ordering and delays. To start off, add a massive powerset test for the settings that influence where a window may open. | |||
| 2024-12-22 | Add test-only single-pixel-buffer support | Ivan Molodetskikh | |
| 2024-12-22 | Add a Headless backend for tests | Ivan Molodetskikh | |
| Rendering and stuff is unimplemented. | |||
| 2024-12-22 | Switch from k9 to insta for snapshot testing | Ivan Molodetskikh | |
| We'll need some advanced features from insta. | |||
| 2024-12-22 | Initialize PipeWire lazily | Ivan Molodetskikh | |
| This helps with: - System setups starting PipeWire late (after niri startup, but before any screencast). - Tests which don't even want to start PipeWire. | |||
| 2024-12-22 | Bump MSRV to `1.80` | bbb651 | |
| It should be old enough for most distros, and allows upgrading to `zbus 5.x` | |||
| 2024-12-22 | Avoid implicit feature names | bbb651 | |
| 2024-12-22 | fix: check for layer surface under cursor when clicking | Rémi Labeyrie | |
| 2024-12-20 | README: Replace Matrix badge with static | Ivan Molodetskikh | |
| The dynamic one broke recently. | |||
| 2024-12-17 | Add force-pipewire-invalid-modifier debug flag | Ivan Molodetskikh | |
| 2024-12-15 | wiki: Change Since 0.1.11 to Since next release | Ivan Molodetskikh | |
| 2024-12-15 | Add missing blank line | Ivan Molodetskikh | |
| 2024-12-11 | Use gtk Notification portal | Ivan Molodetskikh | |
| xdg-gnome 47 now implements notifications via GNOME Shell API which we don't have. So force the gtk portal to make notifications work again. | |||
| 2024-12-11 | Activate monitors on session unlock (#858) | Salman Farooq | |
| So that e.g. unlocking by touching the fingerprint reader powers on the monitors. --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> Co-authored-by: Salman Farooq <46742354+SalmanFarooqShiekh@users.noreply.github.com> | |||
| 2024-12-09 | Extract rules.apply_{min,max}_size() | Ivan Molodetskikh | |
| 2024-12-08 | layout: Return instead of breaking | Ivan Molodetskikh | |
| There's no code past this, and we want to break out of all loops. | |||
| 2024-12-08 | layout: Return bool from activate_window() | Ivan Molodetskikh | |
| Avoid an extra has_window() call. | |||
| 2024-12-07 | layout: Ignore more actions during interactive move | Ivan Molodetskikh | |
| The interactively moved window is the active window, so this makes sense. | |||
| 2024-12-07 | layout: Extract Tile::verify_invariants() | Ivan Molodetskikh | |
| 2024-12-07 | layout: Mark accessors as cfg(test) | Ivan Molodetskikh | |
| 2024-12-03 | nix: update flake.lock | sodiboo | |
| 2024-12-03 | nix: clang -> rustPlatform.bindgenHook | sodiboo | |
| 2024-12-01 | layout: Extract ScrollingSpace | Ivan Molodetskikh | |
| Leave the Workspace to do the workspace parts, and extract the scrolling parts into a new file. This is a pre-requisite for things like the floating layer (which will live in a workspace alongside the scrolling layer). As part of this huge refactor, I found and fixed at least these issues: - Wrong horizontal popup unconstraining for a smaller window in an always-centered column. - Wrong workspace switch in focus_up_or_right(). | |||
