[digikam] fix fullscreen settings loading kde#320016
nucleo
nucleo at fedoraproject.org
Tue May 28 22:48:17 UTC 2013
commit f02982f0ff0d05194fe2eecfd4e738f733876d24
Author: nucleo <nucleo at fedoraproject.org>
Date: Wed May 29 01:48:07 2013 +0300
fix fullscreen settings loading kde#320016
digikam-3.2.0-fullscreen.patch | 193 ++++++++++++++++++++++++++++++++++++++++
digikam.spec | 13 +++-
2 files changed, 205 insertions(+), 1 deletions(-)
---
diff --git a/digikam-3.2.0-fullscreen.patch b/digikam-3.2.0-fullscreen.patch
new file mode 100644
index 0000000..1487d34
--- /dev/null
+++ b/digikam-3.2.0-fullscreen.patch
@@ -0,0 +1,193 @@
+commit 439316380574b6dc8b3c3ed37efa1e74656c342f
+Author: Gilles Caulier <caulier.gilles at gmail.com>
+Date: Tue May 28 14:01:58 2013 +0200
+
+ factoring everywhere Genreal config group used to store main windows settings in RC file
+ Ensure that full screen settings is loaded at initialization of AlbumGUI.
+ CCBUGS: 320371
+ CCBUGS: 320016
+ CCBUGS: 319876
+
+diff --git a/digikam/main/digikamapp.cpp b/digikam/main/digikamapp.cpp
+index 9e38514..782e64c 100644
+--- a/digikam/main/digikamapp.cpp
++++ b/digikam/main/digikamapp.cpp
+@@ -190,7 +190,9 @@ DigikamApp::DigikamApp()
+
+ setObjectName("Digikam");
+
+- if (d->config->group("General Settings").readEntry("Show Splash", true) &&
++ KConfigGroup group = AlbumSettings::instance()->generalConfigGroup();
++
++ if (group.readEntry("Show Splash", true) &&
+ !kapp->isSessionRestored())
+ {
+ d->splashScreen = new SplashScreen();
+@@ -208,7 +210,7 @@ DigikamApp::DigikamApp()
+ + QString::number(QCoreApplication::instance()->applicationPid()));
+
+ // collection scan
+- if (d->config->group("General Settings").readEntry("Scan At Start", true) ||
++ if (group.readEntry("Scan At Start", true) ||
+ !CollectionScanner::databaseInitialScanDone())
+ {
+ ScanController::instance()->completeCollectionScanDeferFiles(d->splashScreen);
+@@ -220,7 +222,6 @@ DigikamApp::DigikamApp()
+ }
+
+ // ensure creation
+- AlbumSettings::instance();
+ AlbumManager::instance();
+ LoadingCacheInterface::initialize();
+ IccSettings::instance()->loadAllProfilesProperties();
+@@ -266,7 +267,7 @@ DigikamApp::DigikamApp()
+ // This manager must be created after collection setup.
+ d->tagsActionManager = new TagsActionMngr(this);
+
+- applyMainWindowSettings(d->config->group("General Settings"));
++ applyMainWindowSettings(group);
+
+ // Check ICC profiles repository availability
+
+@@ -291,10 +292,11 @@ DigikamApp::DigikamApp()
+ // preload additional windows
+ preloadWindows();
+
+- setAutoSaveSettings("General Settings", true);
++ readFullScreenSettings(group);
++ setAutoSaveSettings(group, true);
+
+ // Now, enable finished the collection scan as deferred process
+- NewItemsFinder* tool = new NewItemsFinder(NewItemsFinder::ScanDeferredFiles);
++ NewItemsFinder* const tool = new NewItemsFinder(NewItemsFinder::ScanDeferredFiles);
+ tool->start();
+
+ LoadSaveThread::setInfoProvider(new DatabaseLoadSaveFileInfoProvider);
+@@ -2414,7 +2416,7 @@ void DigikamApp::slotSetupChanged()
+ }
+
+ // Load full-screen options
+- KConfigGroup group = AlbumSettings::instance()->defaultConfigGroup();
++ KConfigGroup group = AlbumSettings::instance()->generalConfigGroup();
+ readFullScreenSettings(group);
+
+ d->view->applySettings();
+@@ -2446,7 +2448,7 @@ void DigikamApp::slotEditKeys()
+
+ void DigikamApp::slotConfToolbars()
+ {
+- saveMainWindowSettings(d->config->group("General Settings"));
++ saveMainWindowSettings(AlbumSettings::instance()->generalConfigGroup());
+ KEditToolBar dlg(factory(), this);
+
+ connect(&dlg, SIGNAL(newToolBarConfig()),
+@@ -2457,7 +2459,7 @@ void DigikamApp::slotConfToolbars()
+
+ void DigikamApp::slotNewToolbarConfig()
+ {
+- applyMainWindowSettings(d->config->group("General Settings"));
++ applyMainWindowSettings(AlbumSettings::instance()->generalConfigGroup());
+ }
+
+ void DigikamApp::slotConfNotifications()
+diff --git a/digikam/utils/albumsettings.cpp b/digikam/utils/albumsettings.cpp
+index a7db340..6cda14d 100644
+--- a/digikam/utils/albumsettings.cpp
++++ b/digikam/utils/albumsettings.cpp
+@@ -552,9 +552,9 @@ void AlbumSettings::init()
+ this, SLOT(applyNepomukSettings()));
+ }
+
+-KConfigGroup AlbumSettings::defaultConfigGroup() const
++KConfigGroup AlbumSettings::generalConfigGroup() const
+ {
+- return d->config->group(d->configGroupDefault);
++ return d->config->group(d->configGroupGeneral);
+ }
+
+ void AlbumSettings::readSettings()
+@@ -563,7 +563,7 @@ void AlbumSettings::readSettings()
+
+ // ---------------------------------------------------------------------
+
+- KConfigGroup group = defaultConfigGroup();
++ KConfigGroup group = config->group(d->configGroupDefault);
+
+ QStringList collectionList = group.readEntry(d->configAlbumCollectionsEntry, QStringList());
+
+@@ -655,7 +655,7 @@ void AlbumSettings::readSettings()
+
+ // ---------------------------------------------------------------------
+
+- group = config->group(d->configGroupGeneral);
++ group = generalConfigGroup();
+
+ d->showSplash = group.readEntry(d->configShowSplashEntry, true);
+ d->useTrash = group.readEntry(d->configUseTrashEntry, true);
+@@ -701,7 +701,7 @@ void AlbumSettings::saveSettings()
+
+ // ---------------------------------------------------------------------
+
+- KConfigGroup group = defaultConfigGroup();
++ KConfigGroup group = config->group(d->configGroupDefault);
+
+ group.writeEntry(d->configAlbumCollectionsEntry, d->albumCategoryNames);
+ group.writeEntry(d->configAlbumSortOrderEntry, (int)d->albumSortOrder);
+@@ -775,7 +775,7 @@ void AlbumSettings::saveSettings()
+
+ // ---------------------------------------------------------------------
+
+- group = config->group(d->configGroupGeneral);
++ group = generalConfigGroup();
+
+ group.writeEntry(d->configShowSplashEntry, d->showSplash);
+ group.writeEntry(d->configUseTrashEntry, d->useTrash);
+diff --git a/digikam/utils/albumsettings.h b/digikam/utils/albumsettings.h
+index 90197d3..e0b3816 100644
+--- a/digikam/utils/albumsettings.h
++++ b/digikam/utils/albumsettings.h
+@@ -393,7 +393,7 @@ public:
+ void setApplicationStyle(const QString& style);
+ QString getApplicationStyle() const;
+
+- KConfigGroup defaultConfigGroup() const;
++ KConfigGroup generalConfigGroup() const;
+
+ public Q_SLOTS:
+
+diff --git a/utilities/setup/setupalbumview.cpp b/utilities/setup/setupalbumview.cpp
+index 166de47..8039650 100644
+--- a/utilities/setup/setupalbumview.cpp
++++ b/utilities/setup/setupalbumview.cpp
+@@ -110,11 +110,11 @@ public:
+ SetupAlbumView::SetupAlbumView(QWidget* const parent)
+ : QScrollArea(parent), d(new Private)
+ {
+- QWidget* panel = new QWidget(viewport());
++ QWidget* const panel = new QWidget(viewport());
+ setWidget(panel);
+ setWidgetResizable(true);
+
+- QVBoxLayout* layout = new QVBoxLayout(panel);
++ QVBoxLayout* const layout = new QVBoxLayout(panel);
+
+ // --------------------------------------------------------
+
+@@ -306,7 +306,7 @@ void SetupAlbumView::applySettings()
+ settings->setShowFolderTreeViewItemsCount(d->showFolderTreeViewItemsCount->isChecked());
+ settings->saveSettings();
+
+- KConfigGroup group = settings->defaultConfigGroup();
++ KConfigGroup group = settings->generalConfigGroup();
+ d->fullScreenSettings->saveSettings(group);
+ }
+
+@@ -357,7 +357,7 @@ void SetupAlbumView::readSettings()
+ d->previewShowIcons->setChecked(settings->getPreviewShowIcons());
+ d->showFolderTreeViewItemsCount->setChecked(settings->getShowFolderTreeViewItemsCount());
+
+- KConfigGroup group = settings->defaultConfigGroup();
++ KConfigGroup group = settings->generalConfigGroup();
+ d->fullScreenSettings->readSettings(group);
+ }
+
diff --git a/digikam.spec b/digikam.spec
index 58087bb..3b5c0f2 100644
--- a/digikam.spec
+++ b/digikam.spec
@@ -6,7 +6,7 @@
Name: digikam
Version: 3.2.0
-Release: 1%{?pre}%{?dist}
+Release: 2%{?pre}%{?dist}
Summary: A digital camera accessing & photo management application
License: GPLv2+
@@ -24,6 +24,10 @@ Patch51: digikam-3.1.0-opencv20.patch
## upstream patches
+# Ensure that full screen settings is loaded at initialization of AlbumGUI.
+https://projects.kde.org/projects/extragear/graphics/digikam/repository/revisions/439316380574b6dc8b3c3ed37efa1e74656c342f
+Patch100: digikam-3.2.0-fullscreen.patch
+
BuildRequires: eigen3-devel
BuildRequires: desktop-file-utils
BuildRequires: doxygen
@@ -225,6 +229,10 @@ BuildArch: noarch
%patch51 -p1 -b .opencv20
%endif
+pushd core
+%patch100 -p1 -b .fullscreen
+popd
+
# don't use bundled/old FindKipi.cmake in favor of kdelibs' version
# see http:/bugs.kde.org/307213
mv cmake/modules/FindKipi.cmake cmake/modules/FindKipi.cmake.ORIG
@@ -525,6 +533,9 @@ update-desktop-database -q &> /dev/null
%changelog
+* Wed May 29 2013 Alexey Kurov <nucleo at fedoraproject.org> - 3.2.0-2
+- fix fullscreen settings loading kde#320016
+
* Tue May 14 2013 Alexey Kurov <nucleo at fedoraproject.org> - 3.2.0-1
- digikam-3.2.0
More information about the scm-commits
mailing list