aboutsummaryrefslogtreecommitdiff
path: root/mthemedaemon
diff options
context:
space:
mode:
authorPertti Kellomäki <pertti.kellomaki@nokia.com>2010-07-23 14:08:23 +0300
committerSergiy Dubovik <sergiy.dubovik@nokia.com>2010-07-28 11:53:08 +0300
commit90080e61b4cd291d0267b52983e4f45f149cdcf2 (patch)
treea7617b113e626dd8a0ebe798aa15ee33f6b65d29 /mthemedaemon
parentfd8d2adae76323c3c27865bbac98991ab1d0cb82 (diff)
Fixes: NB#180708 - booster-m does not react to theme changes
RevBy: Armin Details: Do not send theme change packets to the booster from the theme daemon. The booster is not sitting in an event loop, and consequently will not reply to such messages. The identification of the booster is now done by using a magic name, which is ugly. Optimally, the theme protocol should be augmented so that the booster could identify itself by sending a booster specific registration packet. Tested on device against 0.20.27-1.
Diffstat (limited to 'mthemedaemon')
-rw-r--r--mthemedaemon/mthemedaemonserver.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/mthemedaemon/mthemedaemonserver.cpp b/mthemedaemon/mthemedaemonserver.cpp
index fa8c042a..0e78976b 100644
--- a/mthemedaemon/mthemedaemonserver.cpp
+++ b/mthemedaemon/mthemedaemonserver.cpp
@@ -297,12 +297,14 @@ void MThemeDaemonServer::themeChanged()
QHash<MThemeDaemonClient *, QList<PixmapIdentifier> >::iterator end = pixmapsToReload.end();
for (; i != end; ++i) {
MThemeDaemonClient *client = i.key();
- clientsThatHaveNotYetAppliedThemeChange.append(client);
- const QList<PixmapIdentifier> &ids = i.value();
-
- client->stream() << themeChangedPacket;
+ // Do not send a theme change packet to the booster, as it will not reply
+ if (client->name() != QString("componentcache_pre_initialized_mapplication")) {
+ clientsThatHaveNotYetAppliedThemeChange.append(client);
+ client->stream() << themeChangedPacket;
+ }
+ const QList<PixmapIdentifier> &ids = i.value();
const QList<PixmapIdentifier>::const_iterator idsEnd = ids.end();
for (QList<PixmapIdentifier>::const_iterator iId = ids.begin(); iId != idsEnd; ++iId) {
@@ -310,7 +312,7 @@ void MThemeDaemonServer::themeChanged()
if (!releasePixmapsQueue.removeOne(item)) {
loadPixmapsQueue.enqueue(item);
}
- }
+ }
}
// make sure we have a cache directory for the current theme