aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2025-02-05Add focus-window-in-column (by index) actionIvan Molodetskikh
2025-02-05Add focus-window-top/bottom/down-or-top/up-or-bottom actionsIvan Molodetskikh
2025-02-05input: add touchpad `drag-lock` settingMathias Zhang
2025-02-05mapped: Add needs_configure flagIvan Molodetskikh
Allows to de-duplicate configures from requests that require one.
2025-02-05Fix find_window_and_output() returning None with no outputsIvan Molodetskikh
As far as I can tell, this would mess up a ton of the logic. Not sure how anything worked with no outputs before?
2025-02-05mapped: Document RequestSizeOnceIvan Molodetskikh
2025-02-04layout/scrolling: Extract tiles_origin()Ivan Molodetskikh
2025-02-02Add impl From<Color> for GradientIvan Molodetskikh
2025-02-01layout: Extract max_tile_heightIvan Molodetskikh
2025-02-01layout: Inline variableIvan Molodetskikh
2025-02-01layout: Verify that individual tiles don't get sized taller than working areaIvan Molodetskikh
2025-01-31Take border into account for fixed preset-column-width for tiled windowsIvan Molodetskikh
2025-01-31Extract SizeChange::from(PresetSize)Ivan Molodetskikh
2025-01-31Fix typo in commentIvan Molodetskikh
2025-01-31layout: Update module commentIvan Molodetskikh
2025-01-31layout: Move tests to separate fileIvan Molodetskikh
This way changing just the tests won't rebuild the main library.
2025-01-30adjust horizontal view movement gestures snap points for ↵fable
center-focused-column "on-overflow" (#1052) * Adjust snap points for center-focused-column "on-overflow" * fix outer gaps not being accounted for in is_overflowing
2025-01-30add option to set xkb config from file (#1062)may
* add option to set xkb config from file * Apply suggestions from code review --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-30misc: Use helper function for restriced protocol filtersbbb651
I looked at cosmic-comp as a sanity check and they do the same thing, I ended up yoinking their function name because it reads better, not sure about "unrestricted" vs "privileged".
2025-01-30misc: Use `CursorImageSurfaceData` type aliasbbb651
instead of `Mutex<CursorImageAttributes>`
2025-01-30misc: Fix typosbbb651
Using [`typos`](https://github.com/crate-ci/typos) cli
2025-01-29layout: Do not update original output for named workspaces upon adding windowsIvan Molodetskikh
The way named workspaces are generally used makes them more "attached" to their original output. For example, you have a two-monitor setup with named workspaces on both. When you disconnect the monitor to go somewhere and work for a while, then return, you probably want your named workspaces to return to where they were on your second monitor. This is in contrast to unnamed workspaces which are more transient and should more easily follow you wherever you're working.
2025-01-29layout: Update workspace original output on moving even if same monitorIvan Molodetskikh
Moving is an explicit action that puts the workspace on a specific monitor. It makes sense to update the original output even if the workspace already happens to be on the target monitor.
2025-01-27Don't create on-disk sockets in testsIvan Molodetskikh
2025-01-27Use Niri::insert_client() in testsIvan Molodetskikh
2025-01-27Extract Niri::insert_client()Ivan Molodetskikh
2025-01-26Extend switch-layout action to accept layout index (#1045)Evgeny Zemtsov
* Extend switch-layout action to accept layout index * Update src/input/mod.rs --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-25Add move-workspace-to-index and move-workspace-to-monitor actions (#1007)Kirottu
* Added move-workspace-to-index and move-workspace-to-monitor IPC actions * Added redraws to the workspace handling actions, fixed tests that panicked, fixed other mentioned problems. * Fixed workspace focusing and handling numbered workspaces with `move-workspace-to-index` * Fixed more inconsistencies with move-workspace-to-monitor * Added back `self.workspace_switch = None` * Reordered some workspace cleanup logic * Fix formatting * Add missing blank lines * Fix moving workspace to same monitor and wrong current index updating * Move function up and add fixme comment --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-25Add clipboard disable-primary settingpeelz
2025-01-23Add `scroll-factor` window rulebbb651
2025-01-23Add find_root_shell_surface() that goes through popupsIvan Molodetskikh
2025-01-23Add toggle-window-rule-opacity actionIvan Molodetskikh
2025-01-21Implement shadows for layer surfacesIvan Molodetskikh
2025-01-21Extract Niri::update_shaders()Ivan Molodetskikh
2025-01-21Add update_render_elements() to MappedLayerIvan Molodetskikh
2025-01-21tile: Rename update() to update_render_elements()Ivan Molodetskikh
2025-01-21Fix two commentsIvan Molodetskikh
2025-01-18Remove Vec from Shadow::render()Ivan Molodetskikh
2025-01-18implement `keyboard-shortcuts-inhibit` and `wlr-virtual-pointer` (#630)sodiboo
* stub keyboard-shortcuts-inhibit and virtual-pointer impls * implement keyboard-shortcuts-inhibit * implement virtual-pointer * deal with supressed key release edge-case; add allow-inhibiting property * add toggle-keyboard-shortcuts-inhibit bind * add InputBackend extensions; use Device::output() for absolute pos events * add a `State` parameter to the backend exts and better document future intent * Add some tests for is_inhibiting_shortcuts --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-17Implement window shadowsIvan Molodetskikh
2025-01-17dbus: DisplayConfig: implement apply_monitors_configVal Packett
This enables gnome-control-center to apply display configuration changes. Only temporarily, persistence is ignored currently.
2025-01-17dbus: DisplayConfig: report fractional scales as supportedVal Packett
2025-01-17dbus: DisplayConfig: report disabled monitors in get_current_stateVal Packett
This is required for gnome-control-center to be able to turn monitors back on.
2025-01-17dbus: DisplayConfig: add properties required by display settings panelVal Packett
2025-01-15Remove obsolete commentIvan Molodetskikh
2025-01-15Rename FoIPosition to FloatingPositionIvan Molodetskikh
2025-01-14clipped_surface: Store complete uniforms in the structIvan Molodetskikh
This mistake shall never happen again.
2025-01-14Add missing clipped surface uniformIvan Molodetskikh
2025-01-14add write-to-disk argument to screenshot actionsGustav Sörnäs
2025-01-13Support `WAYLAND_SOCKET` in winit backendbbb651
I know of a single compositor that supports `WAYLAND_SOCKET` but not `WAYLAND_DISPLAY`: https://gitlab.freedesktop.org/mstoeckl/windowtolayer This should also make niri more robust against accidentally setting `WAYLAND_SOCKET` when starting as a session, before programs could fail if they preffered `WAYLAND_SOCKET` over `WAYLAND_DISPLAY`