Ralph Zhou 5ff379f4e5
hyprscrolling: Ensure maximized state is restored from full-screen (#479)
When a window is in full-screen mode (mode 2), dispatching `fullscreen
1` (maximized mode) fails to resize the window correctly, leaving it at
full-screen dimensions.

This occurs because the `applyNodeDataToWindow` function contains an
early `return` when it detects the window is in a fullscreen state. This
check does not account for the `ignoreFullscreenChecks` flag, which is
specifically set in `fullscreenRequestForWindow` to handle this exact
transition.

The condition is updated to `if (PWINDOW->isFullscreen() &&
!data->ignoreFullscreenChecks)`, allowing the function to proceed and
apply the correct maximized geometry when toggling from a full-screen
state.
2025-09-13 16:37:08 +02:00
..
2025-05-02 19:48:37 +01:00
2025-07-20 19:17:44 +03:00
2025-05-02 19:48:37 +01:00
2025-07-11 19:00:15 +02:00
2025-05-02 19:48:37 +01:00
2025-05-02 19:48:37 +01:00
2025-08-14 16:58:41 +02:00

hyprscrolling

Adds a scrolling layout to Hyprland.

This plugin is a work in progress!

Config

Make sure to set the general:layout to scrolling to use this layout.

All config values are in plugin:hyprscrolling.

name description type default
fullscreen_on_one_column if there's only one column, should it be fullscreen bool false
column_width default column width as a fraction of the monitor width float [0 - 1] 0.5
explicit_column_widths a comma-separated list of widths for columns to be used with +conf or -conf string 0.333, 0.5, 0.667, 1.0
focus_fit_method when a column is focused, what method to use to bring it into view. 0 - center, 1 - fit int 0
follow_focus when a window is focused, the layout will move to make it visible bool true

Layout messages

name description params
move move the layout horizontally, by either a relative logical px (-200, +200) or columns (+col, -col) move data
colresize resize the current column, to either a value or by a relative value e.g. 0.5, +0.2, -0.2 or cycle the preconfigured ones with +conf or -conf. Can also be all (number) for resizing all columns to a specific width relative float / relative conf
movewindowto same as the movewindow dispatcher but supports promotion to the right at the end direction
fit executes a fit operation based on the argument. Available: active, visible, all, toend, tobeg fit mode
focus moves the focus and centers the layout, while also wrapping instead of moving to neighbring monitors. direction
promote moves a window to its own new column none