aboutsummaryrefslogtreecommitdiff
path: root/src-qt5/core/lumina-desktop
diff options
context:
space:
mode:
authorKen Moore <ken@ixsystems.com>2016-10-05 08:20:21 -0400
committerKen Moore <ken@ixsystems.com>2016-10-05 08:20:21 -0400
commitcaea68731fac0339e512457d6d2506b3f4e88a06 (patch)
tree70921b59c752dfbcf90cfb0c4c4e9e79aebd7dba /src-qt5/core/lumina-desktop
parentAdd a couple more fixes/bypasses to the start-lumina-desktop routine. (diff)
downloadlumina-caea68731fac0339e512457d6d2506b3f4e88a06.tar.gz
lumina-caea68731fac0339e512457d6d2506b3f4e88a06.tar.bz2
lumina-caea68731fac0339e512457d6d2506b3f4e88a06.zip
Convert over the desktop/panel settings to be based on screen ID instead of screen number. It seems like X randomly assigns numbers to screens in some instances - resulting in multi-monitor arrays occasionally getting rotated/scrambled. After the automatic conversion of the settings to the new system (the first time the user logs into the updated version of Lumina), screen settings are tied to that particular monitor now (HDMI-0, DP-1, etc...)
Diffstat (limited to 'src-qt5/core/lumina-desktop')
-rw-r--r--src-qt5/core/lumina-desktop/LDesktop.cpp6
-rw-r--r--src-qt5/core/lumina-desktop/LDesktopPluginSpace.h3
-rw-r--r--src-qt5/core/lumina-desktop/LPanel.cpp5
3 files changed, 11 insertions, 3 deletions
diff --git a/src-qt5/core/lumina-desktop/LDesktop.cpp b/src-qt5/core/lumina-desktop/LDesktop.cpp
index 980b3e5e..8258dbb6 100644
--- a/src-qt5/core/lumina-desktop/LDesktop.cpp
+++ b/src-qt5/core/lumina-desktop/LDesktop.cpp
@@ -12,11 +12,13 @@
#include "LWinInfo.h"
#include "JsonMenu.h"
+#include <QScreen>
+
#define DEBUG 0
LDesktop::LDesktop(int deskNum, bool setdefault) : QObject(){
-
- DPREFIX = "desktop-"+QString::number(deskNum)+"/";
+ QString screenID = QApplication::screens().at(deskNum)->name();
+ DPREFIX = "desktop-"+screenID+"/";
desktopnumber = deskNum;
desktop = QApplication::desktop();
defaultdesktop = setdefault; //(desktop->screenGeometry(desktopnumber).x()==0);
diff --git a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h
index 92226680..44765029 100644
--- a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h
+++ b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h
@@ -183,6 +183,9 @@ private slots:
}
protected:
+ void paintEvent(QPaintEvent*){
+ //do nothing here - the main plugin area should *always* be invisible
+ }
//Need Drag and Drop functionality (internal movement)
void dragEnterEvent(QDragEnterEvent *ev){
if(ev->mimeData()->hasFormat(MIMETYPE) ){
diff --git a/src-qt5/core/lumina-desktop/LPanel.cpp b/src-qt5/core/lumina-desktop/LPanel.cpp
index bf063a31..b0abf498 100644
--- a/src-qt5/core/lumina-desktop/LPanel.cpp
+++ b/src-qt5/core/lumina-desktop/LPanel.cpp
@@ -6,6 +6,8 @@
//===========================================
#include "LPanel.h"
#include "LSession.h"
+#include <QScreen>
+
#include "panel-plugins/systemtray/LSysTray.h"
#define DEBUG 0
@@ -26,7 +28,8 @@ LPanel::LPanel(QSettings *file, int scr, int num, QWidget *parent) : QWidget(){
screennum = scr;
panelnum = num; //save for later
screen = LSession::desktop();
- PPREFIX = "panel"+QString::number(screennum)+"."+QString::number(num)+"/";
+ QString screenID = QApplication::screens().at(screennum)->name();
+ PPREFIX = "panel_"+screenID+"."+QString::number(num)+"/";
defaultpanel = (LSession::handle()->screenGeom(screennum).x()==0 && num==0);
horizontal=true; //use this by default initially
hidden = false; //use this by default
bgstack15