[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.6/kdebase/workspace/plasma/generic/wallpapers/image
From: Aaron J. Seigo <aseigo () kde ! org>
Date: 2011-01-27 19:30:40
Message-ID: 20110127193040.08104AC8BA () svn ! kde ! org
[Download RAW message or body]
SVN commit 1217533 by aseigo:
resort to defaults if the image set no longer exists
M +23 -8 image.cpp
M +1 -0 image.h
--- branches/KDE/4.6/kdebase/workspace/plasma/generic/wallpapers/image/image.cpp #1217532:1217533
@@ -79,12 +79,8 @@
m_resizeMethod = (ResizeMethod)config.readEntry("wallpaperposition", (int)ScaledResize);
m_wallpaper = config.readEntry("wallpaper", QString());
if (m_wallpaper.isEmpty()) {
- m_wallpaper = Plasma::Theme::defaultTheme()->wallpaperPath();
- int index = m_wallpaper.indexOf("/contents/images/");
- if (index > -1) { // We have file from package -> get path to package
- m_wallpaper = m_wallpaper.left(index);
+ useSingleImageDefaults();
}
- }
m_color = config.readEntry("wallpapercolor", QColor(Qt::black));
m_usersWallpapers = config.readEntry("userswallpapers", QStringList());
@@ -119,6 +115,15 @@
m_animation->setProperty("endValue", 1.0);
}
+void Image::useSingleImageDefaults()
+{
+ m_wallpaper = Plasma::Theme::defaultTheme()->wallpaperPath();
+ int index = m_wallpaper.indexOf("/contents/images/");
+ if (index > -1) { // We have file from package -> get path to package
+ m_wallpaper = m_wallpaper.left(index);
+ }
+}
+
void Image::save(KConfigGroup &config)
{
config.writeEntry("slideTimer", m_delay);
@@ -405,7 +410,7 @@
void Image::setSingleImage()
{
if (m_wallpaper.isEmpty()) {
- return;
+ useSingleImageDefaults();
}
QString img;
@@ -413,9 +418,9 @@
if (QDir::isAbsolutePath(m_wallpaper)) {
Plasma::Package b(m_wallpaper, packageStructure(this));
img = b.filePath("preferred");
- kDebug() << img << m_wallpaper;
+ //kDebug() << img << m_wallpaper;
- if (img.isEmpty()) {
+ if (img.isEmpty() && QFile::exists(m_wallpaper)) {
img = m_wallpaper;
}
} else {
@@ -431,6 +436,16 @@
}
}
+ if (img.isEmpty()) {
+ // ok, so the package we have failed to work out; let's try the default
+ // if we have already
+ const QString wallpaper = m_wallpaper;
+ useSingleImageDefaults();
+ if (wallpaper != m_wallpaper) {
+ setSingleImage();
+ }
+ }
+
if (!m_size.isEmpty()) {
renderWallpaper(img);
}
--- branches/KDE/4.6/kdebase/workspace/plasma/generic/wallpapers/image/image.h #1217532:1217533
@@ -91,6 +91,7 @@
void calculateGeometry();
void setSingleImage();
void updateWallpaperActions();
+ void useSingleImageDefaults();
private:
static bool s_startupResumed;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic