diff options
Diffstat (limited to 'WebCore/plugins/PluginView.h')
-rw-r--r-- | WebCore/plugins/PluginView.h | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/WebCore/plugins/PluginView.h b/WebCore/plugins/PluginView.h index 8a5706f..dd2458e 100644 --- a/WebCore/plugins/PluginView.h +++ b/WebCore/plugins/PluginView.h @@ -2,6 +2,7 @@ /* * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. * Copyright (C) 2008 Collabora Ltd. All rights reserved. + * Copyright (C) 2009 Girish Ramakrishnan <girish@forwardbias.in> * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -46,17 +47,24 @@ #include <wtf/RefPtr.h> #include <wtf/Vector.h> +<<<<<<< HEAD:WebCore/plugins/PluginView.h #ifdef PLUGIN_SCHEDULE_TIMER #include "PluginTimer.h" #endif #if PLATFORM(WIN_OS) && PLATFORM(QT) +======= +#if PLATFORM(WIN_OS) && (PLATFORM(QT) || PLATFORM(WX)) +>>>>>>> webkit.org at r51976:WebCore/plugins/PluginView.h typedef struct HWND__* HWND; typedef HWND PlatformPluginWidget; #elif defined(ANDROID_PLUGINS) typedef struct PluginWidgetAndroid* PlatformPluginWidget; #else typedef PlatformWidget PlatformPluginWidget; +#if defined(XP_MACOSX) && PLATFORM(QT) +#include <QPixmap> +#endif #endif #if USE(JSC) @@ -79,7 +87,7 @@ namespace WebCore { class TouchEvent; #endif class KURL; -#if PLATFORM(WIN_OS) && !PLATFORM(WX) && ENABLE(NETSCAPE_PLUGIN_API) +#if PLATFORM(WIN_OS) && ENABLE(NETSCAPE_PLUGIN_API) class PluginMessageThrottlerWin; #endif class PluginPackage; @@ -94,7 +102,7 @@ namespace WebCore { PluginStatusLoadedSuccessfully }; - class PluginRequest { + class PluginRequest : public Noncopyable { public: PluginRequest(const FrameLoadRequest& frameLoadRequest, bool sendNotification, void* notifyData, bool shouldAllowPopups) : m_frameLoadRequest(frameLoadRequest) @@ -206,7 +214,7 @@ namespace WebCore { const String& mimeType() const { return m_mimeType; } const KURL& url() const { return m_url; } -#if PLATFORM(WIN_OS) && !PLATFORM(WX) && ENABLE(NETSCAPE_PLUGIN_API) +#if PLATFORM(WIN_OS) && ENABLE(NETSCAPE_PLUGIN_API) static LRESULT CALLBACK PluginViewWndProc(HWND, UINT, WPARAM, LPARAM); LRESULT wndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam); WNDPROC pluginWndProc() const { return m_pluginWndProc; } @@ -222,6 +230,8 @@ namespace WebCore { virtual void halt(); virtual void restart(); virtual Node* node() const; + virtual bool isWindowed() const { return m_isWindowed; } + virtual String pluginName() const; bool isHalted() const { return m_isHalted; } bool hasBeenHalted() const { return m_hasBeenHalted; } @@ -254,7 +264,7 @@ namespace WebCore { void invalidateWindowlessPluginRect(const IntRect&); -#if PLATFORM(WIN_OS) && !PLATFORM(WX) && ENABLE(NETSCAPE_PLUGIN_API) +#if PLATFORM(WIN_OS) && ENABLE(NETSCAPE_PLUGIN_API) void paintWindowedPluginIntoContext(GraphicsContext*, const IntRect&); static HDC WINAPI hookedBeginPaint(HWND, PAINTSTRUCT*); static BOOL WINAPI hookedEndPaint(HWND, const PAINTSTRUCT*); @@ -335,7 +345,7 @@ namespace WebCore { bool m_needsXEmbed; #endif -#if PLATFORM(WIN_OS) && !PLATFORM(WX) && ENABLE(NETSCAPE_PLUGIN_API) +#if PLATFORM(WIN_OS) && ENABLE(NETSCAPE_PLUGIN_API) OwnPtr<PluginMessageThrottlerWin> m_messageThrottler; WNDPROC m_pluginWndProc; unsigned m_lastMessage; @@ -344,11 +354,15 @@ namespace WebCore { bool m_haveUpdatedPluginWidget; #endif +<<<<<<< HEAD:WebCore/plugins/PluginView.h #ifdef PLUGIN_SCHEDULE_TIMER PluginTimerList m_timerList; #endif #if (PLATFORM(QT) && PLATFORM(WIN_OS)) || defined(XP_MACOSX) +======= +#if ((PLATFORM(QT) || PLATFORM(WX)) && PLATFORM(WIN_OS)) || defined(XP_MACOSX) +>>>>>>> webkit.org at r51976:WebCore/plugins/PluginView.h // On Mac OSX and Qt/Windows the plugin does not have its own native widget, // but is using the containing window as its reference for positioning/painting. PlatformPluginWidget m_window; @@ -371,12 +385,15 @@ private: void setNPWindowIfNeeded(); #elif defined(XP_MACOSX) NP_CGContext m_npCgContext; - OwnPtr<Timer<PluginView> > m_nullEventTimer; NPDrawingModel m_drawingModel; NPEventModel m_eventModel; + CGContextRef m_contextRef; + WindowRef m_fakeWindow; +#if PLATFORM(QT) + QPixmap m_pixmap; +#endif void setNPWindowIfNeeded(); - void nullEventTimerFired(Timer<PluginView>*); Point globalMousePosForPlugin() const; #endif |