Title: [174400] trunk/Source
Revision
174400
Author
cdu...@apple.com
Date
2014-10-07 11:41:49 -0700 (Tue, 07 Oct 2014)

Log Message

[WK2] Use is<>() / downcast<>() for DrawingAreaProxy subclasses
https://bugs.webkit.org/show_bug.cgi?id=137477

Reviewed by Andreas Kling.

Source/WebCore:

Include TypeCastsCF.h now that the header was renamed.

No new tests, no behavior change.

* platform/cf/SharedBufferCF.cpp:

Source/WebKit2:

Use is<>() / downcast<>() for DrawingAreaProxy subclasses.

* Shared/cf/KeyedDecoder.cpp:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLoadForMainFrame]):
(-[WKWebView _restorePageStateToExposedRect:scale:]):
(-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
* UIProcess/Cocoa/WebPageProxyCocoa.mm:
* UIProcess/DrawingAreaProxy.h:
* UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::updateVisibleContentRects):
(WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
* UIProcess/mac/LegacySessionStateCoding.cpp:
* UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
* UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:

Source/WTF:

Rename wtf/cf/TypeCasts.h to wtf/cf/TypeCastsCF.h to avoid conflict
with wtf/TypeCasts.h. They were using the same #ifndef guard and it
was causing problems when both were included in the same context.

* WTF.xcodeproj/project.pbxproj:
* wtf/cf/TypeCastsCF.h: Renamed from Source/WTF/wtf/cf/TypeCasts.h.
(WTF::dynamic_cf_cast):
(WTF::checked_cf_cast):

Modified Paths

Added Paths

Removed Paths

Diff

Modified: trunk/Source/WTF/ChangeLog (174399 => 174400)


--- trunk/Source/WTF/ChangeLog	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WTF/ChangeLog	2014-10-07 18:41:49 UTC (rev 174400)
@@ -1,3 +1,19 @@
+2014-10-07  Christophe Dumez  <cdu...@apple.com>
+
+        [WK2] Use is<>() / downcast<>() for DrawingAreaProxy subclasses
+        https://bugs.webkit.org/show_bug.cgi?id=137477
+
+        Reviewed by Andreas Kling.
+
+        Rename wtf/cf/TypeCasts.h to wtf/cf/TypeCastsCF.h to avoid conflict
+        with wtf/TypeCasts.h. They were using the same #ifndef guard and it
+        was causing problems when both were included in the same context.
+
+        * WTF.xcodeproj/project.pbxproj:
+        * wtf/cf/TypeCastsCF.h: Renamed from Source/WTF/wtf/cf/TypeCasts.h.
+        (WTF::dynamic_cf_cast):
+        (WTF::checked_cf_cast):
+
 2014-10-07  Anders Carlsson  <ander...@apple.com>
 
         Try to fix the Mountain Lion build.

Modified: trunk/Source/WTF/WTF.xcodeproj/project.pbxproj (174399 => 174400)


--- trunk/Source/WTF/WTF.xcodeproj/project.pbxproj	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WTF/WTF.xcodeproj/project.pbxproj	2014-10-07 18:41:49 UTC (rev 174400)
@@ -62,7 +62,7 @@
 		1A6BB769162F300500DD16DB /* StreamBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A6BB768162F300500DD16DB /* StreamBuffer.h */; };
 		1A6EB1E0187D0BD30030126F /* StringView.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A6EB1DF187D0BD30030126F /* StringView.h */; };
 		1ACADD841884480100D8B71D /* DeprecatedSymbolsUsedBySafari.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1ACADD821884480100D8B71D /* DeprecatedSymbolsUsedBySafari.mm */; };
