summaryrefslogtreecommitdiff
path: root/src/plugins/PluginAPI.cpp
Commit message (Collapse)AuthorAgeFilesLines
* config/lua: init lua config manager, use lua if available (#13817)Vaxry2026-04-261-0/+65
| | | Adds a new lua config manager, which will automatically be used if there is a lua config present.
* notifications: move and small refactor (#14094)Vaxry2026-04-161-3/+3
| | | moves to notification/, and adds a new style manager getter.
* config: cleanup the entire config infrastructure (#13785)Vaxry2026-03-201-6/+6
| | | | Massively refactors the config infrastructure, sorely needed and will be req'd for the lua stuff
* event: refactor HookSystem into a typed event bus (#13333)Vaxry2026-02-221-6/+5
| | | | | Refactors the old HookSystem into a typed event bus with clear separation, discovery and types.
* layout: rethonk layouts from the ground up (#12890)Vaxry2026-02-211-7/+27
| | | | | Rewrites layouts to be much smaller, and deal with much less annoying BS. Improves the overall architecture, unifies handling of pseudotiling, and various other improvements.
* pluginsystem: fix crash when unloading plugin hyprctl commands (#12821)Virt2026-01-031-1/+1
|
* debug: move to hyprutils' logger (#12673)Vaxry2025-12-181-3/+3
|
* plugins: incorporate hyprdep ABI into plugin info (#12001)Vaxry2025-10-211-1/+12
|
* refactor: Use new hyprutils casts (#11377)Kamikadze2025-08-141-1/+1
|
* plugins: refactor class member vars (#10257)davc0n2025-05-031-12/+12
|
* managers: refactor class member vars (#10242)davc0n2025-05-021-3/+3
|
* windows: refactor class member vars (#10168)davc0n2025-04-281-1/+1
|
* compositor: refactor class member vars (#10141)davc0n2025-04-221-1/+1
|
* Permission Manager: add permission management for screencopy (#9930)Vaxry2025-04-081-1/+1
|
* core: move all shared_ptrs from the STL to hyprutils (#9143)Vaxry2025-01-231-1/+1
|
* core: move to inotify for monitoring the config filesvaxerski2025-01-191-1/+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/+5
| | | Cleanup some unneeded includes to speed up compilation
* pluginAPI: add register dispatcher v2Vaxry2024-12-191-0/+13
|
* core: Add clang-tidy (#8664)Vaxry2024-12-071-1/+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: move colorspace handling to oklab (#8635)Vaxry2024-12-031-2/+2
| | | | | | | | | | | * Meson: add hyprgraphics * Nix: add hyprgraphics * CI/setup_base: get hyprgraphics-git --------- Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
* misc: constify the remaining for loops (#7534)Tom Englund2024-08-261-2/+2
| | | now we roll loops at blazing constified speed.
* keybinds: refactor dispatchers to be better (#7331)Ikalco2024-08-241-2/+5
|
* Core: Move to aquamarine (#6608)Vaxry2024-07-211-0/+1
| | | | | | | | | | | | | | 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>
* internal: new shared_ptr and weak_ptr implementation (#5883)Vaxry2024-05-051-5/+5
| | | | | | | | | | | moves std::shared_ptrs to a new implementation Advantages: - you can dereference a weak_ptr directly. This will obviously segfault on a nullptr deref if it's expired. - this is useful to avoid the .lock() hell where we are 100% sure the pointer _should_ be valid. (and if it isn't, it should throw.) - weak_ptrs are still valid while the SP is being destroyed. - reasoning: while an object (e.g. CWindow) is being destroyed, its `weak_ptr self` should be accessible (the sp is still alive, and so is CWindow), but it's not because by stl it's already expired (to prevent resurrection) - this impl solves it differently. w_p is expired, but can still be dereferenced and used. Creating `s_p`s is not possible anymore, though. - this is useful in destructors and callbacks.
* internal: Window storage rework - part 1 (#5762)Vaxry2024-04-271-2/+2
| | | | | | | | | | | | | | | | | * Window storage rework - part 1 * format * remove useless include * fix pch * format * fix crash in dwindle * fix vram leak * prefer .expired() for bool checks
* pluginapi: unregister callbacks on lost ptrsVaxry2024-04-221-2/+2
|
* HookSystem: improve callback safetyVaxry2024-04-201-15/+3
|
* hyprpm: add support for minimum versionsVaxry2024-04-051-1/+1
|
* format: make ci happyVaxry2024-03-081-1/+1
|
* Migrate the config to hyprlang (#4656)Vaxry2024-02-181-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Migrate to hyprlang * pop up errors * fix swapped args * Meson & Nix: build with hyprlang * CI: add hyprlang to setup action * add infra for plugin stuff * fix hyprctl getoption * fix hyprctl getoption with json * format * fix post parse logic * fix autogen config * oops missed exec-once * fmt * fix ws rules * require 0.3.0 for hyprlang * nix: flaek * minor type fixes * fix cfg usages in swipe * use cvarlist for ws rules * fix throw in addPluginConfigVar * Nix: update hyprlang * minor fixes * fix disableLogs * mention hyprlang docs * bump hyprlang dep in cmake * Meson: bump min hyprlang version Nix: update hyprlang * minor fix * Nix: update meson patch --------- Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
* pluginapi: allow registering hyprctl commandsVaxry2024-02-051-0/+24
| | | | closes #4616
* hyprctl: move to a class and unify commandsVaxry2024-02-051-2/+2
|
* decorations: Decoration Positioner (#3800)Vaxry2023-11-111-5/+4
|
* pluginapi: fixup get_hash functionsVaxry2023-10-291-0/+4
|
* pluginapi: add a config keyword adding methodVaxry2023-10-291-0/+13
|
* cleanup: Replace find() with C++20 starts_with(), ends_with() and contains() ↵Philip Damianik2023-10-151-1/+1
| | | | | | | (#3572) * Replace find() with C++20 starts_with() and ends_with() * Replace find() with C++20 contains()
* Plugin API: Add version query (#3545)Vaxry2023-10-141-1/+10
|
* pluginapi: remove starting newline in demangled func name (#3502)ItsDrike2023-10-061-1/+5
|
* internal: Remove all `.c_str()` calls when using `std::vformat` (#3198)Philip Damianik2023-09-061-2/+2
| | | Signed-off-by: pdamianik <39028343+pdamianik@users.noreply.github.com>
* internal: Formatter rework (#3186)Vaxry2023-09-061-1/+1
|
* decos: recalc on addvaxerski2023-05-231-0/+3
|
* Fix not finding function symbols for hooking (#2292)outfoxxed2023-05-161-5/+16
| | | | | | | | | Fixes no useful feedback about failing subcommand. Fixes function hooks breaking when running under a path containing spaces. Replaced old usages with this function where possible. Complex shell usages now use `execAndGetShell` which is equal to the old function.
* pluginAPI: make symbols staticvaxerski2023-04-171-6/+6
|
* Misc FreeBSD fixes (#1926)Jan Beich2023-03-311-0/+7
| | | | | | | | | | | | | | | | | | | | | * helpers: drop incomplete GNU/kFreeBSD bits Debian with FreeBSD kernel lacks Wayland-related packages and is not officially supported since Jessie. * KeybindManager: check VT ioctl availability instead of hardcoding * plugins: add missing header for libc++ after 430778293e4c src/plugins/PluginAPI.cpp:299:33: error: implicit instantiation of undefined template 'std::basic_istringstream<char>' std::istringstream inStream(SYMBOLS); ^ /usr/include/c++/v1/iosfwd:140:32: note: template is declared here class _LIBCPP_TEMPLATE_VIS basic_istringstream; ^ * plugins: prefer llvm-nm with Clang after 430778293e4c nm: invalid option -- j
* plugins: Add an API entry for finding functions by namevaxerski2023-03-311-0/+72
|
* plugin api: add addNotificationV2vaxerski2023-03-201-0/+48
| | | | Allows for issuing fancy notifs via api
* Fix plugin argument-less hyprctl calls (#1723)Stanisław Zagórowski2023-03-071-3/+5
| | | | | Handle hyprctl command whitespace trimming might break
* Plugin System (#1590)Vaxry2023-02-271-0/+193
--------- Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>