Commit Graph

745 Commits

Author SHA1 Message Date
vaxerski 868e0f48d0 added debug:disable_logs 2022-07-01 15:57:56 +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 3970b43ea2 fix disabling monitor while hyprland is running 2022-06-30 23:50:57 +02:00
vaxerski 92890d492a fallback on unset device config var 2022-06-30 21:38:06 +02:00
vaxerski d010ca2049 added per-device config options 2022-06-30 21:26:00 +02:00
vaxerski 4510764f34 finally fix scaled snapshots 2022-06-30 20:02:04 +02:00
vaxerski 96a23eca81 calculate damage properly for layers on commit
since the damageSurface func now works, we can remove this old remnant
2022-06-30 18:46:00 +02:00
vaxerski 990d3f232b fix another crash 2022-06-30 16:11:26 +02:00
vaxerski 97b515edb7 fix crash 2022-06-30 16:00:44 +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 a7ebf0ddc3 added CPU uniform location lookup optimization 2022-06-30 12:39:10 +02:00
vaxerski 4101006b5e remove asserts in CAnimatedVariable 2022-06-30 12:22:24 +02:00
vaxerski b0cd90a43c refactor a bunch of layout code 2022-06-30 12:09:05 +02:00
vaxerski ae3ff6736e hyprctl monitors changes 2022-06-29 23:33:51 +02:00
vaxerski 6ce2678970 fix snapshot scaling issue 2022-06-29 22:26:34 +02:00
vaxerski d28151d255 added foreign support 2022-06-29 22:23:51 +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 697ce96d62 temp fix for snapshot size on scaled 2022-06-29 13:08:28 +02:00
vaxerski 31a1b3b192 allow init logs to be saved 2022-06-29 12:58:49 +02:00
vaxerski 8820f7f210 optimization + revert one oopsie 2022-06-29 12:54:53 +02:00
vaxerski 73663a8ba5 fix incorrect snapshot calc for scaled outputs 2022-06-29 12:36:50 +02:00
vaxerski 13acfb1c30 fix disabling in animationmanager 2022-06-29 12:06:09 +02:00
vaxerski 37abe0aedc added debug:damage_blink 2022-06-29 11:44:00 +02:00
vaxerski 5636d2031e simplify damageWindow 2022-06-29 11:21:42 +02:00
vaxerski 9388bb5d55 fix shadows on scaled 2022-06-29 11:13:30 +02:00
vaxerski 6213328d2c default currentrules to null 2022-06-28 16:12:47 +02:00
vaxerski f7db5eaf50 don't render decos on fullscreen windows 2022-06-28 15:45:38 +02:00
vaxerski 3832720273 fix possible crash in cinputmanager 2022-06-28 15:40:14 +02:00
vaxerski 9fcef41d66 mutliple fixes to subsurface handling 2022-06-28 15:30:46 +02:00
vaxerski fc5cd49795 don't create a surface tree on xwayland windows 2022-06-28 14:09:14 +02:00
vaxerski 9f407b9018 log window parent for x11 2022-06-28 12:46:32 +02:00
vaxerski 85977fb4dc add xwayland class raw to destroywindow 2022-06-28 12:43:08 +02:00
vaxerski 3cbd69e703 added createworkspace destroyworkspace events 2022-06-28 12:39:56 +02:00
vaxerski a2e009bd9f log classes in create/destroy 2022-06-28 12:24:21 +02:00
vaxerski 80f04fa7c6 speed up damage log in commit subsurface 2022-06-28 12:20:33 +02:00
vaxerski 8b4a373efa update wlroots dep 2022-06-28 11:30:07 +02:00
vaxerski c6f7eecf0f set custom if mode not found 2022-06-28 11:12:01 +02:00
vaxerski 1fc1fc9d3b fix focus on close fullscreen 2022-06-27 22:34:37 +02:00
vaxerski 73d0259210 don't guard changes in activateWindow 2022-06-27 22:01:10 +02:00
vaxerski 4443906994 fix fullscreen rule on already fullscreen ws 2022-06-27 20:11:09 +02:00
vaxerski 2cdb29aa10 fix anims with special workspace 2022-06-27 19:46:04 +02:00
vaxerski 213d0f25cf fix oopsie with fullscreen 2022-06-27 19:08:14 +02:00
vaxerski dfe06cb060 fix crash with decos with null workspaces 2022-06-27 14:07:33 +02:00
vaxerski 5ad8cead7c prevent failed assert 2022-06-27 13:54:33 +02:00
vaxerski 781526dac5 added hyprctl kill 2022-06-27 13:42:20 +02:00
vaxerski b9a5fc0d2f added pid and title info to hyprctl 2022-06-27 13:17:11 +02:00
vaxerski bc5fc7fad6 guard shadow w/h 2022-06-27 11:27:02 +02:00
vaxerski 3d48469cb4 fix decos with workspace offset 2022-06-27 00:25:37 +02:00
vaxerski 3263e48675 rerender monitors on config reload 2022-06-26 22:48:31 +02:00
vaxerski 0b1459ef04 typo + fix shadow on multimon 2022-06-26 22:27:03 +02:00
vaxerski b7b4853301 fix deco on fullscreen 2022-06-26 22:26:13 +02:00
vaxerski 44aeb1fc90 added decoration:shadow_offset 2022-06-26 22:15:06 +02:00
vaxerski 0d6e248f15 bring back alacritty to autogen cfg 2022-06-26 20:35:08 +02:00
vaxerski 0b525cdc63 default to multisample on 2022-06-26 20:09:42 +02:00
vaxerski 6a47a305f8 fix some xwayland popups 2022-06-26 20:08:19 +02:00
vaxerski 1a0b2c4ade rewritten borders, fixed msaa 2022-06-26 19:39:56 +02:00
Vaxry f1a5cb4979
Merge pull request #252 from squidgyberries/ex-conf-improvements
Made some settings' comments clearer
2022-06-26 14:53:46 +01:00
vaxerski f5c2dfc706 a bit of fixes to cursor hiding 2022-06-26 13:43:32 +02:00
vaxerski 78bf88ba60 Added fullscreen rule 2022-06-26 12:12:29 +02:00
vaxerski 29aab21033 fix up some stupid default settings (internal) 2022-06-25 23:57:23 +02:00
vaxerski adead82778 some changes to the sens and use in autogen 2022-06-25 23:40:52 +02:00
vaxerski 45898a57c8 guard windows' validity in focuswindowbyclass 2022-06-25 21:18:33 +02:00
vaxerski 2c8cf6afc4 notify of wiki in case of crashes 2022-06-25 21:16:52 +02:00
vaxerski 316b49eee2 added log level info 2022-06-25 20:50:29 +02:00
vaxerski 8de8f6667e add system info logging 2022-06-25 20:49:06 +02:00
vaxerski 2955698f28 fix fade with deco 2022-06-25 20:31:54 +02:00
vaxerski 747ff3369d added drop shadows 2022-06-25 20:28:40 +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 eb13be1240 fix one of the stupidest things i've ever written I am embarrassed. 2022-06-24 22:45:30 +02:00
vaxerski 45a44f9690 added noblur 2022-06-24 22:28:54 +02:00
vaxerski 3053f99db6 guard dragging windows in dwindle 2022-06-24 18:37:04 +02:00
vaxerski e7467c60f9 fix windowrule regex logic and add title: 2022-06-24 16:25:57 +02:00
vaxerski 3e8842e1f8 fix janky pixel maths with scaled textures 2022-06-24 15:59:59 +02:00
vaxerski 81e36298bf dont scale thick in border 2022-06-24 15:52:42 +02:00
vaxerski 218675246f guard pkeyboard in onMouseButton 2022-06-23 21:46:36 +02:00
vaxerski e4e323a0df dwindle: disallow swaps between workspaces 2022-06-23 20:51:01 +02:00
vaxerski f76b9c4852 fix: ignore reserved in getWindowInDirection 2022-06-23 20:39:48 +02:00
vaxerski ae60075226 fix calculating damage offset for oversized popups 2022-06-23 19:32:00 +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 f9745b0d3b allow getWindowInDirection to scan other mons 2022-06-23 09:56:16 +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
vaxerski 499d2e41bf default apply_sens_to_raw to 0 2022-06-22 13:01:59 +02:00
taylor85345 b9f542a60f
Fixed crash on movetoworkspacesilent 2022-06-21 16:13:05 -07:00
vaxerski 4c2459861b fix borders sometimes disappearing on certain windows 2022-06-21 23:09:20 +02:00
vaxerski 0f1ad16aec added general:no_border_on_floating 2022-06-21 22:54:41 +02:00
vaxerski 5541098f20 Added bindl 2022-06-21 22:47:27 +02:00
vaxerski 48e33023af fix crash on number workspace with null mon 2022-06-21 22:42:54 +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
vaxerski 84d6e640ff support all workspace types in workspace keyword 2022-06-21 22:25:54 +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
vaxerski ff49f22440 fix rapid blinking on launch 2022-06-21 22:13:13 +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
Sebastian Ouellette f7e9a27c0a
Merge branch 'vaxerski:main' into main 2022-06-20 22:05:02 -04:00
Caleb Owens 7d80327e7d fixed vertical swapping issue 2022-06-20 17:11:59 +01:00
Caleb Owens 3d46c73981 Added a multiplier for the width to height ratio 2022-06-20 14:37:27 +01:00
vaxerski f5f531562b
Merge pull request #205 from sp1ritCS/meson
Added meson buildfiles
2022-06-20 13:56:58 +01: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
Florian "sp1rit"​ 7c3626f15e
meson: ensure non-debug builds will use proper configuration
meson will set add -DHYPRLAND_DEBUG to CXXFLAGS during compilation of
debug builds. this avoids NDEBUG issues with wlroots and ensures asserts
will also work on release builds.
2022-06-18 13:09:38 +02:00
Yoni FIRROLONI f428604b6f undo formatting 2022-06-17 19:51:34 +01:00
Yoni FIRROLONI 2feca08a67 move, set active, recalc, anim on monitor connected 2022-06-17 19:51:34 +01:00
vaxerski 837d4af8f6
Merge pull request #231 from CcydtN/main
Fix zombie process problem
2022-06-17 17:53:47 +01:00
Florian "sp1rit"​ 75918c14d7
meson: added wayland dependencies to main executable 2022-06-16 23:30:30 +02:00
Florian "sp1rit"​ c169f94895
moved wlroots/xwayland definitions to the main meson file
prevents build-failure when xwayland is disabled to to
    add_project_arguments('-DNO_XWAYLAND', language: 'cpp')
