summaryrefslogtreecommitdiff
path: root/src/Compositor.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* logging/format: use std::format_string to catch formatting string errors at ↵memchr2023-09-201-3/+3
| | | | | | | compile time (#3377) * fix(log): use constexpr format string * deprecate getFormat
* internal: Make part of CCompositor::focusWindow a bit easier to read. (#3356)Dickby2023-09-191-5/+3
|
* layout: Allow the layout to control how windows are raised in groups (#3275)outfoxxed2023-09-121-5/+2
| | | | | | | | | | | | * Allow the layout to control how windows are raised in groups Previously windows could only be focused if they weren't hidden or were part of a group. This shifts the logic for picking the window out of a group to the layout allowing for alternate group implementations to function normally. * Fix doc comment consistency * Fix tabs in comments
* fix: inconsistent behaviour where last workspace was not saved (#3261)memchr2023-09-111-0/+1
|
* windowrules: add % to resizeparams (#3246)alaricljs2023-09-101-13/+28
| | | Co-authored-by: Leeman <lstrout@enlj.com>
* fix: focusWindow on hidden workspace triggers another focusWindow. (#3216)memchr2023-09-081-1/+1
| | | | | | | | | | | This commit address an issue where focusing a window on a hidden workspace inadvertently triggered a second `focusWindow` call due to simulated mouse movement. This behaviour led to the incorrect focus on the window under the cursor instead of target window of method `focusWindow()`, disrupting `focusurgentorlast` and `focuscurrentorlast` dispatchers. Introduced a flag to the `CMonitor::changeWorkspace()` method to prevent simulated mouse movements. This flag is set to false by default. Changed the `focusWindow()` method accordingly to set this flag to true when the target window is in a hidden workspace.
* internal: Remove all `.c_str()` calls when using `std::vformat` (#3198)Philip Damianik2023-09-061-10/+10
| | | Signed-off-by: pdamianik <39028343+pdamianik@users.noreply.github.com>
* internal: Formatter rework (#3186)Vaxry2023-09-061-23/+23
|
* socket2: add renameWorkspace eventvaxerski2023-09-051-0/+2
|
* wlr-ext-workspace: remove protocol implvaxerski2023-09-011-32/+1
| | | | Various reasons: 1st, memory issues. 2nd, MR got closed (see https://gitlab.freedesktop.org/wlroots/wlr-protocols/-/merge_requests/35) 3rd, not needed anymore (waybar has its own hyprland/workspaces module)
* compositor: remove wlr_scene refsvaxerski2023-08-301-3/+0
| | | | super old leftovers
* internal: Fix XDP multi-portal issues (#3077)Vaxry2023-08-261-16/+1
| | | | | | | | | | | | | * add a hyprland portals conf * remove portal checks * typo * Nix: remove portal patch --------- Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
* internal: allow opening empty special workspacesvaxerski2023-08-251-6/+12
| | | | Fixes point 2 of #2596
* compositor: fix offset in auto arrangeMonitorsvaxerski2023-08-251-1/+1
| | | | Fixes #3043, I am an idiot
* compositor: fix log typesvaxerski2023-08-221-2/+2
|
* renderer: update alpha of layers only if active ws (#2994)memchr2023-08-211-3/+5
| | | update `alpha` of ZWLR_LAYER_SHELL_V1_LAYER_TOP only when Workspaces is active on the monitor.
* fix: improved focus behaviour on workspace switching for follow_mouse!=1 (#3041)memchr2023-08-211-0/+20
| | | | | | | | | | | | | | | | | * fix: improved focus behaviour on workspace switching for follow_mouse!=1 When the 'input:follow_mouse' is not set to 1 and the target workspace for switching does not currently have the previously focused window, Hyprland will prioritize focusing on the top-left-most window. * fix: #2451 call simulateMouseMovement. * unify logic * multimon fix --------- Co-authored-by: vaxerski <43317083+vaxerski@users.noreply.github.com>
* compositor: log more in arrangeMonitorsvaxerski2023-08-211-0/+6
|
* internal: Wayland Protocol impl improvements (#2944)Vaxry2023-08-211-0/+3
|
* compositor: fix missed raw throwsvaxerski2023-08-201-2/+2
|
* compositor: log thrown runtime exceptionsvaxerski2023-08-201-6/+6
|
* compositor: minor cleanupvaxerski2023-08-191-3/+2
|
* internal: allow negative monitor offsetsvaxerski2023-08-161-1/+1
|
* xwayland: use a completely separate coordinate systemvaxerski2023-08-151-0/+10
| | | | | | Use a completely separate coordinate system for XWayland. This fixes all issues with force_zero_scaling overlaps. Fixes #2916
* compositor: fix skipping iterators in arrangeMonitorsvaxerski2023-08-141-1/+5
|
* compositor: don't apply offsets in renderervaxerski2023-08-141-1/+1
|
* compositor: fix auto positioning offset calcsvaxerski2023-08-141-1/+1
|
* internal: add a new monitor auto systemvaxerski2023-08-141-0/+34
|
* internal: Fix grouped windows not being properly focused on activation (#2925)UserSv42023-08-111-0/+5
| | | | | | | | | | | * Fix grouped windows not being properly focused on activation This bug could happen if you: 1. Open two Chromium windows in a single group 2. Open some tabs in both of the windows 3. Using tabs search (Ctrl+Shift+A) try to switch to a tab in the second window from the first one. When this happens any window focus would be lost (hyprctl activewindow starts to output "Invalid") and also the mouse cursor would become centered relatively to the second window. * Update Compositor.cpp
* toplevel: patches group toplevel-activated (#2931)MightyPlaza2023-08-101-0/+10
| | | | | | | | | | | | | * patches group toplevel-activated modified: src/Compositor.cpp modified: src/Window.cpp * remove redundant call modified: src/Compositor.cpp * fix style modified: src/Compositor.cpp
* internal: add lock files and hyprctl instancesvaxerski2023-08-081-0/+21
|
* compositor: update window rules on workspace movevaxerski2023-08-031-0/+1
|
* input: add support for cursor-shape-v1vaxerski2023-07-241-0/+3
|
* internal: Protocol C++ Wraps + XDGOutput impl (#2733)Vaxry2023-07-181-2/+1
| | | move to our own xdgoutput impl instead of wlr's
* deps: update wlroots (#2734)Jan Beich2023-07-181-1/+1
|
* Avoid connected monitor reusing unavailable ID (#2731)Tuur Vanhoutte2023-07-181-4/+4
|
* massive-fix (#2725)MightyPlaza2023-07-161-1/+1
|
* idle: fix reverse flag for new idle protocolvaxerski2023-07-141-3/+3
|
* idle: implement new protocolvaxerski2023-07-131-1/+12
|
* monitor desc default workspace but working now (#2678)MightyPlaza2023-07-111-4/+1
| | | | | * fix desc check * fixes crashes when nulptr
* monitor desc support (#2670)MightyPlaza2023-07-091-0/+10
| | | | | * monitor desc * monitor desc
* Reuse same ID when reconnecting monitor, otherwise use minimum available ID ↵Tuur Vanhoutte2023-07-091-6/+16
| | | | | (#2666) Fixes #2601
* Cleanup compositor deadcode (#2657)Mykola Perehudov2023-07-061-0/+5
| | | | | * Remove dead code as it is a part of CCompositor::cleanup * Unify sd_notify logic with Compositor lifetime
* rules: add stayfocusedvaxerski2023-07-041-0/+14
|
* xwayland: send zero scaling to xwayland if enabledvaxerski2023-06-231-2/+2
|
* compositor: move group members properly in moveWindowToWorkspaceSafevaxerski2023-06-211-0/+9
|
* gamma: use wlr's new gamma manager eventvaxerski2023-06-141-1/+3
|
* compositor: don't set dim percent on disabled dimvaxerski2023-06-131-1/+2
|
* feat: add variable to customize locked group border color (#2507)memchr2023-06-131-12/+15
| | | | | added variables: - general:col.group_border_locked - general:col.group_border_locked_active
* deps: update wlrootsvaxerski2023-06-031-1/+1
|