aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--niri-config/src/lib.rs15
-rw-r--r--niri-ipc/src/lib.rs10
-rw-r--r--niri-visual-tests/src/cases/layout.rs23
-rw-r--r--resources/default-config.kdl4
-rw-r--r--src/handlers/compositor.rs27
-rw-r--r--src/handlers/xdg_shell.rs13
-rw-r--r--src/input/mod.rs19
-rw-r--r--src/layout/floating.rs815
-rw-r--r--src/layout/mod.rs236
-rw-r--r--src/layout/monitor.rs53
-rw-r--r--src/layout/scrolling.rs41
-rw-r--r--src/layout/workspace.rs412
-rw-r--r--src/niri.rs2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-spB2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA1-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA1-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA1-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA1-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA2-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA2-spA2.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA2-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsA2-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAA-spA1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAA-spA2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAA-spB1.snap6
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAA-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAN-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAN-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAN-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsAN-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB1-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB1-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB1-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB1-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB2-spA1.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB2-spA2.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB2-spB1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsB2-spB2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBN-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBN-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBN-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBN-spB2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBU-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBU-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBU-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsF-wfsBU-spB2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA1-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA1-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA1-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA1-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA2-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA2-spA2.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA2-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsA2-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAA-spA1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAA-spA2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAA-spB1.snap6
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAA-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAN-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAN-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAN-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsAN-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB1-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB1-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB1-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB1-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB2-spA1.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB2-spA2.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB2-spB1.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsB2-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBN-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBN-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBN-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBN-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBU-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBU-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBU-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@fsT-wfsBU-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA1-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA1-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA1-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA1-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA2-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA2-spA2.snap1
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA2-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsA2-spB2.snap3
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAA-spA1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAA-spA2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAA-spB1.snap6
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAA-spB2.snap6
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAN-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAN-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAN-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsAN-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsB1-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsB1-spA2.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsB1-spB1.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsB1-spB2.snap4
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsB2-spA1.snap2
-rw-r--r--src/tests/snapshots/niri__tests__window_opening__check_target_output_and_workspace@out1-fsF-wfsB2-spA2.snap2