aboutsummaryrefslogtreecommitdiff
path: root/src/input
AgeCommit message (Collapse)Author
2025-01-30misc: Fix typosbbb651
Using [`typos`](https://github.com/crate-ci/typos) cli
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-23Add `scroll-factor` window rulebbb651
2025-01-23Add toggle-window-rule-opacity actionIvan 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-14add write-to-disk argument to screenshot actionsGustav Sörnäs
2025-01-10Fix new Clippy warningsIvan Molodetskikh
2025-01-10Allow workspace names to be changed dynamically (#904)rustn00b
* Add un/set workspace name actions * Add SetWorkspaceName reference to proptests * Simplify unname_workspace * Add ewaf version of set first workspace name test * Simplify more * Fix comment * Make workspace in set-workspace-name a positional option --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2025-01-09Add a window swap operation (#899)rustn00b
Swap the active window with the a neighboring column's active window. --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com> Take into account PR comments - no longer behave like an expel when a swap is made in a direction where there is no column to swap with - fix janky animation
2025-01-09Add missing cursor warp when focusing floating/tilingIvan Molodetskikh
2025-01-03Clear on-demand layer-shell focus in more casesIvan Molodetskikh
2025-01-02Add actions to focus/move to next/previous monitorJulian Schuler
2025-01-02Add `Mouse{Left,Right,Middle,Back,Forward}` bindsbbb651
2024-12-30Add toggle-window-width by-id actionIvan Molodetskikh
2024-12-30Add center-window by-id actionIvan Molodetskikh
2024-12-30Disable double-resize-click for floating windowsIvan Molodetskikh
2024-12-30layout: Add animate arg to move_floating_window()Ivan Molodetskikh
2024-12-30Add move-floating-window actionIvan Molodetskikh
2024-12-30Add focus-floating/tiling actionsIvan Molodetskikh
2024-12-30Add move-window-to-floating/tiling actionsIvan Molodetskikh
2024-12-30Add set-window-width actionIvan Molodetskikh
2024-12-30Make right click during move toggle floatingIvan Molodetskikh
2024-12-30Stop move grab when the start button is releasedIvan Molodetskikh
Rather than when all buttons are released.
2024-12-30Initial WIP floating window implementationIvan Molodetskikh
2024-12-01layout: Extract ScrollingSpaceIvan 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().
2024-11-29xdg: startup activationChristian Meissl
pass an activation token to process spawned through actions
2024-11-25Refactor animation timing to use lazy clocksIvan Molodetskikh
2024-11-25Refactor animations to take explicit current timeIvan Molodetskikh
2024-11-23Extract Niri::advance_animations()Ivan Molodetskikh
2024-11-21Add `focus-window-previous` action (#811)Ridan Vandenbergh
* Add `FocusWindowPrevious` action * remove [` * track previous focus in Niri instead of every window --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2024-11-12Guard against closed screenshot UI in its bindsIvan Molodetskikh
They can trigger with closed screenshot UI via key repeat.
2024-11-11Unhide the pointer on scroll events (#797)Ramses
* Unhide the pointer on scroll events Since we reset the surface under the pointer when we hide the pointer (see update_pointer_contents), scroll events don't work when the pointer is hidden. So to make scrolling work, we make sure that we unhide the pointer when a scrolling event occurs. * Update src/input/mod.rs --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2024-11-10Start interactive move on Mod+TouchIvan Molodetskikh
2024-11-10Fix scrolling not working with missing mouse configIvan Molodetskikh
2024-11-08Only call on_output_config_changed() on lid switchIvan Molodetskikh
We don't need to reload the niri output config.
2024-11-05Disable laptop panel when the lid is closedIvan Molodetskikh
2024-11-03Implement scroll_factor mouse and touchpad setting (#730)elipp
* Implement scroll_factor mouse and touchpad setting * Change to FloatOrInt, add docs * Also change v120 values --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2024-11-03Remove pointer_grab_ongoing in favor of checking the actual grabIvan Molodetskikh
2024-11-03Correct pointer constraint activation logicIvan Molodetskikh
Internally it uses the pointer focus, so make sure we have up-to-date focus before setting it.
2024-11-03Rename pointer_focus to pointer_contents, clarify commentsIvan Molodetskikh
This is not pointer focus and it shouldn't be pointer focus, let's be clear about it.
2024-11-03Rename surface_under_and_global_space() to contents_under()Ivan Molodetskikh
2024-11-02Change TODO to FIXMEIvan Molodetskikh
2024-10-29Don't show the cursor on programmatic movementIvan Molodetskikh
For keyboard-only use, especially with warp-mouse-to-focus, the intention is that the cursor stays hidden from keyboard and other automatic actions, and only shows up with an actual mouse movement.
2024-10-29[cfg-breaking] Rename hide-on-key-press to hide-when-typingIvan Molodetskikh
I originally preferred on-key-press, but when-typing feels more natural and matches sway. This setting had not been in a stable release yet so this is not stable release cfg breaking.
2024-10-27Implement touch interactive resizeIvan Molodetskikh
2024-10-27Implement touch interactive moveIvan Molodetskikh
2024-10-27Implement interactive window moveRasmus Eneman
2024-10-18support binding actions to switches (#747)Christian Meissl
* support spawn action on switch events this adds a new config section named `switch-events` that allows to bind `spawn` action to certain switch toggles. * Expand docs --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2024-10-17Add scroll-button property for Touchpad, Mouse, Trackpoint, Trackball (#744)chillinbythetree