screencasting: Adoption of the org_kde_plasma_video_streaming protocol
ClosedPublic

Authored by apol on Apr 16 2020, 2:38 PM.

Details

Summary

Instead of creating the pipewire feeds in the portal, they will be
created in KWin.
Then the portal task becomes to orchestrate the permission and delivery
to the app.

Depends on D28882

Test Plan

None yet, just a PoC

Diff Detail

Repository
R838 Flatpak Support: KDE Portal for XDG Desktop
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 25387
Build 25405: arc lint + arc unit
apol created this revision.Apr 16 2020, 2:38 PM
Restricted Application added a project: Plasma. · View Herald TranscriptApr 16 2020, 2:38 PM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
apol requested review of this revision.Apr 16 2020, 2:38 PM
apol updated this revision to Diff 80285.Apr 16 2020, 3:00 PM

Fix build

apol updated this revision to Diff 80340.Apr 17 2020, 12:36 AM

Include the notification

jgrulich added inline comments.
src/waylandintegration_p.h
126

Shouldn't we rename this variable so it reflects the interface it uses?

apol updated this revision to Diff 80408.Apr 17 2020, 4:31 PM

Renamed classes

apol updated this revision to Diff 80663.Apr 20 2020, 4:28 PM

Adadpt to changes in kwayland D28882

apol updated this revision to Diff 80719.Apr 21 2020, 12:27 AM

Proper initialisation

With all code relevant to PipeWire removed, you can remove all needed CMake find modules in cmake subdir and you can also remove the ENABLE_PIPEWIRE option as it shouldn't be needed anymore (including all ifdefs).

jgrulich added inline comments.Apr 21 2020, 12:18 PM
src/waylandintegration.cpp
310

This has been removed, but I think it will still be needed.

apol updated this revision to Diff 80795.Apr 21 2020, 5:34 PM

Remove conditional compilation to pipewire

It's not in this module, we don't need to depend on it.
Also removes code regarding EGL initialization that I think now is not necessary.

apol updated this revision to Diff 80797.Apr 21 2020, 5:56 PM

Remember to run the event loop

apol updated this revision to Diff 80985.Apr 23 2020, 11:33 AM

Adopt kwayland changes, provide the right buffer size.

Generally +1

src/waylandintegration.cpp
591

leftover

jgrulich accepted this revision.Apr 23 2020, 3:05 PM

Looks good and it works for me, tested with Chromium.

This revision is now accepted and ready to land.Apr 23 2020, 3:05 PM
apol updated this revision to Diff 81115.Apr 24 2020, 4:57 PM

Adapt to the changes in hte kwayland patch

apol updated this revision to Diff 81343.Apr 27 2020, 2:11 PM

Explicitly request zkde_screencast_unstable_v1

apol updated this revision to Diff 81926.May 4 2020, 5:29 PM

Rebase on top of kwayland-server changes

apol updated this revision to Diff 82302.May 8 2020, 6:00 PM

Adapt to changes in the protocol, implement windows

This revision was automatically updated to reflect the committed changes.