summaryrefslogtreecommitdiff
path: root/src/layout/IHyprLayout.cpp
Commit message (Collapse)AuthorAgeFilesLines
* window: use stored size for new floating window when persistentsize is set ↵Jack Barnes2025-05-061-2/+12
| | | | | | | | | | | | | | | (#10212) * fix(window): use stored size for new floating window when persistentsize is set. fix hyprwm#9422. * fix: replace `std::any_of` with `std::ranges:any_of` * fix: use initialClass and initialTitle when storing sizes on close * fix: add `xdgTag` as a new indicator * fix: no {} * fix: format with clang-format
* render: refactor class member vars (#10292)davc0n2025-05-051-1/+1
| | | | | * render: refactor class member vars * render: fix clang format
* protocols: refactor class member vars (u-z) (#10282)davc0n2025-05-041-4/+4
| | | | | * protocols: refactor class member vars (u-z) * protocols: fix clang format
* protocols: refactor class member vars (core) (#10259)davc0n2025-05-031-1/+1
|
* inputs: refactor class member vars (#10230)davc0n2025-05-011-21/+21
|
* layouts: refactor class member vars (#10228)davc0n2025-05-011-59/+59
|
* helpers: refactor class member vars (#10218)davc0n2025-04-301-30/+28
|
* windows: refactor class member vars (#10168)davc0n2025-04-281-147/+146
|
* workspaces: refactor class member vars (#10167)davc0n2025-04-251-4/+4
|
* compositor: refactor class member vars (#10141)davc0n2025-04-221-13/+13
|
* windowrules: allow incrementing window props (#9566)MightyPlaza2025-04-161-0/+1
|
* IHyprLayout: center floating window at cursor when picked up from fullscreen ↵nyx2025-04-131-2/+7
| | | | (#10063)
* IHyprLayout: respect minimum window size (#10017)nyx2025-04-131-2/+3
| | | | | | * IHyprLayout: respect minimum window size this prevents window warping, before we were not respecting the minimum size which caused the window to move suddenly, even though it would be sized to its minimum size.
* binds: add drag_threshold for click/drag isolation (#9839)alaricljs2025-04-121-37/+55
| | | | | --------- Co-authored-by: Leeman <lstrout@enlj.com>
* layout: properly track floating window position (#9937)Virt2025-04-061-2/+8
|
* layout: center floating window at cursor when picked up from fullscreen (#9780)nyx2025-04-021-2/+6
| | | | | | | * layout: center floating window at cursor when picked up from fullscreen when picking up a floating window after it had been fullscreened before it would return to its previous position which looked ugly because the cursor could be no where near the windows original position, this patch makes it so that the window is returned to the users current cursor position * E
* windowrules: add option to allow size persistence between app launches (#9422)nyx2025-03-081-2/+10
|
* window: move size reporting to animation begin callback (#9298)Maximilian Seidler2025-02-061-12/+6
| | | | | | | | | | | | | | | | | * window: fix resizes with an update callback * window: fixup sendWindowSize Remove the size argument from sendWindowSize, since it is now a member of the Window class and we don't want any mismatches between m_vRealSize and what we report. Remove sendWindowSize from mapWindow, since we shouldn't need it. * window: sendWindowSize on animation begin * window: move most calls to sendWindowSize to the animation begin callback * window: remove sendWindowSize in unmanaged if not fullscreen
* core,hyprctl: clang, clang-tidy, typo fixes and dtors changes (#9233)Honkazel2025-01-301-2/+0
| | | | | | | * declare dtor once + DMABBUF typo fix * dup include + clang moment * linux-dmabuf: last minute nit change
* input: change window grab cursor to closed hand (#9196)Owen L.2025-01-291-1/+1
|
* renderer/internal: stop using box pointersVaxry2025-01-261-5/+3
| | | | in favor of const refs
* core: move sendWindowSize off of xwaylandmgrVaxry2025-01-251-5/+5
| | | | additionally fixes that one weird x11 issue with floating windows being mis-sized on open
* layout: force full damage on toggling floating modeVaxry2025-01-241-1/+1
| | | | fixes #8849
* layout: set window size after toggling floatingVaxry2025-01-241-2/+1
|
* layout: damage window properly on float mode changesVaxry2025-01-231-0/+4
| | | | fixes #8849
* core: move all shared_ptrs from the STL to hyprutils (#9143)Vaxry2025-01-231-2/+2
|
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-0/+5
| | | Cleanup some unneeded includes to speed up compilation
* core: move parts of the animation system to hyprutils (#8868)Maximilian Seidler2025-01-071-50/+50
| | | | | | | | | | | | | * 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
* snap: don't snap to any windows if workspace has a fullscreen window (#8870)Mike Will2025-01-061-3/+5
|
* snap: give edge snapping precedence over corner snapping (#8873)Mike Will2024-12-291-4/+4
|
* snap: revert #8659, use bounds checking instead of bit mask (#8872)Mike Will2024-12-271-2/+2
| | | | | They seem like the same check, but a snap bit might not be turned on as expected if we grab a different corner after an edge has already been snapped.
* groups: honor group lock window rule (#8782)Aqa-Ib2024-12-211-0/+2
|
* layout: apply group rules after window creation (#8779)Aqa-Ib2024-12-191-3/+3
| | | | | * apply group rules after window creation * clang-format
* core: Optimize window/layer rule application and scanning (#8735)Vaxry2024-12-161-18/+20
| | | Optimizes window and layer rule parsing and later usage.
* snap: bias reserved area when its size is greater than zero (#8694)Mike Will2024-12-131-8/+13
|
* core: Add clang-tidy (#8664)Vaxry2024-12-071-2/+2
| | | | | This adds a .clang-tidy file for us. It's not a strict requirement to be compliant, but I tuned it to be alright.
* snap: use the bit mask to check if snapping occurred (#8659)Mike Will2024-12-061-2/+2
|
* snap: check which corner is being grabbed for monitor snapping (#8637)Mike Will2024-12-041-4/+8
|
* snap: account for position of multiple monitors (#8543)Mike Will2024-11-231-2/+2
|
* core: workspace-related function cleanup / refactorVaxry2024-11-221-5/+5
| | | | CCompositor is massive, and has a lot of functions that could be better optimized if in CWorkspace
* windows/xdg: minor cleanup of min/max size calculationsVaxry2024-11-171-4/+4
| | | | fixes #8495
* groups: add merge_groups_on_groupbar (#8362)Aqa-Ib2024-11-061-7/+3
|
* snap: add option `border_overlap` and other improvements (#8289)Mike Will2024-10-311-80/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * snap: add option `border_overlap` and other improvements I really liked the way borders used to overlap when snapping and how only the window's main surface would snap to the monitor, so I would like to bring that behavior back, but in the form of a config option. Other improvements include: - reduced the number of snap functions from 4 down to 2, and only one ever gets called at any given time. - border size should not be added to gap size. It seemed like the right thing to do at the time, but it makes snapping feel way stronger than it actually should. - all const variables have been given the all-caps naming convention. - to avoid excessive casting, border size is declared as a double. - to avoid excessive x + w, y + h calculations. I'm using a struct called Range and working only with start and end values until the very end of the function. - check for both monitor snapping as well as reserved monitor space snapping in a relatively efficient way. * snap: always border-align for corners and reserved monitor space We probably don't want to treat reserved monitor space as if it were just a smaller monitor. Instead, it should be treated more like a borderless window, which means our window's border should never encroach upon it.
* internal: check size limit in layouts (#8298)MightyPlaza2024-10-301-12/+11
| | | | | | | | | | | modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/helpers/MiscFunctions.cpp modified: src/helpers/MiscFunctions.hpp modified: src/layout/DwindleLayout.cpp modified: src/layout/IHyprLayout.cpp modified: src/layout/MasterLayout.cpp modified: src/macros.hpp
* group: fix moveWindowIntoGroup (#8297)Aqa-Ib2024-10-301-11/+8
|
* layout: slight adjustments to snapping logic (#8273)Mike Will2024-10-281-3/+3
| | | fixes some bugs with resizing and corner snapping
* layout: don't snap to self and allow same-pid snapsVaxry2024-10-271-2/+1
| | | | fixes #8255
* layout: window snapping cleanup + fixesVaxry2024-10-271-44/+50
| | | | | | way better now heh fixes #8259 fixes #8267
* core: move internal structures to monitor pointers (#8266)Vaxry2024-10-271-9/+9
|
* groups: fix swallowing (#8223)Aqa-Ib2024-10-271-18/+13
| | | | | | | | | | | | | * fix swallowing for groups * remove unnecessary check * clang-format * clarify comment * make variables consistent * make aditional variables consistent