summaryrefslogtreecommitdiff
path: root/src/desktop/Workspace.cpp
Commit message (Collapse)AuthorAgeFilesLines
* config: allow hashes for parsing colors (#14337)Vaxry2026-05-081-2/+3
|
* desktop/workspace: fix visibility criteria matching (#14349)Vaxry2026-05-081-2/+9
| | | ref https://github.com/hyprwm/Hyprland/discussions/14233
* layout/scrolling: handle fullscreen manually (#14190)Vaxry2026-05-071-1/+18
| | | Makes scroll handle fullscreen by itself, allowing for fs scrolls.
* windows/focus: add fallbacks when focussing workspaces (#14270)fazzi2026-05-041-0/+12
|
* config/workspace-rules: support modifying persistent and monitor (#14217)shezdy2026-04-301-3/+3
| | | | | * workspace rules: support modifying persistent and monitor * support modifying isDefault
* desktop/window: refactor over fullscreen stateVaxry2026-04-291-2/+2
|
* desktop/window: expand hidden into proper statesVaxry2026-04-291-4/+4
|
* workspace: fix missing null access guard (#14119)ssareta2026-04-221-0/+3
|
* config: cleanup the entire config infrastructure (#13785)Vaxry2026-03-201-20/+22
| | | | Massively refactors the config infrastructure, sorely needed and will be req'd for the lua stuff
* config/workspacerule: add animation style (#13380)ItsOhen2026-03-131-0/+2
|
* event: refactor HookSystem into a typed event bus (#13333)Vaxry2026-02-221-11/+6
| | | | | Refactors the old HookSystem into a typed event bus with clear separation, discovery and types.
* layout: rethonk layouts from the ground up (#12890)Vaxry2026-02-211-18/+27
| | | | | Rewrites layouts to be much smaller, and deal with much less annoying BS. Improves the overall architecture, unifies handling of pseudotiling, and various other improvements.
* Desktop/history: Move history to desktop (#12676)Vaxry2025-12-201-22/+0
|
* debug: move to hyprutils' logger (#12673)Vaxry2025-12-181-20/+20
|
* windowrules: rewrite completely (#12269)Vaxry2025-11-171-1/+1
| | | | | | | Reworks the window rule syntax completely --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* config/rule: don't populate ID field for automatically id-managed workspacesVaxry2025-10-271-1/+1
|
* input: Add fully configurable trackpad gestures (#11490)Vaxry2025-08-281-114/+1
| | | Adds configurable trackpad gestures
* refactor: Use new hyprutils casts (#11377)Kamikadze2025-08-141-5/+5
|
* core: fix workspace persistence tracking (#11239)Vaxry2025-07-271-2/+18
|
* core: move workspace ptrs to weak (#11194)Vaxry2025-07-241-0/+1
| | | | Fixes some race conditions that come up in tests. We only clean up workspaces when we render a frame. With this, they are always cleared instantly.
* core: use new typed signals from hu (#10853)outfoxxed2025-07-081-1/+1
|
* protocols: add ext-workspace implementation (#10818)outfoxxed2025-06-261-8/+3
|
* desktop: cleanup code and use std::ranges (#10289)s1dd2025-05-081-12/+7
|
* helpers: refactor class member vars (#10218)davc0n2025-04-301-11/+11
|
* windows: refactor class member vars (#10168)davc0n2025-04-281-16/+16
|
* workspaces: refactor class member vars (#10167)davc0n2025-04-251-119/+119
|
* compositor: refactor class member vars (#10141)davc0n2025-04-221-12/+12
|
* workspaces: update persistence on workspace rename (#9368)Roberto Previdi2025-02-151-0/+6
|
* desktop: add ability to target pinned windows in workspace rules (#9344)Paul Cross2025-02-081-4/+17
| | | | | | | * desktop: add ability to target pinned windows in workspace rules * desktop: add ability to target pinned windows in workspace rules * fix formating
* window: move size reporting to animation begin callback (#9298)Maximilian Seidler2025-02-061-1/+1
| | | | | | | | | | | | | | | | | * 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: move sendWindowSize off of xwaylandmgrVaxry2025-01-251-1/+1
| | | | additionally fixes that one weird x11 issue with floating windows being mis-sized on open
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-0/+2
| | | Cleanup some unneeded includes to speed up compilation
* keybinds: fix previous_per_monitor logic (#9010)Alexander2025-01-111-8/+2
| | | Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
* core: minor fixes for animation rewritevaxerski2025-01-071-1/+1
|
* core: move parts of the animation system to hyprutils (#8868)Maximilian Seidler2025-01-071-52/+47
| | | | | | | | | | | | | * 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
* workspace: update hasFullscreenWindow in updateWindowsVaxry2024-12-111-0/+2
|
* core: Fix workspace selector parsing (#8687)Alexander Iliev2024-12-101-3/+3
| | | | | Search for the closing bracket when parsing a workspace selector. This is needed when the `m[desc:<monitor description>]` selector is used, as the monitor description always contains spaces.
* core: Add clang-tidy (#8664)Vaxry2024-12-071-9/+6
| | | | | This adds a .clang-tidy file for us. It's not a strict requirement to be compliant, but I tuned it to be alright.
* core: workspace-related function cleanup / refactorVaxry2024-11-221-8/+141
| | | | CCompositor is massive, and has a lot of functions that could be better optimized if in CWorkspace
* internal: fix some misused configStringToInt conversionsVaxry2024-11-201-2/+2
| | | | fixes #8523
* core: move internal structures to monitor pointers (#8266)Vaxry2024-10-271-13/+17
|
* workspacerules: fix on-created-empty window focus (#7657)Sungyoon Cho2024-09-061-1/+1
|
* misc: constify the remaining for loops (#7534)Tom Englund2024-08-261-2/+2
| | | now we roll loops at blazing constified speed.
* misc: Rename all instances of "emtpy" to "empty" (#7522)Adithya Ajith2024-08-261-5/+5
|
* animations: add workspace in/out configsvaxerski2024-08-211-2/+10
|
* internal: introduce new types to avoid unsigned int rollover and signed int ↵Tom Englund2024-08-081-7/+7
| | | | | | | | | | | | | | | | | | | | overflow (#7216) * framebuffer: avoid gluint overflow GLuint was being initialized to -1 and rolling over to unsigned int max, its defined behaviour but very unnecessery. add a bool and use it for checking if allocated or not. * opengl: avoid gluint rollover -1 rolls over to unsigned int max, use 0xFF instead. * core: big uint64_t to int type conversion there were a few uint64_t to int implicit conversions overflowing int and causing UB, make all monitor/workspaces/windows use the new typedefs. also fix the various related 64 to 32 implicit conversions going around found with -Wshorten-64-to-32
* internal: refactor fullscreen states (#7104)MightyPlaza2024-07-311-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* core: add ability to select previous workspace per monitor (#6598)Alexander2024-06-221-5/+15
| | | Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
* core: Move to hyprutils for MathVaxry2024-06-191-8/+8
| | | | | | Moves CRegion, CBox and Vector2D over to hyprutils. Requires hyprutils>=0.1.4
* core: move to hyprutils for utils (#6385)Vaxry2024-06-111-1/+4
| | | | | | | | | | | | | * core: move to hyprutils for utils Nix: add hyprutils dep * Meson: add hyprutils dep * flake.lock: update --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>