hyprwm / xdg-desktop-portal-hyprland

xdg-desktop-portal backend for Hyprland
BSD 3-Clause "New" or "Revised" License
267 stars 45 forks source link

XDPH isn't creating dialog to screenshare #137

Open jabuxas opened 9 months ago

jabuxas commented 9 months ago

Neither xdph 1.2.5 or 1.2.2 is working for me. I'm not really sure what broke, but mix and matching those 2 versions of xdph and pipewire 0.3.77 or 0.3.80 both don't work. It wasn't being started automatically so I added the script available on the wiki, still didn't work though. After installing xdpw, it works, but I quite got used to xdph so it's a shame.

I'm on Gentoo Openrc, I do have exec-once=dbus-update-activation-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP in my hyprland config.

:wood: :

[LOG] Initializing xdph...
[LOG] XDG_CURRENT_DESKTOP set to Hyprland
[LOG] Gathering exported interfaces
[LOG]  | Got interface: wl_shm (ver 1)
[LOG]  | Got interface: wl_drm (ver 2)
[LOG]  | Got interface: zwp_linux_dmabuf_v1 (ver 4)
[LOG]  | Got interface: wl_compositor (ver 6)
[LOG]  | Got interface: wl_subcompositor (ver 1)
[LOG]  | Got interface: wl_data_device_manager (ver 3)
[LOG]  | Got interface: zwlr_export_dmabuf_manager_v1 (ver 1)
[LOG]  | Got interface: zwlr_data_control_manager_v1 (ver 2)
[LOG]  | Got interface: zwp_primary_selection_device_manager_v1 (ver 1)
[LOG]  | Got interface: wp_viewporter (ver 1)
[LOG]  | Got interface: zwlr_gamma_control_manager_v1 (ver 1)
[LOG]  | Got interface: zwlr_output_power_manager_v1 (ver 1)
[LOG]  | Got interface: xdg_wm_base (ver 5)
[LOG]  | Got interface: wl_seat (ver 8)
[LOG]  | Got interface: wp_presentation (ver 1)
[LOG]  | Got interface: ext_idle_notifier_v1 (ver 1)
[LOG]  | Got interface: zwlr_layer_shell_v1 (ver 4)
[LOG]  | Got interface: org_kde_kwin_server_decoration_manager (ver 1)
[LOG]  | Got interface: zxdg_decoration_manager_v1 (ver 1)
[LOG]  | Got interface: zwlr_output_manager_v1 (ver 4)
[LOG]  | Got interface: zwlr_input_inhibit_manager_v1 (ver 1)
[LOG]  | Got interface: zwp_keyboard_shortcuts_inhibit_manager_v1 (ver 1)
[LOG]  | Got interface: zwp_pointer_constraints_v1 (ver 1)
[LOG]  | Got interface: zwp_relative_pointer_manager_v1 (ver 1)
[LOG]  | Got interface: zwp_virtual_keyboard_manager_v1 (ver 1)
[LOG]  | Got interface: zwlr_virtual_pointer_manager_v1 (ver 2)
[LOG]  | Got interface: zwlr_foreign_toplevel_manager_v1 (ver 3)
[LOG]  | Got interface: wp_drm_lease_device_v1 (ver 1)
[LOG]  | Got interface: zwp_tablet_manager_v2 (ver 1)
[LOG]  | Got interface: zwp_idle_inhibit_manager_v1 (ver 1)
[LOG]  | Got interface: zxdg_exporter_v1 (ver 1)
[LOG]  | Got interface: zxdg_importer_v1 (ver 1)
[LOG]  | Got interface: zxdg_exporter_v2 (ver 1)
[LOG]  | Got interface: zxdg_importer_v2 (ver 1)
[LOG]  | Got interface: zwp_pointer_gestures_v1 (ver 3)
[LOG]  | Got interface: zwp_text_input_manager_v3 (ver 1)
[LOG]  | Got interface: zwp_input_method_manager_v2 (ver 1)
[LOG]  | Got interface: xdg_activation_v1 (ver 1)
[LOG]  | Got interface: ext_session_lock_manager_v1 (ver 1)
[LOG]  | Got interface: wp_cursor_shape_manager_v1 (ver 1)
[LOG]  | Got interface: wp_tearing_control_manager_v1 (ver 1)
[LOG]  | Got interface: wp_single_pixel_buffer_manager_v1 (ver 1)
[LOG]  | Got interface: xwayland_shell_v1 (ver 1)
[LOG]  | Got interface: hyprland_toplevel_export_manager_v1 (ver 2)
[LOG]  | Got interface: wp_fractional_scale_manager_v1 (ver 1)
[LOG]  | Got interface: zwp_text_input_manager_v1 (ver 1)
[LOG]  | Got interface: hyprland_global_shortcuts_manager_v1 (ver 1)
[LOG] [globalshortcuts] registered
[LOG]  | Got interface: zwlr_screencopy_manager_v1 (ver 3)
[LOG] [pipewire] connected
[LOG] [screencopy] init successful
[LOG]  | Got interface: zxdg_output_manager_v1 (ver 3)
[LOG]  | Got interface: wl_output (ver 4)
[LOG]  | Got interface: wl_output (ver 4)
[LOG] [screencopy] Registered for toplevel export
[LOG] [screenshot] init successful
[INFO] hyprpicker not found. We suggest to use hyprpicker for color picking to be less meh.
[LOG] [core] dmabufFeedbackMainDevice
[LOG] Found output name DP-3
[LOG] Found output name HDMI-A-1
cuddleplush commented 9 months ago

