be96787ed0
CMake: use udis86 from pkg-config, fallback to subproject
...
Only canihavesomecoffee's fork (the one the subproject uses) provides
a .pc file, so we either find the correct version or we use the
subproject.
2024-09-27 00:07:52 +03:00
89d945aabe
CMake: use hyprland-protocols from pkg-config, fallback to subproject
...
protocolnew: fix external path, which may not be in $CMAKE_SOURCE_DIR
2024-09-27 00:07:52 +03:00
Vaxry
2320b2241c
Internal: move to Mat3x3 from hyprutils ( #7902 )
...
* Meson: require hyprutils >= 0.2.3
* flake.lock: update hyprutils
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-09-25 10:01:13 +01:00
9232bc2c00
internal: move to hyprutils' scopeguard
...
bumps hyprutils dep to 0.2.2
2024-09-21 00:37:17 +01:00
92df6b0dce
version: log build aquamarine version
...
log the built against aq version, might be useful when it's mismatched to identify the problem
2024-09-19 11:40:00 +01:00
davc0n
c67b257e51
build: Set cmake_minimum_required to version 3.30 ( #7709 )
...
* build: Set cmake_minimum_required to version 3.30
* Nix: add patch for CMake min ver
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-09-10 11:06:37 +01:00
Jan Beich
fa39df4731
CMake: drop unused deps after 016da234d0
...
Found via LDFLAGS += -Wl,--as-needed (default in Meson).
Some dependencies are only used by aquamarine.
2024-09-02 23:48:58 +03:00
Jan Beich
f7249bd331
CMake: drop duplicate -luuid after 5262292abc
2024-09-02 23:48:58 +03:00
1c9d56998d
xdg-dialog: implement new protocol
2024-08-30 15:53:44 +02:00
Vaxry
604eb21a7e
renderer: better lockscreen dead behavior ( #7574 )
...
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-08-29 23:30:12 +02:00
4fa63104c9
Nix: exclude wayland-scanner until next staging merge
2024-08-22 14:30:10 +03:00
Florian Klink
a437e44a6a
CMakeLists: wayland.xml is in wayland-scanner pkgdatadir
...
See 6c4a695045/meson.build (L129-136)
Similar fix as https://github.com/hyprwm/aquamarine/pull/55 .
2024-08-22 13:50:00 +03:00
Yang, Ying-chao
118d4e1001
install: Prepend ${DESTDIR} when creating hyprland symbolic link ( fixes #7280 ). ( #7281 )
2024-08-11 20:38:16 +01:00
Tom Englund
8b37e81374
cursormgr: add a new setting to sync gsettings ( #7253 )
...
cursor:sync_gsettings_theme is set to default true and if enabled it
will now sync xcursor theme loading with gsettings if it can, meaning
CSD clients will now also change to the appropiate theme upon start and
hyprctl setcursor THEME SIZE .
2024-08-09 19:33:20 +02:00
Vaxry
83a334f97d
core: Move to C++26 and use native_handle to CLOEXEC the debug fd ( #7219 )
...
Requires GCC >= 14 / Clang >= 18
---------
Co-authored-by: Mihai Fufezan <mihai@fufexan.net>
2024-08-08 11:54:41 +02:00
Sami Liedes
d5bc3eb1fa
hyprctl: link to much less libraries ( #7212 )
...
This makes hyprctl start significantly faster.
$ time for ((i=0; i<1000; i++)); do hyprctl/hyprctl -j activewindow >/dev/null; done
Before: 12.269 s (about 12.3 ms/execution)
After: 2.142 s (about 2.1 ms/execution)
2024-08-07 16:28:02 +02:00
5dd2c27b63
CMake, Meson: install config and wallpapers to DATADIR/hypr
...
OpenGL: get wallpapers dir from DATAROOTDIR
2024-08-04 15:19:37 +03:00
MaroonSkull
4ae89e1f22
CMake: Suppress CMake warning about GNUInstallDirs
2024-08-04 12:10:50 +03:00
Ikalco
3b9b5346b8
protocols: Move globalshortcuts impl ( #7102 )
...
* move global shortcuts to hyprwayland-scanner
* remove wayland-scanner from deps
* fix the thing
2024-07-30 23:33:56 +02:00
Ikalco
60b663e276
protocols: move text-input-v1 to hyprwayland-scanner ( #7096 )
...
* move text-input-v1 to hyprwayland-scanner
* vro
2024-07-29 18:14:19 +02:00
outfoxxed
bc86afea7e
xdg-shell: completely rewrite xdg-positioner ( #7067 )
...
This implementation actually works.
2024-07-27 21:43:01 +01:00
Ikalco
ec672b1ab9
protocols: move screencopy and toplevel export to hyprwayland-scanner ( #7065 )
...
* move screencopy and toplevel export to hyprwayland-scanner
* oops
2024-07-27 16:02:02 +01:00
db1f5cd137
CMake: fmt
2024-07-21 19:25:42 +03:00
928d1dd38a
CMake, Meson, Nix: replace props.json with VERSION
2024-07-21 19:24:17 +03: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
Mihai Fufezan
da956c8a97
config: use hyprutils helper ( #6891 )
...
* flake.lock: update
nix/overlays: remove xwayland overlay (merged upstream)
* config: use hyprutils helper
* flake.lock: update
* CMake & Meson: update required versions
2024-07-16 21:23:37 +02:00
Ikalco
e58fd3bfb0
meson: fix wlroots-hyprland dep checks (for libliftoff patch to work) ( #6736 )
2024-07-02 12:14:27 +02:00
8121e66f34
cmake: bump hyprutils dep to 0.1.5
2024-06-25 13:50:59 +02:00
fb15b7aa2a
core: Move to hyprutils for Math
...
Moves CRegion, CBox and Vector2D over to hyprutils.
Requires hyprutils>=0.1.4
2024-06-19 16:20:15 +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
6967a31450
wayland/core: move to new impl ( #6268 )
...
* wayland/core/dmabuf: move to new impl
it's the final countdown
2024-06-08 10:07:59 +02:00
a54ab30160
cmake: make xcb-errors required
...
fixes #6290
2024-05-31 22:07:00 +02:00
Vaxry
addd3e7f1a
xwayland: move to hyprland impl ( #6086 )
2024-05-25 22:43:51 +02:00
zjeffer
a71207434c
Add custom cmake target for installheaders
...
This will ensure the correct headers are generated before trying to
install them.
2024-05-25 23:03:27 +03:00
zjeffer
71c2ff3105
Reapply "CMake: use add_custom_command for generating protocols ( #6104 )"
...
This reverts commit e419ef1873
.
2024-05-25 23:03:27 +03:00
e419ef1873
Revert "CMake: use add_custom_command for generating protocols ( #6104 )"
...
Fixes https://github.com/hyprwm/Hyprland/issues/6115 .
2024-05-21 21:29:56 +03:00
giskard
3c907f7830
build: update meson, cmake setup
...
- meson
. fix run_command() check warning
. drop lines for compatability, as it's already using c++23
- cmake
. generate `compile_commands.json` by default
. position independent build: __FILE__
2024-05-21 20:36:07 +03:00
Yaroslav
f91431465b
cmake: make gprof optional for debug builds ( #6120 )
...
This fixes the debug build on musl systems, as -pg option is specific to
glibc. Now we can build the project on such systems with -DUSE_GPROF=OFF
2024-05-17 11:06:31 +01:00
Yaroslav
a66cfe0fbe
CMake: use add_custom_command for generating protocols ( #6104 )
...
This fixes an issue with build error in case of e.g.
$ rm protocols/*.{c,h}
$ cmake --build build
The workaround was to touch CMakeLists.txt. With this PR, protocol files
are properly regenerated with no extra efforts.
Also, resolve hyprwayland-scanner dependency via cmake instead
ofpkg-config.
2024-05-17 01:34:03 +03:00
a2643e11a0
build: bump hw-s dep to 0.3.8
2024-05-16 18:35:48 +01:00
94c20a1863
primary-selection: move to hyprland impl
2024-05-14 23:13:35 +01:00
eed1361f39
wlr-data-device: move to hyprland impl
2024-05-14 23:13:35 +01:00
0cfdde3d1a
xdg-shell: move to new impl
2024-05-14 23:02:24 +01:00
121d3a7213
wl_seat: move to hyprland impl
2024-05-14 23:02:24 +01:00
47874f09f4
cmake: remove forceful ffi and wayland deps for asan
...
fixes #6050
2024-05-13 15:29:18 +01:00
a7e23d2f1e
presentation-time: move to new impl
2024-05-10 02:38:54 +01:00
635a02d83f
layer-shell: move to new impl
...
Also bumps the hw-s dep
2024-05-09 22:02:18 +01:00
84e8d1810d
Tablet: move to new impl
...
Ring and strip are not implemented. Will I implement this? God fucking knows. Nobody seems to have that anyways.
2024-05-09 13:37:39 +01:00
601210878d
cmake: bump hw-s required ver to 0.3.5
2024-05-07 21:03:26 +01: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