Commit Graph

3119 Commits

Author SHA1 Message Date
Epilepsy Gatherings 5cd7e4587e
compositor: don't close special on focus on pinned (#4533) 2024-01-26 12:24:52 +00:00
Vaxry 72987dee88 opengl: rassert false on lost context
we do not have infra to deal with this. It will cause hyprland to freeze rendering, we might as well die.
2024-01-26 02:26:10 +00:00
Vaxry 754eaf5b8b pluginapi: fix hooks with negative rip offsets
fixes #4484
2024-01-24 13:53:18 +00:00
Zach DeCook df17991b1c
input: Allow disabling touchscreen input (#4517)
* enable/disable touch device

* ConfigManager: update documentation of 'enabled'
2024-01-24 00:15:01 +00:00
Vaxry 791e1b96b3 internal: minor header cleanup 2024-01-23 01:32:34 +00:00
Vaxry 02b4a9bded compositor: clarify common errors at launch 2024-01-22 09:46:47 +01:00
Vaxry f40e382fc6 crashreporter: skip first possibly cut off line in log tail 2024-01-20 09:16:27 +01:00
Vaxry b86ed02d8a keybinds: avoid duplicated held keys, only use last, remove all
ref #4471
2024-01-19 19:09:32 +01:00
Vaxry 17339e0ae9 input: track exclusive LSes
ref #4465
2024-01-19 16:45:34 +01:00
Vaxry 5eeec8860e core: improve cleanup logic 2024-01-19 16:20:30 +01:00
Epilepsy Gatherings 9f20a15955
input: remove animate checks on resize limiter (#4480) 2024-01-19 15:45:51 +01:00
Vaxry c4365f20ed damage: use buffer_damage instead of effective_damage 2024-01-17 16:01:20 +01:00
Vaxry 307dd8f511 input: partially revert #4401
ref #4465
2024-01-17 14:43:38 +01:00
virchau13 3c964a9fdc
keybinds: Add dispatcher for xmonad/qtile-style workspace switching (#4439)
* feat: implement xmonad/qtile-style workspace switching

Implements the focusWorkspaceOnCurrentMonitor dispatcher and function,
which implements XMonad/Qtile-style workspace switching.

When called, focusWorkspaceOnCurrentMonitor will:
1. Send the requested workspace to the current monitor,
2. If the workspace was previously active on a different monitor,
   replace it with the workspace that was previously active on the
   current monitor,
3. Focus the workspace on the current monitor.

* fix: address PR comments
2024-01-15 16:30:46 +01:00
MightyPlaza f14c5ea5c5
groupbar: separate gradients from title (#4444)
* separate gradients from title logic
modified:   src/config/ConfigManager.cpp
modified:   src/render/decorations/CHyprGroupBarDecoration.cpp

* fix disabled extents
modified:   src/render/decorations/CHyprGroupBarDecoration.cpp

* fix disabled height
modified:   src/render/decorations/CHyprGroupBarDecoration.cpp
2024-01-15 16:17:42 +01:00
Isaac Myhal b6516bad02
config: Add border gradients to windowrulev2 (#4335)
* Add border gradients to windowrulev2

* windowrule border gradient: Use CVarList to parse

* windowrule border gradient: No {} around short ifs
2024-01-14 18:27:32 +01:00
dranull 13d9a637d6
hyprctl: screen_shader config fixes (#4102)
* Allow "/" in values of requests

* Don't tick on empty value
2024-01-14 18:12:52 +01:00
1over137 4cee94b91c
fractional: Set preferred scale on monitor config reload (#4406) 2024-01-14 14:56:35 +01:00
Zach DeCook c4da4b026d
layershell: Fix greedy mouse grab from keyboard_interactive layer (#4401)
* Layer: Don't allow a keyboard-layer to steal focus from other layers

* Input: Don't change keyboard focus on click if focus is locked
2024-01-12 15:43:16 +01:00
scorpion-26 babb9c07b0
swipe: Prevent hiding current workspace when swiping (#4417)
When workspace_swipe_use_r is enabled, swiping from WS 1 to a non-empty WS 2 would
hide WS 1 (Similar effect to issue #4076). This is caused by a faulty
check which doesn't consider, that workspaceIDLeft could be the current
workspace.
This bug is only a problem for r, because m wraps around on WS 1 m-1, whereas r stays on WS 1.
2024-01-11 19:22:40 +01:00
Vaxry 6b92144f15 surface: avoid spam of window surfaces with scale and transform events
fixes #4408
2024-01-11 14:07:28 +01:00
Clyybber 8d31c84483
layout: Round window pos and size on togglefloating (#4407)
Also restore the behaviour introduced in bc4a51dbbb
2024-01-10 18:08:58 +01:00
Vaxry d484506600 keybinds: fix tracking of sent key states 2024-01-10 18:06:38 +01:00
Vaxry b240704bee renderer: allow rendering multiple fullscreen windows in third fs pass
something might be fading out, sliding out, etc. We handle it before, why not use it?

fixes #4076
2024-01-09 20:42:07 +01:00
Vaxry 71166ef40b subsurfaceTree: update surface tree protocol feedback on map 2024-01-09 18:14:08 +01:00
Vaxry 252aaaecfa input: add special_fallthrough
fixes #4323
2024-01-09 13:17:55 +01:00
Vaxry f92a86af53 renderer: ignore box offsets for fullscreen windows 2024-01-08 19:58:15 +01:00
MightyPlaza 2ba2c8aeee
groupbar: improve gradient handling (#4390)
modified:   src/render/decorations/CHyprGroupBarDecoration.cpp
2024-01-08 19:38:22 +01:00
Vaxry d7d333d162 opengl: apply box rot to projections 2024-01-07 18:51:08 +01:00
Vaxry f5b2fd2bc3 opengl: add renderdata.forceIntrospection 2024-01-07 18:37:02 +01:00
Vaxry 44ee9915e3 renderer: overhaul renderModifData 2024-01-07 18:35:44 +01:00
Vaxry 7904188de9 input: allow focusSurface when locked if surfase is sessionLock 2024-01-07 14:04:32 +01:00
Epilepsy Gatherings 666ee61c13
input: leave special on focus (#4358) 2024-01-07 12:06:33 +01:00
Naksu d8dbdc4a01
main: Fix typo in std::cerr (#4359) 2024-01-05 12:45:49 +01:00
thejch 880996b053
master: Add more null checks for rollnext (#4343)
* add more null check for rollnext

* remove pwindow check
2024-01-04 16:17:17 +01:00
Vaxry 1512b81126 master: guard PNODE in roll*
fixes #4331
2024-01-02 22:18:38 +01:00
flicko 4f26c4e1eb
config: variables update their value when set again (#4263)
* variables update their value when set again

* only sort if new variable is found

* clang-format
2024-01-02 16:38:30 +01:00
dranull 3c33d4b9dd
keybinds: Refocus only if the silently moved window had the focus (#4328) 2024-01-02 14:50:30 +01:00
Vaxry 813af393f1 layout: update rules before applying fullscreen nodes in layouts 2024-01-02 14:21:36 +01:00
dranull 583b05a8c6
groupbar: Drag single window instead of destroying group (#4327) 2024-01-02 13:37:03 +01:00
Zach DeCook 1607e96704
HookSystem: rename PAGESIZE_VAR from PAGESIZE to avoid conflict (#4321) 2024-01-01 23:05:26 +01:00
q234rty 1a4f23eb2f
renderer: Only force nearest neighbor when the sizes are off by one or two (#4325)
Fixes rendering issues in arch's extra/telegram-desktop
2024-01-01 20:20:27 +01:00
rszyma 37b76cd1ca
keybinds: fix keys getting stuck + minor refactor & optimizations to keybind handling (#4304) 2024-01-01 18:29:51 +01:00
Vaxry 069880e374 hyprctl: add systeminfo 2024-01-01 17:53:03 +01:00
Vaxry 33444e1e5e deps: update wlroots 2024-01-01 16:47:54 +01:00
dranull 7c1ac58a4b
input: Ignore some input events when focus is on a layer surface (#4306)
* No motion events with focus on LS on workspace change

* Don't check scroll events on decorations with focus on LS
2024-01-01 13:02:16 +01:00
Vaxry 46997a7643 renderer: fix auto scale detection with fractional
ref #4225
2023-12-31 13:54:24 +01:00
Vaxry b5b025a1ed renderer: use nearest_neighbor for misaligned fractional-scale surfaces
ref #4225
2023-12-31 13:11:26 +01:00
MightyPlaza 94d6b2d2c1
deco: fix missing border on togglefloating (#4305)
modified:   src/managers/KeybindManager.cpp
2023-12-30 16:59:01 +01:00
MightyPlaza 2ad2e1d5f5
groupbar: add enabling groupbar and setting priority (#4299) 2023-12-30 15:18:53 +01:00