summaryrefslogtreecommitdiff
path: root/src/desktop
Commit message (Collapse)AuthorAgeFilesLines
* desktop/reserved: fix a possible reserved crash (#13207)Vaxry2026-02-101-1/+2
|
* popup: reposition with reserved taken into accountVaxry2026-02-071-2/+1
| | | | ref https://github.com/hyprwm/Hyprland/discussions/13194
* renderer: fix mouse motion in VRR (#12665)Szwagi2026-01-311-14/+1
|
* desktop/windowRule: allow expression in min_size/max_size (#12977)Florent Charpentier2026-01-211-6/+15
|
* desktop: restore invisible floating window alpha/opacity when focused over ↵Naufal Hisyam Muzakki2026-01-211-0/+2
| | | | fullscreen (#12994)
* desktop/ruleApplicator: fix typo in border color rule parsing (#12995)Vaxry2026-01-161-1/+1
| | | ref https://github.com/hyprwm/Hyprland/discussions/12746
* desktop/window: avoid uaf on instant removal of a windowVaxry2026-01-161-5/+5
| | | | ref https://github.com/hyprwm/Hyprland/discussions/12999
* desktop/workspaceHistory: fix tracking for multiple monitors (#12979)Vaxry2026-01-152-46/+42
|
* desktop/window: track explicit workspace assignments to prevent X11 ↵John Mylchreest2026-01-091-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | configure overwrites (#12850) * fix: track explicit workspace assignments to prevent X11 configure overwrites Instead of only checking for special workspaces, track when workspaces are explicitly assigned via window rules or user actions (movetoworkspace). This prevents onX11ConfigureRequest from overwriting any explicit workspace assignment based on window position. Changes: - Add m_workspaceExplicitlyAssigned flag to CWindow - Set flag when window rules assign workspace - Set flag when user moves window via dispatcher - Check flag in onX11ConfigureRequest instead of just special workspace - Add debug logging for explicit workspace assignments * fix: simplify X11 configure request handling for special workspaces X11 apps send configure requests with positions based on XWayland's monitor layout, which could incorrectly move windows off special workspaces. Skip workspace reassignment when the window is on a special workspace or staying on the same monitor, but always run z-order, fullscreen flag, and damage logic since the configure request may include geometry changes.
* desktop/ls: fix invalid clampVaxry2026-01-081-2/+2
|
* desktop/reservedArea: clamp dynamic types to 0Vaxry2026-01-081-0/+2
| | | | ref https://github.com/hyprwm/Hyprland/discussions/12880
* desktop/reservedArea: clamp to 0Vaxry2026-01-081-2/+3
| | | | ref https://github.com/hyprwm/Hyprland/discussions/12880
* desktop/ls: clamp layer from protocolVaxry2026-01-051-4/+6
|
* desktop/window: catch bad any cast tokensVaxry2026-01-051-8/+12
|
* desktop/layerRuleApplicator: fix an epic c+p failVaxry2026-01-021-2/+2
| | | | ref https://github.com/hyprwm/Hyprland/discussions/12779
* dekstop/window: read static rules before guessing initial size if possible ↵Vaxry2026-01-014-5/+8
| | | | (#12783)
* desktop/window: use workArea for idealBB (#12802)Vaxry2026-01-011-11/+15
|
* desktop/window: remove old fn defsVaxry2025-12-311-2/+0
|
* desktop/LS: avoid creating an invalid LS if no monitor could be found (#12787)Vaxry2025-12-311-17/+17
|
* desktop/window: go back to the previously focused window in a group (#12763)Vaxry2025-12-301-1/+18
|
* render/cm: various updates, remove old protocols (#12693)UjinT342025-12-271-1/+0
| | | | | | | | | | | | | * fix named primaries * default to gamma22 * mark mastering primaries as supported * remove xx-cm and frog support * immutable primaries and image descriptions * clang-format
* rules/windowRuleApplicator: fix min/max size effects (#12491)Vaxry2025-12-274-40/+49
| | | fixes #12412
* desktop/window: improve fullscreen handling for grouped windowsVaxry2025-12-223-17/+44
| | | | fixes #12700
* desktop/ls: only update the ls in question for commit to change layerVaxry2025-12-211-2/+3
|
* Desktop/history: Move history to desktop (#12676)Vaxry2025-12-209-111/+336
|
* core: add missing headers (#12686)dylanetaft2025-12-204-4/+8
|
* debug: move to hyprutils' logger (#12673)Vaxry2025-12-1813-113/+114
|
* desktop/windowRule: force center and move rules to override each other (#12618)Lichie2025-12-173-2/+4
|
* desktop/layer: store aboveFs property and use thatVaxry2025-12-163-26/+15
|
* desktop/popup: fix invalid surface coordVaxry2025-12-162-11/+11
|
* desktop/popup: minor improvementsVaxry2025-12-161-2/+9
|
* desktop/windowRules: fix disabling binary window rules with override (#12635)Lichie2025-12-152-19/+11
|
* animation: migrate PHLANIMVAR from SP to UP (#12486)Maximilian Seidler2025-12-141-10/+7
|
* window: only damage floating on clamped size change (#12633)Tom Englund2025-12-112-7/+12
| | | | | | | | | currently it damage the entire window if its floating and not x11 nor fullscreen meaning damage isnt working at all for floating. im tracing this back to a364df4 where the logic changed from damaging window only if size was being forced to now unconditonally doing it. change clampWindowSize to return as a bool if size changed and only damage window if it got clamped.
* desktop/view: use aliveAndVisible for most things (#12631)Vaxry2025-12-117-17/+23
|
* desktop: cleanup, unify desktop elements as views (#12563)Vaxry2025-12-0829-1100/+2272
|
* desktop: rewrite reserved area handling + improve tests (#12383)Vaxry2025-12-053-8/+145
|
* desktop/overridableVar: fix possible crashVaxry2025-12-031-1/+1
|
* desktop/rules: tag static rule being ignored (#12514)littleblack1112025-12-011-10/+14
| | | | | | | | | * chore: apply exec rules after removal and use CWindowRule * refactor: unregister exec rules after applying them Remove the unused toRemove vector and defer unregistering exec rules until after applyStaticRule/applyDynamicRule so exec rules are applied before being removed from the rule engine.
* desktop/overridableVar: improve performanceVaxry2025-11-291-19/+25
| | | | drop usage of ::map which sucks performance-wise
* desktop/windowRule: return reset props from resetProps and recheck them (#12458)Vaxry2025-11-272-78/+66
| | | fixes #12457
* window: implement CWindow::getEnv() for BSDs (#12462)Hiroki Tagato2025-11-261-2/+23
| | | | | | | Some BSDs provide procfs to access kernel information. However, BSDs' procfs does not provide information on a process' environment variables. Instead sysctl(3) function is usually used for system information retrieval on BSDs.
* compositor: Configurable behavior when window to be focused conflicts with ↵Nikolai Nechaev2025-11-256-32/+406
| | | | | | | | | | fullscreen (#12033) Renames `misc:new_window_takes_over_fullscreen` into `misc:on_focus_under_fullscreen` and implements the following behavior: - By default, when a tiling window is being focused on a workspace where a fullscreen/maximized window exists, respect the `misc:on_focus_under_fullscreen` config variable.
* windowrules: fix persistent_size not applying (#12441)EvilLary2025-11-241-4/+2
|
* windowrules: fix group rule recalcs (#12403)Vaxry2025-11-201-0/+10
|
* rule: nuke parseRelativeVectorVaxry2025-11-192-24/+1
|
* windowrules: bring back windowUpdateRulesVaxry2025-11-181-0/+4
|
* windowrules: fix matching against xdgTag (#12393)fazzi2025-11-181-1/+1
|
* windowrules: rewrite completely (#12269)Vaxry2025-11-1743-923/+2449
| | | | | | | Reworks the window rule syntax completely --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* renderer: Allow DS for surfaces with inert subsurfaces (#12133)Dominick DiMaggio2025-11-111-7/+12
|