WebKit Bugzilla
Attachment 359389 Details for
Bug 193539
: Implement asynchronous frame scrolling for iOS
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
wip
frame-scroll-ios-3.patch (text/plain), 21.67 KB, created by
Antti Koivisto
on 2019-01-17 10:44:23 PST
(
hide
)
Description:
wip
Filename:
MIME Type:
Creator:
Antti Koivisto
Created:
2019-01-17 10:44:23 PST
Size:
21.67 KB
patch
obsolete
>Index: Source/WebCore/page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h >=================================================================== >--- Source/WebCore/page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h (revision 240106) >+++ Source/WebCore/page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h (working copy) >@@ -34,9 +34,9 @@ OBJC_CLASS CALayer; > > namespace WebCore { > >-class ScrollingTreeFrameScrollingNodeIOS : public ScrollingTreeFrameScrollingNode { >+class WEBCORE_EXPORT ScrollingTreeFrameScrollingNodeIOS : public ScrollingTreeFrameScrollingNode { > public: >- WEBCORE_EXPORT static Ref<ScrollingTreeFrameScrollingNodeIOS> create(ScrollingTree&, ScrollingNodeType, ScrollingNodeID); >+ static Ref<ScrollingTreeFrameScrollingNodeIOS> create(ScrollingTree&, ScrollingNodeType, ScrollingNodeID); > virtual ~ScrollingTreeFrameScrollingNodeIOS(); > > protected: >@@ -55,15 +55,17 @@ protected: > void updateLayersAfterDelegatedScroll(const FloatPoint&) override; > void updateLayersAfterAncestorChange(const ScrollingTreeNode& changedNode, const FloatRect& fixedPositionRect, const FloatSize& cumulativeDelta) override; > >+ void setScrollPosition(const FloatPoint&) override; > void setScrollLayerPosition(const FloatPoint&, const FloatRect& layoutViewport) override; > > FloatPoint minimumScrollPosition() const override; > FloatPoint maximumScrollPosition() const override; > >-private: >- void updateChildNodesAfterScroll(const FloatPoint&); >+protected: > CALayer *scrollLayer() const { return m_scrollLayer.get(); } >+ void updateChildNodesAfterScroll(const FloatPoint&); > >+private: > RetainPtr<CALayer> m_scrollLayer; > RetainPtr<CALayer> m_counterScrollingLayer; > RetainPtr<CALayer> m_headerLayer; >Index: Source/WebCore/page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm >=================================================================== >--- Source/WebCore/page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm (revision 240106) >+++ Source/WebCore/page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.mm (working copy) >@@ -104,6 +104,11 @@ FloatPoint ScrollingTreeFrameScrollingNo > return -m_scrollLayer.get().position; > } > >+void ScrollingTreeFrameScrollingNodeIOS::setScrollPosition(const FloatPoint& scrollPosition) >+{ >+ ScrollingTreeFrameScrollingNode::setScrollPosition(scrollPosition); >+} >+ > void ScrollingTreeFrameScrollingNodeIOS::setScrollPositionWithoutContentEdgeConstraints(const FloatPoint& scrollPosition) > { > if (shouldUpdateScrollLayerPositionSynchronously()) { >Index: Source/WebCore/rendering/RenderLayerCompositor.cpp >=================================================================== >--- Source/WebCore/rendering/RenderLayerCompositor.cpp (revision 240106) >+++ Source/WebCore/rendering/RenderLayerCompositor.cpp (working copy) >@@ -3405,17 +3405,25 @@ void RenderLayerCompositor::ensureRootLa > m_overflowControlsHostLayer = GraphicsLayer::create(graphicsLayerFactory(), *this); > m_overflowControlsHostLayer->setName("overflow controls host"); > >- // Create a clipping layer if this is an iframe >- m_clipLayer = GraphicsLayer::create(graphicsLayerFactory(), *this); >- m_clipLayer->setName("frame clipping"); >- m_clipLayer->setMasksToBounds(true); >- >- m_scrollLayer = GraphicsLayer::create(graphicsLayerFactory(), *this); >+ auto scrollLayerType = m_renderView.settings().asyncFrameScrollingEnabled() ? GraphicsLayer::Type::Scrolling : GraphicsLayer::Type::Normal; >+ >+ m_scrollLayer = GraphicsLayer::create(graphicsLayerFactory(), *this, scrollLayerType); > m_scrollLayer->setName("frame scrolling"); > >+ if (scrollLayerType == GraphicsLayer::Type::Normal) { >+ m_clipLayer = GraphicsLayer::create(graphicsLayerFactory(), *this); >+ m_clipLayer->setName("frame clipping"); >+ m_clipLayer->setMasksToBounds(true); >+ >+ m_clipLayer->addChild(*m_scrollLayer); >+ } else { >+ // Scroll layer clips. >+ m_clipLayer = m_scrollLayer; >+ } >+ > // Hook them up > m_overflowControlsHostLayer->addChild(*m_clipLayer); >- m_clipLayer->addChild(*m_scrollLayer); >+ > m_scrollLayer->addChild(*m_rootContentLayer); > > m_clipLayer->setSize(m_renderView.frameView().sizeForVisibleContent()); >Index: Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp >=================================================================== >--- Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp (revision 240106) >+++ Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp (working copy) >@@ -34,6 +34,7 @@ > #include <WebCore/ScrollingTreeStickyNode.h> > > #if PLATFORM(IOS_FAMILY) >+#include "ScrollingTreeFrameScrollingNodeRemoteIOS.h" > #include "ScrollingTreeOverflowScrollingNodeIOS.h" > #include <WebCore/ScrollingTreeFrameScrollingNodeIOS.h> > #else >@@ -115,7 +116,7 @@ Ref<ScrollingTreeNode> RemoteScrollingTr > case ScrollingNodeType::MainFrame: > case ScrollingNodeType::Subframe: > #if PLATFORM(IOS_FAMILY) >- return ScrollingTreeFrameScrollingNodeIOS::create(*this, nodeType, nodeID); >+ return ScrollingTreeFrameScrollingNodeRemoteIOS::create(*this, nodeType, nodeID); > #else > return ScrollingTreeFrameScrollingNodeRemoteMac::create(*this, nodeType, nodeID); > #endif >Index: Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm >=================================================================== >--- Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm (revision 240106) >+++ Source/WebKit/UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm (working copy) >@@ -68,6 +68,9 @@ void RemoteScrollingCoordinatorProxy::co > if (scrollingStateNode.hasChangedProperty(ScrollingStateNode::ScrollLayer)) > scrollingStateNode.setLayer(layerTreeHost.layerForID(scrollingStateNode.layer())); > >+ if (scrollingStateNode.hasChangedProperty(ScrollingStateScrollingNode::ScrolledContentsLayer)) >+ scrollingStateNode.setScrolledContentsLayer(layerTreeHost.layerForID(scrollingStateNode.scrolledContentsLayer())); >+ > if (scrollingStateNode.hasChangedProperty(ScrollingStateFrameScrollingNode::CounterScrollingLayer)) > scrollingStateNode.setCounterScrollingLayer(layerTreeHost.layerForID(scrollingStateNode.counterScrollingLayer())); > >Index: Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.h >=================================================================== >--- Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.h (nonexistent) >+++ Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.h (working copy) >@@ -0,0 +1,64 @@ >+/* >+ * Copyright (C) 2019 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. >+ */ >+ >+#pragma once >+ >+#if ENABLE(ASYNC_SCROLLING) && PLATFORM(IOS_FAMILY) >+ >+#include <WebCore/ScrollingTreeFrameScrollingNodeIOS.h> >+ >+namespace WebKit { >+ >+class ScrollingTreeScrollingNodeDelegateIOS; >+ >+class ScrollingTreeFrameScrollingNodeRemoteIOS : public WebCore::ScrollingTreeFrameScrollingNodeIOS { >+public: >+ static Ref<ScrollingTreeFrameScrollingNodeRemoteIOS> create(WebCore::ScrollingTree&, WebCore::ScrollingNodeType, WebCore::ScrollingNodeID); >+ virtual ~ScrollingTreeFrameScrollingNodeRemoteIOS(); >+ >+private: >+ ScrollingTreeFrameScrollingNodeRemoteIOS(WebCore::ScrollingTree&, WebCore::ScrollingNodeType, WebCore::ScrollingNodeID); >+ >+ void commitStateBeforeChildren(const WebCore::ScrollingStateNode&) override; >+ void commitStateAfterChildren(const WebCore::ScrollingStateNode&) override; >+ >+ WebCore::FloatPoint scrollPosition() const override; >+ >+ void setScrollLayerPosition(const WebCore::FloatPoint&, const WebCore::FloatRect& layoutViewport) override; >+// void setScrollPositionWithoutContentEdgeConstraints(const WebCore::FloatPoint&) override; >+ >+ void updateLayersAfterViewportChange(const WebCore::FloatRect& fixedPositionRect, double scale) override { } >+ void updateLayersAfterDelegatedScroll(const WebCore::FloatPoint& scrollPosition) override; >+ >+ void updateLayersAfterAncestorChange(const WebCore::ScrollingTreeNode& changedNode, const WebCore::FloatRect& fixedPositionRect, const WebCore::FloatSize& cumulativeDelta) override; >+ >+ void handleWheelEvent(const WebCore::PlatformWheelEvent&) override { } >+ >+ std::unique_ptr<ScrollingTreeScrollingNodeDelegateIOS> m_scrollingNodeDelegate; >+}; >+ >+} // namespace WebKit >+ >+#endif // ENABLE(ASYNC_SCROLLING) && PLATFORM(IOS_FAMILY) >Index: Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.mm >=================================================================== >--- Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.mm (nonexistent) >+++ Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeFrameScrollingNodeRemoteIOS.mm (working copy) >@@ -0,0 +1,114 @@ >+/* >+ * Copyright (C) 2019 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. >+ */ >+ >+#import "config.h" >+#import "ScrollingTreeFrameScrollingNodeRemoteIOS.h" >+ >+#if PLATFORM(IOS_FAMILY) >+#if ENABLE(ASYNC_SCROLLING) >+ >+#import "ScrollingTreeScrollingNodeDelegateIOS.h" >+#import <WebCore/ScrollingStateScrollingNode.h> >+ >+namespace WebKit { >+using namespace WebCore; >+ >+Ref<ScrollingTreeFrameScrollingNodeRemoteIOS> ScrollingTreeFrameScrollingNodeRemoteIOS::create(WebCore::ScrollingTree& scrollingTree, WebCore::ScrollingNodeType nodeType, WebCore::ScrollingNodeID nodeID) >+{ >+ return adoptRef(*new ScrollingTreeFrameScrollingNodeRemoteIOS(scrollingTree, nodeType, nodeID)); >+} >+ >+ScrollingTreeFrameScrollingNodeRemoteIOS::ScrollingTreeFrameScrollingNodeRemoteIOS(WebCore::ScrollingTree& scrollingTree, WebCore::ScrollingNodeType nodeType, WebCore::ScrollingNodeID nodeID) >+ : ScrollingTreeFrameScrollingNodeIOS(scrollingTree, nodeType, nodeID) >+ , m_scrollingNodeDelegate(nullptr) >+{ >+} >+ >+ScrollingTreeFrameScrollingNodeRemoteIOS::~ScrollingTreeFrameScrollingNodeRemoteIOS() >+{ >+} >+ >+void ScrollingTreeFrameScrollingNodeRemoteIOS::commitStateBeforeChildren(const WebCore::ScrollingStateNode& stateNode) >+{ >+ ScrollingTreeFrameScrollingNodeIOS::commitStateBeforeChildren(stateNode); >+ >+ if (stateNode.hasChangedProperty(ScrollingStateScrollingNode::ScrollLayer)) { >+ if (scrollLayer() && [[scrollLayer() delegate] isKindOfClass:[UIScrollView self]]) >+ m_scrollingNodeDelegate = std::make_unique<ScrollingTreeScrollingNodeDelegateIOS>(*this); >+ else >+ m_scrollingNodeDelegate = nullptr; >+ } >+ >+ if (m_scrollingNodeDelegate) >+ m_scrollingNodeDelegate->commitStateBeforeChildren(downcast<ScrollingStateScrollingNode>(stateNode)); >+} >+ >+void ScrollingTreeFrameScrollingNodeRemoteIOS::commitStateAfterChildren(const ScrollingStateNode& stateNode) >+{ >+ ScrollingTreeFrameScrollingNodeIOS::commitStateAfterChildren(stateNode); >+ >+ if (m_scrollingNodeDelegate) >+ m_scrollingNodeDelegate->commitStateAfterChildren(downcast<ScrollingStateScrollingNode>(stateNode)); >+} >+ >+void ScrollingTreeFrameScrollingNodeRemoteIOS::updateLayersAfterAncestorChange(const ScrollingTreeNode& changedNode, const FloatRect& fixedPositionRect, const FloatSize& cumulativeDelta) >+{ >+ if (m_scrollingNodeDelegate) { >+ m_scrollingNodeDelegate->updateLayersAfterAncestorChange(changedNode, fixedPositionRect, cumulativeDelta); >+ return; >+ } >+ ScrollingTreeFrameScrollingNodeIOS::updateLayersAfterAncestorChange(changedNode, fixedPositionRect, cumulativeDelta); >+} >+ >+FloatPoint ScrollingTreeFrameScrollingNodeRemoteIOS::scrollPosition() const >+{ >+ if (m_scrollingNodeDelegate) >+ return m_scrollingNodeDelegate->scrollPosition(); >+ >+ return ScrollingTreeFrameScrollingNodeIOS::scrollPosition(); >+} >+ >+void ScrollingTreeFrameScrollingNodeRemoteIOS::setScrollLayerPosition(const FloatPoint& scrollPosition, const FloatRect& layoutViewport) >+{ >+ if (m_scrollingNodeDelegate) { >+ m_scrollingNodeDelegate->setScrollLayerPosition(scrollPosition); >+ return; >+ } >+ ScrollingTreeFrameScrollingNodeIOS::setScrollLayerPosition(scrollPosition, layoutViewport); >+} >+ >+void ScrollingTreeFrameScrollingNodeRemoteIOS::updateLayersAfterDelegatedScroll(const FloatPoint& scrollPosition) >+{ >+ if (m_scrollingNodeDelegate) { >+ m_scrollingNodeDelegate->updateChildNodesAfterScroll(scrollPosition); >+ return; >+ } >+ ScrollingTreeFrameScrollingNodeIOS::updateLayersAfterDelegatedScroll(scrollPosition); >+} >+ >+} >+ >+#endif >+#endif >Index: Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm >=================================================================== >--- Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm (revision 240106) >+++ Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm (working copy) >@@ -161,6 +161,9 @@ void ScrollingTreeScrollingNodeDelegateI > > void ScrollingTreeScrollingNodeDelegateIOS::commitStateAfterChildren(const ScrollingStateScrollingNode& scrollingStateNode) > { >+ if (!scrollLayer()) >+ return; >+ > SetForScope<bool> updatingChange(m_updatingFromStateNode, true); > if (scrollingStateNode.hasChangedProperty(ScrollingStateScrollingNode::ScrollLayer) > || scrollingStateNode.hasChangedProperty(ScrollingStateScrollingNode::TotalContentsSize) >Index: Source/WebKit/WebKit.xcodeproj/project.pbxproj >=================================================================== >--- Source/WebKit/WebKit.xcodeproj/project.pbxproj (revision 240106) >+++ Source/WebKit/WebKit.xcodeproj/project.pbxproj (working copy) >@@ -1585,6 +1585,8 @@ > E1D26A53175964D90095BFD1 /* WebContentProcess.xib in Resources */ = {isa = PBXBuildFile; fileRef = E1D26A4C1759634E0095BFD1 /* WebContentProcess.xib */; }; > E1E552C516AE065F004ED653 /* SandboxInitializationParameters.h in Headers */ = {isa = PBXBuildFile; fileRef = E1E552C316AE065E004ED653 /* SandboxInitializationParameters.h */; }; > E1EE53E311F8CFC000CCBEE4 /* InjectedBundlePageEditorClient.h in Headers */ = {isa = PBXBuildFile; fileRef = E1EE53DC11F8CF9F00CCBEE4 /* InjectedBundlePageEditorClient.h */; }; >+ E40C1F9421F0B96E00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = E40C1F9321F0B96E00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.h */; }; >+ E40C1F9621F0B97F00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = E40C1F9521F0B97F00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.mm */; }; > E413F59D1AC1ADC400345360 /* NetworkCacheEntry.h in Headers */ = {isa = PBXBuildFile; fileRef = E413F59B1AC1ADB600345360 /* NetworkCacheEntry.h */; }; > E42E06101AA7523B00B11699 /* NetworkCacheIOChannel.h in Headers */ = {isa = PBXBuildFile; fileRef = E42E060B1AA7440D00B11699 /* NetworkCacheIOChannel.h */; }; > E42E06121AA75ABD00B11699 /* NetworkCacheData.h in Headers */ = {isa = PBXBuildFile; fileRef = E42E06111AA75ABD00B11699 /* NetworkCacheData.h */; }; >@@ -4441,6 +4443,8 @@ > E404907321DE65F70037F0DB /* ScrollingTreeFrameScrollingNodeRemoteMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollingTreeFrameScrollingNodeRemoteMac.h; sourceTree = "<group>"; }; > E404907421DE65F70037F0DB /* ScrollerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollerMac.mm; sourceTree = "<group>"; }; > E404907521DE65F70037F0DB /* ScrollerMac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollerMac.h; sourceTree = "<group>"; }; >+ E40C1F9321F0B96E00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScrollingTreeFrameScrollingNodeRemoteIOS.h; sourceTree = "<group>"; }; >+ E40C1F9521F0B97F00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollingTreeFrameScrollingNodeRemoteIOS.mm; sourceTree = "<group>"; }; > E413F59B1AC1ADB600345360 /* NetworkCacheEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkCacheEntry.h; sourceTree = "<group>"; }; > E413F59E1AC1AF9D00345360 /* NetworkCacheEntry.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NetworkCacheEntry.cpp; sourceTree = "<group>"; }; > E42E060B1AA7440D00B11699 /* NetworkCacheIOChannel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkCacheIOChannel.h; sourceTree = "<group>"; }; >@@ -4844,7 +4848,6 @@ > 1A53C2A51A32569F004E8C70 /* WebsiteDataStore.h */, > 5C46C0AC21B7198B00BC5991 /* WebsiteDataStoreConfiguration.cpp */, > 5C46C0AD21B7198C00BC5991 /* WebsiteDataStoreConfiguration.h */, >- 4118DC1B21E6D11A00DE04C7 /* WebsiteDataStoreQuotaManager.h */, > ); > path = WebsiteData; > sourceTree = "<group>"; >@@ -5513,6 +5516,8 @@ > 2DC18FB1218A6E9E0025A88D /* RemoteLayerTreeViews.h */, > 2DC18FB2218A6E9E0025A88D /* RemoteLayerTreeViews.mm */, > 0F0C365B18C05CA100F607D7 /* RemoteScrollingCoordinatorProxyIOS.mm */, >+ E40C1F9321F0B96E00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.h */, >+ E40C1F9521F0B97F00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.mm */, > 0F931C1A18C5711900DBA7C3 /* ScrollingTreeOverflowScrollingNodeIOS.h */, > 0F931C1B18C5711900DBA7C3 /* ScrollingTreeOverflowScrollingNodeIOS.mm */, > 0F931C1A18C5711900DBB8D4 /* ScrollingTreeScrollingNodeDelegateIOS.h */, >@@ -9274,6 +9279,7 @@ > 1A24BED5120894D100FBB059 /* SharedMemory.h in Headers */, > CD4B4D9D1E765E0000D27092 /* SharedRingBufferStorage.h in Headers */, > 8313F7EC1F7DAE0800B944EB /* SharedStringHashStore.h in Headers */, >+ E40C1F9421F0B96E00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.h in Headers */, > 8313F7EE1F7DAE0800B944EB /* SharedStringHashTable.h in Headers */, > 83F9644E1FA0F76E00C47750 /* SharedStringHashTableReadOnly.h in Headers */, > 1D67B339212E1F6100FAA786 /* ShareSheetCallbackID.h in Headers */, >@@ -9830,7 +9836,6 @@ > 1DB01943211CF002009FB3E8 /* WKShareSheet.h in Headers */, > 513E462D1AD837560016234A /* WKSharingServicePickerDelegate.h in Headers */, > 93F549B41E3174B7000E7239 /* WKSnapshotConfiguration.h in Headers */, >- 4118DC1F21E7BF5D00DE04C7 /* WKStorageQuotaDelegatePrivate.h in Headers */, > BC407606124FF0270068F20A /* WKString.h in Headers */, > BC40761A124FF0370068F20A /* WKStringCF.h in Headers */, > BC9099801256A98200083756 /* WKStringPrivate.h in Headers */, >@@ -10791,6 +10796,7 @@ > 2D11B7672126A282006F8878 /* UnifiedSource12-mm.mm in Sources */, > 2D11B7682126A282006F8878 /* UnifiedSource12.cpp in Sources */, > 2D11B7692126A282006F8878 /* UnifiedSource13-mm.mm in Sources */, >+ E40C1F9621F0B97F00530718 /* ScrollingTreeFrameScrollingNodeRemoteIOS.mm in Sources */, > 2D11B76A2126A282006F8878 /* UnifiedSource13.cpp in Sources */, > 2D11B76B2126A282006F8878 /* UnifiedSource14-mm.mm in Sources */, > 2D11B76C2126A282006F8878 /* UnifiedSource14.cpp in Sources */,
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193539
:
359389
|
359465
|
359466
|
359474
|
359475
|
359476
|
359478
|
359513
|
359514