diff options
author | Ken Moore <ken@ixsystems.com> | 2017-02-03 13:40:36 -0500 |
---|---|---|
committer | Ken Moore <ken@ixsystems.com> | 2017-02-03 13:40:36 -0500 |
commit | 5597b2a289a8bea9ddae94b699afa370f3b0300c (patch) | |
tree | 5de649cdf01579bd4b9b7a43c2c9b4b01f72c543 /src-qt5/core/lumina-desktop-unified | |
parent | Try to fix the tiling high-DPI wallpaper issue. (diff) | |
download | lumina-5597b2a289a8bea9ddae94b699afa370f3b0300c.tar.gz lumina-5597b2a289a8bea9ddae94b699afa370f3b0300c.tar.bz2 lumina-5597b2a289a8bea9ddae94b699afa370f3b0300c.zip |
Commit my work-in-progress on a new NativeWindowSystem class.
This will be a replacement for the current LuminaX11 class usage in the desktop, with a generic Qt5 API that talks to the X11/Wayland subsystems in the background.
Diffstat (limited to 'src-qt5/core/lumina-desktop-unified')
-rw-r--r-- | src-qt5/core/lumina-desktop-unified/src-events/LXcbEventFilter.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src-qt5/core/lumina-desktop-unified/src-events/LXcbEventFilter.cpp b/src-qt5/core/lumina-desktop-unified/src-events/LXcbEventFilter.cpp index 27e94737..7031f3df 100644 --- a/src-qt5/core/lumina-desktop-unified/src-events/LXcbEventFilter.cpp +++ b/src-qt5/core/lumina-desktop-unified/src-events/LXcbEventFilter.cpp @@ -53,6 +53,7 @@ void EventFilter::start(){ XCB->setupEventsForRoot(WMFlag); XCB->WM_Set_Supporting_WM(WMFlag); + XCB->WM_Set_Root_Supported(); //announce all the various options that the WM supports static_cast<XCBEventFilter*>(EF)->startSystemTray(); QCoreApplication::instance()->flush(); @@ -482,6 +483,18 @@ void XCBEventFilter::ParsePropertyEvent(xcb_property_notify_event_t *ev){ }else if(ev->atom == obj->XCB->EWMH._NET_WM_ICON){ qDebug() << " - Found _NET_WM_ICON atom"; nwin->setProperty(NativeWindow::Icon, obj->XCB->WM_Get_Icon(nwin->id())); + }else if(ev->atom == obj->XCB->EWMH._NET_WM_ICON_NAME){ + qDebug() << " - Found _NET_WM_ICON_NAME atom"; + nwin->setProperty(NativeWindow::ShortTitle, obj->XCB->WM_Get_Icon_Name(nwin->id())); + }else if(ev->atom == obj->XCB->EWMH._NET_WM_DESKTOP){ + qDebug() << " - Found _NET_WM_DESKTOP atom"; + nwin->setProperty(NativeWindow::Workspace, obj->XCB->WM_Get_Desktop(nwin->id())); + }else if(ev->atom == obj->XCB->EWMH._NET_WM_WINDOW_TYPE ){ + qDebug() << " - Found _NET_WM_WINDOW_TYPE atom"; + + }else if( ev->atom == obj->XCB->EWMH._NET_WM_STATE){ + qDebug() << " - Found _NET_WM_STATE atom"; + } } |