Fix abort on startup due to oversized tray icon creation when icon widget has not yet been shown

pull/1/head
Timothy Pearson 10 years ago
parent dcd19cee1d
commit 5997a6378c

4
.gitmodules vendored

@ -1,6 +1,6 @@
[submodule "admin"] [submodule "admin"]
path = admin path = admin
url = http://system@scm.trinitydesktop.org/scm/git/tde-common-admin url = http://scm.trinitydesktop.org/scm/git/tde-common-admin
[submodule "cmake"] [submodule "cmake"]
path = cmake path = cmake
url = http://system@scm.trinitydesktop.org/scm/git/tde-common-cmake url = http://scm.trinitydesktop.org/scm/git/tde-common-cmake

@ -361,10 +361,11 @@ void kpowersave::loadIcon(bool forceReload){
if ((pixmap_name_tmp != pixmap_name) || (forceReload)) { if ((pixmap_name_tmp != pixmap_name) || (forceReload)) {
pixmap_name = pixmap_name_tmp; pixmap_name = pixmap_name_tmp;
if (pixmap_name.startsWith("ERROR")) { if (pixmap_name.startsWith("ERROR")) {
pixmap = SmallIcon("laptoppower", width(), TDEIcon::DisabledState); pixmap = SmallIcon("laptoppower", isShown() ? width() : 22, TDEIcon::DisabledState);
}
else {
pixmap = SmallIcon(pixmap_name, isShown() ? width() : 22);
} }
else
pixmap = SmallIcon(pixmap_name, width());
} }
kdDebugFuncOut(trace); kdDebugFuncOut(trace);
@ -435,7 +436,9 @@ void kpowersave::drawIcon(){
} }
} }
quit: quit:
image = image.smoothScale(width(), height()); if (isShown()) {
image = image.smoothScale(width(), height());
}
fullIcon.convertFromImage(image); fullIcon.convertFromImage(image);
setPixmap(fullIcon); setPixmap(fullIcon);

Loading…
Cancel
Save