summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoramanda@chromium.org <amanda@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-11 06:55:53 +0000
committeramanda@chromium.org <amanda@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-11 06:55:53 +0000
commit017882554c41b6030a12d50b4044449e3c2409ac (patch)
tree5cb159fea9feafceb5260e7446cddf380799b182
parent3335d879a364867309a93749cc9e4805bd92d114 (diff)
downloadchromium_src-017882554c41b6030a12d50b4044449e3c2409ac.zip
chromium_src-017882554c41b6030a12d50b4044449e3c2409ac.tar.gz
chromium_src-017882554c41b6030a12d50b4044449e3c2409ac.tar.bz2
Checkpoint of plugin support code for Mac. Does not work yet; being checked
in to help stay in sync with linux plugin mods and ensure that it doesn't break Windows plugins. Review URL: http://codereview.chromium.org/21095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9558 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--webkit/glue/plugins/plugin_host.cc43
-rw-r--r--webkit/glue/plugins/webplugin_delegate_impl.h39
-rw-r--r--webkit/glue/webplugin_delegate.h19
-rw-r--r--webkit/glue/webplugin_impl.cc16
-rw-r--r--webkit/tools/test_shell/mac/TestShell.xcodeproj/project.pbxproj2
-rw-r--r--webkit/tools/test_shell/mac/test_webview_delegate.mm22
-rw-r--r--webkit/tools/test_shell/test_webview_delegate.cc2
-rw-r--r--webkit/webkit.xcodeproj/project.pbxproj10
8 files changed, 97 insertions, 56 deletions
diff --git a/webkit/glue/plugins/plugin_host.cc b/webkit/glue/plugins/plugin_host.cc
index 8afa505..087abf8 100644
--- a/webkit/glue/plugins/plugin_host.cc
+++ b/webkit/glue/plugins/plugin_host.cc
@@ -589,7 +589,15 @@ const char* NPN_UserAgent(NPP id) {
return webkit_glue::GetUserAgent(GURL()).c_str();
}
+#if defined(OS_WIN)
+ static const char *UA = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20061103 Firefox/2.0a1";
+#elif defined(OS_MACOSX)
+ // TODO(port): this is probably wrong...
+ static const char *UA = "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_6; en-us) AppleWebKit/525.27.1 (KHTML, like Gecko) Version/3.2.1 Safari/525.27.1";
+#else
+ // TODO(port): set appropriately for other platforms
static const char *UA = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20061103 Firefox/2.0a1";
+#endif
return UA;
}
@@ -601,7 +609,6 @@ void NPN_Status(NPP id, const char* message) {
}
void NPN_InvalidateRect(NPP id, NPRect *invalidRect) {
-#if defined(OS_WIN)
// Invalidates specified drawing area prior to repainting or refreshing a
// windowless plugin
@@ -619,12 +626,18 @@ void NPN_InvalidateRect(NPP id, NPRect *invalidRect) {
if (plugin.get() && plugin->webplugin()) {
if (invalidRect) {
if (!plugin->windowless()) {
+#if defined(OS_WIN)
RECT rect = {0};
rect.left = invalidRect->left;
rect.right = invalidRect->right;
rect.top = invalidRect->top;
rect.bottom = invalidRect->bottom;
::InvalidateRect(plugin->window_handle(), &rect, FALSE);
+#elif defined(OS_MACOSX)
+ NOTIMPLEMENTED();
+#else
+ NOTIMPLEMENTED();
+#endif
return;
}
@@ -637,9 +650,6 @@ void NPN_InvalidateRect(NPP id, NPRect *invalidRect) {
plugin->webplugin()->Invalidate();
}
}
-#else
- NOTIMPLEMENTED();
-#endif
}
void NPN_InvalidateRegion(NPP id, NPRegion invalidRegion) {
@@ -792,6 +802,24 @@ NPError NPN_GetValue(NPP id, NPNVariable variable, void *value) {
}
break;
}
+#if defined(OS_MACOSX)
+ case NPNVsupportsQuickDrawBool:
+ {
+ // we do not support the QuickDraw drawing model
+ NPBool* supports_qd = reinterpret_cast<NPBool*>(value);
+ *supports_qd = FALSE;
+ rv = NPERR_NO_ERROR;
+ break;
+ }
+ case NPNVsupportsCoreGraphicsBool:
+ {
+ // we do support (and in fact require) the CoreGraphics drawing model
+ NPBool* supports_cg = reinterpret_cast<NPBool*>(value);
+ *supports_cg = TRUE;
+ rv = NPERR_NO_ERROR;
+ break;
+ }
+#endif
default:
{
// TODO: implement me
@@ -842,6 +870,13 @@ NPError NPN_SetValue(NPP id, NPPVariable variable, void *value) {
// TODO: implement me
DLOG(INFO) << "NPN_SetValue(NPPVpluginKeepLibraryInMemory) is not implemented.";
return NPERR_GENERIC_ERROR;
+#if defined(OS_MACOSX)
+ case NPNVpluginDrawingModel:
+ // we only support the CoreGraphics drawing model
+ if (reinterpret_cast<int>(value) == NPDrawingModelCoreGraphics)
+ return NPERR_NO_ERROR;
+ return NPERR_GENERIC_ERROR;
+#endif
default:
// TODO: implement me
DLOG(INFO) << "NPN_SetValue(" << variable << ") is not implemented.";
diff --git a/webkit/glue/plugins/webplugin_delegate_impl.h b/webkit/glue/plugins/webplugin_delegate_impl.h
index 929f30d..48672bd9 100644
--- a/webkit/glue/plugins/webplugin_delegate_impl.h
+++ b/webkit/glue/plugins/webplugin_delegate_impl.h
@@ -29,14 +29,13 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
static WebPluginDelegateImpl* Create(const FilePath& filename,
const std::string& mime_type,
gfx::NativeView containing_view);
-#if defined(OS_WIN)
- static bool IsPluginDelegateWindow(HWND window);
- static bool GetPluginNameFromWindow(HWND window, std::wstring *plugin_name);
+ static bool IsPluginDelegateWindow(gfx::NativeWindow window);
+ static bool GetPluginNameFromWindow(gfx::NativeWindow window,
+ std::wstring *plugin_name);
// Returns true if the window handle passed in is that of the dummy
// activation window for windowless plugins.
- static bool IsDummyActivationWindow(HWND window);
-#endif // OS_WIN)
+ static bool IsDummyActivationWindow(gfx::NativeWindow window);
// WebPluginDelegate implementation
virtual void PluginDestroyed();
@@ -48,14 +47,9 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
bool load_manually);
virtual void UpdateGeometry(const gfx::Rect& window_rect,
const gfx::Rect& clip_rect);
-#if defined(OS_WIN)
- virtual void Paint(HDC hdc, const gfx::Rect& rect);
- virtual void Print(HDC hdc);
-#else
- // TODO(port): temporary workaround.
- virtual void Paint(void* dc, const gfx::Rect& rect);
- virtual void Print(void* dc);
-#endif
+ virtual void Paint(gfx::NativeDrawingContext context, const gfx::Rect& rect);
+ virtual void Print(gfx::NativeDrawingContext context);
+
virtual void SetFocus(); // only called when windowless
// only called when windowless
virtual bool HandleEvent(NPEvent* event,
@@ -157,12 +151,7 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
// used for windowless plugins
void WindowlessUpdateGeometry(const gfx::Rect& window_rect,
const gfx::Rect& clip_rect);
-#if defined(OS_WIN)
- void WindowlessPaint(HDC hdc, const gfx::Rect& rect);
-#else
- // TODO(port): implement.
- void WindowlessPaint(void* dc, const gfx::Rect& rect);
-#endif
+ void WindowlessPaint(gfx::NativeDrawingContext hdc, const gfx::Rect& rect);
// Tells the plugin about the current state of the window.
// See NPAPI NPP_SetWindow for more information.
@@ -184,13 +173,11 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
gfx::Rect windowed_last_pos_;
#endif
-#if defined(OS_WIN)
// this is an optimization to avoid calling SetWindow to the plugin
// when it is not necessary. Initially, we need to call SetWindow,
// and after that we only need to call it when the geometry changes.
// use this flag to indicate whether we really need it or not.
bool windowless_needs_set_window_;
-#endif
// used by windowed and windowless plugins
bool windowless_;
@@ -209,6 +196,9 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
gfx::NativeView parent_;
NPWindow window_;
+#if defined(OS_MACOSX)
+ NP_CGContext cg_context_;
+#endif
gfx::Rect window_rect_;
gfx::Rect clip_rect_;
std::vector<gfx::Rect> cutout_rects_;
@@ -225,6 +215,7 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
// To fix a majority of these activation issues we create a dummy visible
// child window to which we set focus whenever the windowless plugin
// receives a WM_LBUTTONDOWN/WM_RBUTTONDOWN message via NPP_HandleEvent.
+
HWND dummy_window_for_activation_;
bool CreateDummyWindowForActivation();
@@ -252,10 +243,13 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
#if defined(OS_WIN)
// Handle to the message filter hook
HHOOK handle_event_message_filter_hook_;
+#endif
// Event which is set when the plugin enters a modal loop in the course
// of a NPP_HandleEvent call.
+#if defined(OS_WIN)
HANDLE handle_event_pump_messages_event_;
+#endif
// Holds the depth of the HandleEvent callstack.
int handle_event_depth_;
@@ -267,6 +261,7 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
// asynchronously.
ScopedRunnableMethodFactory<WebPluginDelegateImpl> user_gesture_msg_factory_;
+#if defined(OS_WIN)
// The plugin module handle.
HMODULE plugin_module_handle_;
@@ -278,10 +273,10 @@ class WebPluginDelegateImpl : public WebPluginDelegate {
// SetCursor interceptor for windowless plugins.
static HCURSOR WINAPI SetCursorPatch(HCURSOR cursor);
+#endif
// Holds the current cursor set by the windowless plugin.
WebCursor current_windowless_cursor_;
-#endif
DISALLOW_EVIL_CONSTRUCTORS(WebPluginDelegateImpl);
};
diff --git a/webkit/glue/webplugin_delegate.h b/webkit/glue/webplugin_delegate.h
index 4581a829..122503f0 100644
--- a/webkit/glue/webplugin_delegate.h
+++ b/webkit/glue/webplugin_delegate.h
@@ -55,24 +55,13 @@ class WebPluginDelegate {
virtual void UpdateGeometry(const gfx::Rect& window_rect,
const gfx::Rect& clip_rect) = 0;
-#if defined(OS_WIN)
- // Tells the plugin to paint the damaged rect. The HDC is only used for
+ // Tells the plugin to paint the damaged rect. |context| is only used for
// windowless plugins.
- virtual void Paint(HDC hdc, const gfx::Rect& rect) = 0;
+ virtual void Paint(gfx::NativeDrawingContext context,
+ const gfx::Rect& rect) = 0;
// Tells the plugin to print itself.
- virtual void Print(HDC hdc) = 0;
-#else
- // TODO(port): these are not intended to be implementable for now,
- // and will have the prototypes fixed once they are implemented.
-
- // Tells the plugin to paint the damaged rect. The HDC is only used for
- // windowless plugins.
- virtual void Paint(void* dc, const gfx::Rect& rect) = 0;
-
- // Tells the plugin to print itself.
- virtual void Print(void* dc) = 0;
-#endif
+ virtual void Print(gfx::NativeDrawingContext hdc) = 0;
// Informs the plugin that it now has focus.
virtual void SetFocus() = 0;
diff --git a/webkit/glue/webplugin_impl.cc b/webkit/glue/webplugin_impl.cc
index 8c7b199..fef6f75e 100644
--- a/webkit/glue/webplugin_impl.cc
+++ b/webkit/glue/webplugin_impl.cc
@@ -56,7 +56,7 @@ MSVC_POP_WARNING();
#include "webkit/glue/webkit_glue.h"
#include "webkit/glue/webplugin_impl.h"
#include "webkit/glue/plugins/plugin_host.h"
-#if defined(OS_WIN)
+#if !defined(OS_LINUX)
#include "webkit/glue/plugins/plugin_instance.h"
#endif
#include "webkit/glue/stacking_order_iterator.h"
@@ -702,18 +702,21 @@ void WebPluginImpl::paint(WebCore::GraphicsContext* gc,
static_cast<float>(origin.y()));
#if defined(OS_WIN)
- // Note that HDC is only used when in windowless mode.
- HDC dc = gc->platformContext()->canvas()->beginPlatformPaint();
+ // Note that |context| is only used when in windowless mode.
+ gfx::NativeDrawingContext context =
+ gc->platformContext()->canvas()->beginPlatformPaint();
+#elif defined (OS_MACOSX)
+ gfx::NativeDrawingContext context = gc->platformContext();
#else
// TODO(port): the equivalent of the above.
- void* dc = NULL; // Temporary, to reduce ifdefs.
+ void* context = NULL; // Temporary, to reduce ifdefs.
#endif
WebCore::IntRect window_rect =
WebCore::IntRect(view->contentsToWindow(damage_rect.location()),
damage_rect.size());
- delegate_->Paint(dc, webkit_glue::FromIntRect(window_rect));
+ delegate_->Paint(context, webkit_glue::FromIntRect(window_rect));
#if defined(OS_WIN)
gc->platformContext()->canvas()->endPlatformPaint();
@@ -730,7 +733,8 @@ void WebPluginImpl::print(WebCore::GraphicsContext* gc) {
gc->save();
#if defined(OS_WIN)
- HDC hdc = gc->platformContext()->canvas()->beginPlatformPaint();
+ gfx::NativeDrawingContext hdc =
+ gc->platformContext()->canvas()->beginPlatformPaint();
delegate_->Print(hdc);
gc->platformContext()->canvas()->endPlatformPaint();
#else
diff --git a/webkit/tools/test_shell/mac/TestShell.xcodeproj/project.pbxproj b/webkit/tools/test_shell/mac/TestShell.xcodeproj/project.pbxproj
index 048559f..40d450c 100644
--- a/webkit/tools/test_shell/mac/TestShell.xcodeproj/project.pbxproj
+++ b/webkit/tools/test_shell/mac/TestShell.xcodeproj/project.pbxproj
@@ -2199,7 +2199,7 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 7B8200960E76FDA1008F45CF /* debug.xcconfig */;
buildSettings = {
- FEATURE_DEFINES = "ENABLE_DATABASE=1 ENABLE_DASHBOARD_SUPPORT=0 ENABLE_JAVASCRIPT_DEBUGGER=0 ENABLE_JSC_MULTIPLE_THREADS=0 ENABLE_ICONDATABASE=0 ENABLE_XSLT=1 ENABLE_XPATH=1 ENABLE_SVG=1 ENABLE_SVG_ANIMATION=1 ENABLE_SVG_AS_IMAGE=1 ENABLE_SVG_USE=1 ENABLE_SVG_FOREIGN_OBJECT=1 ENABLE_SVG_FONTS=1 ENABLE_VIDEO=0 WEBCORE_NAVIGATOR_PLATFORM_=\"FixMeAndRemoveTrailingUnderscore\" USE_GOOGLE_URL_LIBRARY USE_SYSTEM_MALLOC=1";
+ FEATURE_DEFINES = "ENABLE_DATABASE=1 ENABLE_DASHBOARD_SUPPORT=0 ENABLE_JAVASCRIPT_DEBUGGER=0 ENABLE_JSC_MULTIPLE_THREADS=0 ENABLE_ICONDATABASE=0 ENABLE_XSLT=1 ENABLE_XPATH=1 ENABLE_SVG=1 ENABLE_SVG_ANIMATION=1 ENABLE_SVG_AS_IMAGE=1 ENABLE_SVG_USE=1 ENABLE_SVG_FOREIGN_OBJECT=1 ENABLE_SVG_FONTS=1 ENABLE_VIDEO=0 WEBCORE_NAVIGATOR_PLATFORM_=\"FixMeAndRemoveTrailingUnderscore\" USE_GOOGLE_URL_LIBRARY USE_SYSTEM_MALLOC=1 XP_MACOSX=1";
GCC_PREPROCESSOR_DEFINITIONS = (
"$(GCC_PREPROCESSOR_DEFINITIONS)",
"$(FEATURE_DEFINES)",
diff --git a/webkit/tools/test_shell/mac/test_webview_delegate.mm b/webkit/tools/test_shell/mac/test_webview_delegate.mm
index 6a269ef123..a355ef3 100644
--- a/webkit/tools/test_shell/mac/test_webview_delegate.mm
+++ b/webkit/tools/test_shell/mac/test_webview_delegate.mm
@@ -8,6 +8,8 @@
#include "base/string_util.h"
#include "webkit/glue/webcursor.h"
#include "webkit/glue/webview.h"
+#include "webkit/glue/plugins/plugin_list.h"
+#include "webkit/glue/plugins/webplugin_delegate_impl.h"
#include "webkit/tools/test_shell/test_shell.h"
@@ -22,10 +24,22 @@ WebPluginDelegate* TestWebViewDelegate::CreatePluginDelegate(
const std::string& mime_type,
const std::string& clsid,
std::string* actual_mime_type) {
- // TODO(awalker): once Mac plugins are working, enable this code to
- // connect up the web plugin delegate for a plugin.
- NOTIMPLEMENTED();
- return NULL;
+ WebWidgetHost *host = GetHostForWidget(webview);
+ if (!host)
+ return NULL;
+ gfx::NativeView view = host->view_handle();
+
+ bool allow_wildcard = true;
+ WebPluginInfo info;
+ if (!NPAPI::PluginList::Singleton()->GetPluginInfo(url, mime_type, clsid,
+ allow_wildcard, &info,
+ actual_mime_type))
+ return NULL;
+
+ if (actual_mime_type && !actual_mime_type->empty())
+ return WebPluginDelegateImpl::Create(info.path, *actual_mime_type, view);
+ else
+ return WebPluginDelegateImpl::Create(info.path, mime_type, view);
}
void TestWebViewDelegate::ShowJavaScriptAlert(const std::wstring& message) {
diff --git a/webkit/tools/test_shell/test_webview_delegate.cc b/webkit/tools/test_shell/test_webview_delegate.cc
index 5f52911..d7bd9d7 100644
--- a/webkit/tools/test_shell/test_webview_delegate.cc
+++ b/webkit/tools/test_shell/test_webview_delegate.cc
@@ -24,6 +24,7 @@
#include "webkit/glue/webkit_glue.h"
#include "webkit/glue/webview.h"
#include "webkit/glue/plugins/plugin_list.h"
+#include "webkit/glue/plugins/webplugin_delegate_impl.h"
#include "webkit/glue/window_open_disposition.h"
#include "webkit/tools/test_shell/test_navigation_controller.h"
#include "webkit/tools/test_shell/test_shell.h"
@@ -31,7 +32,6 @@
#if defined(OS_WIN)
// TODO(port): make these files work everywhere.
#include "base/gfx/gdi_util.h"
-#include "webkit/glue/plugins/webplugin_delegate_impl.h"
#include "webkit/tools/test_shell/drag_delegate.h"
#include "webkit/tools/test_shell/drop_delegate.h"
#endif
diff --git a/webkit/webkit.xcodeproj/project.pbxproj b/webkit/webkit.xcodeproj/project.pbxproj
index a9f857e..f4c967d 100644
--- a/webkit/webkit.xcodeproj/project.pbxproj
+++ b/webkit/webkit.xcodeproj/project.pbxproj
@@ -1299,6 +1299,7 @@
AA3147AA7951CBFF1512D731 /* RenderBoxModelObject.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B85EBAF470DCB5F664CB69B1 /* RenderBoxModelObject.cpp */; };
AB9552760F37AA2E0015C8FB /* webplugin_impl.cc in Sources */ = {isa = PBXBuildFile; fileRef = AB9552750F37AA2E0015C8FB /* webplugin_impl.cc */; };
AB9552AE0F37AC0B0015C8FB /* stacking_order_iterator.cc in Sources */ = {isa = PBXBuildFile; fileRef = AB9552AD0F37AC0B0015C8FB /* stacking_order_iterator.cc */; };
+ ABF923090F3A388C009B64EC /* webplugin_delegate_impl_mac.cc in Sources */ = {isa = PBXBuildFile; fileRef = 825405ED0D92E3FF0006B936 /* webplugin_delegate_impl_mac.cc */; };
B52EC24C0F2FE04A0051A2C4 /* FormControlElementWithState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B52EC24B0F2FE04A0051A2C4 /* FormControlElementWithState.cpp */; };
B52EC2550F2FE07B0051A2C4 /* CachedFrame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B52EC2530F2FE07B0051A2C4 /* CachedFrame.cpp */; };
B58DCCE90F27DF0100BF697A /* InputElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B58DCCE80F27DF0100BF697A /* InputElement.cpp */; };
@@ -4045,7 +4046,7 @@
825405EA0D92E3FF0006B936 /* plugin_stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = plugin_stream.h; sourceTree = "<group>"; };
825405EB0D92E3FF0006B936 /* plugin_string_stream.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = plugin_string_stream.cc; sourceTree = "<group>"; };
825405EC0D92E3FF0006B936 /* plugin_string_stream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = plugin_string_stream.h; sourceTree = "<group>"; };
- 825405ED0D92E3FF0006B936 /* webplugin_delegate_impl.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = webplugin_delegate_impl.cc; sourceTree = "<group>"; };
+ 825405ED0D92E3FF0006B936 /* webplugin_delegate_impl_mac.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = webplugin_delegate_impl_mac.cc; sourceTree = "<group>"; };
825405EE0D92E3FF0006B936 /* webplugin_delegate_impl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = webplugin_delegate_impl.h; sourceTree = "<group>"; };
8255CEDF0F16972C00E53C11 /* plugin_stream_posix.cc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = plugin_stream_posix.cc; sourceTree = "<group>"; };
82761F810E3FAC700030D324 /* AccessibilityObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityObject.cpp; sourceTree = "<group>"; };
@@ -4302,6 +4303,7 @@
ABBD24D80EB7C29F00BEC658 /* FontMacCoreText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FontMacCoreText.cpp; sourceTree = "<group>"; };
ABBD24EC0EB7C3C800BEC658 /* AccessibilityList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AccessibilityList.cpp; sourceTree = "<group>"; };
ABBD24ED0EB7C3C800BEC658 /* AccessibilityList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AccessibilityList.h; sourceTree = "<group>"; };
+ ABF923210F3A527D009B64EC /* plugin_impl_mac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = plugin_impl_mac.h; path = default_plugin/plugin_impl_mac.h; sourceTree = "<group>"; };
B4A7678BDF04FB2B50664148 /* WorkerThreadableLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WorkerThreadableLoader.cpp; sourceTree = "<group>"; };
B4B7717F57DD81751BCEF85E /* V8WebKitCSSMatrix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = V8WebKitCSSMatrix.h; sourceTree = "<group>"; };
B507F54D0E9BECC300D16D77 /* HTMLPlugInImageElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLPlugInImageElement.cpp; sourceTree = "<group>"; };
@@ -4707,6 +4709,7 @@
7B5E77540D7F22D8001ECF42 = {
isa = PBXGroup;
children = (
+ ABF923210F3A527D009B64EC /* plugin_impl_mac.h */,
7BF8842B0E71C100000BAF8A /* Configuration */,
7BF889C10E71CEA6000BAF8A /* generated */,
825404E50D92E3BB0006B936 /* glue */,
@@ -7708,7 +7711,7 @@
825405E80D92E3FF0006B936 /* plugin_stream_url.h */,
825405EB0D92E3FF0006B936 /* plugin_string_stream.cc */,
825405EC0D92E3FF0006B936 /* plugin_string_stream.h */,
- 825405ED0D92E3FF0006B936 /* webplugin_delegate_impl.cc */,
+ 825405ED0D92E3FF0006B936 /* webplugin_delegate_impl_mac.cc */,
825405EE0D92E3FF0006B936 /* webplugin_delegate_impl.h */,
);
path = plugins;
@@ -9563,6 +9566,7 @@
E45627020E268F03005E4685 /* weburlrequest_impl.cc in Sources */,
E45626F40E268F03005E4685 /* webview_impl.cc in Sources */,
E45626F30E268F03005E4685 /* webwidget_impl.cc in Sources */,
+ ABF923090F3A388C009B64EC /* webplugin_delegate_impl_mac.cc in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -9747,7 +9751,7 @@
DIR_V8 = "$(XCODEPROJ_DEPTH)/v8";
DIR_WEBCORE = "$(DIR_WEBKIT)/WebCore";
DIR_WEBKIT = "$(DIR_THIRD_PARTY)/WebKit";
- FEATURE_DEFINES = "ENABLE_DATABASE=1 ENABLE_DASHBOARD_SUPPORT=0 ENABLE_JAVASCRIPT_DEBUGGER=0 ENABLE_JSC_MULTIPLE_THREADS=0 ENABLE_ICONDATABASE=0 ENABLE_XSLT=1 ENABLE_XPATH=1 ENABLE_SVG=1 ENABLE_SVG_ANIMATION=1 ENABLE_SVG_AS_IMAGE=1 ENABLE_SVG_USE=1 ENABLE_SVG_FOREIGN_OBJECT=1 ENABLE_SVG_FONTS=1 ENABLE_VIDEO=0 WEBCORE_NAVIGATOR_PLATFORM_=\"FixMeAndRemoveTrailingUnderscore\" USE_GOOGLE_URL_LIBRARY USE_SYSTEM_MALLOC=1";
+ FEATURE_DEFINES = "ENABLE_DATABASE=1 ENABLE_DASHBOARD_SUPPORT=0 ENABLE_JAVASCRIPT_DEBUGGER=0 ENABLE_JSC_MULTIPLE_THREADS=0 ENABLE_ICONDATABASE=0 ENABLE_XSLT=1 ENABLE_XPATH=1 ENABLE_SVG=1 ENABLE_SVG_ANIMATION=1 ENABLE_SVG_AS_IMAGE=1 ENABLE_SVG_USE=1 ENABLE_SVG_FOREIGN_OBJECT=1 ENABLE_SVG_FONTS=1 ENABLE_VIDEO=0 WEBCORE_NAVIGATOR_PLATFORM_=\"FixMeAndRemoveTrailingUnderscore\" USE_GOOGLE_URL_LIBRARY USE_SYSTEM_MALLOC=1 XP_MACOSX=1";
FRAMEWORK_SEARCH_PATHS = (
"$(FRAMEWORK_SEARCH_PATHS)",
"$(SYSTEM_LIBRARY_DIR)/Frameworks/ApplicationServices.framework/Frameworks",