-		1AFDE648195201C300C48FFA /* TypeCasts.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AFDE647195201C300C48FFA /* TypeCasts.h */; };
+		1AFDE648195201C300C48FFA /* TypeCastsCF.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AFDE647195201C300C48FFA /* TypeCastsCF.h */; };
 		1AFDE6531953B23D00C48FFA /* Optional.h in Headers */ = {isa = PBXBuildFile; fileRef = 1AFDE6521953B23D00C48FFA /* Optional.h */; };
 		1FA47C8A152502DA00568D1B /* WebCoreThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1FA47C88152502DA00568D1B /* WebCoreThread.cpp */; };
 		1FA47C8B152502DA00568D1B /* WebCoreThread.h in Headers */ = {isa = PBXBuildFile; fileRef = 1FA47C89152502DA00568D1B /* WebCoreThread.h */; };
@@ -347,7 +347,7 @@
 		1A6BB768162F300500DD16DB /* StreamBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StreamBuffer.h; sourceTree = "<group>"; };
 		1A6EB1DF187D0BD30030126F /* StringView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringView.h; sourceTree = "<group>"; };
 		1ACADD821884480100D8B71D /* DeprecatedSymbolsUsedBySafari.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DeprecatedSymbolsUsedBySafari.mm; sourceTree = "<group>"; };
-		1AFDE647195201C300C48FFA /* TypeCasts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeCasts.h; sourceTree = "<group>"; };
+		1AFDE647195201C300C48FFA /* TypeCastsCF.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeCastsCF.h; sourceTree = "<group>"; };
 		1AFDE6521953B23D00C48FFA /* Optional.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Optional.h; sourceTree = "<group>"; };
 		1FA47C88152502DA00568D1B /* WebCoreThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebCoreThread.cpp; sourceTree = "<group>"; };
 		1FA47C89152502DA00568D1B /* WebCoreThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebCoreThread.h; sourceTree = "<group>"; };
@@ -620,7 +620,7 @@
 			isa = PBXGroup;
 			children = (
 				2CDED0EE18115C38004DBA70 /* RunLoopCF.cpp */,
-				1AFDE647195201C300C48FFA /* TypeCasts.h */,
+				1AFDE647195201C300C48FFA /* TypeCastsCF.h */,
 			);
 			path = cf;
 			sourceTree = "<group>";
@@ -1164,7 +1164,7 @@
 				A8A4741F151A825B004123FF /* SegmentedVector.h in Headers */,
 				A8A47420151A825B004123FF /* SentinelLinkedList.h in Headers */,
 				A8A47422151A825B004123FF /* SHA1.h in Headers */,
-				1AFDE648195201C300C48FFA /* TypeCasts.h in Headers */,
+				1AFDE648195201C300C48FFA /* TypeCastsCF.h in Headers */,
 				A8A47423151A825B004123FF /* SimpleStats.h in Headers */,
 				A8A47424151A825B004123FF /* SinglyLinkedList.h in Headers */,
 				A748745317A0BDAE00FA04CB /* SixCharacterHash.h in Headers */,

Deleted: trunk/Source/WTF/wtf/cf/TypeCasts.h (174399 => 174400)


--- trunk/Source/WTF/wtf/cf/TypeCasts.h	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WTF/wtf/cf/TypeCasts.h	2014-10-07 18:41:49 UTC (rev 174400)
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2014 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 TypeCasts_h
-#define TypeCasts_h
-
-#include <CoreFoundation/CoreFoundation.h>
-#include <wtf/Assertions.h>
-
-namespace WTF {
-
-template <typename> struct CFTypeTrait;
-
-#define DECLARE_CF_TYPE_TRAIT(ClassName) \
-template <> \
-struct CFTypeTrait<ClassName##Ref> { \
-    static inline CFTypeID typeID() { return ClassName##GetTypeID(); } \
-};
-
-DECLARE_CF_TYPE_TRAIT(CFArray);
-DECLARE_CF_TYPE_TRAIT(CFBoolean);
-DECLARE_CF_TYPE_TRAIT(CFData);
-DECLARE_CF_TYPE_TRAIT(CFDictionary);
-DECLARE_CF_TYPE_TRAIT(CFNumber);
-DECLARE_CF_TYPE_TRAIT(CFString);
-
-#undef DECLARE_CF_TYPE_TRAIT
-
-template<typename T> T dynamic_cf_cast(CFTypeRef object)
-{
-    if (!object)
-        return nullptr;
-
-    if (CFGetTypeID(object) != CFTypeTrait<T>::typeID())
-        return nullptr;
-
-    return static_cast<T>(object);
-}
-
-template<typename T> T checked_cf_cast(CFTypeRef object)
-{
-    auto result = dynamic_cf_cast<T>(object);
-    ASSERT_WITH_SECURITY_IMPLICATION(result);
-
-    return result;
-}
-
-} // namespace WTF
-
-using WTF::checked_cf_cast;
-using WTF::dynamic_cf_cast;
-
-#endif // TypeCasts_h

