summaryrefslogtreecommitdiff
path: root/src/helpers/Monitor.cpp
Commit message (Collapse)AuthorAgeFilesLines
* monitor: avoid crash on expired special workspace monitor ownerVaxry2025-03-011-5/+5
| | | | fixes #9477
* monitor: report a scheduled frame when tearing on cursor moveVaxry2025-02-151-0/+18
|
* renderer: disable explicit if aquamarine output doesn't support it (#9396) ↵Anthony Ruhier2025-02-131-1/+1
| | | | | | | | | | (#9398) The explicit settings ignore the aquamarine output.supportsExplicit attribute, which creates glitches on drivers not supporting explicit sync (example: freedreno). If the output has been set as not supporting explicit, disable the explicit settings.
* cmonitor: guard old workspaceVaxry2025-02-031-5/+7
|
* protocols: Support content-type-v1 proto (#9226)UjinT342025-02-021-2/+3
|
* monitor: preferred mode now tries first 3 modes if preferred fails before ↵Ikalco2025-01-311-3/+14
| | | | erroring (#9246)
* core: begin using CFileDescriptor from hyprutils (#9122)Tom Englund2025-01-301-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * config: make fd use CFileDescriptor make use of the new hyprutils CFileDescriptor instead of manual FD handling. * hyprctl: make fd use CFileDescriptor make use of the new hyprutils CFileDescriptor instead of manual FD handling. * ikeyboard: make fd use CFileDescriptor make use of the new CFileDescriptor instead of manual FD handling, also in sendKeymap remove dead code, it already early returns if keyboard isnt valid, and dont try to close the FD that ikeyboard owns. * core: make SHMFile functions use CFileDescriptor make SHMFile misc functions use CFileDescriptor and its associated usage in dmabuf and keyboard. * core: make explicit sync use CFileDescriptor begin using CFileDescriptor in explicit sync and its timelines and eglsync usage in opengl, there is still a bit left with manual handling that requires future aquamarine change aswell. * eventmgr: make fd and sockets use CFileDescriptor make use of the hyprutils CFileDescriptor instead of manual FD and socket handling and closing. * eventloopmgr: make timerfd use CFileDescriptor make the timerfd use CFileDescriptor instead of manual fd handling * opengl: make gbm fd use CFileDescriptor make the gbm rendernode fd use CFileDescriptor instead of manual fd handling * core: make selection source/offer use CFileDescriptor make data selection source and offers use CFileDescriptor and its associated use in xwm and protocols * protocols: convert protocols fd to CFileDescriptor make most fd handling use CFileDescriptor in protocols * shm: make SHMPool use CfileDescriptor make SHMPool use CFileDescriptor instead of manual fd handling. * opengl: duplicate fd with CFileDescriptor duplicate fenceFD with CFileDescriptor duplicate instead. * xwayland: make sockets and fds use CFileDescriptor instead of manual opening/closing make sockets and fds use CFileDescriptor * keybindmgr: make sockets and fds use CFileDescriptor make sockets and fds use CFileDescriptor instead of manual handling.
* core,hyprctl: clang, clang-tidy, typo fixes and dtors changes (#9233)Honkazel2025-01-301-4/+0
| | | | | | | * declare dtor once + DMABBUF typo fix * dup include + clang moment * linux-dmabuf: last minute nit change
* monitor: round refresh rates in sorting modesVaxry2025-01-291-3/+4
| | | | fixes #9209
* renderer/internal: stop using box pointersVaxry2025-01-261-4/+4
| | | | in favor of const refs
* core: make persistent workspaces always follow the configVaxry2025-01-261-0/+2
| | | | | | instead of just staying after open, they will now be enforced on their respective monitors fixes #8769
* core: fixup includesvaxerski2025-01-171-1/+1
|
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-0/+6
| | | Cleanup some unneeded includes to speed up compilation
* keybinds: fix previous_per_monitor logic (#9010)Alexander2025-01-111-0/+24
| | | Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
* core: move parts of the animation system to hyprutils (#8868)Maximilian Seidler2025-01-071-4/+4
| | | | | | | | | | | | | * 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
* monitor: avoid crashes on no good modesvaxerski2025-01-011-6/+12
| | | | fixes #8915
* core: fix custom resolutions (#8897)Ikalco2024-12-301-0/+6
|
* core: refactor/improve monitor mode selection (#8804)Ikalco2024-12-281-4/+379
|
* monitor: bring back old description behaviorvaxerski2024-12-231-1/+1
| | | | this makes description match the beginning again. Fixes #8756
* internal: Make static analysis more happy (#8767)Ikalco2024-12-191-1/+1
| | | | | | | | | * make functions used in 1 file static * fix invalid substr param -1 * give default initializer to borderGradier * move RASSERT from printf to std::print
* core: drop using deques in favor of vectorsVaxry2024-12-161-2/+2
| | | | No point in most of these.
* core: Add clang-tidy (#8664)Vaxry2024-12-071-2/+2
| | | | | 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-3/+3
| | | | CCompositor is massive, and has a lot of functions that could be better optimized if in CWorkspace
* monitor: fix default focus when switching to a fs workspaceVaxry2024-11-221-1/+1
|
* hooks: add pre connected/disconnected monitor events (#8503)Alessio Molinari2024-11-171-0/+2
|
* monitors: fix vrr breaking monitor disconnect (#8314)Ikalco2024-11-011-0/+1
|
* core: move internal structures to monitor pointers (#8266)Vaxry2024-10-271-11/+9
|
* internal: cleanup CMonitor usage and fix a few ref hogsVaxry2024-10-261-4/+4
| | | | ref #8221
* monitor: avoid crash on released buffer in surfVaxry2024-10-191-1/+1
|
* internal: Move CMonitor to SP (#8178)Vaxry2024-10-191-57/+57
| | | | | * move monitors to sp * XD
* monitor: modernize/refactor last legacy-handled eventsVaxry2024-10-191-2/+72
|
* input: Fix VRR for constrained cursors (#6877)UjinT342024-10-121-1/+7
|
* protocols: Add support for hyprland-ctm-control-v1 (#8023)Vaxry2024-10-081-0/+6
| | | | | | | | | | | * initial ctm support * flake.lock: update * Meson: bump required versions and add ctm proto --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* monitor: arrange monitors on connect and disconnectVaxry2024-10-051-0/+2
|
* monitor: use a scope guard for disconnect eventsVaxry2024-10-051-3/+6
|
* monitor: cleanup and modernize scheduleDoneVaxry2024-10-051-10/+13
|
* wlr-output-configuration: Improve output configuration (#7571)Vaxry2024-09-261-2/+2
|
* Internal: move to Mat3x3 from hyprutils (#7902)Vaxry2024-09-251-6/+3
| | | | | | | | | * Meson: require hyprutils >= 0.2.3 * flake.lock: update hyprutils --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* internal: move to hyprutils' scopeguardVaxry2024-09-211-1/+2
| | | | bumps hyprutils dep to 0.2.2
* internal: Delay monitor events/hooks (#7797)Leiser Fernández Gallo2024-09-151-7/+7
| | | | | * Delay monitor messages * Format
* renderer: minor direct scanout fixes (#7594)Ikalco2024-08-311-0/+15
|
* presentation-feedback: minor fixupsVaxry2024-08-301-2/+2
|
* window/xwayland: minor property cleanupVaxry2024-08-301-1/+1
| | | | fixes #6921
* renderer: ensure buffer format on commit (#7556)Ikalco2024-08-281-4/+7
|
* misc: constify the remaining for loops (#7534)Tom Englund2024-08-261-11/+11
| | | now we roll loops at blazing constified speed.
* core: make most for loops use const references (#7527)Tom Englund2024-08-261-2/+2
| | | | why not let the compiler optimise things for us at hyprspeeds when we can.
* monitor: avoid dangling references to old monitors being undestroyedvaxerski2024-08-191-4/+17
| | | | ref #7414
* render: fixup format mismatch after leaving DSvaxerski2024-08-171-1/+1
| | | | fixes #7373
* 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
* renderer: Explicit sync fixes (#7151)Vaxry2024-08-061-4/+60
| | | | | Enables explicit sync by default for most platforms `misc:no_direct_scanout` -> `render:direct_scanout`