Having the exact same issue, also on Gentoo OpenRC. Tried downgrading xdph, pipewire, wireplumber, xdg-desktop-portal, no result. Please post an update if you find a fix!

jabuxas commented 9 months ago

for now, using xdpw, until something changes

pwnfooj716 commented 9 months ago

I'm on Gentoo and 1.2.2 works perfectly, but 1.2.5 does not. No error in the log. In fact, nothing appears in the log at all when I open OBS. OBS doesn't even have any options to add a Pipewire Video Capture with xdph-1.2.5. With xdph-1.2.2, I get a bunch screencopy requests in the log when using OBS.

jabuxas commented 9 months ago

hmmm, what are the versions of your pipewire and all the other things related to screensharing?

pwnfooj716 commented 9 months ago

hmmm, what are the versions of your pipewire and all the other things related to screensharing?

sys-apps/xdg-desktop-portal-1.18.2 gui-libs/xdg-desktop-portal-hyprland-1.2.2 media-video/pipewire-0.3.80 media-video/obs-studio-30.0.0

Also, I have this script that I run on startup because for some reason it doesn't work if xdp starts before xdph. Feels so jenky. I really hope XDG figures out how to cleanly start desktop portals without having to resort to this nonsense (not to mention the fact that desktop portals can conflict so easily and break everything).

#!/bin/bash

sleep 2
pkill -f /usr/libexec/xdg-desktop-portal\*
sleep 1
/usr/libexec/xdg-desktop-portal-hyprland &
sleep 1
exec /usr/libexec/xdg-desktop-portal
jabuxas commented 9 months ago

weird. replicating your exact versions doesn't work for me, even with the script

pwnfooj716 commented 9 months ago

weird. replicating your exact versions doesn't work for me, even with the script

And after my next system update, xdg-desktop-portal-hyprland-1.2.5 now work just fine for me. Very strange. None of the other related software updated either.

jabuxas commented 8 months ago

it's working for me again after revision from gentoo repos.

jabuxas commented 8 months ago

latest 1.2.5-r1 on guru works fine for me, 1.2.6 is broken. does it not work for you?

jabuxas commented 8 months ago

oh well, they added another revision and then deleted r1, try r2 now then.

https://github.com/gentoo-mirror/guru/commit/ce3f01557ce2a7749376a5195a988d8d4223fcc7#diff-b9b3cbe317aa00820446beb8a193e63fc4fd311e5a2fa7f7fc3c45e50ea99300

no change lmao

jh-devv commented 8 months ago

This probably isn't complete but here are the changes that 1.2.5-r1/1.2.5-r2 makes:

Source: xdg-desktop-portal-hyprland-1.2.5-r2.ebuild and the Gentoo Manual cause I don't use Gentoo much!

Does anyone also have any of these problems with the Gentoo repo ones? #131 Getting the ERR] [screencopy] Couldn't obtain a format from dma and having to restart xdg-desktop-portal-hyprland?

GHOST-mHBr commented 7 months ago

Similar problem with OBS and Arch. I can manually open the hyprland-share-picker but with OBS, pipewire and XDPH it doesn't work(hyprland-share-picker window doesn't pop up).

With XDPW (after removing XDPH), when I choose a window, get a warning says: /usr/lib/xdg-desktop-portal: a backend call failed: Message recipient disconnected from message bus without replying Actually, I can choose windows, but nothing shows up in OBS.

pipewire: "1:0.3.85-1" hyprland: "0.30.0-1" obs-studio: "30.0.0-1" wireplumber: "0.4.16-1" Kernel: "6.6.2-arch1-1"

zukas97 commented 2 weeks ago

I am having the same issue on gentoo with xdph 1.3.3-r2