Review Request 125942: KWayland OutputManagement protocol and implementation

Sebastian Kügler sebas at kde.org
Wed Nov 4 12:09:15 UTC 2015



> On Nov. 4, 2015, 7:55 a.m., Martin Gräßlin wrote:
> > src/server/display.h, line 143
> > <https://git.reviewboard.kde.org/r/125942/diff/1/?file=414799#file414799line143>
> >
> >     why removeOutputDevice? We don't have that for any other Global.

We do, for Output. These should be as similar as possible, no? (Use case, a device gets unplugged at runtime.)


- Sebastian


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125942/#review87986
-----------------------------------------------------------


On Nov. 4, 2015, 2:49 a.m., Sebastian Kügler wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/125942/
> -----------------------------------------------------------
> 
> (Updated Nov. 4, 2015, 2:49 a.m.)
> 
> 
> Review request for kwin, Plasma and Martin Gräßlin.
> 
> 
> Repository: kwayland
> 
> 
> Description
> -------
> 
> This implements the client and server part of the screen management protocol. The protocol is implemented as a wayland protocol.
> 
> It provides the following mechanisms:
> - a list of outputs, close to wl_output, with additional properties for enabled, uuid, edid, etc.. These OutputDevices correspond to a connected output that can be enabled by the compositor, but is not necessarily currently used for rendering.
> - a global OutputManagement, which allows creating config objects, one per client. The client can make changes to the outputs through setScale(outputdevice*, scale) for example. 
> - an OutputConfiguration resource, that can be handed to a client and used for configuration. Changes are double buffered here. Only after OutputConfiguration.apply() has been called, the changes are relayed over the global OutputManagement.
> 
> The compositor is responsible to handle changes.
> 
> For a more detailed description, see the API docs in especially outputconfiguration.h.
> 
> The working branch for this is kwayland[sebas/kwin]. A backend for libkscreen is available in libkscreen[sebas/wayland].
> 
> 
> Diffs
> -----
> 
>   src/server/outputdevice_interface.h PRE-CREATION 
>   src/server/outputconfiguration_interface.cpp PRE-CREATION 
>   src/server/outputconfiguration_interface.h PRE-CREATION 
>   src/server/outputchangeset_p.h PRE-CREATION 
>   src/server/outputchangeset.cpp PRE-CREATION 
>   src/server/outputchangeset.h PRE-CREATION 
>   src/server/display.cpp 019991a 
>   src/server/display.h 0fd1185 
>   src/server/CMakeLists.txt 57eb763 
>   src/client/registry.cpp 1a481c8 
>   src/client/registry.h 034e38f 
>   src/client/protocols/outputdevice.xml PRE-CREATION 
>   src/client/protocols/output-management.xml PRE-CREATION 
>   src/client/outputmanagement.cpp PRE-CREATION 
>   src/client/outputmanagement.h PRE-CREATION 
>   src/client/outputdevice.cpp PRE-CREATION 
>   src/client/outputdevice.h PRE-CREATION 
>   src/client/outputconfiguration.cpp PRE-CREATION 
>   src/client/outputconfiguration.h PRE-CREATION 
>   src/client/CMakeLists.txt 79092ef 
>   autotests/server/test_display.cpp b398812 
>   autotests/client/test_wayland_registry.cpp 55f0f6c 
>   autotests/client/test_wayland_outputmanagement.cpp PRE-CREATION 
>   autotests/client/test_wayland_outputdevice.cpp PRE-CREATION 
>   autotests/client/CMakeLists.txt 1556c47 
>   src/server/outputdevice_interface.cpp PRE-CREATION 
>   src/server/outputmanagement_interface.h PRE-CREATION 
>   src/server/outputmanagement_interface.cpp PRE-CREATION 
>   src/tools/mapping.txt d6a4a44 
> 
> Diff: https://git.reviewboard.kde.org/r/125942/diff/
> 
> 
> Testing
> -------
> 
> Unit tests pass.
> 
> 
> Thanks,
> 
> Sebastian Kügler
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20151104/b870ed28/attachment.html>


More information about the Plasma-devel mailing list