Kamikadze
beee22a95e
refactor: Use new hyprutils casts ( #11377 )
2025-08-14 15:44:56 +01:00
Mihai Fufezan
a301d54df8
treewide: hyprland.org -> hypr.land
2025-06-20 01:49:20 +03:00
Vaxry
e999ad664d
hookSystem: avoid using manual mem management, fix leak
...
fixes #10790
2025-06-19 11:58:12 +02:00
Vaxry
0fb63c68e9
permissions: properly print config requests for plugins
2025-06-18 22:43:04 +02:00
Vaxry
83a4c61048
plugins: don't update config plugins on state unchanged
...
fixes #10781
2025-06-18 22:42:57 +02:00
Kamikadze
69c2b2926e
internal: refactor to use empty() ( #10599 )
2025-05-31 19:49:50 +01:00
Kamikadze
4078e1d17c
refactor: replace all typedef with using ( #10594 )
2025-05-31 14:02:02 +01:00
davc0n
2d6ca96e07
plugins: refactor class member vars ( #10257 )
2025-05-03 16:06:24 +02:00
davc0n
ce821294e2
managers: refactor class member vars ( #10242 )
2025-05-02 17:07:20 +02:00
Vaxry
5bd7ff884d
permissions: add perms for plugin loading ( #10184 )
...
Adds permission management for loading plugins
---------
Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
2025-04-29 18:59:43 +02:00
davc0n
2118440488
windows: refactor class member vars ( #10168 )
2025-04-28 22:25:22 +02:00
davc0n
241a4935a2
compositor: refactor class member vars ( #10141 )
2025-04-22 15:23:29 +02:00
Vaxry
260d8e1f71
Permission Manager: add permission management for screencopy ( #9930 )
2025-04-08 19:39:53 +02:00
Lee Bousfield
c8d80a2920
ci: Fail on warnings ( #9668 )
...
* ci: Fail on warnings
* misc: Fix compiler warnings
2025-03-19 00:46:28 +01:00
Lee Bousfield
011d7ccb91
internal: Fix compiler warnings ( #9646 )
2025-03-17 15:52:40 +01:00
Vaxry
0a1ae48a9f
core: move all shared_ptrs from the STL to hyprutils ( #9143 )
2025-01-23 21:55:41 +01:00
vaxerski
8dd2cd41fb
core: move to inotify for monitoring the config files
...
instead of manually polling every second which is not efficient, use inotify.
an added bonus is that inotify is much much faster
2025-01-19 16:11:12 +01:00
user111111111111111111111111111111111
2bad73354a
core: cleanup header includes ( #9088 )
...
Cleanup some unneeded includes to speed up compilation
2025-01-17 15:21:35 +00:00
vaxerski
e75e2cdac7
functionHooks: wait for hyprland pages before returning addr for trampo
...
ref #8845
2024-12-26 11:31:59 +01:00
Vaxry
71dc9f6128
pluginAPI: add register dispatcher v2
2024-12-19 20:23:32 +00:00
Vaxry
8bbeee1173
core: Add clang-tidy ( #8664 )
...
This adds a .clang-tidy file for us.
It's not a strict requirement to be compliant, but I tuned it to be alright.
2024-12-07 18:51:18 +01:00
Vaxry
320144ae72
core: move colorspace handling to oklab ( #8635 )
...
* Meson: add hyprgraphics
* Nix: add hyprgraphics
* CI/setup_base: get hyprgraphics-git
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-12-03 18:58:24 +00:00
Vaxry
47a1650c48
miscfunctions: move configStringToInt to std::expected
2024-11-18 23:53:38 +00:00
Tom Englund
72c7818ae6
misc: constify the remaining for loops ( #7534 )
...
now we roll loops at blazing constified speed.
2024-08-26 20:24:30 +02:00
Tom Englund
8d6c18076f
core: make most for loops use const references ( #7527 )
...
why not let the compiler optimise things for us at hyprspeeds when we
can.
2024-08-26 17:25:39 +02:00
Ikalco
66586c38f5
keybinds: refactor dispatchers to be better ( #7331 )
2024-08-24 18:45:53 +02:00
atikiNBTW
3a1afb53fd
pluginapi: Add force reload of config at the end of plugin initialization ( #7099 )
...
* Add force reload of config at the end of plugin load
* Remove unnecessary include
2024-07-29 16:56:50 +02:00
Vaxry
016da234d0
Core: Move to aquamarine ( #6608 )
...
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>
2024-07-21 13:09:54 +02:00
Vaxry
6d21014a50
core: fix no-pch build
2024-06-19 16:29:00 +02:00
Vaxry
8c64a4bad7
core: move to hyprutils for utils ( #6385 )
...
* core: move to hyprutils for utils
Nix: add hyprutils dep
* Meson: add hyprutils dep
* flake.lock: update
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-06-11 17:17:45 +02:00
Vaxry
1ed1ce9506
internal: new shared_ptr and weak_ptr implementation ( #5883 )
...
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.
2024-05-05 17:16:00 +01:00
Vaxry
62ae2b3f40
pluginAPI/hooks: Remove dependency on cc from the hooksystem ( #5801 )
...
* Remove dependency on cc from the hooksystem
* Nix: remove cc from wrapper
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-04-30 02:54:43 +01:00
Vaxry
a5a6480917
core: Move /tmp/hypr to $XDG_RUNTIME_DIR/hypr ( #5788 )
...
Moves the directory containing sockets and logs.
Also restructures lockfiles a bit.
For consumers, check if `$XDG_RUNTIME_DIR/hypr` exists. If so, use it. If not, use the old `/tmp/hypr`.
2024-04-28 22:25:24 +01:00
Vaxry
95a5e75c26
hooksystem: check for existing random outdir
2024-04-28 21:20:10 +01:00
Vaxry
b164e67d8b
core: prefer mkdir over create_directory and permissions
2024-04-28 18:58:31 +01:00
Vaxry
28c8561924
hooksystem: use a random 700 directory for assembler
2024-04-28 18:28:19 +01:00
virchau13
90a53aed59
CrashReporter: fix deadlocks by making it mostly async-signal-safe ( #5771 )
...
`CrashReporter::createAndSaveCrash()` is not async-signal-safe,
resulting in random deadlocks/double-crashes during Hyprland crashes.
This changes the function to be (mostly) async-signal-safe.
2024-04-27 17:38:48 +01:00
Vaxry
bca7804bb6
internal: Window storage rework - part 1 ( #5762 )
...
* Window storage rework - part 1
* format
* remove useless include
* fix pch
* format
* fix crash in dwindle
* fix vram leak
* prefer .expired() for bool checks
2024-04-27 12:43:12 +01:00
Vaxry
dafc9ed4eb
pluginsystem: fix unhooking on exit
2024-04-22 15:57:03 +01:00
Vaxry
e91513a5e8
pluginapi: unregister callbacks on lost ptrs
2024-04-22 15:50:23 +01:00
Vaxry
450343b7b8
pluginsystem: unload entire plugin before calling dlclose()
...
fixes #5689
2024-04-22 15:46:43 +01:00
Vaxry
4ad739ec63
HookSystem: improve callback safety
2024-04-20 20:16:42 +01:00
Vaxry
dab149e4a6
core: fix compile without pch
...
fixes #5445
2024-04-05 21:23:28 +01:00
Vaxry
965a2e5b21
hooksystem: attempt allocating pages in linear order
2024-04-05 17:16:09 +01:00
Martin Sundhaug
942172d2dc
hooksystem: Fix miscalculation in comment ( #5442 )
2024-04-05 12:56:53 +01:00
Vaxry
1ae592fcd9
hyprpm: add support for minimum versions
2024-04-05 00:46:37 +01:00
Vaxry
0569b9c300
hooksystem: manually map trampoline addresses
...
better patching of rip calls as we are close enough to just change them up
2024-04-04 18:50:37 +01:00
Vaxry
0a4ade01d3
format: make ci happy
2024-03-08 17:40:28 +00:00
Vaxry
13f6f0b923
Migrate the config to hyprlang ( #4656 )
...
* 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>
2024-02-18 15:00:34 +00:00
Vaxry
60bda7ee3d
pluginapi: allow registering hyprctl commands
...
closes #4616
2024-02-05 01:57:29 +00:00