aboutsummaryrefslogtreecommitdiff
path: root/lumina-desktop/LSession.cpp
diff options
context:
space:
mode:
authorKen Moore <ken@pcbsd.org>2015-04-28 10:40:48 -0400
committerKen Moore <ken@pcbsd.org>2015-04-28 10:40:48 -0400
commit6d39518bed7e2cb8f135a78b1064855602e17767 (patch)
tree6f435af9f2c43f8dc035b8ded4c313e65d349784 /lumina-desktop/LSession.cpp
parentFinal fix for the new panel window-reactivation routine: only re-activate the... (diff)
downloadlumina-6d39518bed7e2cb8f135a78b1064855602e17767.tar.gz
lumina-6d39518bed7e2cb8f135a78b1064855602e17767.tar.bz2
lumina-6d39518bed7e2cb8f135a78b1064855602e17767.zip
Update the system window a bit and how it is used in the session. Now there is only a single system window per session, and it is simply shown/hidden as necesary. This allow it to become visible *much* faster than creating the window from scratch every time.
Diffstat (limited to 'lumina-desktop/LSession.cpp')
-rw-r--r--lumina-desktop/LSession.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/lumina-desktop/LSession.cpp b/lumina-desktop/LSession.cpp
index 4ad6d1a1..9fbd01bf 100644
--- a/lumina-desktop/LSession.cpp
+++ b/lumina-desktop/LSession.cpp
@@ -41,6 +41,7 @@ LSession::LSession(int &argc, char ** argv) : QApplication(argc, argv){
//this->setAttribute(Qt::AA_UseHighDpiPixmaps); //allow pixmaps to be scaled up as well as down
//this->setStyle( new MenuProxyStyle); //QMenu icon size override
SystemTrayID = 0; VisualTrayID = 0;
+ sysWindow = 0;
TrayDmgEvent = 0;
TrayDmgError = 0;
cleansession = true;
@@ -111,6 +112,8 @@ void LSession::setupSession(){
appmenu = new AppMenu();
if(DEBUG){ qDebug() << " - Init SettingsMenu:" << timer->elapsed();}
settingsmenu = new SettingsMenu();
+ if(DEBUG){ qDebug() << " - Init SystemWindow:" << timer->elapsed();}
+ sysWindow = new SystemWindow();
//Now setup the system watcher for changes
qDebug() << " - Initialize file system watcher";
@@ -495,8 +498,11 @@ QSettings* LSession::sessionSettings(){
}
void LSession::systemWindow(){
- SystemWindow win;
- win.exec();
+ if(sysWindow==0){ sysWindow = new SystemWindow(); }
+ else{ sysWindow->updateWindow(); }
+ sysWindow->show();
+ /*SystemWindow win;
+ win.exec();*/
LSession::processEvents();
}
bgstack15