[webkit-reviews] review granted: [Bug 132657] WK2: Programatic scroll requests during scroll or zoom animation to reveal focused element are ignored. : [Attachment 231018] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 7 14:53:16 PDT 2014


Benjamin Poulain <benjamin at webkit.org> has granted Enrica Casucci
<enrica at apple.com>'s request for review:
Bug 132657: WK2: Programatic scroll requests during scroll or zoom animation to
reveal focused element are ignored.
https://bugs.webkit.org/show_bug.cgi?id=132657

Attachment 231018: Patch
https://bugs.webkit.org/attachment.cgi?id=231018&action=review

------- Additional Comments from Benjamin Poulain <benjamin at webkit.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=231018&action=review


> Source/WebCore/dom/Element.cpp:1983
> -    if (document().page())
> -	   document().page()->chrome().client().elementDidFocus(this);
> -
>      RefPtr<FocusEvent> event = FocusEvent::create(eventNames().focusEvent,
false, false, document().defaultView(), 0, oldFocusedElement);
>      EventDispatcher::dispatchEvent(this, event.release());
> +    if (document().page())
> +	   document().page()->chrome().client().elementDidFocus(this);
>  }

As discussed: let's move this on a separate patch, and handle the programmatic
scroll.

> Source/WebCore/platform/ScrollableArea.h:72
> +    virtual bool inProgrammaticScroll() const { return false; }

Please move this to ScrollView.

You should also add override on FrameView's implementation.

> Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm:118
> +    BOOL _isAnimatingScrollOrZoom;

Let's try to remove this and stop the animations systematically.

We will need a more generic heuristic to solve conflicts between user gesture
and animation origination from WebProcess's requests.


More information about the webkit-reviews mailing list