----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/126381/#review89770 -----------------------------------------------------------
Sorry for being picky :) backends/kwayland/waylandconfig.cpp (line 203) <https://git.reviewboard.kde.org/r/126381/#comment61527> The () can be omitted backends/kwayland/waylandconfig.cpp (line 222) <https://git.reviewboard.kde.org/r/126381/#comment61528> Out of curiosity, why do you always check explicitly for nullptr and false? backends/kwayland/waylandconfig.cpp (lines 250 - 251) <https://git.reviewboard.kde.org/r/126381/#comment61529> Btw if you made outputs const you could use a range-for, range-for is only evil on Qt containers if not const. :) backends/kwayland/waylandconfig.cpp (line 259) <https://git.reviewboard.kde.org/r/126381/#comment61530> Q_FOREACH should be able to iterate QMap, if not, use iterators: for (auto it = m_outputMap.constBegin(), end = m_outputMap.constEnd(); it != end; ++it) { backends/kwayland/waylandconfig.cpp (line 281) <https://git.reviewboard.kde.org/r/126381/#comment61531> newConfig backends/kwayland/waylandconfig.cpp (line 325) <https://git.reviewboard.kde.org/r/126381/#comment61532> You could theoretically create one lambda and connect both signals to it, since these are identical. backends/kwayland/waylandoutput.h (line 33) <https://git.reviewboard.kde.org/r/126381/#comment61536> You can forward-declare enum classes :) backends/kwayland/waylandoutput.h (lines 54 - 55) <https://git.reviewboard.kde.org/r/126381/#comment61537> Asterisks to variable name, same below backends/kwayland/waylandoutput.h (line 74) <https://git.reviewboard.kde.org/r/126381/#comment61534> nullptr backends/kwayland/waylandoutput.h (line 82) <https://git.reviewboard.kde.org/r/126381/#comment61535> static? backends/kwayland/waylandoutput.cpp (lines 105 - 106) <https://git.reviewboard.kde.org/r/126381/#comment61538> The outputs are destroyed when they get disconnected, so you don't connect multiple times, right? backends/kwayland/waylandoutput.cpp (line 128) <https://git.reviewboard.kde.org/r/126381/#comment61540> QLatin1Char('-') ? backends/kwayland/waylandoutput.cpp (line 158) <https://git.reviewboard.kde.org/r/126381/#comment61539> modeList.insert(modeid, mode); backends/kwayland/waylandoutput.cpp (lines 184 - 185) <https://git.reviewboard.kde.org/r/126381/#comment61541> could just use output->name() backends/kwayland/waylandscreen.cpp (line 30) <https://git.reviewboard.kde.org/r/126381/#comment61542> Not neccessary backends/kwayland/waylandscreen.cpp (line 61) <https://git.reviewboard.kde.org/r/126381/#comment61543> :) I'll remind you when I buy my 64K SuperMegaUltraHD monitor src/screen.h (line 48) <https://git.reviewboard.kde.org/r/126381/#comment61544> That sounds wrong tests/kwayland/waylandconfigreader.h (lines 40 - 44) <https://git.reviewboard.kde.org/r/126381/#comment61545> Asterisk and Ampersand to variable name tests/kwayland/waylandconfigreader.cpp (line 33) <https://git.reviewboard.kde.org/r/126381/#comment61546> QVector - Kai Uwe Broulik On Dez. 18, 2015, 3:16 nachm., Sebastian Kügler wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/126381/ > ----------------------------------------------------------- > > (Updated Dez. 18, 2015, 3:16 nachm.) > > > Review request for Plasma, Solid, Daniel Vrátil, and Martin Gräßlin. > > > Repository: libkscreen > > > Description > ------- > > This adds a kwayland backend to libkscreen. > > This backend uses KWayland's OutputManagement protocol for enlisting and > configuring devices. > > Enlisting outputs > > KScreen's outputs are created from KWayland::Client::OutputDevice objects, > they copy the data into kscreen's Outputs, and update these objects. A list > of outputs is requested from the client Registry object. > > Configuring outputs > > The backend asks the global OutputManagement interface for an > OutputConfiguration > object, then sets the changes per outputdevice on this object, and asks the > compositor to apply() this configuration. > > For this to work, the compositor should support the Wayland > org_kde_kwin_outputdevice > and org_kde_kwin_outputmanagement protocols, for example through > KWayland::Server classes OutputDevice, OutputManagmenent and > OuputConfiguration. > > General working > > WaylandBackend creates a global static internal config, available through > WaylandBackend::internalConfig(). WaylandConfig binds to the wl_registry > callbacks and catches org_kde_kwin_outputdevice creation and destruction. > It passes org_kde_kwin_outputdevice creation and removal on to > WB::internalConfig() to handle its internal data representation as > WaylandOutput. > WaylandOutput binds to org_kde_kwin_outputdevice's callback, and gets notified > of geometry and modes, including changes. WaylandOutput administrates the > internal representation of these objects, and invokes the global notifier, > which then runs the pointers it holds through the updateK* methods in > Wayland{Screen,Output,...}. > > KScreen:{Screen,Output,Edid,Mode} objects are created from the internal > representation as requested (usually triggered by the creation of a > KScreen::Config object through KScreen::Config::current()). As with other > backends, the objects which are handed out to the lib's user are expected > to be deleted by the user, the backend only takes ownership of its internal > data representation objects. > > > Diffs > ----- > > CMakeLists.txt efac5ce > autotests/CMakeLists.txt 07b7bbc > autotests/configs/default.json 3ac3e19 > autotests/testconfigserializer.cpp 1af3069 > autotests/testkwaylandbackend.cpp PRE-CREATION > autotests/testkwaylandconfig.cpp PRE-CREATION > backends/CMakeLists.txt ff5d751 > backends/kwayland/CMakeLists.txt PRE-CREATION > backends/kwayland/README.md PRE-CREATION > backends/kwayland/waylandbackend.h PRE-CREATION > backends/kwayland/waylandbackend.cpp PRE-CREATION > backends/kwayland/waylandconfig.h PRE-CREATION > backends/kwayland/waylandconfig.cpp PRE-CREATION > backends/kwayland/waylandoutput.h PRE-CREATION > backends/kwayland/waylandoutput.cpp PRE-CREATION > backends/kwayland/waylandscreen.h PRE-CREATION > backends/kwayland/waylandscreen.cpp PRE-CREATION > src/backendmanager.cpp 89ae31e > src/config.cpp e8b8a8f > src/screen.h 4cd1e82 > tests/CMakeLists.txt d5e41d5 > tests/kwayland/CMakeLists.txt PRE-CREATION > tests/kwayland/main.cpp PRE-CREATION > tests/kwayland/waylandconfigreader.h PRE-CREATION > tests/kwayland/waylandconfigreader.cpp PRE-CREATION > tests/kwayland/waylandtestserver.h PRE-CREATION > tests/kwayland/waylandtestserver.cpp PRE-CREATION > > Diff: https://git.reviewboard.kde.org/r/126381/diff/ > > > Testing > ------- > > The patch contains a test server, which is used for the autotests. > > The test server uses KWayland's server classes and is set up from the json > config data we use for the other tests. That means that the backends runs > against a real server to test everything. > > I also tested the kscreen UI, which also works as expected. > > > Thanks, > > Sebastian Kügler > >
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel