Commit Graph

202 Commits

Author SHA1 Message Date
Rudolchr f9461b0b7d
build: Fix build when using clang (#100)
* Add -Wno-address-of-temporary to allow taking an address of temporary like -fpermissive does for gcc

* Make some implicit casts explicit

* Implement the wl_array_for_each macro inline as clang does not like to handle it's implicit typecast

* Removed unecessary include that was automatically added by the ide

* Replaced reinterpret_cast's with c-style casts
2023-09-26 22:23:02 +01:00
Jan Beich 54b5467ec1
build: Unbreak build on FreeBSD (#98)
* helpers: add missing header after 9dfb9e125b

src/helpers/MiscFunctions.cpp: In function 'void addHyprlandNotification(const std::string&, float, const std::string&, const std::string&)':
src/helpers/MiscFunctions.cpp:24:9: error: 'fork' was not declared in this scope
   24 |     if (fork() == 0)
      |         ^~~~
src/helpers/MiscFunctions.cpp:25:9: error: 'execl' was not declared in this scope
   25 |         execl("/bin/sh", "/bin/sh", "-c", CMD.c_str(), nullptr);
      |         ^~~~~

* build: add missing dependency for libc++ after 2f48e65503

ld.lld: error: undefined symbol: pthread_create
>>> referenced by PortalManager.cpp
>>>               src/xdg-desktop-portal-hyprland.p/core_PortalManager.cpp.o:(CPortalManager::startEventLoop())
>>> referenced by PortalManager.cpp
>>>               src/xdg-desktop-portal-hyprland.p/core_PortalManager.cpp.o:(CPortalManager::startEventLoop())
2023-09-18 20:00:21 +01:00
Commrade Goad b645ab7cce
screencopy: fix unescaped quotes in titles (#96) 2023-09-16 18:51:54 +01:00
vaxerski 2f48e65503 core: rework event loop for polling and C++-style awaits
Stops the event loop from checking all the time in favor of locks and polling.
2023-09-16 18:22:53 +01:00
vaxerski 8f45a64350 internal: make frame callbacks log a trace 2023-09-13 19:08:00 +01:00
vaxerski 9dfb9e125b internal: add a notification on missing qt-wayland packages
fixes #91
2023-09-11 23:31:33 +01:00
Jan Beich 676571b2c0
build: drop unused dependencies after 022469529c (#84) 2023-09-08 23:38:55 +01:00
Vaxry 022469529c
Woo! Full rewrite, v1.0 release. (#78) 2023-09-06 20:36:48 +02:00
Nicola Guerrera af539f4e4d
screencast: correct array size (#72) 2023-07-23 15:48:06 +02:00
vaxerski 43300c11a9 toplevelexport: remove _done call from _buffer
requires recent hyprland commit to work
2023-07-20 12:41:50 +02:00
vaxerski 7276435c46 pw: guard output in transform checks 2023-07-20 12:01:23 +02:00
vaxerski ca077cc05c screencast: restore window share by class 2023-05-25 16:54:02 +02:00
vaxerski c0e2339555 screencast: send transform to pw 2023-04-25 17:16:24 +01:00
Lucas Alber f9f08c802e
Fix build after 7d3da7e968 (#54) 2023-04-24 15:04:59 +01:00
Pascal J 7d3da7e968
fix implicit function declaration (#53)
Signed-off-by: Pascal Jäger <pascal.jaeger@leimstift.de>
2023-04-23 19:37:42 +01:00
vaxerski bf035bf3d5 pw: set type for all planes 2023-04-14 17:29:17 +01:00
vaxerski a7b7880172 screencast: send damage via pw 2023-04-14 17:27:28 +01:00
vaxerski 7fc2e78581 screencast: use spa-pod-dynamic 2023-04-14 17:22:16 +01:00
vaxerski 78dee83d77 screencast: add fallback for linear modifier 2023-04-14 17:14:41 +01:00
vaxerski 2366b4d415 internal: remove metadata cursor mode 2023-04-13 21:14:13 +01:00
Jan Beich e33206673d
globalshortcuts: fix -Wint-conversion as error with Clang 15 (#42)
src/globalshortcuts/global_shortcuts.c:40:44: error: incompatible pointer to integer conversion initializing 'uint64_t' (aka 'unsigned long') with an expression of type 'void *' [-Wint-conversion]
    SD_BUS_SIGNAL("Activated", "osta{sv}", NULL),
                                           ^~~~
src/globalshortcuts/global_shortcuts.c:41:46: error: incompatible pointer to integer conversion initializing 'uint64_t' (aka 'unsigned long') with an expression of type 'void *' [-Wint-conversion]
    SD_BUS_SIGNAL("Deactivated", "osta{sv}", NULL),
                                             ^~~~
src/globalshortcuts/global_shortcuts.c:42:53: error: incompatible pointer to integer conversion initializing 'uint64_t' (aka 'unsigned long') with an expression of type 'void *' [-Wint-conversion]
    SD_BUS_SIGNAL("ShortcutsChanged", "oa(sa{sv})", NULL),
                                                    ^~~~
/usr/include/sys/_null.h:34:14: note: expanded from macro 'NULL'
 #define NULL    ((void *)0)
                 ^~~~~~~~~~~
/usr/include/basu/sd-bus-vtable.h:113:26: note: expanded from macro 'SD_BUS_SIGNAL'
                .flags = _flags,                                        \
                         ^~~~~~
2023-04-10 12:27:59 +01:00
vaxerski 0527deefe8 internal: bring back metadata cursor support 2023-04-10 12:27:18 +01:00
vaxerski 7ca51f935e screencast: make restore persistent 2023-04-10 00:03:24 +01:00
vaxerski ab8d54f6f6 feat: add session restore 2023-04-09 23:30:19 +01:00
Vaxry 510257c0e9
[WIP] Global Shortcuts impl (#35)
Implements the `GlobalShortcuts` portal via `hyprland-global-shortcuts-v1`

---------

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2023-04-09 13:47:05 +01:00
vaxerski 803c00db11 screencast: crudely allow metadata and ignore it 2023-04-05 22:23:59 +01:00
vaxerski 74128d2a97 minor fix for region sharing 2023-03-16 15:11:27 +00:00
vaxerski 8707444cf5 fix shell tab behavior in headers 2023-02-03 18:41:28 +00:00
vaxerski a0fa7909cd nuke toplevel_mgr_bind 2023-02-03 16:50:06 +00:00
vaxerski f8cdd28cc8 sanitize input to the picker 2023-02-03 12:14:28 +00:00
vaxerski 13db7db849 fix returnlist on no manager 2023-02-01 19:48:49 +00:00
vaxerski ee73fca9cc Bind toplevel protos once before first screencast
Also style.
2023-02-01 17:49:29 +00:00
vaxerski 101b58d9c5 add missing s 2022-12-13 18:55:32 +00:00
vaxerski 9fb4fae94b bring back qt wayland platform 2022-12-13 00:55:12 +00:00
Vaxry 3c4c9969cc
Toplevel sharing Rev2 impl (#3)
* toplevel sharing rev2

* nix: fix build

* updated protocols

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2022-12-12 14:51:37 +00:00
vaxerski 756789211e export HIS to the picker 2022-12-05 23:20:49 +00:00
vaxerski 2a634b0a60 log more about screencast 2022-12-05 23:11:13 +00:00
vaxerski 4ac6a9af82 export xcursor size to avoid odd-sized cursors 2022-12-05 18:53:51 +00:00
vaxerski cea7c28bae force wayland platform for qt in invoking picker 2022-12-05 00:37:10 +00:00
vaxerski bd91bd0d4e pass env to popen cmd picker 2022-12-05 00:13:36 +00:00
vaxerski 8a4e83da96 prevent segfaults on no toplevel proto available 2022-12-04 23:18:10 +00:00
Vaxry 3c850a0336
Window sharing (#2)
* added window sharing support

* nix: add hyprland-protocols and streamline build

Co-authored-by: Mihai Fufezan <fufexan@protonmail.com>
2022-12-04 21:12:57 +00:00
Leftas 607ce73671
Change from wlr to hyprland so dbus would recognize different implementation 2022-12-04 19:57:30 +02:00
vaxerski e2cfaf3eee minor nix fixes 2022-12-03 23:42:56 +00:00
vaxerski 37c76fd7d8 start at pos 7 to avoid a warn 2022-12-03 23:40:08 +00:00
vaxerski 2dc95fe02f Allow region sharing 2022-12-03 22:42:21 +00:00
vaxerski 80775707ea Implement hyprland-share-picker 2022-12-03 21:27:49 +00:00
columbarius c83b3cc514 screenshot: Announce version property 2022-09-12 23:33:54 +02:00
columbarius 723934d0b0 screencast: check if a valid format was received from wlr_screencopy
When a screencast is started we do a roundtrip on get the offered
formats from wlr_screencopy. This roundtrip can fail [1]. In this case
the formats won't be initialized and we will just error out of the
screencast session.

[1] https://github.com/emersion/xdg-desktop-portal-wlr/issues/214
2022-06-09 11:19:54 +02:00
columbarius 0bbd652c1c screencast: send pesentation timestamp via PipeWire 2022-06-01 21:12:46 +02:00