[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.18-1-697-g2f78b87
kdecker at apple.com
kdecker at apple.com
Wed Jan 20 22:14:25 UTC 2010
The following commit has been merged in the debian/unstable branch:
commit 4057a843ba740ee98d1eb2e60c7155c2ca21650a
Author: kdecker at apple.com <kdecker at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jan 6 22:23:39 2010 +0000
Reviewed by Eric Carlson.
First step toward:
<rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
Small refactoring moving the PluginWidget class from WebKit to WebCore.
* WebCore.xcodeproj/project.pbxproj: Added new source files and a "mac" group; exposes PluginWidget.h as a "Private" role
* platform/Widget.h: Added isPluginWidget().
(WebCore::Widget::isPluginWidget):
* plugins/PluginWidget.h: Added.
(WebCore::PluginWidget::isPluginWidget): Added as an interim solution until Mac plug-ins inheirt from PluginView.
* plugins/mac/PluginWidgetMac.mm: Added.
(WebCore::PluginWidget::invalidateRect): Added. Extracted from the old WebKit/FrameLoaderClientMac version of PluginWidget
Reviewed by Eric Carlson.
First step toward:
<rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
Small refactoring moving the PluginWidget class from WebKit to WebCore.
* WebCoreSupport/WebFrameLoaderClient.mm: Use the WebCore version of PluginWidget.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52872 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index ed4838b..f67ae75 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,19 @@
+2010-01-06 Kevin Decker <kdecker at apple.com>
+
+ Reviewed by Eric Carlson.
+
+ First step toward:
+ <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
+
+ Small refactoring moving the PluginWidget class from WebKit to WebCore.
+ * WebCore.xcodeproj/project.pbxproj: Added new source files and a "mac" group; exposes PluginWidget.h as a "Private" role
+ * platform/Widget.h: Added isPluginWidget().
+ (WebCore::Widget::isPluginWidget):
+ * plugins/PluginWidget.h: Added.
+ (WebCore::PluginWidget::isPluginWidget): Added as an interim solution until Mac plug-ins inheirt from PluginView.
+ * plugins/mac/PluginWidgetMac.mm: Added.
+ (WebCore::PluginWidget::invalidateRect): Added. Extracted from the old WebKit/FrameLoaderClientMac version of PluginWidget
+
2010-01-06 Eric Seidel <eric at webkit.org>
No review, rolling out r52862.
diff --git a/WebCore/WebCore.xcodeproj/project.pbxproj b/WebCore/WebCore.xcodeproj/project.pbxproj
index 0f6baab..6918033 100644
--- a/WebCore/WebCore.xcodeproj/project.pbxproj
+++ b/WebCore/WebCore.xcodeproj/project.pbxproj
@@ -151,6 +151,8 @@
08E6E0F10EFF42BA00029FBF /* WMLFieldSetElement.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 08E6E0EF0EFF42BA00029FBF /* WMLFieldSetElement.cpp */; };
08E6E0F20EFF42BA00029FBF /* WMLFieldSetElement.h in Headers */ = {isa = PBXBuildFile; fileRef = 08E6E0F00EFF42BA00029FBF /* WMLFieldSetElement.h */; };
0A4844990CA44CB200B7BD48 /* SoftLinking.h in Headers */ = {isa = PBXBuildFile; fileRef = 0A4844980CA44CB200B7BD48 /* SoftLinking.h */; settings = {ATTRIBUTES = (Private, ); }; };
+ 0AFDAC3B10F5448300E1F3D2 /* PluginWidgetMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0AFDAC3A10F5448300E1F3D2 /* PluginWidgetMac.mm */; };
+ 0AFDAC3D10F5448C00E1F3D2 /* PluginWidget.h in Headers */ = {isa = PBXBuildFile; fileRef = 0AFDAC3C10F5448C00E1F3D2 /* PluginWidget.h */; settings = {ATTRIBUTES = (Private, ); }; };
0B8C56D40F28627F000502E1 /* HTTPHeaderMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0B8C56D30F28627F000502E1 /* HTTPHeaderMap.cpp */; };
0B9056190F2578BE0095FF6A /* DocumentThreadableLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0B9056150F2578BE0095FF6A /* DocumentThreadableLoader.cpp */; };
0B90561A0F2578BF0095FF6A /* DocumentThreadableLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 0B9056160F2578BE0095FF6A /* DocumentThreadableLoader.h */; settings = {ATTRIBUTES = (); }; };
@@ -5357,6 +5359,8 @@
08FB84B00ECE373300DC064E /* WMLElementFactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WMLElementFactory.cpp; sourceTree = "<group>"; };
08FB84B10ECE373300DC064E /* WMLElementFactory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WMLElementFactory.h; sourceTree = "<group>"; };
0A4844980CA44CB200B7BD48 /* SoftLinking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SoftLinking.h; sourceTree = "<group>"; };
+ 0AFDAC3A10F5448300E1F3D2 /* PluginWidgetMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = PluginWidgetMac.mm; path = mac/PluginWidgetMac.mm; sourceTree = "<group>"; };
+ 0AFDAC3C10F5448C00E1F3D2 /* PluginWidget.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PluginWidget.h; sourceTree = "<group>"; };
0B8C56D30F28627F000502E1 /* HTTPHeaderMap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTTPHeaderMap.cpp; sourceTree = "<group>"; };
0B9056150F2578BE0095FF6A /* DocumentThreadableLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DocumentThreadableLoader.cpp; sourceTree = "<group>"; };
0B9056160F2578BE0095FF6A /* DocumentThreadableLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DocumentThreadableLoader.h; sourceTree = "<group>"; };
@@ -10204,6 +10208,14 @@
tabWidth = 4;
usesTabs = 0;
};
+ 0AFDAC3610F5447400E1F3D2 /* mac */ = {
+ isa = PBXGroup;
+ children = (
+ 0AFDAC3A10F5448300E1F3D2 /* PluginWidgetMac.mm */,
+ );
+ name = mac;
+ sourceTree = "<group>";
+ };
14DFB33F0A7DF7630018F769 /* Derived Sources */ = {
isa = PBXGroup;
children = (
@@ -11030,6 +11042,7 @@
5DCF83690D59157800953BC6 /* plugins */ = {
isa = PBXGroup;
children = (
+ 0AFDAC3610F5447400E1F3D2 /* mac */,
A9C6E4E10D745E05006442E9 /* MimeType.cpp */,
A9C6E4E20D745E05006442E9 /* MimeType.h */,
A9C6E65E0D7466F2006442E9 /* MimeType.idl */,
@@ -11049,6 +11062,7 @@
5DCF836C0D59159800953BC6 /* PluginInfoStore.h */,
1ADA140E0E1AE5D900023EE5 /* PluginMainThreadScheduler.cpp */,
1ADA140F0E1AE5D900023EE5 /* PluginMainThreadScheduler.h */,
+ 0AFDAC3C10F5448C00E1F3D2 /* PluginWidget.h */,
);
path = plugins;
sourceTree = "<group>";
@@ -18276,6 +18290,7 @@
BC56CB2510D5AC8000A77C64 /* GeolocationPosition.h in Headers */,
08735FB910E91232006D6FAD /* SVGMarkerLayoutInfo.h in Headers */,
08385FF610F0186000BFE07B /* SVGMarkerData.h in Headers */,
+ 0AFDAC3D10F5448C00E1F3D2 /* PluginWidget.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -20433,6 +20448,7 @@
0C45342710CDBBFA00869157 /* JSWebGLUniformLocation.cpp in Sources */,
BC56CB2110D5AC8000A77C64 /* GeolocationController.cpp in Sources */,
08735FB810E91232006D6FAD /* SVGMarkerLayoutInfo.cpp in Sources */,
+ 0AFDAC3B10F5448300E1F3D2 /* PluginWidgetMac.mm in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/WebCore/platform/Widget.h b/WebCore/platform/Widget.h
index 71e2164..1e6d7a7 100644
--- a/WebCore/platform/Widget.h
+++ b/WebCore/platform/Widget.h
@@ -163,6 +163,8 @@ public:
virtual bool isFrameView() const { return false; }
virtual bool isPluginView() const { return false; }
+ // FIXME: The Mac plug-in code should inheirt from PluginView. When this happens PluginWidget and PluginView can become one class.
+ virtual bool isPluginWidget() const { return false; }
virtual bool isScrollbar() const { return false; }
void removeFromParent();
diff --git a/WebCore/plugins/PluginWidget.h b/WebCore/plugins/PluginWidget.h
new file mode 100644
index 0000000..197d8fe
--- /dev/null
+++ b/WebCore/plugins/PluginWidget.h
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2010 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef PluginWidget_h
+#define PluginWidget_h
+
+#include "Widget.h"
+
+namespace WebCore {
+
+// FIXME: The Mac plug-in code should inheirt from PluginView. When
+// this happens PluginWidget and PluginView can become one class.
+class PluginWidget : public Widget {
+public:
+ virtual void invalidateRect(const IntRect&);
+ virtual bool isPluginWidget() const { return true; }
+};
+
+} // namespace WebCore
+
+#endif // PluginWidget_h
diff --git a/WebCore/plugins/mac/PluginWidgetMac.mm b/WebCore/plugins/mac/PluginWidgetMac.mm
new file mode 100644
index 0000000..13d2e23
--- /dev/null
+++ b/WebCore/plugins/mac/PluginWidgetMac.mm
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2010 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "PluginWidget.h"
+
+namespace WebCore {
+
+void PluginWidget::invalidateRect(const IntRect& rect)
+{
+ [platformWidget() setNeedsDisplayInRect:rect];
+}
+
+} // namespace WebCore
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index b45c6a0..c279aa1 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,14 @@
+2010-01-06 Kevin Decker <kdecker at apple.com>
+
+ Reviewed by Eric Carlson.
+
+ First step toward:
+ <rdar://problem/6398111> Integrate hardware layers with out-of-process plug-ins layer hosting mechanism
+
+ Small refactoring moving the PluginWidget class from WebKit to WebCore.
+
+ * WebCoreSupport/WebFrameLoaderClient.mm: Use the WebCore version of PluginWidget.
+
2010-01-05 Dan Bernstein <mitz at apple.com>
Reviewed by Mark Rowe.
diff --git a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
index 9816e01..5934d7c 100644
--- a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
+++ b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
@@ -104,6 +104,7 @@
#import <WebCore/MouseEvent.h>
#import <WebCore/Page.h>
#import <WebCore/PlatformString.h>
+#import <WebCore/PluginWidget.h>
#import <WebCore/ResourceError.h>
#import <WebCore/ResourceHandle.h>
#import <WebCore/ResourceLoader.h>
@@ -1474,19 +1475,6 @@ static NSView *pluginView(WebFrame *frame, WebPluginPackage *pluginPackage,
return view;
}
-class PluginWidget : public Widget {
-public:
- PluginWidget(NSView *view = 0)
- : Widget(view)
- {
- }
-
- virtual void invalidateRect(const IntRect& rect)
- {
- [platformWidget() setNeedsDisplayInRect:rect];
- }
-};
-
#if ENABLE(NETSCAPE_PLUGIN_API)
class NetscapePluginWidget : public PluginWidget {
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list