summaryrefslogtreecommitdiff
path: root/src/debug/HyprCtl.cpp
Commit message (Collapse)AuthorAgeFilesLines
* core: begin using CFileDescriptor from hyprutils (#9122)Tom Englund2025-01-301-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* config/hyprctl: fix keyword not updating autoreloadvaxerski2025-01-291-0/+3
| | | | ref #9139
* core: move to inotify for monitoring the config filesvaxerski2025-01-191-5/+2
| | | | | | instead of manually polling every second which is not efficient, use inotify. an added bonus is that inotify is much much faster
* core: cleanup header includes (#9088)user1111111111111111111111111111111112025-01-171-0/+10
| | | Cleanup some unneeded includes to speed up compilation
* core: move parts of the animation system to hyprutils (#8868)Maximilian Seidler2025-01-071-11/+12
| | | | | | | | | | | | | * 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
* hyprctl: fix hyprctl --batch not working with exec rules (#8952)Byso2025-01-061-26/+18
|
* debug: fix ISDEBUG checking (#8823)staz2024-12-251-3/+3
|
* internal: Make static analysis more happy (#8767)Ikalco2024-12-191-39/+40
| | | | | | | | | * make functions used in 1 file static * fix invalid substr param -1 * give default initializer to borderGradier * move RASSERT from printf to std::print
* logging: fix Gpu info (#8764)Kamikadze2024-12-191-1/+1
|
* logging: get broader GPUINFO (#8753)Ikalco2024-12-181-1/+1
|
* hyprctl: add an inhibitingIdle field to windowsVaxry2024-12-131-4/+5
| | | | fixes #4322
* core: Add clang-tidy (#8664)Vaxry2024-12-071-17/+16
| | | | | 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: move version include to hyprctlVaxry2024-12-051-0/+1
|
* hyprctl: add directScanout to hyprctl monitorsVaxry2024-12-051-4/+6
|
* core: move colorspace handling to oklab (#8635)Vaxry2024-12-031-7/+8
| | | | | | | | | | | * Meson: add hyprgraphics * Nix: add hyprgraphics * CI/setup_base: get hyprgraphics-git --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* version: add link versions for other utils (#8619)Vaxry2024-12-021-3/+7
| | | | | --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* core: workspace-related function cleanup / refactorVaxry2024-11-221-5/+5
| | | | CCompositor is massive, and has a lot of functions that could be better optimized if in CWorkspace
* internal: minor cleanups for color resultsVaxry2024-11-191-3/+5
|
* miscfunctions: move configStringToInt to std::expectedVaxry2024-11-181-2/+2
|
* keybinds: move to managed pointersVaxry2024-11-181-13/+13
|
* shell: don't use fgrep, prefer grep -FVaxry2024-11-171-1/+1
|
* hyprctl: add json output on hyprctl -j plugins list (#8480)Ruslan2024-11-161-7/+30
| | | | | --------- Co-authored-by: Руслан Новокшонов <r.novokshonov@vk.team>
* bind: new long press option (#8302)littleblack1112024-11-151-3/+4
| | | | | --------- Co-authored-by: Vaxry <vaxry@vaxry.net>
* debug: clean up fetching of the contents of /proc/device-tree (#8413)WavyEbuilder2024-11-111-1/+20
|
* debug: clean up opening of files in HyprCtl (#8401)WavyEbuilder2024-11-101-3/+20
| | | `std::ifstream` is more suited than `execAndGet` here.
* hyprctl: add mirrorOf to hyprctl monitorsVaxry2024-11-051-3/+5
| | | | fixes #8026
* hyprctl: reload windowrules on reloadAllvaxerski2024-11-011-1/+10
|
* hyprctl: move setprop into dispatchers (#8275)MightyPlaza2024-10-281-95/+2
| | | | | | | | | * move setprop into dispatchers modified: src/debug/HyprCtl.cpp modified: src/managers/KeybindManager.cpp modified: src/managers/KeybindManager.hpp * add deprecated modified: src/debug/HyprCtl.cpp
* core: move internal structures to monitor pointers (#8266)Vaxry2024-10-271-3/+3
|
* hyprctl: add caps/num lock state for keyboards (#8145)czlabinger2024-10-241-4/+17
| | | | | --------- Co-authored-by: Behzad <behzadasbahi@gmail.com>
* internal: Move CMonitor to SP (#8178)Vaxry2024-10-191-5/+5
| | | | | * move monitors to sp * XD
* internal: improve version query and define HYPRLAND_VERSION (#8034)Toni500github2024-10-111-9/+16
|
* hyprctl: use the getMonitorData helper everywhereVaxry2024-09-251-10/+1
|
* core: add a --systeminfo parameter to gather systeminfo without runningvaxerski2024-09-251-4/+7
|
* hyprctl: add solitary field to hyprctl monitorsvaxerski2024-09-251-5/+7
|
* hyprctl: add submap requestvaxerski2024-09-241-0/+9
| | | | fixes #7898
* hyprctl: add defaultName to workspacerulesVaxry2024-09-241-34/+37
| | | | fixes #7886
* version: log build aquamarine versionvaxerski2024-09-191-2/+5
| | | | log the built against aq version, might be useful when it's mismatched to identify the problem
* hyprctl: allow parsing empty valuevaxerski2024-09-171-3/+3
| | | | fixes #7821
* hyprctl: add next and all to switchxkblayoutVaxry2024-08-281-28/+59
| | | | fixes #7555
* hyprctl: avoid parsing string::npos on invalid cmd (#7544)Tom Englund2024-08-271-6/+20
| | | | | | | | | | | | * hyprctl: avoid parsing string::npos on invalid cmd invalid lines passed to hyprctl keyword made the string parsing try to parse std::string::npos, avoid that and return an error text instead. * style --------- Co-authored-by: Vaxry <vaxry@vaxry.net>
* misc: constify the remaining for loops (#7534)Tom Englund2024-08-261-37/+37
| | | now we roll loops at blazing constified speed.
* core: make most for loops use const references (#7527)Tom Englund2024-08-261-13/+13
| | | | why not let the compiler optimise things for us at hyprspeeds when we can.
* keybinds: refactor dispatchers to be better (#7331)Ikalco2024-08-241-3/+3
|
* render: fixup format mismatch after leaving DSvaxerski2024-08-171-10/+10
| | | | fixes #7373
* IPC: Add config descriptions (#7377)Vaxry2024-08-171-0/+16
| | | | | | | Thanks @gulafaran for the work --- Co-authored-by: @gulafaran
* internal: introduce new types to avoid unsigned int rollover and signed int ↵Tom Englund2024-08-081-2/+2
| | | | | | | | | | | | | | | | | | | | 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
* internal: some minor fd/socket cleanups and make logging thread safe (#7123)Tom Englund2024-07-311-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bezier: dont loop on float values Using a floating-point loop variable with a fixed increment can cause precision errors over time due to the nature of floating-point arithmetic. and cause undesired effects. ex iteration 1 = 0.10000000149011611938 iteration 2 = 0.20000000298023223877 eventually.. iteration 8 = 0.80000001192092895508 iteration 9 = 0.89999997615814208984 * hyprctl: close sockets on destruction store socketpath and close the fd and unlink the socket path on exit. * eventloopmgr: close the timerfd close the timerfd on exit. * debug: make logging thread safe instead of opening and closing the logfile on each write open it on init and close it on compositor exit. also add a mutex so accidently using logging from a thread like the watchdog or similiar doesnt cause issues. * xwl: clean up fd logic check if the fd is actually opened before closing, and close the pipesource FD on exit.
* internal: refactor fullscreen states (#7104)MightyPlaza2024-07-311-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * refactor fullscreen 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/LayerSurface.cpp modified: src/desktop/Window.cpp modified: src/desktop/Window.hpp modified: src/desktop/Workspace.cpp modified: src/desktop/Workspace.hpp modified: src/events/Windows.cpp modified: src/helpers/Monitor.cpp modified: src/layout/DwindleLayout.cpp modified: src/layout/DwindleLayout.hpp modified: src/layout/IHyprLayout.cpp modified: src/layout/IHyprLayout.hpp modified: src/layout/MasterLayout.cpp modified: src/layout/MasterLayout.hpp modified: src/managers/KeybindManager.cpp modified: src/managers/KeybindManager.hpp modified: src/managers/input/IdleInhibitor.cpp modified: src/managers/input/InputManager.cpp modified: src/managers/input/Swipe.cpp modified: src/protocols/ForeignToplevelWlr.cpp modified: src/render/Renderer.cpp modified: src/render/decorations/CHyprGroupBarDecoration.cpp * clean up modified: src/config/ConfigManager.cpp modified: src/debug/HyprCtl.cpp modified: src/desktop/Window.hpp modified: src/desktop/Workspace.cpp modified: src/events/Windows.cpp modified: src/managers/KeybindManager.cpp modified: src/managers/input/Swipe.cpp * fix mapWindow fullscreen modified: src/events/Windows.cpp * fix typo modified: src/desktop/Workspace.cpp * add fullscreenstate modified: src/config/ConfigManager.cpp modified: src/events/Windows.cpp * change syncFullscreen to lower modified: src/config/ConfigManager.hpp * initialize fs state modified: src/desktop/Window.hpp
* protocols: Move globalshortcuts impl (#7102)Ikalco2024-07-301-1/+2
| | | | | | | * move global shortcuts to hyprwayland-scanner * remove wayland-scanner from deps * fix the thing