Copied: trunk/Source/WTF/wtf/cf/TypeCastsCF.h (from rev 174399, trunk/Source/WTF/wtf/cf/TypeCasts.h) (0 => 174400)


--- trunk/Source/WTF/wtf/cf/TypeCastsCF.h	                        (rev 0)
+++ trunk/Source/WTF/wtf/cf/TypeCastsCF.h	2014-10-07 18:41:49 UTC (rev 174400)
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2014 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 TypeCastsCF_h
+#define TypeCastsCF_h
+
+#include <CoreFoundation/CoreFoundation.h>
+#include <wtf/Assertions.h>
+
+namespace WTF {
+
+template <typename> struct CFTypeTrait;
+
+#define DECLARE_CF_TYPE_TRAIT(ClassName) \
+template <> \
+struct CFTypeTrait<ClassName##Ref> { \
+    static inline CFTypeID typeID() { return ClassName##GetTypeID(); } \
+};
+
+DECLARE_CF_TYPE_TRAIT(CFArray);
+DECLARE_CF_TYPE_TRAIT(CFBoolean);
+DECLARE_CF_TYPE_TRAIT(CFData);
+DECLARE_CF_TYPE_TRAIT(CFDictionary);
+DECLARE_CF_TYPE_TRAIT(CFNumber);
+DECLARE_CF_TYPE_TRAIT(CFString);
+
+#undef DECLARE_CF_TYPE_TRAIT
+
+template<typename T> T dynamic_cf_cast(CFTypeRef object)
+{
+    if (!object)
+        return nullptr;
+
+    if (CFGetTypeID(object) != CFTypeTrait<T>::typeID())
+        return nullptr;
+
+    return static_cast<T>(object);
+}
+
+template<typename T> T checked_cf_cast(CFTypeRef object)
+{
+    auto result = dynamic_cf_cast<T>(object);
+    ASSERT_WITH_SECURITY_IMPLICATION(result);
+
+    return result;
+}
+
+} // namespace WTF
+
+using WTF::checked_cf_cast;
+using WTF::dynamic_cf_cast;
+
+#endif // TypeCastsCF_h

Modified: trunk/Source/WebCore/ChangeLog (174399 => 174400)


--- trunk/Source/WebCore/ChangeLog	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebCore/ChangeLog	2014-10-07 18:41:49 UTC (rev 174400)
@@ -1,3 +1,16 @@
+2014-10-07  Christophe Dumez  <cdu...@apple.com>
+
+        [WK2] Use is<>() / downcast<>() for DrawingAreaProxy subclasses
+        https://bugs.webkit.org/show_bug.cgi?id=137477
+
+        Reviewed by Andreas Kling.
+
+        Include TypeCastsCF.h now that the header was renamed.
+
+        No new tests, no behavior change.
+
+        * platform/cf/SharedBufferCF.cpp:
+
 2014-10-07  Carlos Garcia Campos  <cgar...@igalia.com>
 
         [SOUP] TLS errors should take precedence over HTTP authentication

Modified: trunk/Source/WebCore/platform/cf/SharedBufferCF.cpp (174399 => 174400)


--- trunk/Source/WebCore/platform/cf/SharedBufferCF.cpp	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebCore/platform/cf/SharedBufferCF.cpp	2014-10-07 18:41:49 UTC (rev 174400)
@@ -28,7 +28,7 @@
 #include "config.h"
 #include "SharedBuffer.h"
 
