summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* workspace: Add count group flag in windowCount workspace selector prop (#5499)Sungyoon Cho2024-04-091-0/+10
| | | | | * Add groupCount workspace selector prop * Intergrate groupCount with windowCount
* compositor: move wl_display_destroy_clients (#5498)Tom Englund2024-04-081-3/+1
| | | | | | | | if enough clients are open when destructing the compositor destroying clients will emit a wl_surface_unmap that a WLListener catches and doing so it calls listener_unmapLayerSurface that tries to iterate over input manager that is already destroyed, move the destruction of clients above g_pInputManager.reset() and removeAllSignals() to ensure we dont segfault at exit.
* props: Allow setting per-window fullscreen opacity (#5470)SoSeDiK2024-04-071-1/+4
|
* core: Event loop rework (#5466)Vaxry2024-04-071-1/+5
| | | | | * Event loop rework * revert missed
* workspacerules: add back on-created-empty functionality (#5452)staz2024-04-061-1/+3
| | | | | | | | | | | | | | | * workspacerules: add back on-created-empty functionality * clang format * workspacerules: spawn on-created-empty window while initializing CWorkspace * clang format * configManager: fix typo --------- Co-authored-by: Your Name <you@example.com>
* compositor: fix ghost fadingOut windows remaining after cleanupVaxry2024-04-061-10/+5
|
* compositor: remove windows from fadingOut properlyVaxry2024-04-061-3/+3
|
* core: simplify sanityCheckWorkspacesVaxry2024-04-051-34/+3
|
* workspacerules: fix workspace rule loops (#5433)thejch2024-04-051-11/+4
|
* core: fix visibility flags in moveWorkspaceToMonitorVaxry2024-04-041-1/+4
| | | | fixes #5416
* core: fix some crash conditions around workspace ptrs in CWindowVaxry2024-04-031-1/+1
| | | | ref #5402, supersedes #5409
* workspaces: add visible flagVaxry2024-04-031-17/+9
|
* Workspace/core: Refactor workspace storage (#5380)Vaxry2024-04-021-86/+87
| | | | | * refactor workspaces to use ptrs * clang-format
* core: assert attempted UAFs in windowExistsVaxry2024-04-021-1/+6
| | | | in prep of removing the thing altogether
* core: match all workspace rules instead of the first one only (#5340)thejch2024-03-311-4/+11
|
* core: Fix resizeparams (#5262)Aqa-Ib2024-03-311-5/+7
| | | | | | | | | | | | | | | | | * Revert a94b902 * Fix resizeparams using CVarList * clang-format * fix * Use 's' as delimiter * remove size checks * fix tabs * fix mixing tabs and spaces
* dispatchers: fix swap workspaces wrong positioning of floating windows (#5328)thejch2024-03-301-3/+3
|
* compositor: remove windows from fading out on destroyVaxry2024-03-291-0/+2
| | | | ref #5321
* core: fix fullscreen + floating focus change (#5291)MightyPlaza2024-03-281-2/+2
| | | modified: src/Compositor.cpp
* core: ensure m_pLastMonitor validity over unsafe stateVaxry2024-03-261-0/+2
| | | | ref #5241
* layer-shell: render popups above everythingVaxry2024-03-251-1/+22
|
* core: fix missing workspace events during swapping (#5251)thejch2024-03-251-0/+5
|
* IME: Refactor and fixup popupsVaxry2024-03-241-15/+0
|
* windowrules: Fix resizeparams parsing. (#5206)Philipp Schilk2024-03-211-1/+1
| | | | | | | | | | Parsing of resizeparams/relative vec2 did not correctly handle multiple spaces between x and y arguments, causing the following to fail to parse: bind = $mainMod CTRL, h, resizeactive, 10 0 This is unexpected, because most other config values are whitespace insensitive.
* config/workspace: added workspace selectorsVaxry2024-03-191-2/+2
|
* renderer: Allow headless mode in hyprland (#4794)thejch2024-03-151-6/+19
| | | | | | | * allow headless * clang-format * fix redundant logic lol
* internal: minor fixups for fading out xwayland windowsVaxry2024-03-141-4/+8
| | | | fixes #4935
* master: Fix master layout window focus and scroll (#5074)thejch2024-03-131-0/+5
| | | | | | | | | | | * fix master switch window scrolling * fix some more dispatchers and remove some duplicate code * refactor and remove duplicate code * fix focusmonitor: https://github.com/hyprwm/Hyprland/issues/5006#issuecomment-1986977255 * change check
* compositor: reject focus to noFocus OR xwayland windowsVaxry2024-03-091-0/+3
| | | | fixes #4922
* internal: Support libhyprcursor (#5009)Vaxry2024-03-091-12/+5
| | | | | | | woo --------- Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
* socket2: Add 5 IPC event with support for workspace ID (#5022)Aaron2024-03-081-4/+4
| | | | | | | | | | | - `moveworkspacev2`: returns workspaceID,workspaceName,monitorName - `movewindowv2`: returns windowAddress,workspaceID,workspaceName - `createWorkspacev2`: returns workspaceID,workspaceName - `destroyWorkspacev2`: returns workspaceID,workspaceName - `workspacev2`: returns workspaceID,workspaceName - Include workspaceID as a parameter in CWorkspace constructor to support `createWorkspacev2`. Resolves #4929
* compositor: update state after moving to workspaceVaxry2024-03-061-3/+4
| | | | fixes #4987
* keybinds: Allow fullscreen/maximize in special workspace (#4921)thejch2024-03-041-1/+1
| | | | | | | | | | | | | | | * allow fullscreen/maximize in special workspace * remove duplicate code * hide top layer * fix special fullscreen deco * edit * fix fade top layer when toggle special * remove double render
* keybinds: Better handling of workspace_back_and_forth (#4952)Tom Benham2024-03-041-1/+4
| | | | | | | | | | | * Removed redundant boolean condition * Better handling of workspace_back_and_forth when using focusworkspaceoncurrentmonitor dispatcher * Fixed config acquisition --------- Co-authored-by: Tom Benham <tom.benham@quadrille.fr>
* config: improve config value infrastructureVaxry2024-03-031-53/+54
|
* compositor: ignore grab extend behind special workspaces (#4944)JManch2024-03-031-2/+10
| | | | | * compositor: ignore grab extend behind special workspaces * ignore the window entirely
* input: Rewritten pointer constraints (#4889)Vaxry2024-03-021-32/+11
| | | | | | | | | | | | | | | | | * rewritten constraints * send pointer enter on activate if not pointer focus * minor cleanup * simulate movement on commit * don't ignore oneshot prop * various fixes * dont send motion on confined * update pos hint on region change
* animations: Refactor AnimatedVariable (#4911)GartoxFR2024-03-021-16/+17
| | | | | | | | | | | | | | | | | | | | | | | * 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
* xdg: rewrite entire popup implementationVaxry2024-02-291-9/+0
|
* layers: add fully featured animationsVaxry2024-02-281-1/+1
| | | | | | | | Adds configs and layerrules to handle them alas fixes #981 I have cooked
* wayland: implement keyboard_shortcuts_inhibit_v1Vaxry2024-02-271-0/+2
| | | | fixes #4568
* input: Map touch devices and tablets bound to an output (#3544)Philip Damianik2024-02-271-21/+7
| | | | | | | | | | | * Map bound touch devices and tablets to an output * Add "[[Auto]]" default option for auto detecting outputs for touch inputs * Bind new monitors to configured touch and tablet devices * Use Monitor::matchesStaticSelector in CConfigManager::getMonitorRuleFor * Use Monitor::matchesStaticSelector in CCompositor::getMonitorFromString
* core: nullcheck for old monitor in moveWorkspaceToMonitorVaxry2024-02-261-1/+1
| | | | fixes #4495
* keybinds: fix focuswindow for fullscreen (#4840)shezdy2024-02-261-1/+2
| | | | | | | | | * focuswindow fix * fix format --------- Co-authored-by: ddmetz <77217897+ddmetz@users.noreply.github.com>
* compositor: allow source monitor to be provided to `getMonitorInDirection` ↵github-usr-name2024-02-251-2/+8
| | | | | (#4837) Co-authored-by: github-user-name <spam-here@github.com>
* core: Fix SEGV/ABRT core dump when exiting (#4823)thejch2024-02-241-1/+2
| | | | | * reset input manager first * move reset
* core: Try to fix the exit hang (#4811)thejch2024-02-231-0/+3
| | | | | | | * add signal removal * use a flag instead * remove signals in cleanup
* core: add env to disable crash reporterVaxry2024-02-221-2/+5
|
* input: fix vectorToWindowUnified with floating over fsVaxry2024-02-221-4/+16
| | | | fixes #4800
* compositor: check for pworkspace validity in setActiveMonitorVaxry2024-02-221-1/+1
|