From c2fc0199b8f7cf1f0a4bfee0568fa68ec8d1d6ab Mon Sep 17 00:00:00 2001 From: Alex Richardson Date: Wed, 22 Apr 2015 14:08:32 +0100 Subject: [PATCH] Use KPluginFactory::createInstance() Now that all generators have the necessary Q_INTERFACES() it works again This restores the behaviour from before commit e4a4d400c35b3e41a60d4 REVIEW: 123466 --- core/document.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/core/document.cpp b/core/document.cpp index 2d4e85d86..34218f574 100644 --- a/core/document.cpp +++ b/core/document.cpp @@ -824,18 +824,14 @@ Generator * DocumentPrivate::loadGeneratorLibrary( const KService::Ptr &service return 0; } - QObject* plugin = service->createInstance(); - // vHanda: qobject_cast seems to be failing. Not sure why! - Generator* generator = dynamic_cast< Okular::Generator* >(plugin); -#pragma message("We're using dynamic_cast over here instead of qobject_cast") - // Generator * generator = factory->create< Okular::Generator >( service->pluginKeyword(), 0 ); + Generator * plugin = service->createInstance(); // GeneratorInfo info( factory->componentData() ); KComponentData data = KComponentData::mainComponent(); GeneratorInfo info( data ); - info.generator = generator; + info.generator = plugin; m_loadedGenerators.insert( service->name(), info ); - return generator; + return plugin; } void DocumentPrivate::loadAllGeneratorLibraries()