diff --git a/autotests/kstartupinfo_unittest.cpp b/autotests/kstartupinfo_unittest.cpp --- a/autotests/kstartupinfo_unittest.cpp +++ b/autotests/kstartupinfo_unittest.cpp @@ -272,7 +272,7 @@ wmClass.length() * 2 + 1, "kstartupinfotest\0kstartupinfotest"); xcb_change_property(c, XCB_PROP_MODE_REPLACE, window, XCB_ATOM_WM_CLIENT_MACHINE, XCB_ATOM_STRING, 8, 9, "localhost"); - NETWinInfo winInfo(QX11Info::connection(), window, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo winInfo(QX11Info::connection(), window, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); winInfo.setPid(pid); KStartupInfo info(KStartupInfo::DisableKWinModule | KStartupInfo::AnnounceSilenceChanges, this); diff --git a/autotests/kwindowinfox11test.cpp b/autotests/kwindowinfox11test.cpp --- a/autotests/kwindowinfox11test.cpp +++ b/autotests/kwindowinfox11test.cpp @@ -502,7 +502,7 @@ QSignalSpy spyReal(KWindowSystem::self(), static_cast(&KWindowSystem::windowChanged)); QVERIFY(spyReal.isValid()); - KWindowInfo info(window->winId(), nullptr, NET::WM2Activities); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2Activities); QVERIFY(info.valid()); QStringList startingActivities = info.activities(); @@ -517,16 +517,16 @@ QVERIFY(waitForWindow(spyReal, window->winId(), NET::Properties(), NET::WM2Activities)); - KWindowInfo info2(window->winId(), nullptr, NET::WM2Activities); + KWindowInfo info2(window->winId(), NET::Properties(), NET::WM2Activities); QVERIFY(info2.activities().size() == 0); // Window on a specific activity KWindowSystem::self()->setOnActivities(window->winId(), QStringList() << "test-activity"); QVERIFY(waitForWindow(spyReal, window->winId(), NET::Properties(), NET::WM2Activities)); - KWindowInfo info3(window->winId(), nullptr, NET::WM2Activities); + KWindowInfo info3(window->winId(), NET::Properties(), NET::WM2Activities); QVERIFY(info3.activities().size() == 1); QVERIFY(info3.activities()[0] == "test-activity"); @@ -536,7 +536,7 @@ QVERIFY(waitForWindow(spyReal, window->winId(), NET::Properties(), NET::WM2Activities)); - KWindowInfo info4(window->winId(), nullptr, NET::WM2Activities); + KWindowInfo info4(window->winId(), NET::Properties(), NET::WM2Activities); QVERIFY(info4.activities().size() == 2); QVERIFY(info4.activities()[0] == "test-activity"); @@ -547,14 +547,14 @@ QVERIFY(waitForWindow(spyReal, window->winId(), NET::Properties(), NET::WM2Activities)); - KWindowInfo info5(window->winId(), nullptr, NET::WM2Activities); + KWindowInfo info5(window->winId(), NET::Properties(), NET::WM2Activities); QVERIFY(info5.activities() == startingActivities); } void KWindowInfoX11Test::testWindowClass() { - KWindowInfo info(window->winId(), nullptr, NET::WM2WindowClass); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2WindowClass); QCOMPARE(info.windowClassName(), QByteArrayLiteral("kwindowinfox11test")); QCOMPARE(info.windowClassClass(), QByteArrayLiteral("kwindowinfox11test")); @@ -566,14 +566,14 @@ // it's just a property change so we can easily refresh QX11Info::getTimestamp(); - KWindowInfo info2(window->winId(), nullptr, NET::WM2WindowClass); + KWindowInfo info2(window->winId(), NET::Properties(), NET::WM2WindowClass); QCOMPARE(info2.windowClassName(), QByteArrayLiteral("foo")); QCOMPARE(info2.windowClassClass(), QByteArrayLiteral("bar")); } void KWindowInfoX11Test::testWindowRole() { - KWindowInfo info(window->winId(), nullptr, NET::WM2WindowRole); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2WindowRole); QVERIFY(info.windowRole().isNull()); // window role needs to be changed using xcb @@ -585,13 +585,13 @@ // it's just a property change so we can easily refresh QX11Info::getTimestamp(); - KWindowInfo info2(window->winId(), nullptr, NET::WM2WindowRole); + KWindowInfo info2(window->winId(), NET::Properties(), NET::WM2WindowRole); QCOMPARE(info2.windowRole(), QByteArrayLiteral("bar")); } void KWindowInfoX11Test::testClientMachine() { - KWindowInfo info(window->winId(), nullptr, NET::WM2ClientMachine); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2ClientMachine); QVERIFY(info.clientMachine().isNull()); // client machine needs to be set through xcb @@ -602,7 +602,7 @@ // it's just a property change so we can easily refresh QX11Info::getTimestamp(); - KWindowInfo info2(window->winId(), nullptr, NET::WM2ClientMachine); + KWindowInfo info2(window->winId(), NET::Properties(), NET::WM2ClientMachine); QCOMPARE(info2.clientMachine(), QByteArrayLiteral("localhost")); } @@ -637,7 +637,7 @@ } // create a low level NETWinInfo to manipulate the name - NETWinInfo winInfo(QX11Info::connection(), window->winId(), QX11Info::appRootWindow(), NET::WMName, nullptr); + NETWinInfo winInfo(QX11Info::connection(), window->winId(), QX11Info::appRootWindow(), NET::WMName, NET::Properties2()); winInfo.setName("foobar"); QX11Info::getTimestamp(); @@ -653,7 +653,7 @@ void KWindowInfoX11Test::testTransientFor() { - KWindowInfo info(window->winId(), nullptr, NET::WM2TransientFor); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2TransientFor); QCOMPARE(info.transientFor(), WId(0)); // let's create a second window @@ -667,22 +667,22 @@ XCB_ATOM_WM_TRANSIENT_FOR, XCB_ATOM_WINDOW, 32, 1, &id); xcb_flush(QX11Info::connection()); - KWindowInfo info2(window->winId(), nullptr, NET::WM2TransientFor); + KWindowInfo info2(window->winId(), NET::Properties(), NET::WM2TransientFor); QCOMPARE(info2.transientFor(), window2->winId()); } void KWindowInfoX11Test::testGroupLeader() { - KWindowInfo info(window->winId(), nullptr, NET::WM2GroupLeader); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2GroupLeader); QCOMPARE(info.groupLeader(), WId(0)); // TODO: here we should try to set a group leader and re-read it // this needs setting and parsing the WMHints } void KWindowInfoX11Test::testExtendedStrut() { - KWindowInfo info(window->winId(), nullptr, NET::WM2ExtendedStrut); + KWindowInfo info(window->winId(), NET::Properties(), NET::WM2ExtendedStrut); NETExtendedStrut strut = info.extendedStrut(); QCOMPARE(strut.bottom_end, 0); QCOMPARE(strut.bottom_start, 0); @@ -702,7 +702,7 @@ // it's just an xprop, so one roundtrip is good enough QX11Info::getTimestamp(); - KWindowInfo info2(window->winId(), nullptr, NET::WM2ExtendedStrut); + KWindowInfo info2(window->winId(), NET::Properties(), NET::WM2ExtendedStrut); strut = info2.extendedStrut(); QCOMPARE(strut.bottom_end, 32); QCOMPARE(strut.bottom_start, 22); diff --git a/autotests/kwindowsystemx11test.cpp b/autotests/kwindowsystemx11test.cpp --- a/autotests/kwindowsystemx11test.cpp +++ b/autotests/kwindowsystemx11test.cpp @@ -146,7 +146,7 @@ // KWin has arbitrary max number of 20 desktops, so don't fail the test if we use +1 const int newNumber = oldNumber < 20 ? oldNumber + 1 : oldNumber - 1; - NETRootInfo info(QX11Info::connection(), NET::NumberOfDesktops, nullptr); + NETRootInfo info(QX11Info::connection(), NET::NumberOfDesktops, NET::Properties2()); info.setNumberOfDesktops(newNumber); QVERIFY(spy.wait()); @@ -196,7 +196,7 @@ QSignalSpy spy(KWindowSystem::self(), SIGNAL(showingDesktopChanged(bool))); - NETRootInfo info(QX11Info::connection(), nullptr, NET::WM2ShowingDesktop); + NETRootInfo info(QX11Info::connection(), NET::Properties(), NET::WM2ShowingDesktop); info.setShowingDesktop(!showingDesktop); QVERIFY(spy.wait()); @@ -344,7 +344,7 @@ // now let's verify the info in KWindowInfo // we wait a little bit more as openbox is updating the visible name QTest::qWait(500); - KWindowInfo info(widget.winId(), NET::WMName | NET::WMVisibleName | NET::WMVisibleIconName | NET::WMIconName, nullptr); + KWindowInfo info(widget.winId(), NET::WMName | NET::WMVisibleName | NET::WMVisibleIconName | NET::WMIconName, NET::Properties2()); QVERIFY(info.valid()); const QString expectedName = QStringLiteral("bar"); QCOMPARE(info.name(), expectedName); diff --git a/autotests/netwininfotestwm.cpp b/autotests/netwininfotestwm.cpp --- a/autotests/netwininfotestwm.cpp +++ b/autotests/netwininfotestwm.cpp @@ -264,7 +264,7 @@ ATOM(_NET_WM_ALLOWED_ACTIONS) INFO - QCOMPARE(info.allowedActions(), NET::Actions(nullptr)); + QCOMPARE(info.allowedActions(), NET::Actions()); QFETCH(NET::Actions, actions); info.setAllowedActions(actions); QCOMPARE(info.allowedActions(), actions); @@ -472,9 +472,9 @@ ATOM(_NET_WM_STATE) INFO - QCOMPARE(info.state(), NET::States(nullptr)); + QCOMPARE(info.state(), NET::States()); QFETCH(NET::States, states); - info.setState(states, nullptr); + info.setState(states, NET::States()); QCOMPARE(info.state(), states); // compare with the X property diff --git a/src/kstartupinfo.cpp b/src/kstartupinfo.cpp --- a/src/kstartupinfo.cpp +++ b/src/kstartupinfo.cpp @@ -964,11 +964,11 @@ if (!QX11Info::isPlatformX11()) { return QByteArray(); } - NETWinInfo info(QX11Info::connection(), w_P, QX11Info::appRootWindow(), nullptr, NET::WM2StartupId | NET::WM2GroupLeader); + NETWinInfo info(QX11Info::connection(), w_P, QX11Info::appRootWindow(), NET::Properties(), NET::WM2StartupId | NET::WM2GroupLeader); QByteArray ret = info.startupId(); if (ret.isEmpty() && info.groupLeader() != XCB_WINDOW_NONE) { // retry with window group leader, as the spec says - NETWinInfo groupLeaderInfo(QX11Info::connection(), info.groupLeader(), QX11Info::appRootWindow(), nullptr, NET::WM2StartupId); + NETWinInfo groupLeaderInfo(QX11Info::connection(), info.groupLeader(), QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); ret = groupLeaderInfo.startupId(); } return ret; @@ -987,7 +987,7 @@ if (id_P.isNull()) { return; } - NETWinInfo info(QX11Info::connection(), w_P, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo info(QX11Info::connection(), w_P, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); info.setStartupId(id_P.constData()); #else Q_UNUSED(w_P) diff --git a/src/kwindowinfo.h b/src/kwindowinfo.h --- a/src/kwindowinfo.h +++ b/src/kwindowinfo.h @@ -83,7 +83,7 @@ * @param properties Bitmask of NET::Property * @param properties2 Bitmask of NET::Property2 */ - KWindowInfo(WId window, NET::Properties properties, NET::Properties2 properties2 = nullptr); + KWindowInfo(WId window, NET::Properties properties, NET::Properties2 properties2 = NET::Properties2()); ~KWindowInfo(); /** * Returns false if this window info is not valid. diff --git a/src/kwindowinfo.cpp b/src/kwindowinfo.cpp --- a/src/kwindowinfo.cpp +++ b/src/kwindowinfo.cpp @@ -112,7 +112,7 @@ NET::States KWindowInfoPrivateDummy::state() const { - return nullptr; + return NET::States(); } bool KWindowInfoPrivateDummy::isMinimized() const diff --git a/src/kwindowsystem.h b/src/kwindowsystem.h --- a/src/kwindowsystem.h +++ b/src/kwindowsystem.h @@ -99,7 +99,7 @@ * @return the window information * @deprecated use KWindowInfo directly */ - KWINDOWSYSTEM_DEPRECATED static KWindowInfo windowInfo(WId win, NET::Properties properties, NET::Properties2 properties2 = nullptr); + KWINDOWSYSTEM_DEPRECATED static KWindowInfo windowInfo(WId win, NET::Properties properties, NET::Properties2 properties2 = NET::Properties2()); #endif /** diff --git a/src/platforms/xcb/kwindowinfo.cpp b/src/platforms/xcb/kwindowinfo.cpp --- a/src/platforms/xcb/kwindowinfo.cpp +++ b/src/platforms/xcb/kwindowinfo.cpp @@ -272,7 +272,7 @@ if (m_info->passedProperties() & NET::WMState) { return m_info->state() & NET::Sticky; } - NETWinInfo info(QX11Info::connection(), win(), QX11Info::appRootWindow(), NET::WMState, nullptr); + NETWinInfo info(QX11Info::connection(), win(), QX11Info::appRootWindow(), NET::WMState, NET::Properties2()); return info.state() & NET::Sticky; } return m_info->desktop() == NET::OnAllDesktops; diff --git a/src/platforms/xcb/kwindowsystem.cpp b/src/platforms/xcb/kwindowsystem.cpp --- a/src/platforms/xcb/kwindowsystem.cpp +++ b/src/platforms/xcb/kwindowsystem.cpp @@ -265,7 +265,7 @@ emit s_q->showingDesktopChanged(showingDesktop()); } } else if (windows.contains(eventWindow)) { - NETWinInfo ni(QX11Info::connection(), eventWindow, m_appRootWindow, nullptr, nullptr); + NETWinInfo ni(QX11Info::connection(), eventWindow, m_appRootWindow, NET::Properties(), NET::Properties2()); NET::Properties dirtyProperties; NET::Properties2 dirtyProperties2; ni.event(ev, &dirtyProperties, &dirtyProperties2); @@ -347,7 +347,7 @@ bool emit_strutChanged = false; if (strutSignalConnected) { - NETWinInfo info(QX11Info::connection(), w, QX11Info::appRootWindow(), NET::WMStrut | NET::WMDesktop, nullptr); + NETWinInfo info(QX11Info::connection(), w, QX11Info::appRootWindow(), NET::WMStrut | NET::WMDesktop, NET::Properties2()); NETStrut strut = info.strut(); if (strut.left || strut.top || strut.right || strut.bottom) { strutWindows.append(StrutData(w, strut, info.desktop())); @@ -370,7 +370,7 @@ bool emit_strutChanged = removeStrutWindow(w); if (strutSignalConnected && possibleStrutWindows.contains(w)) { - NETWinInfo info(QX11Info::connection(), w, QX11Info::appRootWindow(), NET::WMStrut, nullptr); + NETWinInfo info(QX11Info::connection(), w, QX11Info::appRootWindow(), NET::WMStrut, NET::Properties2()); NETStrut strut = info.strut(); if (strut.left || strut.top || strut.right || strut.bottom) { emit_strutChanged = true; @@ -562,15 +562,15 @@ if (mapViewport()) { init(INFO_BASIC); NETEventFilter *const s_d = s_d_func(); - NETRootInfo info(QX11Info::connection(), nullptr); + NETRootInfo info(QX11Info::connection(), NET::Properties()); QPoint pos = desktopToViewport(desktop, true); NETPoint p; p.x = pos.x(); p.y = pos.y(); info.setDesktopViewport(s_d->currentDesktop(true), p); return; } - NETRootInfo info(QX11Info::connection(), nullptr); + NETRootInfo info(QX11Info::connection(), NET::Properties()); info.setCurrentDesktop(desktop, true); } @@ -584,7 +584,7 @@ } return; } - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMDesktop, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMDesktop, NET::Properties2()); if (b) { info.setDesktop(NETWinInfo::OnAllDesktops, true); } else if (info.desktop(true) == NETWinInfo::OnAllDesktops) { @@ -630,13 +630,13 @@ s_d->moveResizeWindowRequest(win, flags, p.x(), p.y(), w, h); return; } - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMDesktop, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMDesktop, NET::Properties2()); info.setDesktop(desktop, true); } void KWindowSystemPrivateX11::setOnActivities(WId win, const QStringList &activities) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), nullptr, NET::WM2Activities); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::Properties(), NET::WM2Activities); info.setActivities(activities.join(QLatin1Char(',')).toLatin1().constData()); } @@ -652,7 +652,7 @@ void KWindowSystemPrivateX11::activateWindow(WId win, long time) { - NETRootInfo info(QX11Info::connection(), nullptr); + NETRootInfo info(QX11Info::connection(), NET::Properties()); if (time == 0) { time = QX11Info::appUserTime(); } @@ -662,31 +662,31 @@ void KWindowSystemPrivateX11::forceActiveWindow(WId win, long time) { - NETRootInfo info(QX11Info::connection(), nullptr); + NETRootInfo info(QX11Info::connection(), NET::Properties()); if (time == 0) { time = QX11Info::appTime(); } info.setActiveWindow(win, NET::FromTool, time, 0); } void KWindowSystemPrivateX11::demandAttention(WId win, bool set) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMState, nullptr); - info.setState(set ? NET::DemandsAttention : NET::States(nullptr), NET::DemandsAttention); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMState, NET::Properties2()); + info.setState(set ? NET::DemandsAttention : NET::States(), NET::DemandsAttention); } #ifndef KWINDOWSYSTEM_NO_DEPRECATED WId KWindowSystemPrivateX11::transientFor(WId win) { - KWindowInfo info(win, nullptr, NET::WM2TransientFor); + KWindowInfo info(win, NET::Properties(), NET::WM2TransientFor); return info.transientFor(); } #endif #ifndef KWINDOWSYSTEM_NO_DEPRECATED WId KWindowSystemPrivateX11::groupLeader(WId win) { - KWindowInfo info(win, nullptr, NET::WM2GroupLeader); + KWindowInfo info(win, NET::Properties(), NET::WM2GroupLeader); return info.groupLeader(); } #endif @@ -785,7 +785,7 @@ if (icon.isNull()) { return; } - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); QImage img = icon.toImage().convertToFormat(QImage::Format_ARGB32); NETIcon ni; ni.size.width = img.size().width(); @@ -807,20 +807,20 @@ void KWindowSystemPrivateX11::setType(WId win, NET::WindowType windowType) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); info.setWindowType(windowType); } void KWindowSystemPrivateX11::setState(WId win, NET::States state) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMState, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMState, NET::Properties2()); info.setState(state, state); } void KWindowSystemPrivateX11::clearState(WId win, NET::States state) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMState, nullptr); - info.setState(nullptr, state); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::WMState, NET::Properties2()); + info.setState(NET::States(), state); } // enum values for ICCCM 4.1.2.4 and 4.1.4, defined to not depend on xcb-icccm @@ -941,7 +941,7 @@ strut = (*it2).strut; } else if (s_d->possibleStrutWindows.contains(*it1)) { - NETWinInfo info(QX11Info::connection(), (*it1), QX11Info::appRootWindow(), NET::WMStrut | NET::WMDesktop, nullptr); + NETWinInfo info(QX11Info::connection(), (*it1), QX11Info::appRootWindow(), NET::WMStrut | NET::WMDesktop, NET::Properties2()); strut = info.strut(); s_d->possibleStrutWindows.removeAll(*it1); s_d->strutWindows.append(NETEventFilter::StrutData(*it1, info.strut(), info.desktop())); @@ -1000,7 +1000,7 @@ return; } - NETRootInfo info(QX11Info::connection(), nullptr); + NETRootInfo info(QX11Info::connection(), NET::Properties()); info.setDesktopName(desktop, name.toUtf8().constData()); } @@ -1012,21 +1012,21 @@ void KWindowSystemPrivateX11::setShowingDesktop(bool showing) { - NETRootInfo info(QX11Info::connection(), nullptr, NET::WM2ShowingDesktop); + NETRootInfo info(QX11Info::connection(), NET::Properties(), NET::WM2ShowingDesktop); info.setShowingDesktop(showing); } void KWindowSystemPrivateX11::setUserTime(WId win, long time) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); info.setUserTime(time); } void KWindowSystemPrivateX11::setExtendedStrut(WId win, int left_width, int left_start, int left_end, int right_width, int right_start, int right_end, int top_width, int top_start, int top_end, int bottom_width, int bottom_start, int bottom_end) { - NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo info(QX11Info::connection(), win, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); NETExtendedStrut strut; strut.left_width = left_width; strut.right_width = right_width; @@ -1110,7 +1110,7 @@ void KWindowSystemPrivateX11::setBlockingCompositing(WId window, bool active) { - NETWinInfo info(QX11Info::connection(), window, QX11Info::appRootWindow(), nullptr, nullptr); + NETWinInfo info(QX11Info::connection(), window, QX11Info::appRootWindow(), NET::Properties(), NET::Properties2()); info.setBlockingCompositing(active); } diff --git a/src/platforms/xcb/netwm.h b/src/platforms/xcb/netwm.h --- a/src/platforms/xcb/netwm.h +++ b/src/platforms/xcb/netwm.h @@ -120,7 +120,7 @@ @param doActivate true to call activate() to do an initial data read/update of the query information. **/ - NETRootInfo(xcb_connection_t *connection, NET::Properties properties, NET::Properties2 properties2 = nullptr, + NETRootInfo(xcb_connection_t *connection, NET::Properties properties, NET::Properties2 properties2 = NET::Properties2(), int screen = -1, bool doActivate = true); @@ -1654,7 +1654,7 @@ } private: - void update(NET::Properties dirtyProperties, NET::Properties2 dirtyProperties2 = nullptr); + void update(NET::Properties dirtyProperties, NET::Properties2 dirtyProperties2 = NET::Properties2()); void updateWMState(); void setIconInternal(NETRArray &icons, int &icon_count, xcb_atom_t property, NETIcon icon, bool replace); NETIcon iconInternal(NETRArray &icons, int icon_count, int width, int height) const; diff --git a/src/platforms/xcb/netwm.cpp b/src/platforms/xcb/netwm.cpp --- a/src/platforms/xcb/netwm.cpp +++ b/src/platforms/xcb/netwm.cpp @@ -549,11 +549,11 @@ setDefaultProperties(); p->clientProperties = properties; p->clientProperties2 = properties2; - p->properties = nullptr; - p->properties2 = nullptr; - p->windowTypes = nullptr; - p->states = nullptr; - p->actions = nullptr; + p->properties = NET::Properties(); + p->properties2 = NET::Properties2(); + p->windowTypes = NET::WindowTypes(); + p->states = NET::States(); + p->actions = NET::Actions(); p->role = Client; @@ -596,10 +596,10 @@ | ToolbarMask | MenuMask | DialogMask; p->states = Modal | Sticky | MaxVert | MaxHoriz | Shaded | SkipTaskbar | StaysOnTop; - p->properties2 = nullptr; - p->actions = nullptr; - p->clientProperties = nullptr; - p->clientProperties2 = nullptr; + p->properties2 = NET::Properties2(); + p->actions = NET::Actions(); + p->clientProperties = NET::Properties(); + p->clientProperties2 = NET::Properties2(); } void NETRootInfo::activate() @@ -1973,11 +1973,11 @@ if (dirty & Supported) { // Only in Client mode - p->properties = nullptr; - p->properties2 = nullptr; - p->windowTypes = nullptr; - p->states = nullptr; - p->actions = nullptr; + p->properties = NET::Properties(); + p->properties2 = NET::Properties2(); + p->windowTypes = NET::WindowTypes(); + p->states = NET::States(); + p->actions = NET::Actions(); const QVector atoms = get_array_reply(p->conn, cookies[c++], XCB_ATOM_ATOM); Q_FOREACH (const xcb_atom_t atom, atoms) { @@ -2325,21 +2325,21 @@ { return p->role == WindowManager ? p->states - : NET::States(nullptr); + : NET::States(); } NET::WindowTypes NETRootInfo::passedWindowTypes() const { return p->role == WindowManager ? p->windowTypes - : NET::WindowTypes(nullptr); + : NET::WindowTypes(); } NET::Actions NETRootInfo::passedActions() const { return p->role == WindowManager ? p->actions - : NET::Actions(nullptr); + : NET::Actions(); } void NETRootInfo::setSupported(NET::Property property, bool on) @@ -2565,7 +2565,7 @@ p->root = rootWindow; p->mapping_state = Withdrawn; p->mapping_state_dirty = true; - p->state = nullptr; + p->state = NET::States(); p->types[ 0 ] = Unknown; p->name = (char *) nullptr; p->visible_name = (char *) nullptr; @@ -2580,7 +2580,7 @@ p->window_group = XCB_NONE; p->icon_pixmap = XCB_PIXMAP_NONE; p->icon_mask = XCB_PIXMAP_NONE; - p->allowed_actions = nullptr; + p->allowed_actions = NET::Actions(); p->has_net_support = false; p->class_class = (char *) nullptr; p->class_name = (char *) nullptr; @@ -2628,7 +2628,7 @@ p->root = rootWindow; p->mapping_state = Withdrawn; p->mapping_state_dirty = true; - p->state = nullptr; + p->state = NET::States(); p->types[ 0 ] = Unknown; p->name = (char *) nullptr; p->visible_name = (char *) nullptr; @@ -2643,7 +2643,7 @@ p->window_group = XCB_NONE; p->icon_pixmap = XCB_PIXMAP_NONE; p->icon_mask = XCB_PIXMAP_NONE; - p->allowed_actions = nullptr; + p->allowed_actions = NET::Actions(); p->has_net_support = false; p->class_class = (char *) nullptr; p->class_name = (char *) nullptr; @@ -2663,7 +2663,7 @@ // p->frame_strut.bottom = 0; p->properties = properties; - p->properties2 = nullptr; + p->properties2 = NET::Properties2(); p->icon_count = 0; @@ -3607,7 +3607,7 @@ #endif int i; - NET::States state = nullptr, mask = nullptr; + NET::States state = NET::States(), mask = NET::States(); for (i = 1; i < 3; i++) { #ifdef NETWMDEBUG @@ -3999,7 +3999,7 @@ } if (dirty & WMState) { - p->state = nullptr; + p->state = NET::States(); const QVector states = get_array_reply(p->conn, cookies[c++], XCB_ATOM_ATOM); #ifdef NETWMDEBUG @@ -4354,7 +4354,7 @@ } if (dirty2 & WM2AllowedActions) { - p->allowed_actions = nullptr; + p->allowed_actions = NET::Actions(); const QVector actions = get_array_reply(p->conn, cookies[c++], XCB_ATOM_ATOM); if (actions.count() > 0) {