aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp
diff options
context:
space:
mode:
authorKen Moore <ken@ixsystems.com>2018-01-29 15:09:37 -0500
committerKen Moore <ken@ixsystems.com>2018-01-29 15:09:37 -0500
commit331107f04943e5719b3d66e31b9dd9d4c78319b8 (patch)
tree0e33aa5b55970ec8c55600f2eb548bbb081c8df8 /src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp
parentMerge branch 'master' of github.com:trueos/lumina (diff)
downloadlumina-331107f04943e5719b3d66e31b9dd9d4c78319b8.tar.gz
lumina-331107f04943e5719b3d66e31b9dd9d4c78319b8.tar.bz2
lumina-331107f04943e5719b3d66e31b9dd9d4c78319b8.zip
Couple more minor tweaks - trying to get the layering working properly.
Diffstat (limited to 'src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp')
-rw-r--r--src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp
index 254a67ac..523fa09f 100644
--- a/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp
+++ b/src-qt5/core/lumina-desktop-unified/src-desktop/src-cpp/RootDesktopObject.cpp
@@ -13,6 +13,7 @@
// === PUBLIC ===
RootDesktopObject::RootDesktopObject(QObject *parent) : QObject(parent){
+ last_window_up = 0;
updateScreens(); //make sure the internal list is updated right away
connect(this, SIGNAL(changePanels(QStringList)), this, SLOT(setPanels(QStringList)) );
}
@@ -140,6 +141,7 @@ void RootDesktopObject::setPanels(QStringList ids){
void RootDesktopObject::setWindows(QList<NativeWindowObject*> list){
window_objects = list;
emit windowsChanged();
+ mousePositionChanged(true);
}
void RootDesktopObject::logout(){
@@ -150,7 +152,7 @@ void RootDesktopObject::lockscreen(){
emit lockScreen();
}
-void RootDesktopObject::mousePositionChanged(){
+void RootDesktopObject::mousePositionChanged(bool lowerall){
emit mouseMoved();
// Go through the transparent windows (in order of high->low in stack)
// and raise/lower the transparent overlays as needed
@@ -162,11 +164,13 @@ void RootDesktopObject::mousePositionChanged(){
Lumina::NWS->raiseWindow(window_objects[i]);
last_window_up = window_objects[i];
}
- return; //found the currently-hovered window
+ if(!lowerall){ return; } //found the currently-hovered window
+ }else if(lowerall){
+ Lumina::NWS->lowerWindow(window_objects[i]);
}
}
//failover for when no window has the mouse over it (lower all of them)
- if(last_window_up!=0){ Lumina::NWS->lowerWindow(last_window_up); }
+ if(last_window_up!=0 && !lowerall){ Lumina::NWS->lowerWindow(last_window_up); }
}
void RootDesktopObject::launchApp(QString appOrPath){
bgstack15