Age | Commit message (Collapse) | Author |
|
|
|
TODO, make these pointers SP to avoid this in the future.
fixes #5909
|
|
|
|
|
|
|
|
|
|
fixes #5908
|
|
fixes #5910
|
|
|
|
|
|
modified: src/protocols/PointerConstraints.cpp
Co-authored-by: Agent_00Ming <[email protected]>
|
|
This reverts commit 7617c03dfd0073654ca8c4d9a6f5db278d14cd28,
fixing a bug that caused the bottom right corner of windows to
animate oddly.
|
|
closes #5906
fixes #5899
|
|
|
|
CMake used to warn about these deps so I've added them.
Also propagates wlroots' nativeBuildInputs.
|
|
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.
|
|
- Clone repo recursively
- Update Nix install action
- Remove wlroots update
|
|
Build using submodules instead of patching the build process and using
Nix derivations of the subprojects.
From this commit on, you'll have to change the Hyprland flake url to
`git+https://github.com/hyprwm/Hyprland?submodules=1`
|
|
|
|
|
|
* protocols: add hyprland_focus_grab_v1 implementation
* protocols/focus_grab: fix keyboard focus staying on unlisted windows
When creating a focus grab with layershell surfaces, the last active
toplevel kept keyboard focus.
* protocols/focus_grab: fix formatting
* protocols/focus_grab: try to pick surface for keyboard focus
* focus_grab: update keyboard focus to match spec
* Revert "protocols/focus_grab: try to pick surface for keyboard focus"
This reverts commit 090358d0d19cc65208641eaefa0a905e99145730.
* protocols/focus_grab: fix issues and match new spec
* kde-server-decoration: move to new impl
* protocols/focus_grab: review fixup
* Update hyprland-protocols
---------
Co-authored-by: Vaxry <[email protected]>
|
|
|
|
fixes #5878
|
|
huge fix
|
|
|
|
|
|
fixes #5873
|
|
fixes #5868
|
|
|
|
* fix deleting monitor settings when merging rules
* use empty and workspace invalid
|
|
fixes #5863
|
|
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.
|
|
* add absolute monitor workspace selectors
* implement absolute for `r`
* format code
|
|
* inputmgr: dont double free on hotplug
since we are also unrefing the state on hotplugging the keyboard set the
state to nullptr so the destructor if case actually catches its been
already freed.
* keybindgmgr: dont double free on layout switching
d5bf153 added keymap unref at the end of updateXKBTranslationState to
not leak it when exiting, only it causes updateXKBTranslationState to
double free when changing layouts. since its already freed. remove the
unneeded extra xkb_keymap_unref.
|
|
|
|
* notifications: free cairo images on destruction
asan reports a leak on exit if we dont free the image we created in the
draw function. add a destructor and free images on exit.
* compositor: destroy wlroots types on exit
there are a few types not being destroyed on exit and causing a leak on
exit in wlroots reported by asan, add those.
* cursormgr: ensure we destroy cursor mgr on exit
add a destructor and call wlr_xcursor_manager_destroy on the manager on
destruction, leak reported by asan.
* keybindmgr: free state and keymap
add missing keymap_unref on creation, and add a destructor and free the
state on exit. leak reported by asan.
* skeyboard: add destructor and free state
free the state on destruction of keyboard, reported as leak by asan
|
|
* added option to choose the default monitor that the cursor will appear in upon startup
* fix: don't set cursor to default monitor after startup
* refactor to checkDefaultCursorWarp also fix focus
|
|
|
|
* Don't unhide grouped items.
* Remove head check as that wasn't always correct.
* Replace lock with expired()
* Remove set hidden from max size.
|
|
|
|
|
|
|
|
ref #5824
|
|
fixes #5842
|
|
web uses -, and thus some themes might use - too. Attempt replacing _ with - before assuming a shape is missing.
|
|
|
|
new event for plugins, windowUpdateRules
|
|
|
|
stuff like ::version(), ::client(), ::error() etc
|
|
fixes #5831
|