Vaxry
09bb5658b7
window/ls: reset core signals after destroy
...
fixes #7137
2024-08-02 00:31:44 +02:00
Vaxry
37e1411e8d
core/surface/buffer: Buffer lock/release fixes ( #7110 )
2024-07-31 21:47:26 +02:00
MightyPlaza
e989a0bcff
internal: refactor fullscreen states ( #7104 )
...
* refactor fullscreen
modified: src/Compositor.cpp
modified: src/Compositor.hpp
modified: src/config/ConfigManager.cpp
modified: src/config/ConfigManager.hpp
modified: src/debug/HyprCtl.cpp
modified: src/desktop/LayerSurface.cpp
modified: src/desktop/Window.cpp
modified: src/desktop/Window.hpp
modified: src/desktop/Workspace.cpp
modified: src/desktop/Workspace.hpp
modified: src/events/Windows.cpp
modified: src/helpers/Monitor.cpp
modified: src/layout/DwindleLayout.cpp
modified: src/layout/DwindleLayout.hpp
modified: src/layout/IHyprLayout.cpp
modified: src/layout/IHyprLayout.hpp
modified: src/layout/MasterLayout.cpp
modified: src/layout/MasterLayout.hpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/KeybindManager.hpp
modified: src/managers/input/IdleInhibitor.cpp
modified: src/managers/input/InputManager.cpp
modified: src/managers/input/Swipe.cpp
modified: src/protocols/ForeignToplevelWlr.cpp
modified: src/render/Renderer.cpp
modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* clean up
modified: src/config/ConfigManager.cpp
modified: src/debug/HyprCtl.cpp
modified: src/desktop/Window.hpp
modified: src/desktop/Workspace.cpp
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
modified: src/managers/input/Swipe.cpp
* fix mapWindow fullscreen
modified: src/events/Windows.cpp
* fix typo
modified: src/desktop/Workspace.cpp
* add fullscreenstate
modified: src/config/ConfigManager.cpp
modified: src/events/Windows.cpp
* change syncFullscreen to lower
modified: src/config/ConfigManager.hpp
* initialize fs state
modified: src/desktop/Window.hpp
2024-07-31 19:55:52 +02:00
Virt
6e6c61b9e8
layer-shell: avoid crashes on unmap ( #7092 )
2024-07-29 09:47:25 +01:00
vaxerski
256db08aed
layersurface: null check for surface validity before unmap()
2024-07-28 23:41:41 +02:00
vaxerski
0243271544
layer-shell: properly map and unmap surface and propagate unmap events
2024-07-27 18:08:22 +02:00
vaxerski
963816b9a6
layersurface: fixup focus issues in onUnmap
...
fixes #6929
2024-07-27 15:04:03 +02:00
Ikalco
e8374e0792
debug: get rid of useless 1s in logs ( #6969 )
...
* get rid of 1s in logs lol
* replace WLR with AQ in logs
2024-07-22 18:06:11 +02:00
Vaxry
fb15b7aa2a
core: Move to hyprutils for Math
...
Moves CRegion, CBox and Vector2D over to hyprutils.
Requires hyprutils>=0.1.4
2024-06-19 16:20:15 +02:00
outfoxxed
9cd5b3587c
layerSurface: fix layer being refocused every commit with on_demand ( #6487 )
...
* layerSurface: fix layer being refocused every commit with on_demand
Fixes #6477
The surface will now only receive focus when its keyboard
interactivity is more than the previous keyboard interactivity in the
order none -> on_demand -> exclusive.
* layerSurface: only kb focus if becoming exclusive
2024-06-14 11:52:37 +02:00
Vaxry
18ee9ece9c
layershell: minor fixes to re-mapping of layers
...
ref #2012
2024-06-12 22:57:06 +02:00
outfoxxed
21b9e31bf4
layershell: Fix keyboard focus grabs ( #4968 ) ( #6394 )
2024-06-11 19:35:30 +02:00
Vaxry
6967a31450
wayland/core: move to new impl ( #6268 )
...
* wayland/core/dmabuf: move to new impl
it's the final countdown
2024-06-08 10:07:59 +02:00
Vaxry
fc72df8e58
seatmgr: Add a grab class
2024-05-14 23:13:33 +01:00
Vaxry
121d3a7213
wl_seat: move to hyprland impl
2024-05-14 23:02:24 +01:00
Vaxry
494b9415a1
layersurface: avoid restack on identical layers
...
ref #6014
2024-05-11 18:31:50 +01:00
Vaxry
b6a7fb9e91
layersurface: fix invalid use of std::move
...
fixes #6014
2024-05-11 14:43:44 +01:00
Vaxry
2549f0cc97
layersurface: reset popuphead after unmap
...
fixes #5980
2024-05-10 12:03:38 +01:00
Vaxry
635a02d83f
layer-shell: move to new impl
...
Also bumps the hw-s dep
2024-05-09 22:02:18 +01:00
Vaxry
1ed1ce9506
internal: new shared_ptr and weak_ptr implementation ( #5883 )
...
moves std::shared_ptrs to a new implementation
Advantages:
- you can dereference a weak_ptr directly. This will obviously segfault on a nullptr deref if it's expired.
- this is useful to avoid the .lock() hell where we are 100% sure the pointer _should_ be valid. (and if it isn't, it should throw.)
- weak_ptrs are still valid while the SP is being destroyed.
- reasoning: while an object (e.g. CWindow) is being destroyed, its `weak_ptr self` should be accessible (the sp is still alive, and so is CWindow), but it's not because by stl it's already expired (to prevent resurrection)
- this impl solves it differently. w_p is expired, but can still be dereferenced and used. Creating `s_p`s is not possible anymore, though.
- this is useful in destructors and callbacks.
2024-05-05 17:16:00 +01:00
Vaxry
0b215c5f24
idle-inhibit: fix and cleanup visibility logic
...
fixes #5878
2024-05-04 23:46:10 +01:00
Vaxry
1237732b97
input: Introduce basic hyprland HID classes
...
Implements an intermediary HID class for mice, keyboards and touch devices, removing the old structs from WLClasses.hpp
Yes, virtual ones are duplicated a bit, but will likely be de-duped once wlr_input_device is not used anymore.
2024-05-03 22:40:27 +01:00
Vaxry
5edc32930d
layerSurface: refactor/move to a memory-safe impl
...
Makes all the pointers smart to avoid memory issues
Refactors layerSurface code to live inside desktop/layersurface
2024-04-30 02:41:27 +01:00