Commit Graph

70 Commits

Author SHA1 Message Date
memchr bca3068db2
feat: add lockactivegroup dispatcher (#2478)
* feat: add lockactivegroup dispatcher

The `lockactivewindow` dispatcher takes `lock`, `toggle` or `unlock` as arguments. When a group is locked, no window or group can be added to it, nor can it be added to another group, but the `moveintogroup` and `moveoutofgroup` dispatches are not affected.

Implementation details:

the lock is implement via `SGroupData.locked` flag (defaults to false).

The flag is only relevant to the group head, and upon the group head's succession, the flag will be passed down to the new head. Meanwhile, the old head's flag will be set to false.

The flag is set to false when a group is dismissed.

New condition checks have been added to the dwindle and master layout to check if target group is unlocked (and if the source is also a group and unlocked) before adding windows to the target group.

* refactor: `lockactivegroup dispatcher code ordering
2023-06-09 23:44:18 +02:00
vaxerski 1e3571eb5b layout: don't reset to floating size on drag tiled 2023-05-29 18:05:41 +02:00
vaxerski bf27066fd7 IHyprLayout: add missing static modifiers to config vars 2023-04-25 16:53:01 +01:00
vaxerski 8b3d8dc792 Format: use %lx for all addresses 2023-04-17 17:35:28 +01:00
vaxerski bc4a51dbbb internal: make togglefloat better visible on small size deltas 2023-04-06 19:45:59 +01:00
Vaxry 788a8f7c13
internal: wrap wlr surfaces (#1822) 2023-03-20 15:00:58 +00:00
vaxerski 2ba5238b8e groups: fix moving between displays 2023-03-18 16:30:29 +00:00
vaxerski fb45f8f2f9 crashReporter: remove inconsistent log from crash reports 2023-03-04 00:14:20 +00:00
Dashie 7187ea443e
Add option to disable/enable mouse window dragging animations (#1658) 2023-02-28 20:50:10 +00:00
vaxerski 2e21ad875b fix cursor image on drag not resize 2023-02-26 23:08:20 +00:00
Mihai Fufezan e302724847
use corner cursors on resize (#1638) 2023-02-26 03:56:23 +02:00
vaxerski cd6640e890 unset hidden at grouped remove 2023-02-19 23:26:36 +00:00
Vaxry e5a4c0c986
Group/Tab Rework (#1580) 2023-02-19 21:07:32 +00:00
Vaxry 1b56cc4e99
Added an Event Hook System (#1578)
* added an eventHookSystem

* Add all socket2 events to hooks
2023-02-19 20:54:53 +00:00
Ching Pei Yang c92e0c05e4
Resize on border (#1347) 2023-02-18 22:35:31 +00:00
vaxerski 6b7e409f05 properly clamp size in dragging floating corners 2023-02-12 22:24:47 +00:00
vaxerski 6688421240 minor adjustments to xwayland positioning 2023-02-03 21:21:19 +00:00
Vaxry eaf0fb14c9 reset layout-set render vars on floating 2023-01-31 12:15:40 +00:00
eriedaberrie af37a3895f
fix: cursor changing on window move and resize (#1371)
* Just use grab cursor for everything
2023-01-27 11:31:56 +00:00
Vaxry d5913a23ac reset dragged window on failed begin 2023-01-20 16:30:30 +01:00
Vaxry 85d1b06a79 clean draggedwindow in dragend 2023-01-02 12:06:06 +01:00
Vaxry b4ebc18367 remove main_mod 2022-12-28 19:52:12 +01:00
vaxerski deb8d3d82e ignore self in candidate floating 2022-12-16 20:07:44 +00:00
Vaxry 98a4fa2b0d
Added clang format (#1239)
* clang-format stuff and format files
2022-12-16 17:17:31 +00:00
vaxerski 0c1bec023f unset cursor image on end drag if it gets destroyed 2022-12-12 14:32:23 +00:00
vaxerski bf78dcecf0 add changefloatingmode event 2022-12-09 18:51:44 +00:00
vaxerski fd43d2bea7 fix drag resizing on special ws-es 2022-12-09 17:08:04 +00:00
vaxerski b9812f8bc0 use anim callbacks and don't spam config resets in drag 2022-12-09 15:00:58 +00:00
vaxerski 6e3bd440ba do not reject drags on visible windows over fullscreen 2022-12-08 17:45:25 +00:00
vaxerski e1d7a13333 unset fullscreen in onWindowRemoved 2022-12-07 18:57:02 +00:00
Eric_Luo afe12dc90b
Fix a compiler warning (#1124)
Co-authored-by: hnboy <hnboy@users.noreply.github.com>
2022-11-28 19:04:24 +00:00
vaxerski 49063f949d find floating windows below closed one 2022-11-27 12:11:45 +00:00
Vaxry d5eafe1926 set cursor to hand1 when moving a window 2022-11-15 10:39:05 +00:00
vaxerski 7ff1fd9d69 use goal values in changeWindowFloatingMode 2022-11-09 22:02:02 +00:00
vaxerski 1cf829c889 minor loose focus fixes 2022-11-08 20:28:41 +00:00
vaxerski 077c1491a8 respect nofocus in candidate searching 2022-10-24 12:28:41 +01:00
vaxerski c04563734e Rework candidate finding on close window 2022-10-24 12:25:36 +01:00
vaxerski da8be82c9a Fix self-noding in changeWindowFloatingMode 2022-10-19 21:32:30 +01:00
vaxerski 8ffd244ef6 fix animate_manual_resizes with moves 2022-10-19 21:17:49 +01:00
vaxerski 34cd8b125a rework focus system to be more safe and faster 2022-10-14 20:46:32 +01:00
vaxerski ff5843bd85 anchor to proper quad in floating resize 2022-10-03 22:41:12 +01:00
Felix Dick 11ee78f88b Use double literals, don't cast a integer literal to double. 2022-09-28 20:08:41 +02:00
Felix Dick bf3f519eb7 Remove trailing whitespace. 2022-09-25 20:07:48 +02:00
Vaxry c24b45671a mouse binds overhaul 2022-09-19 19:04:48 +01:00
vaxerski a96acc8fa4 only check for visible on xdg 2022-09-13 22:23:48 +02:00
vaxerski 7d4f0a3199 verify visibility of new geom in floating creation 2022-09-13 12:29:56 +02:00
vaxerski d94fe3d063 added window pinning 2022-09-10 13:11:02 +02:00
Darksome f7f3446882 CCompositor::moveWindowToWorkspace -> CWindow::moveToWorkspace 2022-08-21 18:01:26 +03:00
Darksome 37e1450a4d Impl CCompositor::moveWindowToWorkspace 2022-08-20 13:25:56 +03:00
Darksome 844c33c980 Add mapwindow, unmapwindow and movewindow IPC events 2022-08-18 22:23:28 +03:00