aboutsummaryrefslogtreecommitdiff
path: root/src/input
AgeCommit message (Collapse)Author
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
2024-10-16Implement input configuration for trackballs (#743)tazjin
* niri-config: add trackball configuration struct The available options are mostly the same as for mice. I've verified that each option is applicable to trackballs in the libinput CLI. * input: apply trackball config settings
2024-10-15input: apply output transform for tablet input (#737)Christian Meissl
when mapping a tablet input to an output apply the output transform just like we already do for touch input.
2024-10-12Implement ConsumeOrExpelWindow{Left,Right} by idIvan Molodetskikh
2024-10-10layout: Reduce field visibilityIvan Molodetskikh
The outside code isn't supposed to mess with the fields.
2024-10-09added power-on-monitors (#723)Winter
2024-10-06Rework pointer inactivity hide as a timerIvan Molodetskikh
The previous way was prone to triggering late due to compositor idling and therefore never calling the check function.
2024-10-06Implement hide cursor on key press and on timeoutyzy-1
2024-10-06Show hidden pointer on mouse pressIvan Molodetskikh
Feels like this should be the case.
2024-09-30handle role specific buffer offsetChristian Meissl
2024-09-13Update SmithayIvan Molodetskikh
2024-09-12Add SwitchPresetWindowHeight by idIvan Molodetskikh
2024-09-12 Implement preset window heightsChristian Rieger
2024-09-06Implement by-id window addressing in IPC and CLI, fix move-column-to-workspaceIvan Molodetskikh
This is a JSON-breaking change for the IPC actions that changed from unit variants to struct variants. Unfortunately, I couldn't find a way with serde to both preserve a single variant, and make it serialize to the old value when the new field is None. I don't think anyone is using these actions from JSON at the moment, so this breaking change is fine.
2024-09-04Fix missing KeyboardLayoutSwitched event on XKB switchIvan Molodetskikh
2024-09-01Implement the event stream IPCIvan Molodetskikh
2024-07-31add mod3 key binding support (#565)Jeff Peeler
* add support for iso_level5_shift modifier * update Cargo.lock bumps smithay to de94e8f59e202b605c35dfe1fef1857bad427e8c
2024-07-13Add middle-emulation libinput flagIvan Molodetskikh
2024-07-10Add move-column-{left/right}-or-to-monitor-{left/right} (#528)Winter
* feature added, move-column-left-or-monitor-left and move-column-right-or-monitor-right * fixed stupid mistake * yalter's fixes * fixed names * fixed a stupid mistake --------- Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com>
2024-07-08screenshot-ui: Animate openingIvan Molodetskikh
2024-07-07Clear pointer grab upon opening the screenshot UIIvan Molodetskikh
Gets rid of DND surfaces.
2024-07-07Implement toggling pointer for the screenshot UIIvan Molodetskikh
2024-07-06Implement on-demand layer-shell keyboard focusIvan Molodetskikh
2024-07-06Fix screenshot UI selection pointer clampingIvan Molodetskikh
2024-07-05Implement key repeat for compositor bindsSalman Farooq
2024-07-05Added Commnads to focus windows or Monitors above/below the active window (#497)TheAngusMcFire
* Implement focus-window-up/down-or-monitor calls * Fixed wrong naming of focus-window-or-monitor commands * fix copy pase errors for focusing direction * Fixed wrong behaviour when the current workspace is empty * Cleanup navigation code to reduce complexity * Fix wrong comments and add testcases for FocusWindowOrMonitorUp/Down --------- Co-authored-by: Christian Rieger <christian.rieger@student.tugraz.at>