- if ((event->type() == QEvent::Polish) && !m_initialized) {
- // load all available plugins for previews
- const KService::List plugins = KServiceTypeTrader::self()->query("ThumbCreator");
- foreach (const KSharedPtr<KService>& service, plugins) {
- QListWidgetItem* item = new QListWidgetItem(service->name(),
- m_previewPluginsList);
- item->setData(Qt::UserRole, service->desktopEntryName());
- const bool show = m_enabledPreviewPlugins.contains(service->desktopEntryName());
- item->setCheckState(show ? Qt::Checked : Qt::Unchecked);
- }
-
+ if (!event->spontaneous() && !m_initialized) {
+ QMetaObject::invokeMethod(this, "loadPreviewPlugins", Qt::QueuedConnection);