diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2010-06-18 13:06:31 (GMT) |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2010-06-18 13:06:31 (GMT) |
commit | a78d53f430cac6d1624446e5bc0f90081f513fb6 (patch) | |
tree | e46810aa4807b6fbec15e838c381c789166ca17b /src/3rdparty/webkit/WebCore | |
parent | 52590f355b2a17f65eea74b604bf921647704561 (diff) | |
download | Qt-a78d53f430cac6d1624446e5bc0f90081f513fb6.zip Qt-a78d53f430cac6d1624446e5bc0f90081f513fb6.tar.gz Qt-a78d53f430cac6d1624446e5bc0f90081f513fb6.tar.bz2 |
Updated WebKit to e32cb21d4f1787147bcb681883b96a95f867749a
Integrated changes:
|| <https://webkit.org/b/40107> || Impossible to set input method hints based HTML5 input types ||
|| <https://webkit.org/b/40102> || WebCore EventHandler needs to take account of onLoad events fired before layout() complete ||
|| <https://webkit.org/b/40830> || REGRESSION(r60958) [Qt] qwebpage::inputMethods auto-test fails ||
Diffstat (limited to 'src/3rdparty/webkit/WebCore')
-rw-r--r-- | src/3rdparty/webkit/WebCore/ChangeLog | 35 | ||||
-rw-r--r-- | src/3rdparty/webkit/WebCore/html/HTMLInputElement.h | 4 | ||||
-rw-r--r-- | src/3rdparty/webkit/WebCore/page/EventHandler.cpp | 3 |
3 files changed, 42 insertions, 0 deletions
diff --git a/src/3rdparty/webkit/WebCore/ChangeLog b/src/3rdparty/webkit/WebCore/ChangeLog index c17a8aa..3113efe 100644 --- a/src/3rdparty/webkit/WebCore/ChangeLog +++ b/src/3rdparty/webkit/WebCore/ChangeLog @@ -1,3 +1,38 @@ +2010-06-13 Robert Hogan <robert@webkit.org> + + Reviewed by Kenneth Rohde Christiansen. + + WebCore EventHandler needs to take account of onLoad events + fired before layout() complete + + https://bugs.webkit.org/show_bug.cgi?id=40102 + + WebCore 'cheats' by firing onLoad events before the frame's layout + has been performed. This can result in event listeners performing + operations that depend on the document's final layout, such as + scrolling operations. + + When scrolling a frameview in eventhandler ensure the layout is complete. + + * page/EventHandler.cpp: + (WebCore::EventHandler::scrollRecursively): + +2010-06-10 Raine Makelainen <raine.makelainen@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Impossible to set input method hints based HTML5 input types + https://bugs.webkit.org/show_bug.cgi?id=40107 + + Helper methods for checking "tel", "number", "email", + and "url" input element types. + + * html/HTMLInputElement.h: + (WebCore::HTMLInputElement::isTelephoneField): + (WebCore::HTMLInputElement::isNumberField): + (WebCore::HTMLInputElement::isEmailField): + (WebCore::HTMLInputElement::isUrlField): + 2010-06-17 Mark Brand <mabrand@mabrand.nl> Reviewed by Simon Hausmann. diff --git a/src/3rdparty/webkit/WebCore/html/HTMLInputElement.h b/src/3rdparty/webkit/WebCore/html/HTMLInputElement.h index c3b0a73..087cffa 100644 --- a/src/3rdparty/webkit/WebCore/html/HTMLInputElement.h +++ b/src/3rdparty/webkit/WebCore/html/HTMLInputElement.h @@ -128,6 +128,10 @@ public: virtual bool isSearchField() const { return m_type == SEARCH; } virtual bool isInputTypeHidden() const { return m_type == HIDDEN; } virtual bool isPasswordField() const { return m_type == PASSWORD; } + bool isTelephoneField() const { return m_type == TELEPHONE; } + bool isNumberField() const { return m_type == NUMBER; } + bool isEmailField() const { return m_type == EMAIL; } + bool isUrlField() const { return m_type == URL; } bool checked() const { return m_checked; } void setChecked(bool, bool sendChangeEvent = false); diff --git a/src/3rdparty/webkit/WebCore/page/EventHandler.cpp b/src/3rdparty/webkit/WebCore/page/EventHandler.cpp index c40299c..1654257 100644 --- a/src/3rdparty/webkit/WebCore/page/EventHandler.cpp +++ b/src/3rdparty/webkit/WebCore/page/EventHandler.cpp @@ -952,6 +952,9 @@ bool EventHandler::scrollOverflow(ScrollDirection direction, ScrollGranularity g bool EventHandler::scrollRecursively(ScrollDirection direction, ScrollGranularity granularity, Node* startingNode) { + // The layout needs to be up to date to determine if we can scroll. We may be + // here because of an onLoad event, in which case the final layout hasn't been performed yet. + m_frame->document()->updateLayoutIgnorePendingStylesheets(); bool handled = scrollOverflow(direction, granularity, startingNode); if (!handled) { Frame* frame = m_frame; |