Commit Graph

319 Commits

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