aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src-qt5/core/libLumina/ExternalProcess.h7
-rw-r--r--src-qt5/core/lumina-desktop/LDesktop.cpp11
-rw-r--r--src-qt5/core/lumina-desktop/LSession.cpp8
3 files changed, 20 insertions, 6 deletions
diff --git a/src-qt5/core/libLumina/ExternalProcess.h b/src-qt5/core/libLumina/ExternalProcess.h
index ce8ff6f5..2a6f4949 100644
--- a/src-qt5/core/libLumina/ExternalProcess.h
+++ b/src-qt5/core/libLumina/ExternalProcess.h
@@ -15,6 +15,7 @@
#include <QString>
#include <QTimer>
#include <QApplication>
+#include <QDebug>
class ExternalProcess : public QProcess{
Q_OBJECT
@@ -23,18 +24,21 @@ private:
private slots:
void resetCursor(){
+ //qDebug() << "External Process: Reset Mouse Cursor =" << !cursorRestored;
if(!cursorRestored){
QApplication::restoreOverrideCursor();
cursorRestored = true;
}
}
void processStarting(){
+ //qDebug() << "Starting External Process: Mouse Notification =" << !cursorRestored;
if(!cursorRestored){
- QApplication::setOverrideCursor( QCursor(Qt::WaitCursor) );
+ QApplication::setOverrideCursor( QCursor(Qt::BusyCursor) );
QTimer::singleShot(3000, this, SLOT(resetCursor()) );
}
}
void processFinished(){
+ //qDebug() << "External Process Finished: Reset Mouse Cursor =" << !cursorRestored;
if(!cursorRestored){
QApplication::restoreOverrideCursor();
cursorRestored = true;
@@ -53,6 +57,7 @@ public:
this->setStandardOutputFile(logfile);
}
//Setup the connection for automatic cleanup
+ connect(this, SIGNAL(started()), this, SLOT(processStarting()) );
connect(this, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(processFinished()) );
}
diff --git a/src-qt5/core/lumina-desktop/LDesktop.cpp b/src-qt5/core/lumina-desktop/LDesktop.cpp
index 1fc6b11b..71b10bd5 100644
--- a/src-qt5/core/lumina-desktop/LDesktop.cpp
+++ b/src-qt5/core/lumina-desktop/LDesktop.cpp
@@ -539,7 +539,16 @@ void LDesktop::UpdateBackground(){
//qDebug() << " - List:" << bgL << CBG;
//Remove any invalid files
for(int i=0; i<bgL.length(); i++){
- if( (!QFile::exists(bgL[i]) && bgL[i]!="default" && !bgL[i].startsWith("rgb(") ) || bgL[i].isEmpty()){ bgL.removeAt(i); i--; }
+ if(bgL[i]=="default" || bgL[i].startsWith("rgb(") ){ continue; } //built-in definitions - treat them as valid
+ if(bgL[i].isEmpty()){ bgL.removeAt(i); i--; }
+ if( !QFile::exists(bgL[i]) ){
+ //Quick Detect/replace for new path for Lumina wallpapers (change in 1.3.4)
+ if(bgL[i].contains("/wallpapers/Lumina-DE/")){
+ bgL[i] = bgL[i].replace("/wallpapers/Lumina-DE/", "/wallpapers/lumina-desktop/"); i--; //modify the path and re-check it
+ }else{
+ bgL.removeAt(i); i--;
+ }
+ }
}
if(bgL.isEmpty()){ bgL << "default"; } //always fall back on the default
//Determine if the background needs to be changed
diff --git a/src-qt5/core/lumina-desktop/LSession.cpp b/src-qt5/core/lumina-desktop/LSession.cpp
index 6fceff1b..dab30f01 100644
--- a/src-qt5/core/lumina-desktop/LSession.cpp
+++ b/src-qt5/core/lumina-desktop/LSession.cpp
@@ -294,7 +294,7 @@ void LSession::launchStartupApps(){
qDebug() << " - - Screen Brightness:" << QString::number(tmp)+"%";
}
//QProcess::startDetached("nice lumina-open -autostart-apps");
- ExternalProcess::launch("nice lumina-open -autostart-apps");
+ ExternalProcess::launch("lumina-open", QStringList() << "-autostart-apps", false);
//Re-load the screen brightness and volume settings from the previous session
// Wait until after the XDG-autostart functions, since the audio system might be started that way
@@ -589,7 +589,7 @@ void LSession::SessionEnding(){
//===============
void LSession::LaunchApplication(QString cmd){
//LSession::setOverrideCursor(QCursor(Qt::BusyCursor));
- ExternalProcess::launch(cmd);
+ ExternalProcess::launch(cmd, QStringList(), true);
//QProcess::startDetached(cmd);
}
@@ -690,7 +690,7 @@ void LSession::WindowPropertyEvent(){
if(RunningApps.length() < newapps.length()){
//New Window found
//qDebug() << "New window found";
- LSession::restoreOverrideCursor(); //restore the mouse cursor back to normal (new window opened?)
+ //LSession::restoreOverrideCursor(); //restore the mouse cursor back to normal (new window opened?)
//Perform sanity checks on any new window geometries
for(int i=0; i<newapps.length() && !TrayStopping; i++){
if(!RunningApps.contains(newapps[i])){
@@ -842,7 +842,7 @@ void LSession::attachTrayWindow(WId win){
if(RunningTrayApps.contains(win)){ return; } //already managed
qDebug() << "Session Tray: Window Added";
RunningTrayApps << win;
- LSession::restoreOverrideCursor();
+ //LSession::restoreOverrideCursor();
if(DEBUG){ qDebug() << "Tray List Changed"; }
emit TrayListChanged();
}
bgstack15