beeing called after the required wayland protocols have been built.
2022-06-16 23:30:30 +02:00
Florian "sp1rit"​ b3ef1fcc54
replaced source list with globber script
See:
  - https://mesonbuild.com/FAQ.html#why-cant-i-specify-target-files-with-a-wildcard
  - https://github.com/vaxerski/Hyprland/pull/205#issuecomment-1154158918
2022-06-16 23:30:30 +02:00
Florian "sp1rit"​ fd0112425f
Added meson buildfiles
this makes for a far better experience in combination with wlroots,
since that whole makefile mess is not required.
Additionaly, handling of wayland protocol sources is also slightly
better, but could be improved with mesons inbuilt wayland module.

To build Hyprland using meson:
    meson _build -Ddefault_library=static
    ninja -C _build
    ninja -C _build install
2022-06-16 23:30:28 +02: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
Bruno Ancona 0c5d2f04b4 Create config directory if it doesn't exist 2022-06-15 01:29:51 -05: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
Marco Siedentopf e69f2ab4c3
Added Config options for Touchpads
Added Options to 1. toggle between clickfinger behavior and software buttons, 2. middle button emulation and 3. tap-to-click
2022-06-12 05:40:01 +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 dc5cc15474 find surfaces in reverse for focus 2022-06-10 15:18:30 +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 b53c093b88 log tablets in hyprctl 2022-06-09 19:25:26 +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 49fc1ccdb4 oops 2022-06-09 17:32:58 +02:00
vaxerski c218ed4432 notify tablet motion 2022-06-09 17:16:01 +02:00