From c0dce5cc8acc9335554be9c5d96e9366c91a47e4 Mon Sep 17 00:00:00 2001 From: Ken Moore Date: Wed, 31 May 2017 13:52:35 -0400 Subject: Fix up the desktop plugin "move" operation so it saves the proper grid coordinates for next session. --- src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp | 2 ++ src-qt5/core/lumina-desktop/LDesktopPluginSpace.h | 1 + 2 files changed, 3 insertions(+) diff --git a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp index f4cf2cfe..41a1017d 100644 --- a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp +++ b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.cpp @@ -125,9 +125,11 @@ void LDesktopPluginSpace::addDesktopPlugin(QString plugID){ //Now get the saved geometry for the plugin QRect geom = plug->gridGeometry(); //grid coordinates if(geom.isNull()){ + //Try the old format (might be slight drift between sessions if the grid size changes) geom = plug->loadPluginGeometry(); //in pixel coords if(!geom.isNull()){ geom = geomToGrid(geom); } //convert to grid coordinates } + if(DEBUG){ qDebug() << "Saved plugin geom:" << geom << plugID; } //Now determine the position to put it if(geom.isNull()){ //No previous location - need to calculate initial geom diff --git a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h index 8e768631..8781e2cb 100644 --- a/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h +++ b/src-qt5/core/lumina-desktop/LDesktopPluginSpace.h @@ -161,6 +161,7 @@ private: void MovePlugin(LDPlugin* plug, QRect geom){ plug->savePluginGeometry(geom); //save the un-adjusted geometry + plug->setGridGeometry(geomToGrid(geom)); //save the actual grid location plug->setGeometry( geom ); plug->setFixedSize(geom.size()); //needed for some plugins } -- cgit