Commit ffcbe24e authored by Vlad Zahorodnii's avatar Vlad Zahorodnii
Browse files

Rename Client to X11Client

Summary:
Currently each managed X11 client is represented with an instance of
Client class, however the name of that class is very generic and the
only reason why it's called that way is because historically kwin
was created as an x11 window manager, so "Client" was a sensible choice.

With introduction of wayland support, things had changed and therefore
Client needs to be renamed to X11Client in order to better reflect what
that class stands for.

Renaming of Client to X11Client was agreed upon during the last KWin
sprint.

Test Plan: Compiles, the test suite is still green.

Reviewers: #kwin, romangg

Reviewed By: #kwin, romangg

Subscribers: romangg, davidedmundson, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D24184
parent a486b471
......@@ -399,7 +399,6 @@ set(kwin_KDEINIT_SRCS
activation.cpp
appmenu.cpp
atoms.cpp
client.cpp
client_machine.cpp
colorcorrection/colorcorrectdbusinterface.cpp
colorcorrection/manager.cpp
......@@ -493,6 +492,7 @@ set(kwin_KDEINIT_SRCS
wayland_server.cpp
window_property_notify_x11_filter.cpp
workspace.cpp
x11client.cpp
x11eventfilter.cpp
xcbutils.cpp
xdgshellclient.cpp
......
......@@ -802,7 +802,7 @@ void AbstractClient::setupWindowManagementInterface()
w->setShaded(isShade());
w->setResizable(isResizable());
w->setMovable(isMovable());
w->setVirtualDesktopChangeable(true); // FIXME Matches Client::actionSupported(), but both should be implemented.
w->setVirtualDesktopChangeable(true); // FIXME Matches X11Client::actionSupported(), but both should be implemented.
w->setParentWindow(transientFor() ? transientFor()->windowManagementInterface() : nullptr);
w->setGeometry(geometry());
connect(this, &AbstractClient::skipTaskbarChanged, w,
......
......@@ -26,7 +26,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "client.h"
#include "x11client.h"
#include "cursor.h"
#include "focuschain.h"
#include "netinfo.h"
......@@ -92,7 +92,7 @@ namespace KWin
futher user actions took place after the action leading to this new
mapped window. This check is done by Workspace::allowClientActivation().
There are several ways how to get the timestamp of action that caused
the new mapped window (done in Client::readUserTimeMapTimestamp()) :
the new mapped window (done in X11Client::readUserTimeMapTimestamp()) :
- the window may have the _NET_WM_USER_TIME property. This way
the application may either explicitly request that the window is not
activated (by using 0 timestamp), or the property contains the time
......@@ -131,7 +131,7 @@ namespace KWin
than any user action done after launching this application.
- if no timestamp is found at all, the window is activated.
The check whether two windows belong to the same application (same
process) is done in Client::belongToSameApplication(). Not 100% reliable,
process) is done in X11Client::belongToSameApplication(). Not 100% reliable,
but hopefully 99,99% reliable.
As a somewhat special case, window activation is always enabled when
......@@ -170,7 +170,7 @@ namespace KWin
- without ASN - user timestamp needs to be reset, otherwise it would
be used, and it's old; moreover this new window mustn't be detected
as window belonging to already running application, or it wouldn't
be activated - see Client::sameAppWindowRoleMatch() for the (rather ugly)
be activated - see X11Client::sameAppWindowRoleMatch() for the (rather ugly)
hack
- konqueror preloading, i.e. window is created in advance, and kfmclient
tells this Konqueror instance to show it later
......@@ -326,8 +326,8 @@ void Workspace::activateClient(AbstractClient* c, bool force)
// of the currently active window old, and reject further activation for it.
// E.g. typing URL in minicli which will show kio_uiserver dialog (with workaround),
// and then kdesktop shows dialog about SSL certificate.
// This needs also avoiding user creation time in Client::readUserTimeMapTimestamp().
if (Client *client = dynamic_cast<Client*>(c)) {
// This needs also avoiding user creation time in X11Client::readUserTimeMapTimestamp().
if (X11Client *client = dynamic_cast<X11Client *>(c)) {
// updateUserTime is X11 specific
client->updateUserTime();
}
......@@ -695,7 +695,7 @@ void Workspace::clientAttentionChanged(AbstractClient* c, bool set)
* that qualifies for user interaction (clicking on it, activate it
* externally, etc.).
*/
void Client::updateUserTime(xcb_timestamp_t time)
void X11Client::updateUserTime(xcb_timestamp_t time)
{
// copied in Group::updateUserTime
if (time == XCB_TIME_CURRENT_TIME) {
......@@ -711,13 +711,13 @@ void Client::updateUserTime(xcb_timestamp_t time)
group()->updateUserTime(m_userTime);
}
xcb_timestamp_t Client::readUserCreationTime() const
xcb_timestamp_t X11Client::readUserCreationTime() const
{
Xcb::Property prop(false, window(), atoms->kde_net_wm_user_creation_time, XCB_ATOM_CARDINAL, 0, 1);
return prop.value<xcb_timestamp_t>(-1);
}
xcb_timestamp_t Client::readUserTimeMapTimestamp(const KStartupInfoId *asn_id, const KStartupInfoData *asn_data,
xcb_timestamp_t X11Client::readUserTimeMapTimestamp(const KStartupInfoId *asn_id, const KStartupInfoData *asn_data,
bool session) const
{
xcb_timestamp_t time = info->userTime();
......@@ -741,21 +741,21 @@ xcb_timestamp_t Client::readUserTimeMapTimestamp(const KStartupInfoId *asn_id, c
// Otherwise, refuse activation of a window
// from already running application if this application
// is not the active one (unless focus stealing prevention is turned off).
Client* act = dynamic_cast<Client*>(workspace()->mostRecentlyActivatedClient());
X11Client *act = dynamic_cast<X11Client *>(workspace()->mostRecentlyActivatedClient());
if (act != nullptr && !belongToSameApplication(act, this, SameApplicationCheck::RelaxedForActive)) {
bool first_window = true;
auto sameApplicationActiveHackPredicate = [this](const Client *cl) {
auto sameApplicationActiveHackPredicate = [this](const X11Client *cl) {
// ignore already existing splashes, toolbars, utilities and menus,
// as the app may show those before the main window
return !cl->isSplash() && !cl->isToolbar() && !cl->isUtility() && !cl->isMenu()
&& cl != this && Client::belongToSameApplication(cl, this, SameApplicationCheck::RelaxedForActive);
&& cl != this && X11Client::belongToSameApplication(cl, this, SameApplicationCheck::RelaxedForActive);
};
if (isTransient()) {
auto clientMainClients = [this] () -> ClientList {
ClientList ret;
const auto mcs = mainClients();
for (auto mc: mcs) {
if (Client *c = dynamic_cast<Client*>(mc)) {
if (X11Client *c = dynamic_cast<X11Client *>(mc)) {
ret << c;
}
}
......@@ -765,7 +765,7 @@ xcb_timestamp_t Client::readUserTimeMapTimestamp(const KStartupInfoId *asn_id, c
; // is transient for currently active window, even though it's not
// the same app (e.g. kcookiejar dialog) -> allow activation
else if (groupTransient() &&
findInList<Client, Client>(clientMainClients(), sameApplicationActiveHackPredicate) == nullptr)
findInList<X11Client, X11Client>(clientMainClients(), sameApplicationActiveHackPredicate) == nullptr)
; // standalone transient
else
first_window = false;
......@@ -796,7 +796,7 @@ xcb_timestamp_t Client::readUserTimeMapTimestamp(const KStartupInfoId *asn_id, c
return time;
}
xcb_timestamp_t Client::userTime() const
xcb_timestamp_t X11Client::userTime() const
{
xcb_timestamp_t time = m_userTime;
if (time == 0) // doesn't want focus after showing
......@@ -809,13 +809,13 @@ xcb_timestamp_t Client::userTime() const
return time;
}
void Client::doSetActive()
void X11Client::doSetActive()
{
updateUrgency(); // demand attention again if it's still urgent
info->setState(isActive() ? NET::Focused : NET::States(), NET::Focused);
}
void Client::startupIdChanged()
void X11Client::startupIdChanged()
{
KStartupInfoId asn_id;
KStartupInfoData asn_data;
......@@ -844,7 +844,7 @@ void Client::startupIdChanged()
}
}
void Client::updateUrgency()
void X11Client::updateUrgency()
{
if (info->urgency())
demandAttention();
......@@ -869,7 +869,7 @@ void Group::startupIdChanged()
void Group::updateUserTime(xcb_timestamp_t time)
{
// copy of Client::updateUserTime
// copy of X11Client::updateUserTime
if (time == XCB_CURRENT_TIME) {
updateXTime();
time = xTime();
......
......@@ -19,7 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "activities.h"
// KWin
#include "client.h"
#include "x11client.h"
#include "workspace.h"
// KDE
#include <KConfigGroup>
......@@ -72,7 +72,7 @@ void Activities::slotCurrentChanged(const QString &newActivity)
void Activities::slotRemoved(const QString &activity)
{
foreach (Client * client, Workspace::self()->clientList()) {
foreach (X11Client *client, Workspace::self()->clientList()) {
client->setOnActivity(activity, false);
}
//toss out any session data for it
......@@ -80,7 +80,7 @@ void Activities::slotRemoved(const QString &activity)
cg.deleteGroup();
}
void Activities::toggleClientOnActivity(Client* c, const QString &activity, bool dont_activate)
void Activities::toggleClientOnActivity(X11Client *c, const QString &activity, bool dont_activate)
{
//int old_desktop = c->desktop();
bool was_on_activity = c->isOnActivity(activity);
......@@ -109,7 +109,7 @@ void Activities::toggleClientOnActivity(Client* c, const QString &activity, bool
for (auto it = transients_stacking_order.constBegin();
it != transients_stacking_order.constEnd();
++it) {
Client *c = dynamic_cast<Client *>(*it);
X11Client *c = dynamic_cast<X11Client *>(*it);
if (!c) {
continue;
}
......@@ -166,7 +166,7 @@ void Activities::reallyStop(const QString &id)
QSet<QByteArray> dontCloseSessionIds;
const ClientList &clients = ws->clientList();
for (ClientList::const_iterator it = clients.constBegin(); it != clients.constEnd(); ++it) {
const Client* c = (*it);
const X11Client *c = (*it);
const QByteArray sessionId = c->sessionId();
if (sessionId.isEmpty()) {
continue; //TODO support old wm_command apps too?
......
......@@ -33,7 +33,7 @@ class Controller;
namespace KWin
{
class Client;
class X11Client;
class KWIN_EXPORT Activities : public QObject
{
......@@ -50,7 +50,7 @@ public:
*
* Takes care of transients as well.
*/
void toggleClientOnActivity(Client* c, const QString &activity, bool dont_activate);
void toggleClientOnActivity(X11Client *c, const QString &activity, bool dont_activate);
QStringList running() const;
QStringList all() const;
......
......@@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "appmenu.h"
#include "client.h"
#include "x11client.h"
#include "workspace.h"
#include <appmenu_interface.h>
......
......@@ -249,9 +249,9 @@ set(testScreens_SRCS
../screens.cpp
../x11eventfilter.cpp
mock_abstract_client.cpp
mock_client.cpp
mock_screens.cpp
mock_workspace.cpp
mock_x11client.cpp
test_screens.cpp
)
kconfig_add_kcfg_files(testScreens_SRCS ../settings.kcfgc)
......@@ -289,9 +289,9 @@ set(testScreenEdges_SRCS
../virtualdesktops.cpp
../xcbutils.cpp # init of extensions
mock_abstract_client.cpp
mock_client.cpp
mock_screens.cpp
mock_workspace.cpp
mock_x11client.cpp
test_screen_edges.cpp
)
kconfig_add_kcfg_files(testScreenEdges_SRCS ../settings.kcfgc)
......
#include "mock_client.h"
......@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "kwin_wayland_test.h"
#include "platform.h"
#include "activities.h"
#include "client.h"
#include "x11client.h"
#include "cursor.h"
#include "deleted.h"
#include "screenedge.h"
......@@ -135,7 +135,7 @@ void ActivitiesTest::testSetOnActivitiesValidates()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isDecorated());
......@@ -160,7 +160,7 @@ void ActivitiesTest::testSetOnActivitiesValidates()
xcb_flush(c.data());
c.reset();
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QVERIFY(windowClosedSpy.wait());
}
......
......@@ -22,7 +22,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "atoms.h"
#include "client.h"
#include "x11client.h"
#include "deleted.h"
#include "platform.h"
#include "rules.h"
......@@ -275,7 +275,7 @@ void TestDbusInterface::testGetWindowInfoX11Client()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QCOMPARE(client->clientSize(), windowGeometry.size());
......@@ -388,7 +388,7 @@ void TestDbusInterface::testGetWindowInfoX11Client()
xcb_unmap_window(c.data(), w);
xcb_flush(c.data());
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QVERIFY(windowClosedSpy.wait());
xcb_destroy_window(c.data(), w);
......
......@@ -19,7 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "platform.h"
#include "client.h"
#include "x11client.h"
#include "cursor.h"
#include "deleted.h"
#include "screenedge.h"
......@@ -151,7 +151,7 @@ void X11DesktopWindowTest::testDesktopWindow()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(!client->isDecorated());
......@@ -167,7 +167,7 @@ void X11DesktopWindowTest::testDesktopWindow()
xcb_flush(c.data());
c.reset();
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QVERIFY(windowClosedSpy.wait());
}
......
......@@ -19,7 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "platform.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "cursor.h"
#include "screenedge.h"
......@@ -114,7 +114,7 @@ void DontCrashAuroraeDestroyDecoTest::testBorderlessMaximizedWindows()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isDecorated());
......@@ -148,7 +148,7 @@ void DontCrashAuroraeDestroyDecoTest::testBorderlessMaximizedWindows()
xcb_flush(c);
xcb_disconnect(c);
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QVERIFY(windowClosedSpy.wait());
}
......
......@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "kwin_wayland_test.h"
#include "platform.h"
#include "abstract_client.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "deleted.h"
#include "effects.h"
......
......@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "kwin_wayland_test.h"
#include "composite.h"
#include "effectloader.h"
#include "client.h"
#include "x11client.h"
#include "cursor.h"
#include "effects.h"
#include "platform.h"
......
......@@ -19,7 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "platform.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "cursor.h"
#include "scene.h"
......@@ -98,7 +98,7 @@ void DontCrashEmptyDecorationTest::testBug361551()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isDecorated());
......@@ -113,7 +113,7 @@ void DontCrashEmptyDecorationTest::testBug361551()
xcb_flush(c);
xcb_disconnect(c);
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QVERIFY(windowClosedSpy.wait());
}
......
......@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "kwin_wayland_test.h"
#include "platform.h"
#include "abstract_client.h"
#include "client.h"
#include "x11client.h"
#include "deleted.h"
#include "screens.h"
#include "wayland_server.h"
......@@ -67,9 +67,9 @@ void DontCrashGlxgearsTest::testGlxgears()
QVERIFY(clientAddedSpy.wait());
QCOMPARE(clientAddedSpy.count(), 1);
QCOMPARE(workspace()->clientList().count(), 1);
Client *glxgearsClient = workspace()->clientList().first();
X11Client *glxgearsClient = workspace()->clientList().first();
QVERIFY(glxgearsClient->isDecorated());
QSignalSpy closedSpy(glxgearsClient, &Client::windowClosed);
QSignalSpy closedSpy(glxgearsClient, &X11Client::windowClosed);
QVERIFY(closedSpy.isValid());
KDecoration2::Decoration *decoration = glxgearsClient->decoration();
QVERIFY(decoration);
......
......@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "platform.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "cursor.h"
#include "scene.h"
......
......@@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "deleted.h"
#include "effects.h"
......@@ -219,7 +219,7 @@ void SlidingPopupsTest::testWithOtherEffect()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isNormalWindow());
......@@ -238,7 +238,7 @@ void SlidingPopupsTest::testWithOtherEffect()
xcb_unmap_window(c.data(), w);
xcb_flush(c.data());
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QSignalSpy windowDeletedSpy(effects, &EffectsHandler::windowDeleted);
......@@ -357,7 +357,7 @@ void SlidingPopupsTest::testWithOtherEffectWayland()
shellSurface.reset();
surface.reset();
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QSignalSpy windowDeletedSpy(effects, &EffectsHandler::windowDeleted);
......
......@@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "effects.h"
#include "effectloader.h"
......@@ -151,7 +151,7 @@ void TranslucencyTest::testMoveAfterDesktopChange()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isDecorated());
......@@ -179,7 +179,7 @@ void TranslucencyTest::testMoveAfterDesktopChange()
xcb_unmap_window(c.data(), w);
xcb_flush(c.data());
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QVERIFY(windowClosedSpy.wait());
xcb_destroy_window(c.data(), w);
......@@ -219,7 +219,7 @@ void TranslucencyTest::testDialogClose()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isDecorated());
......@@ -231,7 +231,7 @@ void TranslucencyTest::testDialogClose()
xcb_unmap_window(c.data(), w);
xcb_flush(c.data());
QSignalSpy windowClosedSpy(client, &Client::windowClosed);
QSignalSpy windowClosedSpy(client, &X11Client::windowClosed);
QVERIFY(windowClosedSpy.isValid());
QSignalSpy windowDeletedSpy(effects, &EffectsHandler::windowDeleted);
......
......@@ -18,7 +18,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*********************************************************************/
#include "kwin_wayland_test.h"
#include "client.h"
#include "x11client.h"
#include "composite.h"
#include "cursor.h"
#include "effects.h"
......@@ -139,7 +139,7 @@ void WobblyWindowsShadeTest::testShadeMove()
QSignalSpy windowCreatedSpy(workspace(), &Workspace::clientAdded);
QVERIFY(windowCreatedSpy.isValid());
QVERIFY(windowCreatedSpy.wait());
Client *client = windowCreatedSpy.first().first().value<Client*>();
X11Client *client = windowCreatedSpy.first().first().value<X11Client *>();
QVERIFY(client);
QCOMPARE(client->window(), w);
QVERIFY(client->isDecorated());
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment