summaryrefslogtreecommitdiff
path: root/src/desktop/Popup.cpp
Commit message (Collapse)AuthorAgeFilesLines
* core: move all shared_ptrs from the STL to hyprutils (#9143)Vaxry2025-01-231-1/+1
|
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-0/+4
| | | Cleanup some unneeded includes to speed up compilation
* core: move parts of the animation system to hyprutils (#8868)Maximilian Seidler2025-01-071-2/+2
| | | | | | | | | | | | | * core: change animation manager to use Hyprutils::Animation * config: move animation config to hyprutils animation tree * use g_pAnimationManager->createAnimation and the new PHLANIMVAR template * core: use CGenericAnimatedVariabled::{enabled,setConfig,getStyle} and adapt callbacks * core: adapt animated variable usage (dereference the shared pointer) * misc: bump CMakeLists to hyprutils 0.3.3
* core: Add clang-tidy (#8664)Vaxry2024-12-071-4/+1
| | | | | This adds a .clang-tidy file for us. It's not a strict requirement to be compliant, but I tuned it to be alright.
* popup: minor cleanupsVaxry2024-11-091-3/+10
| | | | | | don't iterate over unmapped popups in breadthfirst, don't refocus if it wasnt in focus ref #8293
* internal: few more marginal optimisations from profiling (#8271)Tom Englund2024-10-281-1/+2
| | | | | | | | | | | | | | | | | * deco: reduce local temporars and function calls profiling shows this is a high used function, reduce the amount of function calls and local temporar copies and also check if we even need to add extents at all in the loop. * popup: optimize bfhelper in popups pass nodes as const reference and reserve the size of the children node vector help reduce the reallocations. * procotol: make compositor bfhelper use const ref use const ref for nodes and reserve second nodes vector size to reduce amount of reallocation needed.
* input: try to refocus a focusable window when seat grabs are reset (#7669)outfoxxed2024-09-071-0/+7
|
* misc: constify the remaining for loops (#7534)Tom Englund2024-08-261-5/+5
| | | now we roll loops at blazing constified speed.
* xdg-shell: completely rewrite xdg-positioner (#7067)outfoxxed2024-07-271-5/+5
| | | This implementation actually works.
* Core: Move to aquamarine (#6608)Vaxry2024-07-211-2/+3
| | | | | | | | | | | | | | Moves Hyprland from wlroots to aquamarine for the backend. --------- Signed-off-by: Vaxry <vaxry@vaxry.net> Co-authored-by: Mihai Fufezan <mihai@fufexan.net> Co-authored-by: Jan Beich <jbeich@FreeBSD.org> Co-authored-by: vaxerski <vaxerski@users.noreply.github.com> Co-authored-by: UjinT34 <41110182+UjinT34@users.noreply.github.com> Co-authored-by: Tom Englund <tomenglund26@gmail.com> Co-authored-by: Ikalco <73481042+ikalco@users.noreply.github.com> Co-authored-by: diniamo <diniamo53@gmail.com>
* wayland/core: move to new impl (#6268)Vaxry2024-06-081-23/+24
| | | | | * wayland/core/dmabuf: move to new impl it's the final countdown
* core: free more memory on destruction (#6348)Tom Englund2024-06-061-1/+1
| | | | | | | | | | | | | | | | | | * pointermgr: add destructor to state and free buf if the pointer has a buffer set it wont be freed upon destruction, make asan more happy by adding a destructor and wlr_buf_unlock it on exit. * cursormgr: free the animation timer event source properly free the animation timer event source on destruction. * compositor: free the critsig event source on exit properly free the critical signal event source on exit. * popup: clang format style clang format.
* popup: minor safety improvementsVaxry2024-06-051-3/+20
|
* popup: clip input region to surface sizeVaxry2024-05-171-1/+3
| | | | fixes #6125
* seatmgr: Add a grab classVaxry2024-05-141-8/+12
|
* xdg-shell: move to new implVaxry2024-05-141-68/+48
|
* popups: fix breadthfirst and atVaxry2024-05-101-1/+2
| | | | fixes #5977
* popups: avoid infinite recursion in bfVaxry2024-05-101-1/+2
|
* layer-shell: move to new implVaxry2024-05-091-1/+46
| | | | Also bumps the hw-s dep
* internal: new shared_ptr and weak_ptr implementation (#5883)Vaxry2024-05-051-13/+13
| | | | | | | | | | | 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.
* idle-inhibit: fix and cleanup visibility logicVaxry2024-05-041-12/+23
| | | | fixes #5878
* layerSurface: refactor/move to a memory-safe implVaxry2024-04-301-1/+1
| | | | | Makes all the pointers smart to avoid memory issues Refactors layerSurface code to live inside desktop/layersurface
* internal: Window storage rework - part 1 (#5762)Vaxry2024-04-271-9/+9
| | | | | | | | | | | | | | | | | * Window storage rework - part 1 * format * remove useless include * fix pch * format * fix crash in dwindle * fix vram leak * prefer .expired() for bool checks
* popups: more safety in damage checkingVaxry2024-04-041-1/+4
|
* workspaces: add visible flagVaxry2024-04-031-0/+10
|
* renderer: allow blurring ls popupsVaxry2024-03-251-0/+9
|
* popup: avoid damage loops with commitsVaxry2024-03-151-3/+4
| | | | fixes #5118
* subsurface/popup: expand on map/unmap to add bufferingVaxry2024-03-141-2/+2
| | | | ref #5113
* popup: send scale on mapVaxry2024-03-051-0/+10
| | | | fixes #4972
* animations: Refactor AnimatedVariable (#4911)GartoxFR2024-03-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | * animation: Refactor AnimatedVariable This commit decomposes the AnimatedVariable class into a base class with the common attribute to all variable types and a templated derived type containing strongly typed info on the type being animated. Access to the typed version is perfomed using the visitor pattern. A utility is provided to build a visitor on the fly using lambdas. Adding a new type to be animated should just be a matter of adding the typed in the list defined by the ANIMABLE_TYPES macro The size of the commit is justified by the API change in the AnimatedVariable class. No more vec(), fl() or col() method but a unified value() method. * animation: Remove visitor pattern * animation: Fix coding style * animation: Fix coding style
* core: add additional headers for Popup.cpp and InputMethodRelay.hpp (#4909)Brett Alcox2024-03-011-1/+2
|
* popup: minor fixes to xdg geometriesVaxry2024-02-291-6/+12
| | | | fixes #4900
* surface: unify ownersVaxry2024-02-291-1/+5
|
* xdg: rewrite entire popup implementationVaxry2024-02-291-0/+225