D23619: Introduce cloning and replication of output devices
romangg added a dependent revision: D23684: WIP: Add presenting event to output-device protocol. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D23619 To: romangg, #kwin Cc: kpiwowarski, zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
romangg updated this revision to Diff 65263. romangg marked 2 inline comments as done. romangg added a comment. - Fix enum ordering, typo. Thx @kpiwowarski. REPOSITORY R127 KWayland CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D23619?vs=65118=65263 BRANCH clone REVISION DETAIL https://phabricator.kde.org/D23619 AFFECTED FILES src/client/outputconfiguration.cpp src/client/outputconfiguration.h src/client/outputdevice.cpp src/client/outputdevice.h src/client/protocols/output-management.xml src/client/protocols/outputdevice.xml src/client/registry.cpp src/server/outputchangeset.cpp src/server/outputchangeset.h src/server/outputchangeset_p.h src/server/outputconfiguration_interface.cpp src/server/outputdevice_interface.cpp src/server/outputdevice_interface.h src/server/outputmanagement_interface.cpp To: romangg, #kwin Cc: kpiwowarski, zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
kpiwowarski added inline comments. INLINE COMMENTS > outputdevice.xml:318 > + +summary="change due to hotplug of involved devices"/> > + It's not the same ;) None= 0, Explicit= 1 << 0, Hotplug = 1 << 1, Dpms= 1 << 2, Enablement = 1 << 3 > outputdevice.xml:330 > + +summary="property switched into up state"/> > + > down REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D23619 To: romangg, #kwin Cc: kpiwowarski, zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
romangg added a dependent revision: D23665: [platforms/drm] Support output replication. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D23619 To: romangg, #kwin Cc: zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
romangg added a dependent revision: D23662: Wayland: Support output replication. REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D23619 To: romangg, #kwin Cc: zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
romangg updated this revision to Diff 65118. romangg added a comment. - Add trigger reason and direction enums - Disable replication on output device going away I decided to go with the enums to make it explicit. Also I plan on using these in the future with events to signal the current dpms state of the output device without necessity to go through the dpms protocol and by that have separation of dpms and output device control. In this context also the additional trigger_direction enum will be useful. REPOSITORY R127 KWayland CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D23619?vs=65081=65118 BRANCH clone REVISION DETAIL https://phabricator.kde.org/D23619 AFFECTED FILES src/client/outputconfiguration.cpp src/client/outputconfiguration.h src/client/outputdevice.cpp src/client/outputdevice.h src/client/protocols/output-management.xml src/client/protocols/outputdevice.xml src/client/registry.cpp src/server/outputchangeset.cpp src/server/outputchangeset.h src/server/outputchangeset_p.h src/server/outputconfiguration_interface.cpp src/server/outputdevice_interface.cpp src/server/outputdevice_interface.h src/server/outputmanagement_interface.cpp To: romangg, #kwin Cc: zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
romangg added a comment. If the output device - that is the replication source - goes away (hot plug) we need to clear the `replicationSource` field in the other output device. This is straight forward with a single connect but question is if afterwards the replicate event should be send to clients with null string (and a flag indicating that this source removal was due to a hotplug and was not set explicitly) or if they should just conclude this from the other output device going away. A similar case is the replication source being switched off while staying connected. Here the output device does not go away, but the wl_output normally should. Still it makes sense to not replicate an output which is switched off. So remove the replication source in the compositor and then signaled to the clients? REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D23619 To: romangg, #kwin Cc: zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns
D23619: Introduce cloning and replication of output devices
romangg retitled this revision from "[server] Introduce cloning and replication of output devices" to "Introduce cloning and replication of output devices". REPOSITORY R127 KWayland REVISION DETAIL https://phabricator.kde.org/D23619 To: romangg, #kwin Cc: zzag, kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns