⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 284685 in webkit


Ignore:
Timestamp:
Oct 22, 2021, 9:04:32 AM (5 years ago)
Author:
Ayumi Kojima
Message:

Unreviewed, reverting r284654.

Reverting because this commit caused scrolling tests to fail

Reverted changeset:

"Content offset in this codepen when switching tabs"
https://bugs.webkit.org/show_bug.cgi?id=231989
https://commits.webkit.org/r284654

Location:
trunk
Files:
1 deleted
15 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r284683 r284685  
     12021-10-22  Ayumi Kojima  <ayumi_kojima@apple.com>
     2
     3        Unreviewed, reverting r284654.
     4
     5        Reverting because this commit caused scrolling tests to fail
     6
     7        Reverted changeset:
     8
     9        "Content offset in this codepen when switching tabs"
     10        https://bugs.webkit.org/show_bug.cgi?id=231989
     11        https://commits.webkit.org/r284654
     12
    1132021-10-22  Alan Bujtas  <zalan@apple.com>
    214
  • trunk/LayoutTests/tiled-drawing/scrolling/clamp-out-of-bounds-scrolls-expected.txt

    r284654 r284685  
    5656
    5757(Frame scrolling node
    58   (scroll position 4223 0)
    5958  (scrollable area size 785 585)
    6059  (contents size 5008 5021)
     
    7776
    7877(Frame scrolling node
    79   (scroll position 0 4436)
     78  (scroll position 4223 0)
    8079  (scrollable area size 785 585)
    8180  (contents size 5008 5021)
     
    9897
    9998(Frame scrolling node
    100   (scroll position 4223 4436)
     99  (scroll position 0 4436)
    101100  (scrollable area size 785 585)
    102101  (contents size 5008 5021)
  • trunk/LayoutTests/tiled-drawing/scrolling/scrolling-tree-after-scroll-expected.txt

    r284654 r284685  
    11
    22(Frame scrolling node
    3   (scroll position 0 3000)
    43  (scrollable area size 785 600)
    54  (contents size 785 5021)
  • trunk/Source/WebCore/ChangeLog

    r284684 r284685  
     12021-10-22  Ayumi Kojima  <ayumi_kojima@apple.com>
     2
     3        Unreviewed, reverting r284654.
     4
     5        Reverting because this commit caused scrolling tests to fail
     6
     7        Reverted changeset:
     8
     9        "Content offset in this codepen when switching tabs"
     10        https://bugs.webkit.org/show_bug.cgi?id=231989
     11        https://commits.webkit.org/r284654
     12
    1132021-10-22  Simon Fraser  <simon.fraser@apple.com>
    214
  • trunk/Source/WebCore/page/scrolling/AsyncScrollingCoordinator.cpp

    r284654 r284685  
    452452    }
    453453
    454     auto* node = m_scrollingStateTree->stateNodeForID(scrollingNodeID);
    455     if (is<ScrollingStateScrollingNode>(node)) {
    456         auto& scrollingNode = downcast<ScrollingStateScrollingNode>(*node);
    457         scrollingNode.syncScrollPosition(scrollPosition);
    458     }
    459 
    460454    if (scrollingNodeID == frameView.scrollingNodeID()) {
    461455        reconcileScrollingState(frameView, scrollPosition, layoutViewportOrigin, scrollType, ViewportRectStability::Stable, scrollingLayerPositionAction);
  • trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.cpp

    r284654 r284685  
    144144}
    145145
    146 void ScrollingStateScrollingNode::syncScrollPosition(const FloatPoint& scrollPosition)
    147 {
    148     m_scrollPosition = scrollPosition;
    149 }
    150 
    151146void ScrollingStateScrollingNode::setScrollOrigin(const IntPoint& scrollOrigin)
    152147{
     
    210205    m_requestedScrollData = scrollData;
    211206    setPropertyChanged(Property::RequestedScrollPosition);
    212 }
    213 
    214 bool ScrollingStateScrollingNode::hasScrollPositionRequest() const
    215 {
    216     return hasChangedProperty(Property::RequestedScrollPosition) && m_requestedScrollData.requestType == ScrollRequestType::PositionUpdate;
    217207}
    218208
  • trunk/Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h

    r284654 r284685  
    5555    WEBCORE_EXPORT void setScrollPosition(const FloatPoint&);
    5656
    57     // Does not trigger a scrolling tree commit.
    58     WEBCORE_EXPORT void syncScrollPosition(const FloatPoint&);
    59 
    6057    const IntPoint& scrollOrigin() const { return m_scrollOrigin; }
    6158    WEBCORE_EXPORT void setScrollOrigin(const IntPoint&);
     
    8178    const RequestedScrollData& requestedScrollData() const { return m_requestedScrollData; }
    8279    WEBCORE_EXPORT void setRequestedScrollData(const RequestedScrollData&);
    83 
    84     WEBCORE_EXPORT bool hasScrollPositionRequest() const;
    8580
    8681    bool isMonitoringWheelEvents() const { return m_isMonitoringWheelEvents; }
  • trunk/Source/WebCore/page/scrolling/ScrollingStateTree.cpp

    r284654 r284685  
    177177        if (parentID) {
    178178            if (auto unparentedNode = m_unparentedNodes.take(newNodeID)) {
    179                 LOG_WITH_STREAM(ScrollingTree, stream << "ScrollingStateTree " << this << " insertNode reattaching node " << newNodeID);
     179                LOG_WITH_STREAM(ScrollingTree, stream << "ScrollingStateTree " << this << " insertNode " << newNodeID << " getting node from unparented nodes");
    180180                newNode = unparentedNode.get();
    181181                nodeWasReattachedRecursive(*unparentedNode);
  • trunk/Source/WebCore/page/scrolling/ScrollingTreeFrameScrollingNode.cpp

    r284654 r284685  
    7373        m_fixedElementsLayoutRelativeToFrame = state.fixedElementsLayoutRelativeToFrame();
    7474
    75     if (state.hasChangedProperty(ScrollingStateNode::Property::LayoutViewport))
     75    if (state.hasChangedProperty(ScrollingStateNode::Property::LayoutViewport)) {
    7676        m_layoutViewport = state.layoutViewport();
     77        updateViewportForCurrentScrollPosition({ });
     78    }
    7779
    7880    if (state.hasChangedProperty(ScrollingStateNode::Property::MinLayoutViewportOrigin))
     
    8486    if (state.hasChangedProperty(ScrollingStateNode::Property::OverrideVisualViewportSize))
    8587        m_overrideVisualViewportSize = state.overrideVisualViewportSize();
    86 
    87     if (state.hasChangedProperty(ScrollingStateNode::Property::LayoutViewport)) {
    88         // This requires that minLayoutViewportOrigin and maxLayoutViewportOrigin have been updated.
    89         updateViewportForCurrentScrollPosition({ });
    90     }
    9188}
    9289
  • trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.cpp

    r284654 r284685  
    6868    if (state.hasChangedProperty(ScrollingStateNode::Property::ScrollPosition)) {
    6969        m_lastCommittedScrollPosition = state.scrollPosition();
    70         if (m_isFirstCommit && !state.hasScrollPositionRequest())
     70        if (m_isFirstCommit && !state.hasChangedProperty(ScrollingStateNode::Property::RequestedScrollPosition))
    7171            m_currentScrollPosition = m_lastCommittedScrollPosition;
    7272    }
     
    337337    ts.dumpProperty("last committed scroll position", m_lastCommittedScrollPosition);
    338338
    339     if (!m_currentScrollPosition.isZero())
    340         ts.dumpProperty("scroll position", m_currentScrollPosition);
    341 
    342     if (!m_scrollOrigin.isZero())
     339    if (m_scrollOrigin != IntPoint())
    343340        ts.dumpProperty("scroll origin", m_scrollOrigin);
    344341
  • trunk/Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.mm

    r284654 r284685  
    115115        return;
    116116
    117     LOG_WITH_STREAM(ScrollingTree, stream << "ScrollingCoordinatorMac::commitTreeState: state tree " << scrollingStateTreeAsText(debugScrollingStateTreeAsTextBehaviors));
     117    LOG_WITH_STREAM(ScrollingTree, stream << scrollingStateTreeAsText(debugScrollingStateTreeAsTextBehaviors));
    118118
    119119    auto stateTree = scrollingStateTree()->commit(LayerRepresentation::PlatformLayerRepresentation);
  • trunk/Tools/ChangeLog

    r284676 r284685  
     12021-10-22  Ayumi Kojima  <ayumi_kojima@apple.com>
     2
     3        Unreviewed, reverting r284654.
     4
     5        Reverting because this commit caused scrolling tests to fail
     6
     7        Reverted changeset:
     8
     9        "Content offset in this codepen when switching tabs"
     10        https://bugs.webkit.org/show_bug.cgi?id=231989
     11        https://commits.webkit.org/r284654
     12
    1132021-10-22  Carlos Garcia Campos  <cgarcia@igalia.com>
    214
  • trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj

    r284669 r284685  
    8787                0F5651F71FCE4DDC00310FBC /* NoHistoryItemScrollToFragment.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0F5651F61FCE4DDB00310FBC /* NoHistoryItemScrollToFragment.mm */; };
    8888                0F5651F91FCE513500310FBC /* scroll-to-anchor.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 0F5651F81FCE50E800310FBC /* scroll-to-anchor.html */; };
    89                 0FEFAF64271FC2CD005704D7 /* ScrollingCoordinatorTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FEFAF63271FC2CD005704D7 /* ScrollingCoordinatorTests.mm */; };
    9089                0FF1134E22D68679009A81DA /* ScrollViewScrollabilityTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0FF1134D22D68679009A81DA /* ScrollViewScrollabilityTests.mm */; };
    9190                115EB3431EE0BA03003C2C0A /* ViewportSizeForViewportUnits.mm in Sources */ = {isa = PBXBuildFile; fileRef = 115EB3421EE0B720003C2C0A /* ViewportSizeForViewportUnits.mm */; };
     
    18631862                0FE447971B76F1E3009498EB /* ParkingLot.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParkingLot.cpp; sourceTree = "<group>"; };
    18641863                0FEAE3671B7D19CB00CE17F2 /* Condition.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Condition.cpp; sourceTree = "<group>"; };
    1865                 0FEFAF63271FC2CD005704D7 /* ScrollingCoordinatorTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollingCoordinatorTests.mm; sourceTree = "<group>"; };
    18661864                0FF1134D22D68679009A81DA /* ScrollViewScrollabilityTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ScrollViewScrollabilityTests.mm; sourceTree = "<group>"; };
    18671865                0FFC45A41B73EBE20085BD62 /* Lock.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Lock.cpp; sourceTree = "<group>"; };
     
    30983096                F44A531021B8976900DBB99C /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InstanceMethodSwizzler.mm; path = ../TestRunnerShared/cocoa/InstanceMethodSwizzler.mm; sourceTree = "<group>"; };
    30993097                F44A7D1F268D5C6900B49BB8 /* ImageAnalysisTests.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ImageAnalysisTests.mm; sourceTree = "<group>"; };
     3098                F44A9AF52649BBDD00E7CB16 /* ImmediateActionTests.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ImmediateActionTests.h; sourceTree = "<group>"; };
    31003099                F44A9AF62649BBDD00E7CB16 /* ImmediateActionTests.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ImmediateActionTests.mm; sourceTree = "<group>"; };
    31013100                F44C79FB20F9E50C0014478C /* ParserYieldTokenPlugIn.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = ParserYieldTokenPlugIn.mm; sourceTree = "<group>"; };
     
    48344833                                9B4F8FA3159D52B1002D9F94 /* HTMLCollectionNamedItem.mm */,
    48354834                                9B26FC6B159D061000CC3765 /* HTMLFormCollectionNamedItem.mm */,
     4835                                F44A9AF52649BBDD00E7CB16 /* ImmediateActionTests.h */,
    48364836                                F44A9AF62649BBDD00E7CB16 /* ImmediateActionTests.mm */,
    48374837                                C507E8A614C6545B005D6B3B /* InspectorBar.mm */,
     
    48534853                                37C784DE197C8F2E0010A496 /* RenderedImageFromDOMNode.mm */,
    48544854                                3722C8681461E03E00C45D00 /* RenderedImageFromDOMRange.mm */,
    4855                                 0FEFAF63271FC2CD005704D7 /* ScrollingCoordinatorTests.mm */,
    48564855                                261516D515B0E60500A2C201 /* SetAndUpdateCacheModel.mm */,
    48574856                                52B8CF9515868CF000281053 /* SetDocumentURI.mm */,
     
    58525851                                CDCFA7AA1E45183200C2433D /* SampleMap.cpp in Sources */,
    58535852                                CE0947372063223B003C9BA0 /* SchemeRegistry.mm in Sources */,
    5854                                 0FEFAF64271FC2CD005704D7 /* ScrollingCoordinatorTests.mm in Sources */,
    58555853                                CDC0932B21C872C10030C4B0 /* ScrollingDoesNotPauseMedia.mm in Sources */,
    58565854                                7CCE7F121A411AE600447C4C /* ScrollPinningBehaviors.cpp in Sources */,
  • trunk/Tools/TestWebKitAPI/cocoa/TestWKWebView.h

    r284654 r284685  
    140140- (void)sendClicksAtPoint:(NSPoint)pointInWindow numberOfClicks:(NSUInteger)numberOfClicks;
    141141- (void)sendClickAtPoint:(NSPoint)pointInWindow;
    142 - (void)wheelEventAtPoint:(CGPoint)pointInWindow wheelDelta:(CGSize)delta;
    143142- (NSWindow *)hostWindow;
    144143- (void)typeCharacter:(char)character modifiers:(NSEventModifierFlags)modifiers;
  • trunk/Tools/TestWebKitAPI/cocoa/TestWKWebView.mm

    r284654 r284685  
    205205- (id)objectByEvaluatingJavaScript:(NSString *)script
    206206{
    207     bool callbackComplete = false;
     207    bool isWaitingForJavaScript = false;
    208208    RetainPtr<id> evalResult;
    209209    [self _evaluateJavaScriptWithoutUserGesture:script completionHandler:[&] (id result, NSError *error) {
    210210        evalResult = result;
    211         callbackComplete = true;
     211        isWaitingForJavaScript = true;
    212212        EXPECT_TRUE(!error);
    213213        if (error)
    214214            NSLog(@"Encountered error: %@ while evaluating script: %@", error, script);
    215215    }];
    216     TestWebKitAPI::Util::run(&callbackComplete);
     216    TestWebKitAPI::Util::run(&isWaitingForJavaScript);
    217217    return evalResult.autorelease();
    218218}
     
    220220- (id)objectByEvaluatingJavaScriptWithUserGesture:(NSString *)script
    221221{
    222     bool callbackComplete = false;
     222    bool isWaitingForJavaScript = false;
    223223    RetainPtr<id> evalResult;
    224224    [self evaluateJavaScript:script completionHandler:[&] (id result, NSError *error) {
    225225        evalResult = result;
    226         callbackComplete = true;
     226        isWaitingForJavaScript = true;
    227227        EXPECT_TRUE(!error);
    228228        if (error)
    229229            NSLog(@"Encountered error: %@ while evaluating script: %@", error, script);
    230230    }];
    231     TestWebKitAPI::Util::run(&callbackComplete);
     231    TestWebKitAPI::Util::run(&isWaitingForJavaScript);
    232232    return evalResult.autorelease();
    233233}
     
    235235- (id)objectByCallingAsyncFunction:(NSString *)script withArguments:(NSDictionary *)arguments error:(NSError **)errorOut
    236236{
    237     bool callbackComplete = false;
     237    bool isWaitingForJavaScript = false;
    238238    if (errorOut)
    239239        *errorOut = nil;
     
    244244        evalResult = result;
    245245        strongError = error;
    246         callbackComplete = true;
    247     }];
    248     TestWebKitAPI::Util::run(&callbackComplete);
     246        isWaitingForJavaScript = true;
     247    }];
     248    TestWebKitAPI::Util::run(&isWaitingForJavaScript);
    249249
    250250    if (errorOut)
     
    863863}
    864864
    865 - (void)wheelEventAtPoint:(CGPoint)pointInWindow wheelDelta:(CGSize)delta
    866 {
    867     RetainPtr<CGEventRef> cgScrollEvent = adoptCF(CGEventCreateScrollWheelEvent(nullptr, kCGScrollEventUnitPixel, 2, delta.height, delta.width, 0));
    868 
    869     CGPoint locationInGlobalScreenCoordinates = [[self window] convertPointToScreen:pointInWindow];
    870     locationInGlobalScreenCoordinates.y = [[[NSScreen screens] objectAtIndex:0] frame].size.height - locationInGlobalScreenCoordinates.y;
    871     CGEventSetLocation(cgScrollEvent.get(), locationInGlobalScreenCoordinates);
    872    
    873     NSEvent* event = [NSEvent eventWithCGEvent:cgScrollEvent.get()];
    874     [self scrollWheel:event];
    875 }
    876 
    877865- (NSWindow *)hostWindow
    878866{
Note: See TracChangeset for help on using the changeset viewer.