Ivan Molodetskikh
4618e4851c
Default to unrestricted primary plane scanout
2025-01-04 13:02:22 +03:00
Julian Schuler
c17d4dc050
Add actions to focus/move to next/previous monitor
2025-01-02 15:15:23 +03:00
bbb651
4e33f45522
Add Mouse{Left,Right,Middle,Back,Forward} binds
2025-01-02 14:59:15 +03:00
Ivan Molodetskikh
793e92e9d6
Add default-floating-position relative-to property
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
a7c57f4faf
Add toggle-window-width by-id action
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
6c897d5201
Add center-window by-id action
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
3c2e1554c6
Add default-floating-position window rule
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
6c52077d92
Add move-floating-window action
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
5b4750a009
Add focus-floating/tiling actions
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
ad50dd21fe
Add move-window-to-floating/tiling actions
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
8b0cb0bb57
Add set-window-width action
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
a24a6e4e3c
Implement is-floating window rule matcher
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
6fba4c371e
Implement default-window-height window rule
...
Only works for floats that aren't initially fullscreen atm.
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
fc99724aba
Add open-focused window rule
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
c5fffd6e2c
Initial WIP floating window implementation
2024-12-30 20:12:37 +03:00
Ivan Molodetskikh
4e357e9659
config: Fix border rule on -> off merging
2024-12-27 15:42:56 +03:00
Ivan Molodetskikh
1f8aed6732
config: Add a test for border rule on/off merging
2024-12-27 15:42:55 +03:00
Ivan Molodetskikh
2d3c36edae
Switch from k9 to insta for snapshot testing
...
We'll need some advanced features from insta.
2024-12-22 15:19:46 +03:00
Ivan Molodetskikh
6b16cc52db
Add force-pipewire-invalid-modifier debug flag
2024-12-17 17:08:14 +03:00
Ivan Molodetskikh
8b84afbd38
Add strict-new-window-focus-policy debug flag
2024-11-29 21:57:36 -08:00
FluxTape
11f351dbeb
Implement empty-workspace-above-first ( #745 )
...
* Implement empty-workspace-above-first option
* add two failing tests
* fix interactive_move_onto_empty_output_ewaf and
interactive_move_onto_first_empty_workspace tests
* Add two failing ewaf option toggle tests
* Fix adding/removing first empty workspace on option toggle
* Don't remove first empty workspace if focused
* Stop workspace switch when enabling ewaf
* layout/monitor: Offset workspace switch on adding workspace above
* Fix some initial active workspace ids with ewaf
* wiki: Document empty-workspace-above-first
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
2024-11-29 08:46:13 +03:00
Ridan Vandenbergh
a74a578198
Add focus-window-previous action ( #811 )
...
* Add `FocusWindowPrevious` action
* remove [`
* track previous focus in Niri instead of every window
---------
Co-authored-by: Ivan Molodetskikh <yalterz@gmail.com >
2024-11-21 14:48:51 +03:00
Ivan Molodetskikh
1a0612cbfd
Implement layer rules: opacity and block-out-from
2024-11-14 12:05:30 +03:00
Ivan Molodetskikh
1028639186
config: Add RegexEq util type instead of manual PartialEq
2024-11-14 09:44:07 +03:00
Ivan Molodetskikh
1951d2a9f2
Fix scrolling not working with missing mouse config
2024-11-10 09:14:22 +03:00
Ivan Molodetskikh
f64e7e14c3
Bump version to 0.1.10
2024-11-09 17:35:31 +03:00
Ivan Molodetskikh
07452f50a8
Update dependencies
2024-11-09 15:57:17 +03:00
Ivan Molodetskikh
3d31f9860a
Extract format_make_model_serial()
2024-11-08 09:10:54 +03:00
Ivan Molodetskikh
8867a4f84c
Add disable-monitor-names debug flag
2024-11-06 08:42:22 +03:00
Ivan Molodetskikh
cd90dfc7be
Disable laptop panel when the lid is closed
2024-11-05 10:03:51 +03:00
elipp
8b39f986d9
Implement scroll_factor mouse and touchpad setting ( #730 )
...
* 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-03 18:43:03 +00:00
Ivan Molodetskikh
05d218113c
Add gradient support for the insert hint
...
Implement it via FocusRing which already handles SolidColor vs. Border
render element.
2024-11-02 10:53:55 +03:00
Ivan Molodetskikh
13fe9c8ac3
[cfg-breaking] Rename hide-on-key-press to hide-when-typing
...
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-29 21:52:03 -07:00
Rasmus Eneman
e887ee93a3
Implement interactive window move
2024-10-27 23:07:39 -07:00
Christian Meissl
79fd309d6c
support binding actions to switches ( #747 )
...
* 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-18 14:00:40 +00:00
chillinbythetree
a480087618
Add scroll-button property for Touchpad, Mouse, Trackpoint, Trackball ( #744 )
2024-10-17 05:43:47 +00:00
tazjin
84655d3b26
Implement input configuration for trackballs ( #743 )
...
* 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-16 13:51:56 +00:00
Ivan Molodetskikh
d5cbc35811
Implement ConsumeOrExpelWindow{Left,Right} by id
2024-10-12 09:58:03 +03:00
Winter
e24723125f
added power-on-monitors ( #723 )
2024-10-09 08:50:06 +00:00
yzy-1
42a9daec9d
Implement hide cursor on key press and on timeout
2024-10-06 22:09:19 -07:00
Ivan Molodetskikh
b501a9b303
Upgrade dependencies
2024-09-30 15:27:36 +03:00
Ivan Molodetskikh
6a48728ffb
Bump version to 0.1.9
2024-09-14 11:55:52 +03:00
Ivan Molodetskikh
c3cb42f04d
Add SwitchPresetWindowHeight by id
2024-09-12 02:32:44 -07:00
Christian Rieger
d0e624e615
Implement preset window heights
2024-09-12 02:32:44 -07:00
Ivan Molodetskikh
370fd4e172
ipc: Convert all Action unit variants to unit struct variants
...
This is a breaking change, but likely nobody uses this through raw JSON
yet, and this allows us to add fields to any action later on without
another breaking change.
2024-09-06 18:32:51 +03:00
Ivan Molodetskikh
dcb29efce5
Implement by-id window addressing in IPC and CLI, fix move-column-to-workspace
...
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-06 18:32:41 +03:00
Ivan Molodetskikh
608ab7d8b1
Change output sorting to match make/model/serial first
...
We can do this now that we have libdisplay-info.
2024-09-05 20:10:01 +03:00
elkowar
fd8ebb9d06
implement always_center_single_column layout option
2024-09-05 01:01:41 -07:00
Ivan Molodetskikh
f0157e03e7
Use libdisplay-info for make/model/serial parsing, implement throughout
2024-09-03 13:48:08 +03:00
Ivan Molodetskikh
f7181fb066
Implement by-id workspace action addressing
...
It's not added to clap because there's no convenient mutually-exclusive
argument enum derive yet (to have either the current <REFERENCE> or an
--id <ID>). It's not added to config parsing because I don't see how it
could be useful there. As such, it's only accessible through raw IPC.
2024-09-01 23:47:19 -07:00