Commit graph

990 commits

Author SHA1 Message Date
vaxerski
f77fac9df9 warp only on another monitor in changeworkspace 2022-08-31 21:39:27 +02:00
vaxerski
dacaf72e02 remember last window on workspace 2022-08-31 17:02:49 +02:00
vaxerski
7f483dfdb0 guard psurface in activateSurface 2022-08-31 11:12:46 +02:00
vaxerski
1cf46fd6a2 added closewindow dispatcher 2022-08-30 21:35:27 +02:00
vaxerski
dd6aba07e9 revert x11 size hints 2022-08-30 16:12:11 +02:00
vaxerski
d35d949bc5 use sizehints if existent for X11 default floating 2022-08-30 13:07:54 +02:00
vaxerski
20c050e890 set last monitor on move focus dispatcher 2022-08-29 18:50:10 +02:00
vaxerski
6865660e51 disable fullscreen and floating dispatchers on special 2022-08-29 14:55:11 +02:00
vaxerski
6c8ce734fb fix segfault in inactive sessions 2022-08-29 11:17:42 +02:00
vaxerski
09495375b5 ratelimit setting cursor 2022-08-28 22:45:05 +02:00
vaxerski
c757fa54e1 Allow passing the mouse as well in pass 2022-08-28 17:01:48 +02:00
vaxerski
16f8d46391 Force wlroots to not send leave events in pass to XWayland
Massive hack, kill me
2022-08-28 16:43:15 +02:00
vaxerski
d413388761 Multiple improvements to the shutdown procedure 2022-08-28 11:19:08 +02:00
vaxerski
ed2cacc5d5 fix styling in const ptrs 2022-08-27 21:37:35 +02:00
vaxerski
8122505825 pass press and release events separately 2022-08-27 19:29:28 +02:00
vaxerski
a648b452dd fix internal keybinds 2022-08-26 19:19:34 +02:00
vaxerski
10f529ada7 added a specialWorkspace anim leaf 2022-08-26 11:26:23 +02:00
vaxerski
0eb86f4b0d fix silent workspaces with back and forth 2022-08-26 00:19:57 +02:00
vaxerski
7b01c3d028 allow specifying window for toggle floating 2022-08-25 22:34:53 +02:00
vaxerski
e327b0a835 added a swapactiveworkspaces dispatcher 2022-08-25 21:25:28 +02:00
vaxerski
6c2175ed52 fixes to swapnext logic on dwindle 2022-08-24 22:01:25 +02:00
vaxerski
00ef40dda1 added swapnext and swapprev for master 2022-08-24 21:50:48 +02:00
vaxerski
9c3aeda9f9 added swapnext 2022-08-24 21:40:36 +02:00
vaxerski
09f3999b1e Unfocus first on non-internal ws changes 2022-08-23 23:34:36 +02:00
vaxerski
23c5760538 IME Popup damage fixes 2022-08-23 11:16:35 +02:00
vaxerski
6565c31dbf fix IME grab on multiple open native inputs 2022-08-22 18:40:38 +02:00
vaxerski
575bfa40e5 added misc:float_switch_override_focus 2022-08-22 18:22:26 +02:00
vaxerski
429b2bffed fix minor refocus issue 2022-08-22 18:16:32 +02:00
vaxerski
f273ebed9c fix another edge case for fullscreen default windows 2022-08-21 23:24:57 +02:00
vaxerski
3cb30e7fb0 fix crash 2022-08-21 23:16:54 +02:00
Vaxry
c4ba11729f
Merge pull request #557 from xDarksome/main
Add window{open/close/move} IPC events (#549)
2022-08-21 17:10:24 +02:00
Darksome
f7f3446882 CCompositor::moveWindowToWorkspace -> CWindow::moveToWorkspace 2022-08-21 18:01:26 +03:00
vaxerski
0f63077a07 use a custom translation state in keybinds 2022-08-21 16:43:22 +02:00
xDarksome
0f25f3aee3
Merge branch 'hyprwm:main' into main 2022-08-21 16:03:51 +03:00
Charles Taylor
9dbdd66da4 fix retrieval of monitor 2022-08-21 22:11:40 +10:00
Charles Taylor
6ec932d11f fix bug which allowed a switch to workspace ID -1.
This only happened for the workspace_back_and_forth setting, since it
was missing a check.
2022-08-21 22:05:35 +10:00
Charles Taylor
3c8c605541 fix style conflicts and config + monitor retrieval 2022-08-21 21:58:46 +10:00
Charles Taylor
9ee42836d5 add general:allow_workspace_cycles option 2022-08-21 20:47:56 +10:00
Charles Taylor
d6ff7e40cf add general:workspace_back_and_forth option 2022-08-21 20:40:06 +10:00
Charles Taylor
04f0efadc3 add switching to previous workspace 2022-08-21 20:21:21 +10:00
Darksome
776750ee34 Merge branch 'main' of github.com:xDarksome/Hyprland 2022-08-20 13:26:31 +03:00
Darksome
37e1450a4d Impl CCompositor::moveWindowToWorkspace 2022-08-20 13:25:56 +03:00
1b1a0259a8 fix crash 2022-08-19 23:22:59 +02:00
Vaxry
223ca6e286
Merge pull request #548 from FlafyDev/main
add input:kb_file option to use a .xkb file.
2022-08-19 22:39:50 +02:00
FlafyDev
f0ad77251b move absolutePath to MiscFunctions 2022-08-19 23:18:09 +03:00
FlafyDev
69d17bf424 add input:kb_file 2022-08-19 21:01:51 +03:00
946222f4a7 fix typo in swipe alpha control 2022-08-19 17:42:10 +02:00
504d07a87d fix swipe on workspace style fade 2022-08-19 17:36:01 +02:00
81b27be6bb reset lastwindow on full LS focus 2022-08-19 17:29:16 +02:00
f9e30e985c fix refocus on no window 2022-08-19 17:25:07 +02:00
xDarksome
4af95d4253
Merge branch 'hyprwm:main' into main 2022-08-18 22:24:00 +03:00
Darksome
844c33c980 Add mapwindow, unmapwindow and movewindow IPC events 2022-08-18 22:23:28 +03:00
9b62328b22 minor changes to the activelayout event 2022-08-18 17:50:32 +02:00
b078a12eed Added an activelayout event 2022-08-18 17:17:33 +02:00
f3c597bfb7 fix crash 2022-08-18 07:28:07 +02:00
c5a4c83f78 better integrate touch with subsurfaces 2022-08-17 23:23:36 +02:00
f4d11d2d43 fix lastFocus on activateWindow 2022-08-17 22:59:40 +02:00
317b6c430c damage monitor on workspace swipe end 2022-08-16 16:34:36 +02:00
daeb0d3418 force sending size on setWindowFullscreen 2022-08-16 16:30:10 +02:00
ea45c6bfe0 fix memory issue with hyprctl devices 2022-08-16 16:15:43 +02:00
6e2467cc24 fix active keymap in hyprctl devices 2022-08-16 16:10:20 +02:00
d2011a4ba9 added support for window selection in moving to workspace 2022-08-15 16:12:53 +02:00
b0b3a5af10 added resizewindowpixel and movewindowpixel 2022-08-15 15:59:07 +02:00
d47bfe6af1 remove unused fixXWaylandWindowsOnWorkspace 2022-08-15 00:34:39 +02:00
0e57651e2f fix segfault with cyclenext null 2022-08-11 22:56:16 +02:00
f85c765634 change activemon to focusedmon for consistency 2022-08-11 20:55:39 +02:00
8fb4669b85 fix cyclenext on fullscreen 2022-08-11 20:21:55 +02:00
008cc63dc0 fix error for popin 2022-08-11 20:17:23 +02:00
c9ed5bf77e fix cyclenext with fullscreen windows 2022-08-11 19:45:37 +02:00
f4f0495050 disable focus to menu x11 types 2022-08-11 19:36:15 +02:00
9eb750c00b added misc:layers_hog_keyboard_focus 2022-08-10 17:46:01 +02:00
8e5985d70e clean up unconstraining logic 2022-08-09 20:36:21 +02:00
9255a4d2ff ignore further keybinds on submap change 2022-08-09 19:54:06 +02:00
e2f61e267e add parse errors for invalid kb layouts 2022-08-09 18:13:13 +02:00
Mihai Fufezan
f28b71232a
unhide window on requested size change 2022-08-09 11:57:09 +03:00
b60b52c5cf fix movefocusto with null last 2022-08-08 22:46:11 +02:00
87a2ecb90e notify of all mods in pass 2022-08-08 20:31:48 +02:00
bf9d358d3b fix refocus shenanigans with window data 2022-08-08 20:21:11 +02:00
d64227e7c7 added basic touch controls 2022-08-07 21:17:03 +02:00
3a8dcf284a add more errors 2022-08-07 19:28:46 +02:00
Vaxry
9fcfaaadb6
Merge pull request #484 from rubyist/unlock-then-sleep
unlock the event queue before sleeping
2022-08-06 23:32:05 +02:00
Scott Barron
355ee15039 unlock the event queue before sleeping 2022-08-06 17:21:54 -04:00
9564a4cd12 added misc:always_follow_on_dnd 2022-08-06 22:26:32 +02:00
64e80991ca added popin anim minimum % 2022-08-06 22:11:08 +02:00
69b8568ccf better foreign toplevel protocol obedience 2022-08-06 20:57:38 +02:00
vaxerski
b30bb22bb8 fix crash in getMaxSizeForWindow 2022-08-05 19:41:50 +02:00
vaxerski
d72f1cc644 fix various shadow damage issues 2022-08-05 19:23:53 +02:00
vaxerski
78e4f274bc remove some spammy logs from IME 2022-08-05 19:03:03 +02:00
vaxerski
14026d4484 move IME panel below the cursor to not obstruct 2022-08-05 18:54:59 +02:00
vaxerski
cd37a1533e reject tiling windows that do not meet the max size requirement 2022-08-05 18:10:59 +02:00
vaxerski
ad42392856 fix rare IME crash 2022-08-05 17:19:49 +02:00
vaxerski
e0ada97a24 support zwp_input_method_v2 popups 2022-08-05 17:07:01 +02:00
vaxerski
9a8a6317ff multiple IME fixes 2022-08-05 16:21:08 +02:00
vaxerski
cb5521ec6e fix possible crashes with IME 2022-08-05 13:19:16 +02:00
vaxerski
1c4d0e8c18 added IME protocol support 2022-08-05 13:03:37 +02:00
vaxerski
996e5a9e69 disallow swapping in fullscreen 2022-08-03 15:35:28 +02:00
vaxerski
fff7534721 fullscreen new window on fullscreen movefocus 2022-08-03 15:33:55 +02:00
vaxerski
c779a7c03b move refocus on only unmap 2022-08-03 12:03:18 +02:00
vaxerski
1edd66618f added general:no_cursor_warps 2022-08-01 18:50:16 +02:00
vaxerski
338865e433 added follow_mouse 3 2022-08-01 18:42:11 +02:00
vaxerski
070d7699a7 added decoration:blur_new_optimizations 2022-08-01 12:16:33 +02:00
vaxerski
dba4596c7e focus to first window on not found in refocus 2022-07-31 17:07:39 +02:00
vaxerski
a1d1ec4c46 added misc:mouse_move_enables_dpms 2022-07-31 15:46:42 +02:00
vaxerski
20cba2d707 damage monitor on dpms on 2022-07-31 12:39:49 +02:00
vaxerski
edac94bed1 tick hyprctl separately 2022-07-31 00:27:32 +02:00
vaxerski
2e3d42a9a9 added a dpms dispatcher 2022-07-30 23:51:13 +02:00
vaxerski
c2db3ad8ce fix minor memory issue 2022-07-30 23:04:31 +02:00
Ian Manske
ef2417fbcb Fix crash from moving current workspace to nonexistent (null) monitor. 2022-07-29 10:59:31 -04:00
vaxerski
233bad5011 Spam the protocols less with resizes of XDG 2022-07-28 23:55:00 +02:00
vaxerski
4076a3b6d7 fixed device configs 2022-07-28 21:38:30 +02:00
vaxerski
920fdd6bff Animation config rework 2022-07-28 13:28:43 +02:00
vaxerski
9dd17a4be6 Added toggleopaque dispatcher 2022-07-28 12:07:41 +02:00
vaxerski
3904351678 Added layoutmsg and some master layout msgs 2022-07-28 12:00:10 +02:00
vaxerski
31a079b347 added DPMS 2022-07-27 12:32:00 +02:00
vaxerski
28046e9da0 added binds:scroll_event_delay 2022-07-26 23:34:03 +02:00
vaxerski
1455442b9a fix swipe not cancelling constraints 2022-07-26 18:38:30 +02:00
vaxerski
6f2368f809 Add a pass dispatcher 2022-07-26 17:30:30 +02:00
vaxerski
66eac124e2 add binding to mouse buttons 2022-07-26 14:50:21 +02:00
vaxerski
a0be6e19d8 fix shadowing with doesntHave 2022-07-25 16:12:06 +02:00
vaxerski
14176f01ca fix swiping with one workspace on monitor 2022-07-25 15:42:27 +02:00
vaxerski
bb539f0a8d added keybind repeat flag 2022-07-25 14:42:49 +02:00
vaxerski
067e2d39f6 shadow with respect of keysym on press 2022-07-25 14:24:02 +02:00
vaxerski
3e6abaf680 fix some swipe issues 2022-07-25 14:06:49 +02:00
vaxerski
6dc8c4b310 Shadowing Keybinds fixes 2022-07-24 14:35:58 +02:00
vaxerski
8dcc3032a8 fix keybinds shadowing multibinds 2022-07-24 12:16:26 +02:00
vaxerski
fa1273f258 minor changes to swipes 2022-07-22 00:13:56 +02:00
vaxerski
8f66ddcad0 minor changes to swipes 2022-07-22 00:10:26 +02:00
vaxerski
4db1062af6 minor changes to swipes 2022-07-22 00:08:25 +02:00
vaxerski
19cd04c85f shadow keybinds on drag events 2022-07-21 19:44:34 +02:00
Darksome
d5ccca4fdb Consider scroll as a 'pressed' key 2022-07-21 20:31:38 +03:00
Darksome
ce508f1cdc Fix merge 2022-07-21 19:48:34 +03:00
Darksome
eb8a1939e6 Merge upstream 2022-07-21 19:18:03 +03:00
vaxerski
75ce01b1a7 Make the thread manager into a wl event loop timer 2022-07-21 12:33:22 +02:00
vaxerski
189cbe9f09 added shadowing keybinds 2022-07-20 23:17:26 +02:00
vaxerski
fa2bd3b1a8 added keybinds on key up 2022-07-20 22:45:06 +02:00
vaxerski
641aaff998 minor code adjustments 2022-07-20 18:39:08 +02:00
vaxerski
d52446135b add sensitivity per device & reload mice on config 2022-07-19 19:26:53 +02:00
vaxerski
1ba600ca23 added workspace swipe fingers 2022-07-19 18:35:24 +02:00
vaxerski
0026414f9b fix workspace swipes mistake 2022-07-19 18:30:53 +02:00
vaxerski
21217bcb2b notify enter on subsurfaces with follow mouse not 1 2022-07-19 14:05:12 +02:00
Vaxry
f35d513bf5
Merge pull request #391 from dgerblick/focuswindow-options
focuswindow options + other hyprctl bugs I found when testing
2022-07-18 23:19:12 +02:00
vaxerski
8bcfda2230 update moveactivetoworkspace logic 2022-07-18 20:53:29 +02:00
Daniel Gerblick
dc1f34c5fa added PID and address-based options for focuswindow, as well as updated hyprctl clients to be consistent with logs and hyprctl activewindow 2022-07-17 19:00:12 -04:00
vaxerski
edcecae7a0 dont cycle on fullscreen 2022-07-16 19:55:40 +02:00
vaxerski
5c836e6460 added master layout 2022-07-16 15:57:31 +02:00
Darksome
68cfc1a496 Merge branch 'main' of github.com:xDarksome/Hyprland 2022-07-16 15:35:47 +03:00
Darksome
08319dd1f5 Fix handleKeybinds debug log 2022-07-16 15:34:13 +03:00
xDarksome
4f9be67298
Merge branch 'hyprwm:main' into main 2022-07-16 15:30:32 +03:00
Darksome
ce9efb7ae3 Impl changeworkspace(e+{n}) 2022-07-16 15:28:17 +03:00
vaxerski
48e5bd96bc Added shadow colors animations and inactive col 2022-07-16 12:44:45 +02:00
Darksome
1eceae811f Try mouse wheel configuration 2022-07-15 21:54:05 +03:00
Darksome
5388b54442 Merge upstream 2022-07-15 19:42:03 +03:00
vaxerski
c2215e4efb fix focus on fullscreen and over 2022-07-13 18:33:36 +02:00
Vaxry
6708f3b133
Fixed TTY switching (#364) 2022-07-13 18:18:23 +02:00
Mathias Zhang
da83ef7b96
add config drag_lock for touchpad (#353)
* add config drag_lock for touchpad

* fix err

* Update ConfigManager.cpp
2022-07-12 13:11:54 +02:00
vaxerski
b55b6c95f2 update wlroots dep 2022-07-11 23:09:35 +02:00
vaxerski
ad66c158ba don't refocus on virt ptrs 2022-07-11 20:23:16 +02:00
vaxerski
2936368e80 minor event fixes 2022-07-11 14:13:15 +02:00
vaxerski
6f7377f381 accumulate mods from all kbs for keybind processing 2022-07-09 23:24:08 +02:00
vaxerski
c44cafda97 added cyclenext param previous 2022-07-09 18:39:41 +02:00
vaxerski
e6872bddf4 fix minor issues with floating windows and fullscreen 2022-07-08 21:52:52 +02:00
vaxerski
92e17f2925 added rules to hyprctl devices and fixed rules 2022-07-08 12:27:05 +02:00
vaxerski
491b99c61e handle unmanaged X11 setGeometry 2022-07-08 11:24:07 +02:00
vaxerski
46306e59eb added keycode support to unbind 2022-07-08 09:32:09 +02:00
vaxerski
cd0a01f4de Added binding by keycodes 2022-07-08 09:27:17 +02:00
vaxerski
75c2a378e3 unfocus keyboard on refocus null 2022-07-07 21:47:59 +02:00
vaxerski
96f19d706a fix possible swipe crash 2022-07-07 20:53:22 +02:00
vaxerski
aa3bc65342 fix special status when workspace is changed 2022-07-07 19:16:16 +02:00
vaxerski
a7b595d968 allow windowrule special again 2022-07-07 19:01:42 +02:00
vaxerski
22c4ecf496 fixed swiping with one ws 2022-07-07 13:57:26 +02:00
vaxerski
4b796d30c1 Added swipe workspace gestures 2022-07-07 13:49:04 +02:00
vaxerski
f9756d10d4 changed C++ std to C++23, use std::string::contains 2022-07-06 16:50:11 +02:00
vaxerski
9655d0c138 added support for wlr_idle_inhibitor_v1 2022-07-06 15:42:37 +02:00
vaxerski
8d05dddb98 fix focus on maximized windows with special open 2022-07-06 14:58:46 +02:00
vaxerski
0d54451c67 fix incorrect mouse pos in fullscreen xdg 2022-07-06 11:12:27 +02:00
vaxerski
239aa2cec4 fix internal workspace changes being clamped 2022-07-06 11:02:21 +02:00
vaxerski
dd422abb33 schedule frames at the end of avar loop 2022-07-05 16:05:06 +02:00
vaxerski
cc8b8f595f disallow workspace special windowrule 2022-07-04 19:58:51 +02:00
vaxerski
9742ac7596 attempt to fix a specialworkspace crash 2022-07-04 19:41:55 +02:00
vaxerski
c40ef59a35 support monitor names in moving workspaces 2022-07-04 16:51:42 +02:00
vaxerski
01228fbc9c fix some bugs 2022-07-03 22:54:47 +02:00
Mihai Fufezan
0a01ec9926
Fix non-focused windows on WS change
Fixes #298
2022-07-03 15:51:32 +03:00
vaxerski
9d6999345e don't process new focus when cursor constrained 2022-07-02 20:06:10 +02:00
Darksome
cb8a6f881b Disallow scrolling into empty workspaces 2022-07-02 19:55:35 +03:00
xDarksome
185c4d6ea1
Merge branch 'hyprwm:main' into main 2022-07-02 19:43:52 +03:00
vaxerski
6f4f164071 don't focus layers without keyboard_interactive 2022-07-01 20:14:33 +02:00
Vaxry
3d294b1aaa
Merge pull request #292 from Dakes/focus-window-title
Changed dispatcher: focusWindowByClass -> focusWindow. Now supports titles & classes
2022-07-01 18:20:10 +02:00
vaxerski
7d7e82d446 only do mouseMoveUnified on pix change 2022-07-01 17:59:11 +02:00
Dakes
2225dca576 Add focusWindow dispatcher. Takes titles & classes
Removed focusWindowByClass function, replaced with focusWindow.
Either takes a class matching regex, or a title matching one,
beginning with "title:"
Kept the focuswindowbyclass dispatcher identifier to stay backwards
compatible with existing configs.
2022-07-01 16:24:37 +02:00
vaxerski
1750a7cdbb oops 2022-07-01 11:54:52 +02:00
vaxerski
6f2a36c123 limit events on socket2 to 1024 chars 2022-07-01 10:37:17 +02:00
vaxerski
91d68513de fix possible segfault by realloc 2022-06-30 23:55:28 +02:00
vaxerski
d010ca2049 added per-device config options 2022-06-30 21:26:00 +02:00
vaxerski
328b3fa4bc mordernize pointers 2022-06-30 15:44:26 +02:00
vaxerski
d1564299d2 fix minor bug with new anim optimization 2022-06-30 13:11:10 +02:00
vaxerski
cfc1f6c211 optimize animationmanager 2022-06-30 12:54:58 +02:00
vaxerski
b0cd90a43c refactor a bunch of layout code 2022-06-30 12:09:05 +02:00
vaxerski
2659afee3c force workspace events 2022-06-29 18:19:06 +02:00
vaxerski
9391357063 fix focus on maximize 2022-06-29 14:44:24 +02:00
vaxerski
6ec16fdcda damage drag and drop 2022-06-29 14:15:08 +02:00
vaxerski
13acfb1c30 fix disabling in animationmanager 2022-06-29 12:06:09 +02:00
vaxerski
3832720273 fix possible crash in cinputmanager 2022-06-28 15:40:14 +02:00
vaxerski
3cbd69e703 added createworkspace destroyworkspace events 2022-06-28 12:39:56 +02:00
vaxerski
73d0259210 don't guard changes in activateWindow 2022-06-27 22:01:10 +02:00
vaxerski
2cdb29aa10 fix anims with special workspace 2022-06-27 19:46:04 +02:00
vaxerski
781526dac5 added hyprctl kill 2022-06-27 13:42:20 +02:00
vaxerski
3d48469cb4 fix decos with workspace offset 2022-06-27 00:25:37 +02:00
vaxerski
44aeb1fc90 added decoration:shadow_offset 2022-06-26 22:15:06 +02:00
vaxerski
6a47a305f8 fix some xwayland popups 2022-06-26 20:08:19 +02:00
xDarksome
504f76112a
Merge branch 'hyprwm:main' into main 2022-06-26 19:20:20 +03:00
vaxerski
78bf88ba60 Added fullscreen rule 2022-06-26 12:12:29 +02:00
vaxerski
45898a57c8 guard windows' validity in focuswindowbyclass 2022-06-25 21:18:33 +02:00
vaxerski
b46f45befa additional keymap reload safety 2022-06-25 11:50:09 +02:00
vaxerski
3842b1641f allow move to 0 0 2022-06-25 11:20:03 +02:00
vaxerski
72c86b99eb added general:cursor_inactive_timeout 2022-06-24 23:27:02 +02:00
vaxerski
45a44f9690 added noblur 2022-06-24 22:28:54 +02:00
xDarksome
be460ea954
Merge branch 'hyprwm:main' into main 2022-06-24 18:58:11 +03:00
Darksome
776ca3baf2 Change workspace wheel scrolling direction 2022-06-24 18:57:14 +03:00
vaxerski
218675246f guard pkeyboard in onMouseButton 2022-06-23 21:46:36 +02:00
vaxerski
b25bafda08 guard null context in applyConfigToKeyboard 2022-06-23 18:52:05 +02:00
vaxerski
4945c5887d reload all keyboards and not only the active 2022-06-23 15:48:31 +02:00
vaxerski
31dc70a41a Added exact to resizeActive and added moveactive 2022-06-23 10:14:59 +02:00
vaxerski
19d94b87ab Added keybind submaps 2022-06-22 20:23:20 +02:00
vaxerski
770bada5d5 Fixed oversized apps' incorrect layout 2022-06-22 15:45:56 +02:00
taylor85345
b9f542a60f
Fixed crash on movetoworkspacesilent 2022-06-21 16:13:05 -07:00
vaxerski
5541098f20 Added bindl 2022-06-21 22:47:27 +02:00
vaxerski
0b6c04355a
Merge pull request #239 from SebOuellette/main
Optimize cursor constraints for games
2022-06-21 21:34:31 +01:00
vaxerski
33abb6a5bf dang it autoformat 2022-06-21 22:30:07 +02:00
vaxerski
1810725a0c cleaner code 2022-06-21 22:29:11 +02:00
SebOuellette
20ad9d3e7d Passes all constraint tests!
So a summary of what's been done in this fork/PR. Instead of moving the cursor, we're warp_closest ing. warp_absolute didn't work, so warp closest has kindof an auto constrain feature so it works beautifully. I'm also contraining to the right side of the window - 1, because the cursors are treating that pixel as the next pixel over, so it was actually thinking it was on the next monitor (assuming fullscreen) when the cursor got to the right or bottom of the window. TL;DR rounding issue.

This fix didn't work when you had a fullscreen video playing on a monitor beside, so I also fixed that by ignoring all focus changes or whatever when a constraint actually occured, we obviously just don't want to focus another monitor when constrained, so why not just *disable it when a constraint happened*

The PR is now ready, I love Hyprland, and I can't wait to contribute more :)
2022-06-21 16:25:40 -04:00
vaxerski
4a3f9ccba2 move ignore to eventmanager and fix double focus in changeworkspace 2022-06-21 22:17:30 +02:00
SebOuellette
3dc2277fd0 Actually, mostly working.
One failure case: When there is a fullscreen window directly to the right of a game, for example, in a multimonitor setup, then the cursor will bug out in between the monitors. sometimes it will get constrained to the border, but just outside the window (which is what this PR fixes, so it's unusual) and sometimes the cursor will just ignore the constraint entirely. However this is only in the one case.
2022-06-21 02:23:57 -04:00
SebOuellette
ee7900f819 Mouse no longer removes focus from constraining window
The window properly constrains the mouse now

I do still notice a bug with moving the mouse in games, if you don't move the mouse fast enough, some games will not register the mouse movement. This doesn't happen in KDE so I know it's related somehow
2022-06-20 23:15:16 -04:00
Darksome
8f62f6d4b0 Add workspace switching with mouse wheel 2022-06-20 22:47:28 +03:00
Sebastian Ouellette
dc84935059
Set the constraint position to the window center (properly)
Missed one expression, it was set to the bottom middle. I missed it because i don't have an extra monitor extending from the bottom of that screen.
2022-06-19 16:54:59 -04:00
Sebastian Ouellette
95e083dbd3
Converted tabs to spaces. Now ready for PR 2022-06-19 16:51:03 -04:00
SebOuellette
5058a74453 Cleaned up some old debug 2022-06-19 16:23:49 -04:00
Sebastian Ouellette
ae1bcc909d
Invisible cursors are constrained to center
This is a first version of my test to properly constrain cursors. This is mostly working in the buggy applications I had before, but I feel that the cursor needs to actually move around, instead of being locked to the center of the window. 

This may cause problems when locking to the edge, but yeah.
2022-06-19 16:07:41 -04:00
vaxerski
837d4af8f6
Merge pull request #231 from CcydtN/main
Fix zombie process problem
2022-06-17 17:53:47 +01:00
CcydtN
b69375a918 Fixing format issue 2022-06-17 03:25:08 +08:00
CcydtN
5fa61e5a54 Fix generating zombie process 2022-06-17 01:14:10 +08:00
bazuin-32
1926bb4659 Resolves #204. Enables numlock on startup when configured to do so. 2022-06-16 10:49:16 -06:00
Marco Siedentopf
f13217f698
Codestyle 2022-06-12 15:06:58 +00:00
Marco Siedentopf
85d2c1d5a6
Merge branch 'vaxerski:main' into main 2022-06-12 15:04:02 +00:00
spectreseven1138
46d11f7646 Access config value statically 2022-06-12 16:31:56 +09:00
Marco Siedentopf
16d1b44ef9
Implemented Config options for Touchpads
Implemented Options to 1. toggle between clickfinger behavior and software buttons, 2. button emulation and 3. tap-to-click
2022-06-12 05:40:06 +00:00
spectreseven1138
95a626f72e Add loose (2) option to follow_mouse config 2022-06-12 09:14:22 +09:00
Bruno Ancona
018b0684dd Add natural_scrolling option for touchpads only 2022-06-11 10:24:00 -05:00
Francois Rigaut
4fa69497ca fullscreen fix 2022-06-11 16:37:40 +02:00
vaxerski
3a2ac11e3e added focuswindowbyclass 2022-06-10 12:06:27 +02:00
vaxerski
90a859af27 cyclenext 2022-06-10 11:41:52 +02:00
vaxerski
c6953329d5 Added circlenext 2022-06-10 11:39:06 +02:00
vaxerski
d68e09a707 remove unfocusall 2022-06-09 22:07:33 +02:00
vaxerski
fbc7853459 de-focusify on lost proximity 2022-06-09 21:39:03 +02:00
vaxerski
53146ccf69 oopsie 2022-06-09 21:39:03 +02:00
vaxerski
506977c13d unfocus on destroy 2022-06-09 19:40:16 +02:00
vaxerski
09b130374d unfocus tablets 2022-06-09 19:38:39 +02:00
vaxerski
8929172bc2 remove redundant logs 2022-06-09 19:19:42 +02:00
vaxerski
6317f64ba0 set proximity in tablets 2022-06-09 18:09:09 +02:00
vaxerski
824d8b954d logify even more 2022-06-09 17:40:05 +02:00
vaxerski
c218ed4432 notify tablet motion 2022-06-09 17:16:01 +02:00
vaxerski
1841d244f0 log shit in tablets 2022-06-09 14:40:56 +02:00
vaxerski
47404534d0 added tablet v2 support (alpha alpha) 2022-06-09 12:46:55 +02:00
vaxerski
8f0b963729 refocus after movetoworkspace 2022-06-08 15:52:38 +02:00
vaxerski
0b8fe2a0aa fix incorrect animationmanager behavior without anims 2022-06-07 22:27:15 +02:00
vaxerski
1642b1ff66 optimize config calls in often called areas 2022-06-07 20:41:40 +02:00
vaxerski
663fba76ae Added resizeactive 2022-06-06 19:32:14 +02:00
vaxerski
d73e05cc68 fix XDELTA and YDELTA with empty geometry 2022-06-06 18:56:16 +02:00
vaxerski
72c967aa89 fix class crash with unmanaged x11 2022-06-06 15:03:06 +02:00
vaxerski
d743ac7bb1 added forcerendererreload and some more vt changes 2022-06-06 13:48:17 +02:00
vaxerski
09e77bf844 added force_no_accel 2022-06-06 12:08:33 +02:00
vaxerski
ef855440c6 keyboard code further cleanup 2022-06-03 19:15:39 +02:00
vaxerski
1a93b2a756 Handle keyboards better
Also fixes some crashes of apps on reload
2022-06-03 18:59:39 +02:00
vaxerski
6f3b004199 IPC and log changes, introduce signature 2022-06-03 17:41:57 +02:00
vaxerski
19b17b590c fix moveactivetoworkspace with same workspace 2022-06-03 11:19:17 +02:00
vaxerski
7b568d7ad8 configure keyboards one by one 2022-06-02 20:31:47 +02:00
vaxerski
601abc7e92 Added locking numlock 2022-06-02 19:47:11 +02:00
vaxerski
7afcf656bd Added hyprctl devices 2022-06-02 13:59:33 +02:00
vaxerski
0f8712ed64 fix crash in moveWorkspaceToMonitor 2022-05-31 18:47:32 +02:00
vaxerski
0055efc4f1 Added a special workspace 2022-05-31 14:01:00 +02:00
vaxerski
1f4c938c67 Added moving workspaces 2022-05-30 20:05:38 +02:00
vaxerski
c44c79abb2 fix monitor cleanups on removed 2022-05-30 17:11:35 +02:00
vaxerski
1e096f6fcd fix moveactivetoworkspace 2022-05-30 15:28:23 +02:00
vaxerski
e81790f357 massive oopsie in logs 2022-05-30 14:12:36 +02:00
vaxerski
7522ade58d don't set fullscreen to maximized apps 2022-05-30 09:18:05 +02:00
vaxerski
3d7abfea92 Log keybind dispatchers only 2022-05-30 09:16:00 +02:00
vaxerski
227cbb0464 Added fullscreen types, maximize and full 2022-05-29 15:45:51 +02:00
vaxerski
fdb3f610e5 Added wlr_foreign_toplevel_v1 2022-05-29 11:24:42 +02:00
vaxerski
3f8845a6a7 Added an exit dispatcher and no more SIGSEGV on exit 2022-05-29 00:00:47 +02:00
vaxerski
08e0567d3a fix typo in GDK offset adjustments 2022-05-28 20:54:15 +02:00
vaxerski
bdf1c16195 Added IHyprWindowDecoration and Group Bars 2022-05-28 20:46:20 +02:00
vaxerski
b1b24cb21a Added changegroupactive direction 2022-05-28 19:16:20 +02:00
vaxerski
e4d494aed4 fix focusmonitor with named workspaces 2022-05-28 18:38:49 +02:00
vaxerski
15553804d6 Added closing animations (reverse of open) 2022-05-28 18:28:55 +02:00
vaxerski
9b6960eb55 fix calculating stupid gdk surface offsets 2022-05-27 21:10:51 +02:00
vaxerski
8145c552de post empty activewindow event on unfocus 2022-05-26 21:34:52 +02:00
vaxerski
795504dad0 Added workspaceopt dispatcher 2022-05-26 19:05:32 +02:00
vaxerski
d09034ee2a Added a fullscreen event 2022-05-25 18:42:38 +02:00
vaxerski
b2769bab68 use mutexes in eventmanager like a normal human 2022-05-25 17:26:26 +02:00
vaxerski
0ae6563fef workspace set active 2022-05-25 10:25:36 +02:00
vaxerski
0ad33742e1 fix workspace event and add activewindow and activemon 2022-05-24 22:21:31 +02:00
vaxerski
ad7e66adaa stick a newline at the end of socket2 events 2022-05-24 19:47:13 +02:00
vaxerski
ba7e3cd9a1 Major IPC Rework + Added Socket2
IPC is now done with UNIX sockets instead of TCP ones (security!), and added Socket2, see Wiki.
2022-05-24 19:42:43 +02:00
vaxerski
f522c597ef Fix fullscreen focus detection and configure requests 2022-05-23 22:07:29 +02:00
vaxerski
e924cd95fd Added movecursortocorner 2022-05-22 11:52:39 +02:00
vaxerski
5454cf8e89 Fixed mouse constraints, should be correct now 2022-05-18 14:57:08 +02:00
vaxerski
fcd56a3701 fix some border damage geometry issues 2022-05-18 12:27:43 +02:00
vaxerski
f70d0ec5aa Added movetoworkspacesilent 2022-05-18 12:18:58 +02:00
vaxerski
f09de365d5 Added workspace fade transition 2022-05-16 23:13:32 +02:00
vaxerski
50f978e518 Added togglesplit dispatcher 2022-05-16 17:37:46 +02:00
vaxerski
d7ad80e6a2 Added window animation rules 2022-05-15 14:18:31 +02:00
vaxerski
109136af97 Fadein/out now applies to layersurfaces too 2022-05-14 17:23:46 +02:00
vaxerski
694f4433a2 Added animation style and style slide 2022-05-14 16:43:30 +02:00
vaxerski
1d21e5303b minor constraint fixes 2022-05-12 16:07:14 +02:00
vaxerski
d4d72ae54d Workspaceanim: respect stack order 2022-05-12 13:03:02 +02:00
vaxerski
d438bd970a Added virtual pointer protocol 2022-05-12 12:13:02 +02:00
vaxerski
ff0f535c28 Added workspace animations 2022-05-12 11:27:31 +02:00
vaxerski
07e208aa73 unminimize on activate 2022-05-11 15:03:31 +02:00
vaxerski
96819c8ab9 Fix GDK window extents mouse offset
kind of...? Should work more or less
2022-05-10 11:01:03 +02:00
vaxerski
aa5b0d2cda add natural scroll opt 2022-05-06 19:34:48 +02:00
vaxerski
9ddfe0b4ae take rounding into account in border damage 2022-05-05 15:19:50 +02:00
vaxerski
359bb2bdda dont change size if partial damage 2022-05-05 15:16:10 +02:00
vaxerski
77d37cd72a optimization: dont damage entire window on border anim 2022-05-05 14:02:30 +02:00
vaxerski
8369f2980a crucial fixes to full damage tracking 🎉
should now be mostly usable
2022-05-05 13:48:22 +02:00
vaxerski
500cbd135f moveactive monitor 2022-05-05 13:02:55 +02:00
vaxerski
8bb908a8da Added focusmonitor 2022-05-05 12:50:25 +02:00
vaxerski
726ba65785 enter all outputs in wlr/workspaces 2022-04-28 18:06:25 +02:00
vaxerski
4b985d3e38 fix crash when yanking mouse before init 2022-04-28 17:57:24 +02:00
vaxerski
51172129d7 deactivate exclusive 2022-04-28 17:55:25 +02:00
vaxerski
3ea558f1ae fix some xwayland size bugs 2022-04-27 16:35:15 +02:00
vaxerski
cabab409e6 fixed overlay layers being on bottom of fullscreen windows 2022-04-25 21:49:45 +02:00
vaxerski
9eae3b3c3b minor xwayland constraint fixes 2022-04-25 13:40:46 +02:00
vaxerski
c35517d44e fixes for xwayland popups, autofloat pop-up and task_dialog 2022-04-24 17:53:50 +02:00
vaxerski
86bb95c125 some fixes for xwayland windows and focus 2022-04-24 17:42:59 +02:00
vaxerski
f04829a4b5 fix layer focus 2022-04-24 11:41:52 +02:00
vaxerski
6d8016185a default curve more close to parabolic 2022-04-23 21:54:03 +02:00
vaxerski
3ebe7d7972 Added bezier curves 2022-04-23 21:47:16 +02:00
vaxerski
77002eeea0 fix warn 2022-04-23 14:36:03 +02:00
vaxerski
f84294fe07 fixed fullscreen, removed effective vars from windows 2022-04-23 14:35:34 +02:00
vaxerski
0147975faf New animation system 2022-04-23 14:16:02 +02:00
vaxerski
a0ec0326f9 typo 2022-04-21 17:21:55 +02:00
vaxerski
2b8b34d8db Added workspace windowrule 2022-04-21 17:17:47 +02:00
vaxerski
064e40d25f Added unbind keyword 2022-04-21 17:06:43 +02:00
vaxerski
b618fc1caa Added named workspaces 2022-04-21 16:38:48 +02:00
vaxerski
66b5c5a143 static and functional dispatchers 2022-04-21 15:50:52 +02:00
vaxerski
87b8491294 Added the splitratio dispatcher 2022-04-20 16:53:41 +02:00
vaxerski
418e2d96ae Added the movewindow dispatcher 2022-04-20 16:18:58 +02:00
vaxerski
bebfe01d73 Added a custom NO_XWAYLAND flag 2022-04-20 15:58:02 +02:00
Sixels
b7bcd5cb8f Handle negative delay and rate 2022-04-19 14:14:46 -03:00
Sixels
c0645c393b Set keyboard repeat rate and delay from config 2022-04-19 13:52:31 -03:00
Sixels
613093877a Set dwt for touchpad if available 2022-04-19 13:52:31 -03:00
vaxerski
7ae87a233c Inhibit fixes 2022-04-18 17:16:01 +02:00
vaxerski
8e14f3a08d fix mouse glitches on clicks in constrained 2022-04-18 13:41:48 +02:00
vaxerski
80fc30d03e remove unused var 2022-04-18 13:35:35 +02:00
vaxerski
655c038417 added apply_sens_to_raw 2022-04-18 13:13:41 +02:00
vaxerski
30683d5c44 minor XWayland and rule fixes 2022-04-18 13:10:58 +02:00
vaxerski
7b1eaca840 Implemented mouse constraints
has some todos but mostly works
2022-04-17 21:40:04 +02:00
vaxerski
baa9e0caea
Merge branch 'main' into damage-tracking 2022-04-17 11:52:54 +02:00
vaxerski
7cd3e5f34a Added workspace dispatcher + and - 2022-04-14 23:02:10 +02:00
vaxerski
c2b8c27bc5 fix workspace switching with damage 2022-04-14 20:08:39 +02:00
vaxerski
75af34da96 added basic damage tracking 2022-04-14 16:43:29 +02:00
vaxerski
158af1eb09 better keyboard window switching 2022-04-13 20:45:06 +02:00
vaxerski
a558bcdfbf added follow_mouse 2022-04-13 20:19:40 +02:00
vaxerski
4bd23604f8 Dwindle window group fixes
fixed a crash and animations in the bg
2022-04-12 19:18:26 +02:00
vaxerski
b6a93b2f03 Added window grouping for dwindle
furthermore, added LayoutRenderHints.
2022-04-12 16:44:18 +02:00
vaxerski
a8e8729230 Added zext_workspace protocol support 🎉 2022-04-11 19:51:37 +02:00
vaxerski
0f9850fafc moveactive fixes 2022-04-10 21:45:24 +02:00
vaxerski
71916ee09a fixed XDG popups yet again + removed some old TODOs 2022-04-10 16:47:19 +02:00
vaxerski
eea92231fa warp cursor on focus change 2022-04-09 13:33:44 +02:00
vaxerski
3d5e2c1dc3 Added movefocus dispatcher 2022-04-09 13:26:55 +02:00
vaxerski
e72fc4fca2 Fix XWayland crash on moving invalid window 2022-04-07 18:54:31 +02:00
vaxerski
a86bc76b9a fix getTitle crash 2022-04-05 22:28:06 +02:00
vaxerski
50b48818a2 fix crash in AnimationManager 2022-04-05 20:53:16 +02:00
vaxerski
f8e0b0b448 fadein and prep for fadeout 2022-04-05 19:28:10 +02:00
vaxerski
ddcd4fb767 Mostly fixes #5 2022-04-05 18:29:58 +02:00
vaxerski
59b96f782b Bring floated to top on click 2022-04-04 16:28:43 +02:00
vaxerski
462781b16f Added drag to move window 2022-04-03 13:49:21 +02:00
vaxerski
3f99dad7f5 Added pseudotiling 2022-04-02 20:04:32 +02:00
vaxerski
223beb8a82 Multiple focus handling changes 2022-04-02 18:57:09 +02:00
vaxerski
4db773b1e7 Fix popups focus on native GDK 2022-04-02 13:02:16 +02:00
vaxerski
ca2459e563 Do not refocus on pressed mouse 2022-04-01 23:34:19 +02:00
vaxerski
befddca16d Only refocus on pressed 2022-04-01 23:31:33 +02:00
vaxerski
304bf4522e Revert "Fixed XWayland (GTK/?) popups focus"
This reverts commit cd62eb5624.
Breaks a lot of other popups
2022-04-01 23:31:12 +02:00
vaxerski
cd62eb5624 Fixed XWayland (GTK/?) popups focus 2022-04-01 23:11:09 +02:00
vaxerski
b89c174da2 custom animation speeds for components 2022-03-31 17:53:28 +02:00
vaxerski
586e2a98ed Added animated borders 2022-03-31 17:50:00 +02:00
vaxerski
993e601424 remove some warnings 2022-03-31 17:26:09 +02:00
vaxerski
3e614f2c1e Draw the drag icon 2022-03-31 17:25:23 +02:00
vaxerski
f794c91293 windows on top of fullscreen, lastmonitor fixes 2022-03-30 20:16:23 +02:00
vaxerski
7439246efb tell windows to fullscreen on keybind 2022-03-30 17:39:04 +02:00
vaxerski
ae3d1ec3ad fix crash 2022-03-29 15:30:08 +02:00
vaxerski
ad4fc28f78 🎉 Wrapped dynamic event handlers 2022-03-28 22:31:39 +02:00
vaxerski
17e88bf059 log signals 2022-03-28 16:10:30 +02:00
vaxerski
ba7b2d0db2 Handle TTY switching
but bugs rn when coming back :-/
2022-03-27 19:32:50 +02:00
vaxerski
7eb2a1023b Added keyboard configuration 2022-03-24 21:05:34 +01:00
vaxerski
ccbc0e4a2e Added window rules 2022-03-24 18:22:01 +01:00
vaxerski
14d387ea14 animation + floating fixes 2022-03-24 16:05:06 +01:00
vaxerski
97501fc034 update for latest wlroots 2022-03-24 15:57:46 +01:00
vaxerski
bcf7ee6dc2 Added basic animations for windows 2022-03-23 22:01:59 +01:00
vaxerski
1923b0d170 added a keybind todo 2022-03-23 16:52:43 +01:00
vaxerski
f108ec78e2 Added movetoworkspace 2022-03-23 16:51:48 +01:00
vaxerski
f82fdb012e fix dwindle + minor logs and comments 2022-03-22 22:22:59 +01:00
vaxerski
118006e876 fixed layersurface coord mapping 2022-03-22 21:59:14 +01:00
vaxerski
2bc29f32ec finally fixed XWayland popups 2022-03-22 21:28:57 +01:00
vaxerski
e6a848adc0 handle modals a bit better 2022-03-22 20:53:11 +01:00
vaxerski
90bb8e6441 minor changes 2022-03-22 20:04:39 +01:00
vaxerski
aa64af95fe handle inhibit 2022-03-22 18:29:13 +01:00
vaxerski
db4b4ec0d3 Try to fix the crash again 2022-03-22 17:41:23 +01:00
vaxerski
c58b15c6da Fix a crash with setting title 2022-03-22 17:31:19 +01:00
vaxerski
3d61738d5d minor QoL patches 2022-03-21 19:28:43 +01:00
vaxerski
295a0c4a69 Added fullscreen 2022-03-21 19:18:33 +01:00
vaxerski
509f0c9a8a IPC is now a socket 2022-03-21 18:29:41 +01:00
vaxerski
6dcd6f21b9 create floating windows correctly 2022-03-21 17:24:41 +01:00
vaxerski
2e9bd86c8b fix lockup on reloading config 2022-03-20 19:58:12 +01:00
vaxerski
db56e01c63 I am an idiot 2022-03-20 19:29:50 +01:00
vaxerski
942efbcd77 fix it again 2022-03-20 19:28:57 +01:00
vaxerski
027f29023c fix the last xwayland fix because it didnt fully fix 2022-03-20 19:27:47 +01:00
vaxerski
001dfbe323 better shouldbefloated for xwayland 2022-03-20 19:26:16 +01:00
vaxerski
23ec4793e1 fix xwayland windows grabbing mouse when hidden 2022-03-20 19:14:17 +01:00
vaxerski
06114e728d stop complaining 2022-03-20 18:23:39 +01:00
vaxerski
0eba018c8b fixed an oopsie 2022-03-20 18:23:16 +01:00
vaxerski
c32917a5ba added hyprctl 2022-03-20 16:51:14 +01:00
vaxerski
50370e4216 added workspaces 2022-03-20 15:55:47 +01:00
vaxerski
f8a731b10b focus to layers 2022-03-20 14:36:55 +01:00
vaxerski
332fa8a802 XWayland floating 2022-03-20 13:37:07 +01:00
vaxerski
a4b026df2b floating windows support 2022-03-20 11:14:24 +01:00
vaxerski
221acebf2c input tweaks 2022-03-19 22:03:40 +01:00
vaxerski
2e5435fe91 fix layout refresh on config and keybinds doubling 2022-03-19 21:48:24 +01:00
vaxerski
cf76b90606 multimon fixes 2022-03-19 20:30:21 +01:00
vaxerski
f9a4e9aecd basic keybinds 2022-03-19 17:48:18 +01:00
vaxerski
61e10e2048 added a layoutmanager and basic dwindle 2022-03-19 15:59:53 +01:00
vaxerski
8cc0f35fbb fix keyboard 2022-03-19 13:28:02 +01:00
vaxerski
03da5a3ef5 fix crash and log more 2022-03-19 11:27:19 +01:00
vaxerski
d09d3dc0f3 pointer focus works now 2022-03-19 10:53:39 +01:00
vaxerski
625e4ce264 fixed rendering 2022-03-18 23:52:36 +01:00
vaxerski
5971576a50 keyboard fix 2022-03-18 23:25:26 +01:00
vaxerski
dbf566c78a handle keys and focus 2022-03-18 23:06:45 +01:00
vaxerski
5811d968bf focus and move mouse to inputmanager 2022-03-18 22:53:27 +01:00
vaxerski
00098aef4f handle buttons 2022-03-18 20:42:49 +01:00
vaxerski
a9773bd91a XWayland and moved managers 2022-03-18 20:03:39 +01:00