QtPlatformPlugin.h [plain text]
#ifndef QtPlatformPlugin_h
#define QtPlatformPlugin_h
#include <QPluginLoader>
#include <wtf/PassOwnPtr.h>
class QWebSelectMethod;
class QWebKitPlatformPlugin;
class QWebNotificationPresenter;
class QWebHapticFeedbackPlayer;
class QWebSelectData;
class QWebTouchModifier;
#if ENABLE(VIDEO) && USE(QT_MULTIMEDIA)
class QWebFullScreenVideoHandler;
#endif
namespace WebCore {
class QtPlatformPlugin {
public:
QtPlatformPlugin()
: m_loaded(false)
, m_plugin(0)
{
}
~QtPlatformPlugin();
PassOwnPtr<QWebSelectMethod> createSelectInputMethod();
PassOwnPtr<QWebNotificationPresenter> createNotificationPresenter();
PassOwnPtr<QWebHapticFeedbackPlayer> createHapticFeedbackPlayer();
PassOwnPtr<QWebTouchModifier> createTouchModifier();
#if ENABLE(VIDEO) && USE(QT_MULTIMEDIA)
PassOwnPtr<QWebFullScreenVideoHandler> createFullScreenVideoHandler();
#endif
QWebKitPlatformPlugin* plugin();
private:
bool m_loaded;
QWebKitPlatformPlugin* m_plugin;
QPluginLoader m_loader;
bool load();
bool load(const QString& file);
bool loadStaticallyLinkedPlugin();
};
}
#endif // QtPlatformPlugin_h