Activity: Correctly restore column sizes
authorDaniel Molkentin <danimo@owncloud.com>
Mon, 23 Mar 2015 17:22:12 +0000 (18:22 +0100)
committerDaniel Molkentin <danimo@owncloud.com>
Mon, 23 Mar 2015 17:22:25 +0000 (18:22 +0100)
Fixes: #3005
src/gui/protocolwidget.cpp
src/gui/protocolwidget.h
src/libsync/configfile.cpp

index c4b942b0904e4dc513ee347ad6582f47ea0c9653..5c8a55f527839385bcbce278d3914a9cd17fdd98 100644 (file)
@@ -73,16 +73,10 @@ ProtocolWidget::ProtocolWidget(QWidget *parent) :
     _copyBtn->setToolTip( tr("Copy the activity list to the clipboard."));
     _copyBtn->setEnabled(false);
     connect(_copyBtn, SIGNAL(clicked()), SLOT(copyToClipboard()));
-
-    ConfigFile cfg;
-    cfg.restoreGeometryHeader(_ui->_treeWidget->header());
 }
 
 ProtocolWidget::~ProtocolWidget()
 {
-    ConfigFile cfg;
-    cfg.saveGeometryHeader(_ui->_treeWidget->header() );
-
     delete _ui;
 }
 
@@ -137,6 +131,20 @@ void ProtocolWidget::slotRetrySync()
     folderMan->slotScheduleAllFolders();
 }
 
+void ProtocolWidget::showEvent(QShowEvent *ev)
+{
+    ConfigFile cfg;
+    cfg.restoreGeometryHeader(_ui->_treeWidget->header());
+    QWidget::showEvent(ev);
+}
+
+void ProtocolWidget::hideEvent(QHideEvent *ev)
+{
+    ConfigFile cfg;
+    cfg.saveGeometryHeader(_ui->_treeWidget->header() );
+    QWidget::hideEvent(ev);
+}
+
 void ProtocolWidget::cleanIgnoreItems(const QString& folder)
 {
     int itemCnt = _ui->_treeWidget->topLevelItemCount();
index bc09e2781902a27b950bc20d00c76c25fd3ca0f3..0227db373b451a3983277f64c1213d92fb578ac7 100644 (file)
@@ -39,8 +39,6 @@ public:
     explicit ProtocolWidget(QWidget *parent = 0);
     ~ProtocolWidget();
 
-signals:
-
 public slots:
     void slotProgressInfo( const QString& folder, const Progress::Info& progress );
     void slotOpenFile( QTreeWidgetItem* item, int );
@@ -49,6 +47,10 @@ protected slots:
     void copyToClipboard();
     void slotRetrySync();
 
+protected:
+    void showEvent(QShowEvent *);
+    void hideEvent(QHideEvent *);
+
 signals:
     void guiLog(const QString&, const QString&);
 
index ba63864cd06aa2cda9fd2fcc0666c631e2ff3666..e7e3738b549cb403ea6a80bf5dba0b8781de2191 100644 (file)
@@ -147,7 +147,7 @@ void ConfigFile::saveGeometryHeader(QHeaderView *header)
 {
 #ifndef TOKEN_AUTH_ONLY
     if(!header) return;
-    Q_ASSERT(!header->objectName().isNull());
+    Q_ASSERT(!header->objectName().isEmpty());
 
     QSettings settings(configFile(), QSettings::IniFormat);
     settings.beginGroup(header->objectName());
@@ -164,7 +164,7 @@ void ConfigFile::restoreGeometryHeader(QHeaderView *header)
 
     QSettings settings(configFile(), QSettings::IniFormat);
     settings.beginGroup(header->objectName());
-    header->restoreState(getValue(geometryC, header->objectName()).toByteArray());
+    header->restoreState(settings.value(geometryC).toByteArray());
 #endif
 }