summaryrefslogtreecommitdiff
path: root/src/helpers/MiscFunctions.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Desktop/history: Move history to desktop (#12676)Vaxry2025-12-201-1/+2
|
* debug: move to hyprutils' logger (#12673)Vaxry2025-12-181-25/+19
|
* compositor: Configurable behavior when window to be focused conflicts with ↵Nikolai Nechaev2025-11-251-17/+18
| | | | | | | | | | 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: rewrite completely (#12269)Vaxry2025-11-171-0/+10
| | | | | | | Reworks the window rule syntax completely --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* config/rule: don't populate ID field for automatically id-managed workspacesVaxry2025-10-271-0/+6
|
* build: replace generateVersion.sh (#12110)nnra2025-10-231-0/+2
| | | | | | | | | | | * Implemented the CMake version of generateVersion.sh * Made version.h.in compatible with the new build system and included version.h in helpers/MiscFunctions.cpp * Deleted the scripts/generateVersion.sh as it's no longer needed * Updated meson.build to match the new workflow * Added an empty line between includes and namespaces that I accidentally removed
* systeminfo: log system package versions (#11946)Vaxry2025-10-061-0/+38
|
* internal: fix clang-tidy "errors" (#11862)UjinT342025-09-291-1/+1
|
* workspace: fix relative workspaces with monitor descsVaxry2025-09-181-2/+2
|
* refactor: Use new hyprutils casts (#11377)Kamikadze2025-08-141-16/+16
|
* misc: remove commas from device namesvaxerski2025-08-111-0/+1
| | | | ref #11399
* virtualkeyboard: Add options to skip releasing pressed keys on close and to ↵JS Deck2025-08-041-0/+52
| | | | skip sharing key states (#11214)
* fix: add climits includes (#11288)Martin2025-07-311-0/+1
|
* core: move workspace ptrs to weak (#11194)Vaxry2025-07-241-3/+3
| | | | Fixes some race conditions that come up in tests. We only clean up workspaces when we render a frame. With this, they are always cleared instantly.
* internal: refactor to use empty() (#10599)Kamikadze2025-05-311-1/+1
|
* refactor: use std::ranges whenever possible (#10584)Kamikadze2025-05-301-4/+4
|
* helpers: refactor class member vars (#10218)davc0n2025-04-301-7/+7
|
* helpers: properly support next/prev for workspace switching (#10074)nyx2025-04-261-2/+25
|
* workspaces: refactor class member vars (#10167)davc0n2025-04-251-14/+14
|
* compositor: refactor class member vars (#10141)davc0n2025-04-221-18/+18
|
* ctm: enable fade animation on nvidia driver versions 575 and above (#10095)fazzi2025-04-181-0/+35
| | | | | * ctm: enable fade animation on nvidia driver versions 575 and above * format if statement without braces; handle potential throw when checking for nvidia version file
* internal: remove unused variable (#9402)Honkazel2025-02-141-91/+0
|
* core: begin using CFileDescriptor from hyprutils (#9122)Tom Englund2025-01-301-25/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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: use readFileAsString instead of cat for os-releasevaxerski2025-01-191-1/+2
|
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-0/+2
| | | Cleanup some unneeded includes to speed up compilation
* keybinds: fix previous_per_monitor logic (#9010)Alexander2025-01-111-1/+1
| | | Co-authored-by: Крылов Александр <aleksandr.krylov@hyperus.team>
* core: Add a periodic donation request (#8981)Vaxry2025-01-101-27/+0
| | | Will fire once in december and july. Disableable with `ecosystem:no_donation:nag`
* logging: fix Gpu info (#8764)Kamikadze2024-12-191-1/+1
|
* logging: get broader GPUINFO (#8753)Ikalco2024-12-181-1/+1
|
* internal: remove dead code (#8748)Ikalco2024-12-171-20/+0
|
* core: Add clang-tidy (#8664)Vaxry2024-12-071-4/+1
| | | | | 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: Add support for hyprqtutils' update screen (#8651)Vaxry2024-12-061-1/+31
| | | | | | | | | * Nix: add hyprland-qtutils to PATH * flake.lock: update --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* core: workspace-related function cleanup / refactorVaxry2024-11-221-1/+1
| | | | CCompositor is massive, and has a lot of functions that could be better optimized if in CWorkspace
* miscfunctions: move configStringToInt to std::expectedVaxry2024-11-181-13/+24
|
* config: update the configStringToInt implementation (#8476)Maximilian Seidler2024-11-181-21/+57
| | | Copied from hyprlang and removed std::expected.
* miscfunctions: fix cross buildVaxry2024-11-181-1/+1
|
* miscfunctions: add missing includeVaxry2024-11-181-0/+1
|
* shell: propagate new machanism from hyprctl to miscfunctionsVaxry2024-11-171-1/+18
|
* shell: don't use fgrep, prefer grep -FVaxry2024-11-171-1/+1
|
* core: fixup execAndGetVaxry2024-11-101-1/+1
| | | | fixes #8410
* core: move to os/Process from hyprutilsVaxry2024-11-091-12/+8
| | | | nix bump too
* internal: check size limit in layouts (#8298)MightyPlaza2024-10-301-0/+7
| | | | | | | | | | | modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/events/Windows.cpp modified: src/helpers/MiscFunctions.cpp modified: src/helpers/MiscFunctions.hpp modified: src/layout/DwindleLayout.cpp modified: src/layout/IHyprLayout.cpp modified: src/layout/MasterLayout.cpp modified: src/macros.hpp
* core: move internal structures to monitor pointers (#8266)Vaxry2024-10-271-3/+3
|
* Internal: move to Mat3x3 from hyprutils (#7902)Vaxry2024-09-251-21/+0
| | | | | | | | | * Meson: require hyprutils >= 0.2.3 * flake.lock: update hyprutils --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* misc: constify the remaining for loops (#7534)Tom Englund2024-08-261-6/+6
| | | now we roll loops at blazing constified speed.
* build: fix 32bit builds (#7510)Tom Englund2024-08-261-5/+5
| | | | | | | ensure the correct type is passed to std::clamp and std::max int64_t is different on 64bit compared to 32bit, also in presentationtime tv_sec is __time_t and on 32bit its a 32bit type so right shift count >= width of type. so only bit shift on 64bit. and avoid potential nullptr deref in the for loops, check for .end() before *it <= endID.
* helpers: fix: revert to signed arithmetic for cycling through workspaces (#7339)Mirkwood2024-08-151-4/+4
| | | | The code clearly expects signed types there. Fixes #7329
* internal: introduce new types to avoid unsigned int rollover and signed int ↵Tom Englund2024-08-081-39/+39
| | | | | | | | | | | | | | | | | | | | 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
* Core: Move to aquamarine (#6608)Vaxry2024-07-211-0/+3
| | | | | | | | | | | | | | Moves Hyprland from wlroots to aquamarine for the backend. --------- Signed-off-by: Vaxry <vaxry@vaxry.net> Co-authored-by: Mihai Fufezan <mihai@fufexan.net> Co-authored-by: Jan Beich <jbeich@FreeBSD.org> Co-authored-by: vaxerski <vaxerski@users.noreply.github.com> Co-authored-by: UjinT34 <41110182+UjinT34@users.noreply.github.com> Co-authored-by: Tom Englund <tomenglund26@gmail.com> Co-authored-by: Ikalco <73481042+ikalco@users.noreply.github.com> Co-authored-by: diniamo <diniamo53@gmail.com>
* style: fix clang-formatVaxry2024-07-131-6/+2
|