-#include <wtf/cf/TypeCasts.h>
+#include <wtf/cf/TypeCastsCF.h>
 
 namespace WebCore {
 

Modified: trunk/Source/WebKit2/ChangeLog (174399 => 174400)


--- trunk/Source/WebKit2/ChangeLog	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/ChangeLog	2014-10-07 18:41:49 UTC (rev 174400)
@@ -1,3 +1,30 @@
+2014-10-07  Christophe Dumez  <cdu...@apple.com>
+
+        [WK2] Use is<>() / downcast<>() for DrawingAreaProxy subclasses
+        https://bugs.webkit.org/show_bug.cgi?id=137477
+
+        Reviewed by Andreas Kling.
+
+        Use is<>() / downcast<>() for DrawingAreaProxy subclasses.
+
+        * Shared/cf/KeyedDecoder.cpp:
+        * UIProcess/API/Cocoa/WKWebView.mm:
+        (-[WKWebView _didCommitLoadForMainFrame]):
+        (-[WKWebView _restorePageStateToExposedRect:scale:]):
+        (-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
+        * UIProcess/Cocoa/WebPageProxyCocoa.mm:
+        * UIProcess/DrawingAreaProxy.h:
+        * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
+        (WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):
+        * UIProcess/ios/WebPageProxyIOS.mm:
+        (WebKit::WebPageProxy::updateVisibleContentRects):
+        (WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):
+        * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
+        (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
+        * UIProcess/mac/LegacySessionStateCoding.cpp:
+        * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
+        * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
+
 2014-10-06  Vivek Galatage  <vivek...@samsung.com>
 
         Remove unused warning in WebPageOverlay

Modified: trunk/Source/WebKit2/Shared/cf/KeyedDecoder.cpp (174399 => 174400)


--- trunk/Source/WebKit2/Shared/cf/KeyedDecoder.cpp	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/Shared/cf/KeyedDecoder.cpp	2014-10-07 18:41:49 UTC (rev 174400)
@@ -26,7 +26,7 @@
 #include "config.h"
 #include "KeyedDecoder.h"
 
-#include <wtf/cf/TypeCasts.h>
+#include <wtf/cf/TypeCastsCF.h>
 #include <wtf/text/WTFString.h>
 
 namespace WebKit {

Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm	2014-10-07 18:41:49 UTC (rev 174400)
@@ -799,7 +799,7 @@
 
 - (void)_didCommitLoadForMainFrame
 {
-    _firstPaintAfterCommitLoadTransactionID = toRemoteLayerTreeDrawingAreaProxy(_page->drawingArea())->nextLayerTreeTransactionID();
+    _firstPaintAfterCommitLoadTransactionID = downcast<RemoteLayerTreeDrawingAreaProxy>(*_page->drawingArea()).nextLayerTreeTransactionID();
 
     _hasCommittedLoadForMainFrame = YES;
     _needsResetViewStateAfterCommitLoadForMainFrame = YES;
@@ -935,7 +935,7 @@
 
     _needsToRestoreUnobscuredCenter = NO;
     _needsToRestoreExposedRect = YES;
-    _firstTransactionIDAfterPageRestore = toRemoteLayerTreeDrawingAreaProxy(_page->drawingArea())->nextLayerTreeTransactionID();
+    _firstTransactionIDAfterPageRestore = downcast<RemoteLayerTreeDrawingAreaProxy>(*_page->drawingArea()).nextLayerTreeTransactionID();
     _exposedRectToRestore = exposedRect;
     _scaleToRestore = scale;
 }
@@ -950,7 +950,7 @@
 
     _needsToRestoreExposedRect = NO;
     _needsToRestoreUnobscuredCenter = YES;
-    _firstTransactionIDAfterPageRestore = toRemoteLayerTreeDrawingAreaProxy(_page->drawingArea())->nextLayerTreeTransactionID();
+    _firstTransactionIDAfterPageRestore = downcast<RemoteLayerTreeDrawingAreaProxy>(*_page->drawingArea()).nextLayerTreeTransactionID();
     _unobscuredCenterToRestore = center;
     _scaleToRestore = scale;
 }

Modified: trunk/Source/WebKit2/UIProcess/Cocoa/WebPageProxyCocoa.mm (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/Cocoa/WebPageProxyCocoa.mm	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/WebPageProxyCocoa.mm	2014-10-07 18:41:49 UTC (rev 174400)
@@ -26,7 +26,7 @@
 #import "config.h"
 #import "WebProcessProxy.h"
 
-#import <wtf/cf/TypeCasts.h>
+#import <wtf/cf/TypeCastsCF.h>
 
 namespace WebKit {
 

Modified: trunk/Source/WebKit2/UIProcess/DrawingAreaProxy.h (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/DrawingAreaProxy.h	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/DrawingAreaProxy.h	2014-10-07 18:41:49 UTC (rev 174400)
@@ -37,6 +37,7 @@
 #include <stdint.h>
 #include <wtf/Noncopyable.h>
 #include <wtf/RunLoop.h>
+#include <wtf/TypeCasts.h>
 
 namespace WebKit {
 
@@ -125,9 +126,11 @@
 #endif
 };
 
-#define DRAWING_AREA_PROXY_TYPE_CASTS(ToValueTypeName, predicate) \
-    TYPE_CASTS_BASE(ToValueTypeName, DrawingAreaProxy, value, value->predicate, value.predicate)
-
 } // namespace WebKit
 
+#define SPECIALIZE_TYPE_TRAITS_DRAWING_AREA_PROXY(ToValueTypeName, ProxyType) \
+SPECIALIZE_TYPE_TRAITS_BEGIN(WebKit::ToValueTypeName) \
+    static bool isType(const WebKit::DrawingAreaProxy& proxy) { return proxy.type() == WebKit::ProxyType; } \
+SPECIALIZE_TYPE_TRAITS_END()
+
 #endif // DrawingAreaProxy_h

Modified: trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp	2014-10-07 18:41:49 UTC (rev 174400)
@@ -69,13 +69,13 @@
 const RemoteLayerTreeHost* RemoteScrollingCoordinatorProxy::layerTreeHost() const
 {
     DrawingAreaProxy* drawingArea = m_webPageProxy.drawingArea();
-    if (!drawingArea || drawingArea->type() != DrawingAreaTypeRemoteLayerTree) {
+    if (!is<RemoteLayerTreeDrawingAreaProxy>(drawingArea)) {
         ASSERT_NOT_REACHED();
         return nullptr;
     }
 
-    RemoteLayerTreeDrawingAreaProxy* remoteDrawingArea = toRemoteLayerTreeDrawingAreaProxy(drawingArea);
-    return &remoteDrawingArea->remoteLayerTreeHost();
+    RemoteLayerTreeDrawingAreaProxy& remoteDrawingArea = downcast<RemoteLayerTreeDrawingAreaProxy>(*drawingArea);
+    return &remoteDrawingArea.remoteLayerTreeHost();
 }
 
 void RemoteScrollingCoordinatorProxy::updateScrollingTree(const RemoteScrollingCoordinatorTransaction& transaction, RequestedScrollInfo& requestedScrollInfo)

Modified: trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/ios/WebPageProxyIOS.mm	2014-10-07 18:41:49 UTC (rev 174400)
@@ -184,7 +184,7 @@
     if (!isValid())
         return;
 
-    VisibleContentRectUpdateInfo visibleContentRectUpdateInfo(exposedRect, unobscuredRect, unobscuredRectInScrollViewCoordinates, customFixedPositionRect, scale, inStableState, isChangingObscuredInsetsInteractively, timestamp, horizontalVelocity, verticalVelocity, scaleChangeRate, toRemoteLayerTreeDrawingAreaProxy(drawingArea())->lastCommittedLayerTreeTransactionID());
+    VisibleContentRectUpdateInfo visibleContentRectUpdateInfo(exposedRect, unobscuredRect, unobscuredRectInScrollViewCoordinates, customFixedPositionRect, scale, inStableState, isChangingObscuredInsetsInteractively, timestamp, horizontalVelocity, verticalVelocity, scaleChangeRate, downcast<RemoteLayerTreeDrawingAreaProxy>(*drawingArea()).lastCommittedLayerTreeTransactionID());
 
     if (visibleContentRectUpdateInfo == m_lastVisibleContentRectUpdate)
         return;
@@ -662,7 +662,7 @@
 void WebPageProxy::dynamicViewportUpdateChangedTarget(double newScale, const WebCore::FloatPoint& newScrollPosition)
 {
     if (m_dynamicViewportSizeUpdateWaitingForTarget) {
-        m_dynamicViewportSizeUpdateLayerTreeTransactionID = toRemoteLayerTreeDrawingAreaProxy(drawingArea())->nextLayerTreeTransactionID();
+        m_dynamicViewportSizeUpdateLayerTreeTransactionID = downcast<RemoteLayerTreeDrawingAreaProxy>(*drawingArea()).nextLayerTreeTransactionID();
         m_dynamicViewportSizeUpdateWaitingForTarget = false;
         m_pageClient.dynamicViewportUpdateChangedTarget(newScale, newScrollPosition, m_dynamicViewportSizeUpdateLayerTreeTransactionID);
     }

Modified: trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm	2014-10-07 18:41:49 UTC (rev 174400)
@@ -91,7 +91,7 @@
         [m_layerHost setTransform:CATransform3DMakeScale(inverseScale, inverseScale, 1)];
     }
 
-    UIView *parentView = toRemoteLayerTreeDrawingAreaProxy(m_page->drawingArea())->remoteLayerTreeHost().rootLayer();
+    UIView *parentView = downcast<RemoteLayerTreeDrawingAreaProxy>(*m_page->drawingArea()).remoteLayerTreeHost().rootLayer();
     setupFullscreen(*m_layerHost.get(), initialRect, parentView);
 }
     

Modified: trunk/Source/WebKit2/UIProcess/mac/LegacySessionStateCoding.cpp (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/mac/LegacySessionStateCoding.cpp	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/mac/LegacySessionStateCoding.cpp	2014-10-07 18:41:49 UTC (rev 174400)
@@ -30,7 +30,7 @@
 #include "SessionState.h"
 #include <mutex>
 #include <wtf/MallocPtr.h>
-#include <wtf/cf/TypeCasts.h>
+#include <wtf/cf/TypeCastsCF.h>
 #include <wtf/text/StringView.h>
 
 namespace WebKit {

Modified: trunk/Source/WebKit2/UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h	2014-10-07 18:41:49 UTC (rev 174400)
@@ -108,8 +108,8 @@
     RetainPtr<OneShotDisplayLinkHandler> m_displayLinkHandler;
 };
 
-DRAWING_AREA_PROXY_TYPE_CASTS(RemoteLayerTreeDrawingAreaProxy, type() == DrawingAreaTypeRemoteLayerTree);
-
 } // namespace WebKit
 
+SPECIALIZE_TYPE_TRAITS_DRAWING_AREA_PROXY(RemoteLayerTreeDrawingAreaProxy, DrawingAreaTypeRemoteLayerTree)
+
 #endif // RemoteLayerTreeDrawingAreaProxy_h

Modified: trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h (174399 => 174400)


--- trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h	2014-10-07 17:15:40 UTC (rev 174399)
+++ trunk/Source/WebKit2/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h	2014-10-07 18:41:49 UTC (rev 174400)
@@ -71,10 +71,10 @@
     WebCore::IntSize m_lastSentMinimumLayoutSize;
 };
 
-DRAWING_AREA_PROXY_TYPE_CASTS(TiledCoreAnimationDrawingAreaProxy, type() == DrawingAreaTypeTiledCoreAnimation);
-
 } // namespace WebKit
 
+SPECIALIZE_TYPE_TRAITS_DRAWING_AREA_PROXY(TiledCoreAnimationDrawingAreaProxy, DrawingAreaTypeTiledCoreAnimation)
+
 #endif // !PLATFORM(IOS)
 
 #endif // TiledCoreAnimationDrawingAreaProxy_h
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to