Bug 481029

Summary: Can't share screen with pipewire - kpipewire_logging: Window not available PipeWireSourceItem
Product: [Plasma] xdg-desktop-portal-kde Reporter: Tomasz Kołosowski <kde>
Component: generalAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED WORKSFORME    
Severity: normal CC: aleixpol, fanzhuyifan, jgrulich, nate
Priority: NOR Keywords: qt6
Version: 5.93.0   
Target Milestone: ---   
Platform: Other   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=481058
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Tomasz Kołosowski 2024-02-07 19:05:16 UTC
SUMMARY
When trying to share screen from any application (firefox, teams, element) the portal window with screen/application selectio never appears. Instead i get a continuous spam in system journal:
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)


STEPS TO REPRODUCE
1. Install plasma 6.0 RC2
2. Try to share screen with pipewire (not old/X11), i.e. from here https://www.webrtc-experiment.com/Pluginfree-Screen-Sharing/

OBSERVED RESULT
xdg-portal screen selection window never apperas, spam in journal logs

EXPECTED RESULT
xdg-portal window should appear and allow me to select which screen / application I want to share

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Arch Linux
(available in About System)
KDE Plasma Version: 5.93.0
KDE Frameworks Version: 5.249.0
Qt Version: 6.7.0

ADDITIONAL INFORMATION

Possibly related to #469016 and #466320 though the only similarity I see is the log line - the cause in these bug reports seem to be different, hence a new report.
Unlike in #469016 window previews in taskbar work flawlessly so no relation here.
Restarting xdg-desktop-portal-kde (systemctl --user restart xdg-desktop-portal.service) causes the journal log spam to stop.
Comment 1 Tomasz Kołosowski 2024-02-07 19:06:59 UTC
One more thing, it did work flawlessly fro me under plasma 5, it's update to 6 that broke it somehow.
Comment 2 Tomasz Kołosowski 2024-02-07 19:11:28 UTC
Just before the "Window not available" message starts spamming, I get these lines:
xdg-desktop-portal-kde[5698]: qrc:/ScreenChooserDialog.qml:178: TypeError: Cannot call method 'standardButton' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:81: TypeError: Cannot read property 'minimumWidth' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:80: TypeError: Cannot read property 'minimumHeight' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:76: TypeError: Cannot read property 'flags' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:106: TypeError: Cannot call method 'standardButton' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:104: TypeError: Cannot call method 'standardButton' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:50: TypeError: Cannot read property 'dialogButtonBox' of null
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:84: TypeError: Cannot call method 'present' of null 
                                                                contentDialog.item.present()
xdg-desktop-portal-kde[5698]: file:///usr/lib/qt6/qml/org/kde/plasma/workspace/dialogs/SystemDialog.qml:84: TypeError: Cannot call method 'present' of null
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd694b7d0, id="pipeWireSourceItem", parent=0x5b8cd6879110, geometry=8,8 233x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
xdg-desktop-portal-kde[5698]: kpipewire_logging: Window not available PipeWireSourceItem(0x5b8cd685a800, id="pipeWireSourceItem", parent=0x5b8cd6964d50, geometry=8,8 234x110)
Comment 3 fanzhuyifan 2024-02-07 19:13:33 UTC
Can't reproduce on arch master build -- with zoom screen and window sharing both work fine.
Comment 4 fanzhuyifan 2024-02-07 19:59:47 UTC
As discussed in chat, this works for the reporter for a freshly created user.
Comment 5 fanzhuyifan 2024-02-08 17:45:53 UTC
Closing for now as this seems to be a user configuration issue. Feel free to reopen if further evidence shows up indicating this is a bug on our side.