summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* style: fix clang-formatVaxry2024-07-139-30/+19
|
* session-lock: send `locked` after the lock screen is properly rendered (#6850)Junxuan Liao2024-07-133-3/+23
| | | | | | | | | | The protocol says: > The locked event "must not be sent until a new "locked" frame (either from a > session lock surface or the compositor blanking the output) has been presented > on all outputs and no security sensitive normal/unlocked content is possibly > visible". This helps users ensure the screen is properly locked before suspending the machine. (e.g. with swaylock --ready-fd)
* renderer: fix a few xray regressions (#6855)MightyPlaza2024-07-121-2/+2
| | | | | | | * fix xray unset modified: src/render/OpenGL.cpp * fix xwray unset modified: src/render/OpenGL.cpp
* sessionLock: fix the check for locking a locked session (#6843)Maximilian Seidler2024-07-111-1/+1
|
* core: Improve handling of window properties (#6776)MightyPlaza2024-07-1119-424/+368
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add mWindowProperties modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp * support int values modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp * create m_sWindowData modified: src/Compositor.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/layout/DwindleLayout.cpp modified: src/layout/IHyprLayout.cpp modified: src/layout/MasterLayout.cpp modified: src/managers/AnimationManager.cpp modified: src/managers/KeybindManager.cpp modified: src/managers/XWaylandManager.cpp modified: src/render/OpenGL.cpp modified: src/render/Renderer.cpp modified: src/render/decorations/CHyprBorderDecoration.cpp modified: src/render/decorations/CHyprDropShadowDecoration.cpp modified: src/render/decorations/CHyprGroupBarDecoration.cpp * simplify some properties modified: src/Compositor.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/managers/KeybindManager.cpp * store multiple values in CWindowOverridableVar modified: src/Compositor.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/layout/IHyprLayout.cpp modified: src/managers/AnimationManager.cpp modified: src/managers/KeybindManager.cpp modified: src/managers/XWaylandManager.cpp modified: src/render/OpenGL.cpp modified: src/render/Renderer.cpp modified: src/render/decorations/CHyprBorderDecoration.cpp modified: src/render/decorations/CHyprDropShadowDecoration.cpp modified: src/render/decorations/CHyprGroupBarDecoration.cpp * clean up 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/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/layout/DwindleLayout.cpp modified: src/layout/IHyprLayout.cpp modified: src/layout/IHyprLayout.hpp modified: src/layout/MasterLayout.cpp modified: src/managers/KeybindManager.cpp * use SET_PROP priority for exec rules modified: src/config/ConfigManager.hpp modified: src/desktop/Window.cpp * add default value modified: src/Compositor.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/layout/IHyprLayout.cpp modified: src/managers/KeybindManager.cpp modified: src/managers/XWaylandManager.cpp modified: src/render/OpenGL.cpp modified: src/render/Renderer.cpp modified: src/render/decorations/CHyprBorderDecoration.cpp modified: src/render/decorations/CHyprDropShadowDecoration.cpp modified: src/render/decorations/CHyprGroupBarDecoration.cpp * add setprop toggle modified: src/config/ConfigManager.hpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp * add setprop toggle modified: src/debug/HyprCtl.cpp * make window rules functional modified: src/config/ConfigManager.cpp modified: src/desktop/Window.cpp * minor fixes modified: src/Compositor.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.hpp * properly clean layout data modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/layout/DwindleLayout.cpp modified: src/layout/IHyprLayout.cpp modified: src/layout/IHyprLayout.hpp modified: src/layout/MasterLayout.cpp * remove newline modified: src/events/Windows.cpp * fixes modified: src/config/ConfigManager.hpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp * use CamelCase modified: src/Compositor.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/layout/IHyprLayout.cpp modified: src/managers/AnimationManager.cpp modified: src/managers/KeybindManager.cpp modified: src/managers/XWaylandManager.cpp modified: src/render/OpenGL.cpp modified: src/render/Renderer.cpp modified: src/render/decorations/CHyprBorderDecoration.cpp modified: src/render/decorations/CHyprDropShadowDecoration.cpp modified: src/render/decorations/CHyprGroupBarDecoration.cpp
* xwayland: fix setting title prop (#6809)Ikalco2024-07-081-4/+6
| | | | | * fix setting xwayland title prop * add window title types
* workspaces: don't try to reopen special workspaces (#6802)Virt2024-07-071-0/+3
|
* internal: Add functions to hyprctl header (#6745)Yusuf2024-07-072-35/+45
| | | | | | | | | | | * add functions to hyprctl header * refactor monitor json into own function and add it to header * format hyprctl.hpp * move functions to namespace * move helper functions to class
* config: don't crash when getenv HOME returns nullMaximilian Seidler2024-07-071-1/+6
|
* pointer: update geometry after unplug eventsVaxry2024-07-054-15/+46
| | | | | | fixes #6700 fixes #6740
* keybinds: fix movewindow float to 0 (#6777)MightyPlaza2024-07-051-8/+9
| | | modified: src/managers/KeybindManager.cpp
* tablet: Send .frame() on .proximity_out() (#6761)Agent00Ming2024-07-031-1/+1
| | | Co-authored-by: Agent_00Ming <agent00ming9366@gmail.com>
* renderer: don't skip back background on preBlurQueuedVaxry2024-07-021-1/+1
| | | | fixes #6332
* pointer: change min cursor padding to 0 (#6027)drendog2024-07-022-2/+2
| | | | | | | | | | | | | * fix: change min cursor padding to 0 * chore: set default hotspot padding to 0 * fix: adjusting clamp after getting closest point to fix getting off limit point * fix: deal with floating point to clamp to prev value * refactor: max coords to vector * fix: remove box closestPoint adjustment due its fix on hyprutils
* xwayland: break cyclic loop of parents (#6722)Tom Englund2024-07-011-2/+4
| | | | | in X11 some surfaces is a parent of itself and creates a cyclic loop when trying to find its parent. check for old parent and break if its beginning to roll over.
* debug: add Nvidia driver info (#6715)UjinT342024-06-301-1/+4
| | | | | * add nvidia driver info to systeminfo * check file exists
* inputmgr: ensure we dont divide by zero (#6713)Tom Englund2024-06-301-1/+1
| | | | | some weird combination of scrolling/nesting hyprland and closing a window i managed to divide by zero here, reported by ubsan. add a check to ensure we dont hit UB.
* seat: don't send keyboard data without a keyboard cap (#6697)はれなよ2024-06-291-0/+7
| | | | | * Fix #6279: prevent sending keymap or repeat info events by keyboards without keyboard capability * Remove brackets
* session: fix activate events being always treated as on (#6696)はれなよ2024-06-292-19/+19
| | | | | * Fix listener_sessionActive to handle an event correctly when the session get inactivated * Remove log
* input: fix capabilities enum types passedVaxry2024-06-291-8/+1
| | | | | | hyprland down to the seat protocol impl expects IHID capabilities, not WL_ ones ref #6702 #6196
* pointer-constraint: set lifetime correctlyVaxry2024-06-292-6/+6
| | | | ref #6679
* core: fix a few ubsan issues reported at exit of hyprland (#6699)Tom Englund2024-06-283-5/+5
| | | | | | | | | | | | | | | | | * watchdog: dont detach and cause race condition instead of detaching and causing a race condition on destruction where the thread is alive and watchdog has been destroyed, check if its joinable and join it on destruction. causes heap use after free on exit of compositor. * render: add checks for compositor shutting down avoid member call on null pointer, if the g_pHyprRenderer is destroyed we can call the member makeEGLCurrent on it, causes undefined behaviour on destruction of the compositor/hyprrenderer. found with ubsan.
* keybinds: never switch to another monitor with per_monitor (#6665)Alexander2024-06-271-3/+6
| | | Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
* sessionLock: focus lock on creation based on mouse position (#6658)outfoxxed2024-06-251-1/+2
| | | | | * sessionLock: focus lock on creation based on mouse position * sessionLock: immediately unfocus any focused surfaces on lock
* ime-relay: fix crash on nullptr surface focusVaxry2024-06-251-0/+3
|
* renderer: don't use the surface counter in popup iterationsVaxry2024-06-251-1/+1
| | | | fixes #6663
* pointer: round position when rendering software cursorsVaxry2024-06-251-0/+2
| | | | otherwise the image gets resampled and gets blurry
* core: move to steady_clock where applicableVaxry2024-06-2510-31/+31
| | | | avoid issues when system clock gets desynchronized or changed
* keybinds: fix mouse pass (#6652)Gregory2024-06-251-4/+5
| | | | | * keybinds: fix mouse pass * keybinds: keep mouse and keyboard focus separate after pass bind
* output: fix cursors disappearing after dpms (#6659)outfoxxed2024-06-252-1/+5
|
* wl-compositor: don't send enter to defunct output globalsVaxry2024-06-241-0/+5
|
* foreign-toplevel-wlr: fix out-of-range for missing monitor resourcesVaxry2024-06-231-4/+6
| | | | fixes #6635
* Workspace.hpp: fix includeMihai Fufezan2024-06-231-1/+1
|
* dbus: import PATH XDG_DATA_DIRS variables into systemd and dbus sessionJohn Titor2024-06-232-6/+6
|
* core: add ability to select previous workspace per monitor (#6598)Alexander2024-06-2211-146/+154
| | | Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
* constraints: Lock surface region when region is empty (#6627)MariuszTrybus2024-06-221-2/+9
| | | | | * Pointer constraints: Lock surface region when region is empty * Format code
* surface: add virtual destructor to surfacerole to avoid undefined behaviour ↵Tom Englund2024-06-225-3/+6
| | | | | | | | | | | | | | | (#6620) * surfacerole: add virtual destructor all classes that will be derived from should have a virtual destructor otherwise deleting an instance via pointer to a base class is undefined behaviour, layershell/xdgshell hits this with std::default_delete in the new sharedptr implentation. * includes: fix missing includes fix missing includes for no precompiled headers builds, and remove a redefiniton of a macro already defined in macros.hpp
* renderer: shrink occlusion rect if blur is usedVaxry2024-06-211-3/+9
| | | | | | if we are blurring, we cannot be sure whether the occluded region won't be included in the expanded damage. If it is, we'd get dark shimmers. fixes #6547
* math: include cstring for memsetVaxry2024-06-211-4/+5
| | | | fixup name too
* format: include macros for unreachableVaxry2024-06-201-0/+1
|
* window: expose pseudotiled state and add param to dispatcher (#6583)Przegryw3212024-06-192-20/+27
| | | | | | | * Show pseudotiled state of window in hyprctl clients * Add a window as an optional argument for the pseudo dispatcher * change formatting
* core: avoid bumping hard rlimits, restore on forkVaxry2024-06-193-34/+30
| | | | ref #6584
* damageRing: move to hyprland implVaxry2024-06-196-38/+111
| | | | A small wlroots utility we were still using.
* core: fix no-pch buildVaxry2024-06-191-0/+1
|
* pointer: use software rendering when monitor is mirrored (#6587)Lucas Reis2024-06-193-0/+30
| | | | | | | * pointer_manager: add lock/unlock software wrappers that receive the raw pointer * monitor: lock/unlock software pointer rendering when adding/removing mirrored screens * use relative path in includes
* core: Move to hyprutils for MathVaxry2024-06-1975-1006/+511
| | | | | | Moves CRegion, CBox and Vector2D over to hyprutils. Requires hyprutils>=0.1.4
* compositor: bump nofile rlimits on launchVaxry2024-06-181-0/+43
| | | | ref #6584
* hyprctl: avoid using select()Vaxry2024-06-181-6/+11
| | | | | | move to poll() ref #6584
* keybinds: ignore missing keysyms if no other methods matchVaxry2024-06-171-0/+6
| | | | fixes #6548
* misc: a few compiler level performance optimisations (#6559)Tom Englund2024-06-176-20/+24
| | | | | | | | | | | | | | | | | | | | | * window: use const references instead of copies use const references instead of wasteful copies and make the = operator check for self assignment and return early. also use const in all the other operators. * listener: pass std::function as const reference instead of copies pass the std::functions as const references. * config: dont unnecessarily convert to c_str getHyprlangConfigValuePtr wants an std::string and we already have an std::string, dont convert it to a c_str only for it to be converted back to an std::string. * buffer: pass attributes as const reference pass attributes as const reference instead of copies.