feat: implement composable window snapping with dual-axis constraints and toggle-to-full behavior
Add SnapHorizontal/SnapVertical enums and SnapConstraint struct to Client for tracking snap state. Introduce layout_apply_snap_constraint() to position windows into quadrants or full axes based on stored snap flags. Extend key_snap_left/right with toggle logic that expands to full width on second press, and add new key_snap_up/down handlers for vertical snapping. Update shortcut documentation and help overlay to describe composable two-key sequences (e.g. Super+Left then Super+Up for top-left quarter).
This commit is contained in:
BIN
Binary file not shown.
Binary file not shown.
+3
-1
@@ -18,7 +18,8 @@ build/client.o: src/client.c include/client.h include/dwn.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-server.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-signature.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-syntax.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-threads.h include/layout.h
|
||||
/usr/include/dbus-1.0/dbus/dbus-threads.h include/layout.h \
|
||||
include/panel.h
|
||||
include/client.h:
|
||||
include/dwn.h:
|
||||
include/atoms.h:
|
||||
@@ -46,3 +47,4 @@ include/notifications.h:
|
||||
/usr/include/dbus-1.0/dbus/dbus-syntax.h:
|
||||
/usr/include/dbus-1.0/dbus/dbus-threads.h:
|
||||
include/layout.h:
|
||||
include/panel.h:
|
||||
|
||||
Binary file not shown.
+3
-1
@@ -18,7 +18,8 @@ build/keys.o: src/keys.c include/keys.h include/dwn.h include/client.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-signature.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-syntax.h \
|
||||
/usr/include/dbus-1.0/dbus/dbus-threads.h include/news.h \
|
||||
include/applauncher.h include/decorations.h include/demo.h
|
||||
include/applauncher.h include/decorations.h include/demo.h \
|
||||
include/layout.h
|
||||
include/keys.h:
|
||||
include/dwn.h:
|
||||
include/client.h:
|
||||
@@ -49,3 +50,4 @@ include/news.h:
|
||||
include/applauncher.h:
|
||||
include/decorations.h:
|
||||
include/demo.h:
|
||||
include/layout.h:
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user