> On Nov. 17, 2015, 9:55 p.m., Daniel Vrátil wrote:
> > src/backendmanager_p.h, line 130
> > <https://git.reviewboard.kde.org/r/126101/diff/1/?file=417202#file417202line130>
> >
> >     Why is this even a QHash? We don't want to run multiple backends at 
> > once, or do we? Wouldn't just holding pointer to the current backend be 
> > enough? Maybe even without the arguments...

The arguments are needed for the Fake backend, otherwise, loading a different 
config doesn't work, which breaks a bunch of tests. Instead of shutting down 
the backend, it's enough to re-init() it, which is what I'm doing here.

This bit could potentially make sense for other cases, for example passing the 
config for a wayland test server (which is what I'm doing for the wayland 
tests), and possibly also the WAYLAND_DISPLAY to use, as to avoid getting in 
the way of a running server.


- Sebastian


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


On Nov. 18, 2015, 12:32 a.m., Sebastian Kügler wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/126101/
> -----------------------------------------------------------
> 
> (Updated Nov. 18, 2015, 12:32 a.m.)
> 
> 
> Review request for Plasma, Solid, Àlex Fiestas, Aleix Pol Gonzalez, Daniel 
> Vrátil, and Martin Gräßlin.
> 
> 
> Repository: libkscreen
> 
> 
> Description
> -------
> 
> This patchset adds in-process operation to libkscreen
> 
> purpose:
> - allow easier debugging
> - for some backends (qscreen, upcoming kwayland) the out of process operation 
> is not necessary since these backends are well-shielded
> 
> This implementation is backwards compatible and should mean only minimal 
> changes to running setups.
> 
> If the user exports KSCREEN_BACKEND_INPROCESS=1 before running, all 
> operations will be done in process. Otherwise, the out-of-process mode is 
> used.
> 
> The idea is that we use 
> The changes in the clients to use the in-process mode are to use 
> ConfigOperation::create() and ConfigOperation::setOperation() to retrieve the 
> get or set config jobs. The rest will be handled inside libkscreen.
> 
> Autotests should cover all the cases (and actually a few currently 
> unsupported ones, such as using different backends in the same process).
> 
> Details on performance, etc.: 
> http://vizzzion.org/blog/2015/11/wayland-and-libkscreen-benchmarks/
> 
> 
> Diffs
> -----
> 
>   CMakeLists.txt 86a0965 
>   autotests/CMakeLists.txt 69af7f0 
>   autotests/testconfigmonitor.cpp a051226 
>   autotests/testinprocess.cpp PRE-CREATION 
>   autotests/testqscreenbackend.cpp da4dbae 
>   autotests/testscreenconfig.cpp ecbcedf 
>   backends/fake/fake.cpp 60264dd 
>   src/CMakeLists.txt 4b56b61 
>   src/backendlauncher/backendloader.cpp 52051df 
>   src/backendmanager.cpp ca9c746 
>   src/backendmanager_p.h c6418e2 
>   src/config.cpp 75d947d 
>   src/configmonitor.h b6f1189 
>   src/configmonitor.cpp a14bc70 
>   src/configoperation.h 2405d79 
>   src/configoperation.cpp 87fe141 
>   src/getconfigoperation.h c85bfaa 
>   src/inprocessconfigoperation.h PRE-CREATION 
>   src/inprocessconfigoperation.cpp PRE-CREATION 
>   src/output.cpp bd381fa 
>   src/setconfigoperation.cpp 6ea944f 
>   src/setinprocessoperation.h PRE-CREATION 
>   src/setinprocessoperation.cpp PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/126101/diff/
> 
> 
> Testing
> -------
> 
> Added a ton of autotests, made sure all existing ones pass.
> 
> tried "KSCREEN_BACKEND_INPROCESS=1 kcmshell5 kscreen", all working as 
> expected.
> 
> 
> Thanks,
> 
> Sebastian Kügler
> 
>

_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to