Commit Graph

319 Commits

Author SHA1 Message Date
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