WebKit-https.git
7 years agoSVG Filters allow invalid elements as children
schenney@chromium.org [Thu, 10 May 2012 15:22:04 +0000 (15:22 +0000)]
SVG Filters allow invalid elements as children
https://bugs.webkit.org/show_bug.cgi?id=83979

Reviewed by Nikolas Zimmermann.

.:

This test will crash upon load in Chromium, unless the associated fix is in.

* ManualTests/bugzilla-83979.svg: Added.

Source/WebCore:

According to the SVG spec, there are numerous restrictions on the
content of nodes (that is, their children). Specific to this problem,
SVGFilter elements may only contain SVGFilterPrimitive elements, and
those may only contain animation related elements. This patch enforces
the restriction on filters in the render tree, thus preventing us from
having (for instance) content that is inside a filter yet filtered by
the filter.

Manual test: ManualTests/bugzilla-83979.svg

* svg/SVGFilterElement.cpp:
(WebCore::SVGFilterElement::childShouldCreateRenderer): Added to only allow renderers for fe* children
(WebCore):
* svg/SVGFilterElement.h:
(SVGFilterElement):
* svg/SVGFilterPrimitiveStandardAttributes.h: Do not allow any children at all for fe* elements.
(SVGFilterPrimitiveStandardAttributes):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Rename QDeclarative* to QQml*
kent.hansen@nokia.com [Thu, 10 May 2012 15:12:36 +0000 (15:12 +0000)]
[Qt] Rename QDeclarative* to QQml*
https://bugs.webkit.org/show_bug.cgi?id=86089

Reviewed by Simon Hausmann.

The QtDeclarative module was deprecated in favor of QtQml.

* Target.pri:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::_q_onReceivedResponseFromDownload):
(QQuickWebViewExperimental::alertDialog):
(QQuickWebViewExperimental::setAlertDialog):
(QQuickWebViewExperimental::confirmDialog):
(QQuickWebViewExperimental::setConfirmDialog):
(QQuickWebViewExperimental::promptDialog):
(QQuickWebViewExperimental::setPromptDialog):
(QQuickWebViewExperimental::authenticationDialog):
(QQuickWebViewExperimental::setAuthenticationDialog):
(QQuickWebViewExperimental::proxyAuthenticationDialog):
(QQuickWebViewExperimental::setProxyAuthenticationDialog):
(QQuickWebViewExperimental::certificateVerificationDialog):
(QQuickWebViewExperimental::setCertificateVerificationDialog):
(QQuickWebViewExperimental::itemSelector):
(QQuickWebViewExperimental::setItemSelector):
(QQuickWebViewExperimental::filePicker):
(QQuickWebViewExperimental::setFilePicker):
(QQuickWebViewExperimental::databaseQuotaDialog):
(QQuickWebViewExperimental::setDatabaseQuotaDialog):
(QQuickWebViewExperimental::schemeDelegates_At):
(QQuickWebViewExperimental::schemeDelegates_Append):
(QQuickWebViewExperimental::schemeDelegates_Count):
(QQuickWebViewExperimental::schemeDelegates_Clear):
(QQuickWebViewExperimental::schemeDelegates):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/API/qt/qwebiconimageprovider.cpp:
(QWebIconImageProvider::QWebIconImageProvider):
* UIProcess/API/qt/qwebiconimageprovider_p.h:
* UIProcess/API/qt/qwebviewportinfo_p.h:
* UIProcess/API/qt/tests/tests.pri:
* UIProcess/qt/QtDialogRunner.h:
(QtDialogRunner):
* UIProcess/qt/WebPopupMenuProxyQt.h:
(WebPopupMenuProxyQt):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[CSS3 Backgrounds and Borders] Add background-size to the background shorthand
commit-queue@webkit.org [Thu, 10 May 2012 15:10:11 +0000 (15:10 +0000)]
[CSS3 Backgrounds and Borders] Add background-size to the background shorthand
https://bugs.webkit.org/show_bug.cgi?id=27577

Patch by Joe Thomas <joethomas@motorola.com> on 2012-05-10
Reviewed by Alexis Menard.

Added CSSPropertyBackgroundSize to the background shorthand propery. Added the logic for parsing background-size.
bakground-size appears after background-position followed by a '/'.
The specification related to this change is http://www.w3.org/TR/css3-background/#the-background

Source/WebCore:

Tests: fast/backgrounds/background-shorthand-with-backgroundSize-style.html
       fast/backgrounds/size/backgroundSize-in-background-shorthand.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSComputedStyleDeclaration::getBackgroundShorthandValue):
(WebCore):
* css/CSSComputedStyleDeclaration.h:
(CSSComputedStyleDeclaration):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillShorthand):
* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getLayeredShorthandValue):
* css/StylePropertyShorthand.cpp:
(WebCore):
(WebCore::backgroundShorthand):

LayoutTests:

* fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt: Added.
* fast/backgrounds/background-shorthand-with-backgroundSize-style.html: Added.
* fast/backgrounds/size/backgroundSize-in-background-shorthand-expected.html: Added.
* fast/backgrounds/size/backgroundSize-in-background-shorthand.html: Added.
* fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt:
* fast/css/getComputedStyle/getComputedStyle-background-shorthand.html:
* fast/inspector-support/style-expected.txt:
* inspector/styles/lazy-computed-style-expected.txt:
* inspector/styles/styles-computed-trace-expected.txt:
* inspector/styles/styles-new-API-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoNode::InDetachFlag could be removed.
morrita@google.com [Thu, 10 May 2012 14:43:27 +0000 (14:43 +0000)]
Node::InDetachFlag could be removed.
https://bugs.webkit.org/show_bug.cgi?id=85963

Reviewed by Antti Koivisto.

Removed Node::inDetach() since it can never true
on the only call site setFocusedNode().

No new test. Covered by existing tests.

* dom/Document.cpp:
(WebCore::Document::setFocusedNode):
* dom/Node.cpp:
(WebCore::Node::detach):
* dom/Node.h:
(WebCore):
(Node):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCrash in HTMLFormControlElement::m_fieldSetAncestor
keishi@webkit.org [Thu, 10 May 2012 14:11:37 +0000 (14:11 +0000)]
Crash in HTMLFormControlElement::m_fieldSetAncestor
https://bugs.webkit.org/show_bug.cgi?id=86070

Reviewed by Kent Tamura.

No new tests.

The previous patch r115990 didn't completely resolve the crash (Bug 85453)
We don't have a reproducible test case, so we are reverting to the old code for setting m_fieldSetAncestor.

* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::HTMLFormControlElement):
(WebCore::HTMLFormControlElement::updateFieldSetAndLegendAncestor):
(WebCore::HTMLFormControlElement::insertedInto): Set m_dataListAncestorState to Unknown because ancestor has changed. Call setNeedsWillValidateCheck because style might need to be updated.
(WebCore::HTMLFormControlElement::removedFrom):
(WebCore::HTMLFormControlElement::disabled):
(WebCore::HTMLFormControlElement::recalcWillValidate):
(WebCore::HTMLFormControlElement::willValidate):
(WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):
* html/HTMLFormControlElement.h:
(HTMLFormControlElement): Added m_dataListAncestorState.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoWeb Inspector: rename InspectorBackendStub.js to InspectorBackendCommands.js
commit-queue@webkit.org [Thu, 10 May 2012 14:05:32 +0000 (14:05 +0000)]
Web Inspector: rename InspectorBackendStub.js to InspectorBackendCommands.js
https://bugs.webkit.org/show_bug.cgi?id=72306

Source/WebCore:

Changed name for InspectorBackendStub.js to
InspectorBackendCommands.js

Patch by Sam D <dsam2912@gmail.com> on 2012-05-10
Reviewed by Yury Semikhatsky.

No new tests required. File name is changed.

* DerivedSources.pri:
* GNUmakefile.am:
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/copyWebCoreResourceFiles.cmd:
* WebCore.xcodeproj/project.pbxproj:
* gyp/copy-inspector-resources.sh:
* inspector/CodeGeneratorInspector.py:
* inspector/front-end/InspectorBackendCommands.qrc: Added.
* inspector/front-end/InspectorBackendStub.qrc: Removed.
* inspector/front-end/inspector.html:

Source/WebKit:

Changed name for InspectorBackendStub.js to
InspectorBackendCommands.js

Patch by Sam D <dsam2912@gmail.com> on 2012-05-10
Reviewed by Yury Semikhatsky.

* PlatformBlackBerry.cmake:

Source/WebKit/chromium:

Changed name for InspectorBackendStub.js to InspectorBackendCommands.js

Patch by Sam D <dsam2912@gmail.com> on 2012-05-10
Reviewed by Yury Semikhatsky.

* WebKit.gyp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116641 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] Add OwnPtr specialization for Eina_Hash.
rakuco@webkit.org [Thu, 10 May 2012 14:04:55 +0000 (14:04 +0000)]
[EFL] Add OwnPtr specialization for Eina_Hash.
https://bugs.webkit.org/show_bug.cgi?id=85046

Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> on 2012-05-10
Reviewed by Andreas Kling.

Add an override for Eina_Hash for EFL port.

* wtf/OwnPtrCommon.h:
(WTF):
* wtf/efl/OwnPtrEfl.cpp:
(WTF::deleteOwnedPtr):
(WTF):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116640 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r116633.
commit-queue@webkit.org [Thu, 10 May 2012 13:48:47 +0000 (13:48 +0000)]
Unreviewed, rolling out r116633.
http://trac.webkit.org/changeset/116633
https://bugs.webkit.org/show_bug.cgi?id=86093

Breaks EFL tests (Requested by kov on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-10

Source/WebKit/efl:

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
* DumpRenderTree/efl/EventSender.cpp:
(keyDownCallback):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::setTabKeyCyclesThroughElements):

LayoutTests:

* platform/efl/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116639 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] Memory leaks found in EFL DRT
commit-queue@webkit.org [Thu, 10 May 2012 13:42:54 +0000 (13:42 +0000)]
[EFL] Memory leaks found in EFL DRT
https://bugs.webkit.org/show_bug.cgi?id=85889

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-10
Reviewed by Gustavo Noronha Silva.

Fix two memory leaks in EFL's DRT by using JSRetainPtr for JSString
created with JSStringCreateWithUTF8CString.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::onWindowObjectCleared):
* DumpRenderTree/efl/EventSender.cpp:
(modifiersFromJSValue):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116638 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Avoid string conversions to construct a QUrl when using Qt5.
alexis.menard@openbossa.org [Thu, 10 May 2012 13:19:08 +0000 (13:19 +0000)]
[Qt] Avoid string conversions to construct a QUrl when using Qt5.
https://bugs.webkit.org/show_bug.cgi?id=86006

Reviewed by Kenneth Rohde Christiansen.

In Qt5, the QUrl constructor can handle the string directly, even in UTF-16 because the
constructor QUrl(QString) has been fixed. Unfortunately we still need to use the old
code path when building with Qt4.

No new tests : it's a performance improvement which should be covered by tests.

* platform/qt/KURLQt.cpp:
(WebCore::KURL::operator QUrl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116637 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSource/WebCore: [chromium] REGRESSION(r107389) Visible line artifacts on some JPEG...
noel.gordon@gmail.com [Thu, 10 May 2012 13:15:47 +0000 (13:15 +0000)]
Source/WebCore: [chromium] REGRESSION(r107389) Visible line artifacts on some JPEG images
https://bugs.webkit.org/show_bug.cgi?id=85772

Reviewed by Kent Tamura.

On some JPEG images, vertical and horizontal lines artifacts might appear in image
regions with very high frequency color variation when using DCT_IFAST decodes. Use
DCT_IFAST on small screen devices only (Chromium Android).

No new tests. Covered by existing tests.

* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(dctMethod): Permit DCT_IFAST decoding for Chromium Android only.

LayoutTests: [chromium] REGRESSION(r107389) Visible line artifacts on JPEG images
https://bugs.webkit.org/show_bug.cgi?id=85772

Reviewed by Kent Tamura.

* platform/chromium/test_expectations.txt: Add IMAGE expectations.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116636 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] Gardening of flaky tests
commit-queue@webkit.org [Thu, 10 May 2012 12:55:38 +0000 (12:55 +0000)]
[EFL] Gardening of flaky tests
https://bugs.webkit.org/show_bug.cgi?id=86069

Unreviewed gardening.

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-10

* platform/efl/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116635 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Fix sites with a viewport meta tag when devicePixelRatio isn't explicitely set...
jocelyn.turcotte@nokia.com [Thu, 10 May 2012 12:38:56 +0000 (12:38 +0000)]
[Qt] Fix sites with a viewport meta tag when devicePixelRatio isn't explicitely set on the WebView
https://bugs.webkit.org/show_bug.cgi?id=86002

Reviewed by Kenneth Rohde Christiansen.

The preference was recently changed to a double ratio, but was still left under
FOR_EACH_WEBKIT_UINT32_PREFERENCE and was initialized to inf instead of 1.0.
This would cause the viewport constraints to apply a multi-millionaire device
pixel ratio and make the contents invisible.

This moves it with other double preferences under FOR_EACH_WEBKIT_DOUBLE_PREFERENCE.

* Shared/WebPreferencesStore.h:
(WebKit):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116634 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] LayoutTestController needs implementation of setTabKeyCyclesThroughElements
commit-queue@webkit.org [Thu, 10 May 2012 12:28:18 +0000 (12:28 +0000)]
[EFL] LayoutTestController needs implementation of setTabKeyCyclesThroughElements
https://bugs.webkit.org/show_bug.cgi?id=82864

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-10
Reviewed by Gustavo Noronha Silva.

Source/WebKit/efl:

Add missing implementation for setTabKeyCyclesThroughElements to EFL's
DumpRenderTreeSupport.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::setTabKeyCyclesThroughElements):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Add missing implementation for setTabKeyCyclesThroughElements to EFL's LayoutTestController
in order to unskip fast/events/keypress-insert-tab.html

* DumpRenderTree/efl/EventSender.cpp:
(keyDownCallback):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
(LayoutTestController::setTabKeyCyclesThroughElements):

LayoutTests:

Unskip fast/events/keypress-insert-tab.html

* platform/efl/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116633 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Implement fit-to-width behaviour
kenneth@webkit.org [Thu, 10 May 2012 12:20:04 +0000 (12:20 +0000)]
[Qt] Implement fit-to-width behaviour
https://bugs.webkit.org/show_bug.cgi?id=86085

Reviewed by Simon Hausmann.

Source/WebCore:

Add a method to get the minimum scale factor that contains the content
without showing any chrome background.

* dom/ViewportArguments.cpp:
(WebCore::computeMinimumScaleFactorForContentContained):
(WebCore):
* dom/ViewportArguments.h:
(WebCore):

Source/WebKit2:

We don't restrict the minimum scale to the layout viewport anymore,
but instead update the minimum scale when the content size changes.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewFlickablePrivate::didChangeViewportProperties):
(QQuickWebViewFlickablePrivate::didChangeContentsSize):
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
* UIProcess/qt/QtViewportInteractionEngine.h:
(QtViewportInteractionEngine):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116632 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Fix \sa usage in documentation
vestbo@webkit.org [Thu, 10 May 2012 12:09:30 +0000 (12:09 +0000)]
[Qt] Fix \sa usage in documentation

Ensure comma between elements (6 missing).

Patch by Marius Storm-Olsen <marius.storm-olsen@nokia.com> on 2012-05-10
Reviewed by Tor Arne Vestbø.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116631 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL][DRT] EventSender - set delayed event information if it was not set before
commit-queue@webkit.org [Thu, 10 May 2012 11:56:35 +0000 (11:56 +0000)]
[EFL][DRT] EventSender - set delayed event information if it was not set before
https://bugs.webkit.org/show_bug.cgi?id=85972

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-10
Reviewed by Gustavo Noronha Silva.

Tools:

Reset delayed event information if it is missing.

* DumpRenderTree/efl/EventSender.cpp:
(feedOrQueueMouseEvent):

LayoutTests:

Unskipping layout tests that were skipped because of the bug.

* platform/efl/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116630 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove support for Node::willRemove()
morrita@google.com [Thu, 10 May 2012 11:37:09 +0000 (11:37 +0000)]
Remove support for Node::willRemove()
https://bugs.webkit.org/show_bug.cgi?id=55209

Reviewed by Ryosuke Niwa.

This change de-virtualizes Node::willRemove(), gains
5% speedup on Dromaeo dom-modify.

Originally there were 5 willRemove() overrides:
- Element
- HTMLStyleElement
- HTMLSourceElement
- HTMLTrackElement
- HTMLFrameOwnerElement

For first 4 items, this change moves their implementations to
Node::removedFrom() overrides.

Then HTMLFrameOwnerElement is the only class which needs the
notification.  Because it emits the "unload" event, it needs some
notification _before_ its removal. To handle that, this change
introduces ChildFrameDisconnector which collects
corresponding decendant elements and disconnect their content frame.

Even though this approach doesn't kill pre-removal tree traversal
completely, it's a bit more efficient due to the de-virtualization.

No new tests. Covered by existing test.

* dom/ContainerNode.cpp:
(WebCore::willRemoveChild): Replaced willRemove() call with ChildFrameDisconnector.
(WebCore::willRemoveChildren): Ditto.
(WebCore::ContainerNode::disconnectDescendantFrames): Added. Used from FrameLoader to replace Document::willRemove() call.
(WebCore):
* dom/ContainerNode.h:
(ContainerNode):
* dom/ContainerNodeAlgorithms.cpp:
(WebCore::ChildFrameDisconnector::collectDescendant):
(WebCore):
(WebCore::ChildFrameDisconnector::Target::disconnect):
* dom/ContainerNodeAlgorithms.h:
(ChildFrameDisconnector):
(Target):
(WebCore::ChildFrameDisconnector::Target::Target):
(WebCore::ChildFrameDisconnector::Target::isValid):
(WebCore):
(WebCore::ChildFrameDisconnector::ChildFrameDisconnector):
(WebCore::ChildFrameDisconnector::collectDescendant):
(WebCore::ChildFrameDisconnector::disconnect):
* dom/Element.cpp:
(WebCore::Element::removedFrom):
* dom/Element.h:
* dom/ElementShadow.cpp:
* dom/ElementShadow.h:
(ElementShadow):
* dom/Node.cpp:
* dom/Node.h: Added IsFrameOwnerElement flag to de-virtualize IsFrameOwnerElement().
(WebCore::Node::isFrameOwnerElement): De-virtualized.
(Node):
* html/HTMLElement.h:
(HTMLElement):
(WebCore::HTMLElement::HTMLElement):
* html/HTMLFrameOwnerElement.cpp:
(WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement):
(WebCore::HTMLFrameOwnerElement::disconnectContentFrame): Extracted from original willRemove().
* html/HTMLFrameOwnerElement.h:
(HTMLFrameOwnerElement):
(WebCore::toFrameOwnerElement):
(WebCore):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::sourceWasRemoved): Renamed from sourceWillBeRemoved(), dealing with the timing change.
* html/HTMLMediaElement.h:
(HTMLMediaElement):
(WebCore::isMediaElement):
(WebCore):
(WebCore::toMediaElement):
* html/HTMLSourceElement.cpp:
(WebCore::HTMLSourceElement::removedFrom): Moved some code from willRemove().
* html/HTMLSourceElement.h:
(HTMLSourceElement):
* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::removedFrom):
(WebCore):
* html/HTMLStyleElement.h:
(HTMLStyleElement):
* html/HTMLTrackElement.cpp:
(WebCore::HTMLTrackElement::removedFrom): Moved some code from willRemove().
* html/HTMLTrackElement.h:
(HTMLTrackElement):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::clear):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116629 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt][WK2] REGRESSION(r116560): It made 7 compositing tests fail
ossy@webkit.org [Thu, 10 May 2012 11:25:53 +0000 (11:25 +0000)]
[Qt][WK2] REGRESSION(r116560): It made 7 compositing tests fail
https://bugs.webkit.org/show_bug.cgi?id=86086

Unreviewed gardening, skip new failing tests.

* platform/qt-5.0-wk2/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116628 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
zandobersek@gmail.com [Thu, 10 May 2012 11:21:01 +0000 (11:21 +0000)]
[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=85591

Unreviewed, unskipping another batch of tests that are passing but have
test expectations present that indicate a failure is expected. Their
bug entries will be properly updated after they either remain stable and
passing or they backfire.

* platform/gtk/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116627 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoWebPageProxy::activeURL() should return the pending API request, even when there...
vestbo@webkit.org [Thu, 10 May 2012 11:12:25 +0000 (11:12 +0000)]
WebPageProxy::activeURL() should return the pending API request, even when there's no main frame

https://bugs.webkit.org/show_bug.cgi?id=85806

The m_pendingAPIRequestURL member is used (presumably) to mask over the async
nature of WebKit2, so that starting a load of a URL will reflect that URL
immedeatly from activeURL, even if the request has not been passed over to
the web process yet and reflected there.

This works well, except in the case of the initial request, where the main
frame creation happens on the web process side and is notified back to the
UI process. Until we've recived the notification we don't know about the main
frame, and this race condition will potentially give us an empty url instead
of the pending request.

To solve this we always return the pending API request if it's set, even
when there's no mainframe yet (that we known about).

Reviewed by Simon Hausmann.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116626 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL][DRT] Clear added user style sheets before a new testcase execution.
commit-queue@webkit.org [Thu, 10 May 2012 10:56:00 +0000 (10:56 +0000)]
[EFL][DRT] Clear added user style sheets before a new testcase execution.
https://bugs.webkit.org/show_bug.cgi?id=84792

Source/WebKit/efl:

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-10
Reviewed by Gustavo Noronha Silva.

Add a helper function for clearing of the added user style sheets.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::clearUserStyleSheets):
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

Reviewed Gustavo Noronha Silva.

The added user style sheets from the previous testcases are cleared in order to avoid
flaky results.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-10

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

LayoutTests:

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-10
Reviewed by Gustavo Noronha Silva.

Unskip userscripts/user-style-top-frame-only.html

* platform/efl/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116625 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL][DRT] fast/events/js-keyboard-event-creation.html needs rebaselining
commit-queue@webkit.org [Thu, 10 May 2012 10:06:14 +0000 (10:06 +0000)]
[EFL][DRT] fast/events/js-keyboard-event-creation.html needs rebaselining
https://bugs.webkit.org/show_bug.cgi?id=85485

Unreviewed, fast/events/js-keyboard-event-creation.html is rebased.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-10

* platform/efl/Skipped: removed fast/events/js-keyboard-event-creation.html
* platform/efl/fast/events/js-keyboard-event-creation-expected.txt: Added (Taken from GTK port).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116624 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoChange the return type of Entry.toURL() back to String from KURL
kinuko@chromium.org [Thu, 10 May 2012 09:59:40 +0000 (09:59 +0000)]
Change the return type of Entry.toURL() back to String from KURL
https://bugs.webkit.org/show_bug.cgi?id=85858

Reviewed by Ryosuke Niwa.

I once changed it from String to KURL in r116273 but it turned out that
it involves implicit conversion and may incur extra overhead.
This partly reverts r116273 while keeping some internal functions
returning KURL as it's what we initially create as and is more
convenient to operate on.

No new tests; no functional or visible changes.

* Modules/filesystem/EntryBase.cpp:
(WebCore::EntryBase::toURL):
* Modules/filesystem/EntryBase.h:
(EntryBase):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116623 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Unreviewed gardening. Skip news failing and crashing tests to paint the bot...
ossy@webkit.org [Thu, 10 May 2012 09:23:43 +0000 (09:23 +0000)]
[Qt] Unreviewed gardening. Skip news failing and crashing tests to paint the bot green.

* platform/qt-mac/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116622 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] new test http/tests/cookies/single-quoted-value.html is failing
kkristof@inf.u-szeged.hu [Thu, 10 May 2012 08:26:30 +0000 (08:26 +0000)]
[Qt] new test http/tests/cookies/single-quoted-value.html is failing
https://bugs.webkit.org/show_bug.cgi?id=86066

Unreviewed gardening after r116601

* platform/qt/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116621 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoWeb Inspector: Autocomplete for CSS property values in the Styles pane behaving incor...
apavlov@chromium.org [Thu, 10 May 2012 07:48:10 +0000 (07:48 +0000)]
Web Inspector: Autocomplete for CSS property values in the Styles pane behaving incorrectly
https://bugs.webkit.org/show_bug.cgi?id=85784

Reviewed by Vsevolod Vlasov.

Before executing the number increment/decrement within CSS property value, the current word is checked
for being a valid suggestion for the current property, and if it is, the numeric change is skipped
in favor of the suggested property value switch by a suggest box.

* inspector/front-end/StylesSidebarPane.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116619 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMake DOMCharacterDataModified a scoped event (similar to r73690).
inferno@chromium.org [Thu, 10 May 2012 07:42:03 +0000 (07:42 +0000)]
Make DOMCharacterDataModified a scoped event (similar to r73690).
https://bugs.webkit.org/show_bug.cgi?id=85920

Reviewed by Ryosuke Niwa.

Source/WebCore:

DOMCharacterDataModified was missing in the list of already scoped
DOM mutation events like DOMSubtreeModified, DOMNodeInserted, etc.
It helps to delay event dispatches until the completion of each call
of EditCommand::doApply. This has been useful in the past and helped to
prevent unexpected DOM tree mutations while the editing command is executing.

* dom/CharacterData.cpp:
(WebCore::CharacterData::dispatchModifiedEvent):

LayoutTests:

* fast/events/scoped/editing-commands.html: test modified to check DOMCharacterDataModified event.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116618 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoDefault to null value for HistoryItem::m_pageScaleFactor
commit-queue@webkit.org [Thu, 10 May 2012 07:38:51 +0000 (07:38 +0000)]
Default to null value for HistoryItem::m_pageScaleFactor
https://bugs.webkit.org/show_bug.cgi?id=84385

Patch by Alexandre Elias <aelias@google.com> on 2012-05-10
Reviewed by Adam Barth.

Previously, HistoryItem::m_pageScaleFactor defaulted to a value
of 1, making it impossible to determine whether this value was never
set, or intentionally set to 1.  This patch introduces a default value
of 0 and makes restoreScrollPositionAndViewState not touch the page
scale factor if this value is still present at time of reload.

This is a no-op change for common navigation scenarios.  The
motivation for this change is the corner case of syncing history items
from a desktop browser to a mobile device.  In that case, we need a
way to specify that the history item does not contain a
pageScaleFactor so that the mobile device does not display the page
overly zoomed in.

No new tests.

* history/HistoryItem.cpp:
(WebCore::HistoryItem::HistoryItem):
* loader/HistoryController.cpp:
(WebCore::HistoryController::restoreScrollPositionAndViewState):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116617 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUse suitable viewport values when a Mobile DTD is used.
ossy@webkit.org [Thu, 10 May 2012 07:34:06 +0000 (07:34 +0000)]
Use suitable viewport values when a Mobile DTD is used.
https://bugs.webkit.org/show_bug.cgi?id=85425

Unreviewed debug buildfix after r116571.

* dom/Document.cpp:
(WebCore::Document::setDocType):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116616 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Forms] Move step related methods to InputType class from HTMLInputElement class
commit-queue@webkit.org [Thu, 10 May 2012 07:22:32 +0000 (07:22 +0000)]
[Forms] Move step related methods to InputType class from HTMLInputElement class
https://bugs.webkit.org/show_bug.cgi?id=85978

Patch by Yoshifumi Inoue <yosin@chromium.org> on 2012-05-10
Reviewed by Kent Tamura.

This patch is part of re-factoring of HTMLInputElement.cpp for numeric input type.
In this patch, we move implementation of getAllowedValueStep and stepUp/stepUpFromRenderer
to InputType class because of these are for DateTime/Number/Range.

Following patches will change implementation of getAllowedValueStep to use StepRange and
remove step related methods, defaultStep, stepScaleFactor, and so on.

No new tests. This patch should not change behavior.

* html/HTMLInputElement.cpp:
(WebCore):
(WebCore::HTMLInputElement::getAllowedValueStep):
(WebCore::HTMLInputElement::stepUp):
(WebCore::HTMLInputElement::stepDown):
(WebCore::HTMLInputElement::stepUpFromRenderer):
* html/HTMLInputElement.h:
(HTMLInputElement):
* html/InputType.cpp:
(WebCore::InputType::applyStep):
(WebCore):
(WebCore::InputType::alignValueForStep):
(WebCore::InputType::getAllowedValueStep):
(WebCore::InputType::getAllowedValueStepWithDecimalPlaces):
(WebCore::InputType::stepUp):
(WebCore::InputType::stepUpFromRenderer):
* html/InputType.h:
(InputType):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116615 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 10 May 2012 07:10:19 +0000 (07:10 +0000)]
Unreviewed GTK gardening.

* platform/gtk/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116614 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Mark CCLayerTreeHostTestSetNeedsCommit2.runMultiThread and
tkent@chromium.org [Thu, 10 May 2012 07:00:36 +0000 (07:00 +0000)]
[Chromium] Mark CCLayerTreeHostTestSetNeedsCommit2.runMultiThread and
CCLayerTreeHostTestDoNotSkipLayersWithAnimatedOpacity.runMultiThread flaky.

* tests/CCLayerTreeHostTest.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116613 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Add ability to override user agent string per-WebFrameClient
commit-queue@webkit.org [Thu, 10 May 2012 06:42:14 +0000 (06:42 +0000)]
[chromium] Add ability to override user agent string per-WebFrameClient
https://bugs.webkit.org/show_bug.cgi?id=83959

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2012-05-09
Reviewed by Adam Barth.

Adds a method that can be used to override the normal user agent in
chromium.  Also adds a unit test to check if the override is taking effect.

* WebKit.gypi:
* public/WebFrameClient.h:
(WebFrameClient):
(WebKit::WebFrameClient::userAgent):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::userAgent):
* tests/FrameLoaderClientImplTest.cpp: Added.
(WebKit):
(TestWebFrameClient):
(WebKit::TestWebFrameClient::setUserAgentOverride):
(FrameLoaderClientImplTest):
(WebKit::FrameLoaderClientImplTest::SetUp):
(WebKit::FrameLoaderClientImplTest::TearDown):
(WebKit::FrameLoaderClientImplTest::setUserAgentOverride):
(WebKit::FrameLoaderClientImplTest::userAgent):
(WebKit::TEST_F):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116612 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCalendar Picker: Fix a crash by changing input type.
tkent@chromium.org [Thu, 10 May 2012 06:13:00 +0000 (06:13 +0000)]
Calendar Picker: Fix a crash by changing input type.
https://bugs.webkit.org/show_bug.cgi?id=86007

Reviewed by Hajime Morita.

.:

* ManualTests/forms/calendar-picker-crash-by-type-change.html: Added.

Source/WebCore:

Manual test: forms/calendar-picker-crash-by-type-change.html

* html/shadow/CalendarPickerElement.cpp:
(WebCore::CalendarPickerElement::~CalendarPickerElement):
Added. Make sure the popup is closed.
* html/shadow/CalendarPickerElement.h:
(CalendarPickerElement): Add declaration of the destructor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116611 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoMove suspendAnimations to use Internals interface.
gyuyoung.kim@samsung.com [Thu, 10 May 2012 06:11:21 +0000 (06:11 +0000)]
Move suspendAnimations to use Internals interface.
https://bugs.webkit.org/show_bug.cgi?id=85986

Reviewed by Ryosuke Niwa.

.:

* Source/autotools/symbols.filter: Add a symbol filter for suspendAnimations.

Source/WebCore:

Add suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.

No new tests, since we are improving here the infra-structure for testing
a specific method.

* testing/Internals.cpp:
(WebCore::Internals::suspendAnimations):
(WebCore):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:

Source/WebKit/efl:

Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
* WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk:

Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.

* WebCoreSupport/DumpRenderTreeSupportGtk.cpp:
* WebCoreSupport/DumpRenderTreeSupportGtk.h:
(DumpRenderTreeSupportGtk):

Source/WebKit/mac:

Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.

* WebKit.order:
* WebView/WebFrame.mm:
* WebView/WebFramePrivate.h:

Source/WebKit/qt:

Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
* WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit/win:

Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface.

* Interfaces/IWebFramePrivate.idl:
* WebFrame.cpp:
* WebFrame.h:

Source/WebKit2:

* win/WebKit2.def: Add a symbol filter for suspendAnimations.

Tools:

Remove suspendAnimations functions, because it is able to work in the
cross-port way through the Internals interface

* DumpRenderTree/LayoutTestController.cpp:
(LayoutTestController::staticFunctions):
* DumpRenderTree/LayoutTestController.h:
(LayoutTestController):
* DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::LayoutTestController):
* DumpRenderTree/chromium/LayoutTestController.h:
(LayoutTestController):
* DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
* DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
* DumpRenderTree/mac/LayoutTestControllerMac.mm:
* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
* DumpRenderTree/qt/LayoutTestControllerQt.h:
(LayoutTestController):
* DumpRenderTree/win/LayoutTestControllerWin.cpp:
* DumpRenderTree/wx/LayoutTestControllerWx.cpp:

LayoutTests:

Call suspendAnimations functions from internals, because it is able to work in the
cross-port way through the Internals interface.

* animations/play-state-suspend.html:
* animations/stop-animation-on-suspend.html:
* animations/suspend-resume-animation-events.html:
* animations/suspend-resume-animation.html:
* animations/suspend-transform-animation.html:
* transitions/suspend-transform-transition.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116610 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Attempt to fix an Android build error.
tkent@chromium.org [Thu, 10 May 2012 05:47:45 +0000 (05:47 +0000)]
[Chromium] Attempt to fix an Android build error.
https://bugs.webkit.org/show_bug.cgi?id=86045

* DumpRenderTree/DumpRenderTree.gypi:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116609 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSource/WebCore: Add dispatchMessageEventWithOriginCheck to DOMWindow
creis@chromium.org [Thu, 10 May 2012 05:31:29 +0000 (05:31 +0000)]
Source/WebCore: Add dispatchMessageEventWithOriginCheck to DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=85815

Reviewed by Adam Barth.

Useful for ports that support cross-process postMessage.
No new tests, since covered by existing postMessage tests.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::postMessageTimerFired):
(WebCore):
(WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
* page/DOMWindow.h:
(WebCore):
(DOMWindow):

Source/WebKit/chromium: Add dispatchMessageEventWithOriginCheck to WebFrame
https://bugs.webkit.org/show_bug.cgi?id=85815

Reviewed by Adam Barth.

Tested by WebFrameTest.DispatchMessageEventWithOriginCheck.
Also fixes source frame bug in willCheckAndDispatchMessageEvent.

* public/WebFrame.h:
(WebFrame):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::willCheckAndDispatchMessageEvent):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::checkAndDispatchMessageEvent):
(WebKit):
* src/WebFrameImpl.h:
(WebFrameImpl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116608 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix a crash in ContextMenuClientImpl::getCustomMenuFromDefaultItems
hbono@chromium.org [Thu, 10 May 2012 05:08:42 +0000 (05:08 +0000)]
Fix a crash in ContextMenuClientImpl::getCustomMenuFromDefaultItems
https://bugs.webkit.org/show_bug.cgi?id=85866

Reviewed by Ryosuke Niwa.

DocumentMarkerController::markersInRange crashes if the input range is NULL.
This change adds a NULL check before getCustomMenuFromDefaultItems() calls this
function to avoid this crash.

* src/ContextMenuClientImpl.cpp:
(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): Added a NULL check.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116607 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoDon't show partytime if there are non-layout test failures.
ojan@chromium.org [Thu, 10 May 2012 04:34:08 +0000 (04:34 +0000)]
Don't show partytime if there are non-layout test failures.
https://bugs.webkit.org/show_bug.cgi?id=86056

Reviewed by Dimitri Glazkov.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116606 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r116602.
tkent@chromium.org [Thu, 10 May 2012 04:14:01 +0000 (04:14 +0000)]
Unreviewed, rolling out r116602.
http://trac.webkit.org/changeset/116602
https://bugs.webkit.org/show_bug.cgi?id=86057

Build error on Windows (Requested by tkent on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-09

* WebKit.gypi:
* public/WebFrameClient.h:
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::userAgent):
* tests/FrameLoaderClientImplTest.cpp: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116605 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Fix compilation warning on Android.
tkent@chromium.org [Thu, 10 May 2012 04:03:20 +0000 (04:03 +0000)]
[Chromium] Fix compilation warning on Android.
https://bugs.webkit.org/show_bug.cgi?id=85958

* features.gypi: Move ENABLE_MEDIA_CAPTURE=0 to non-Android block.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116604 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[BlackBerry] Autofill feature implementation for BlackBerry porting
commit-queue@webkit.org [Thu, 10 May 2012 03:58:29 +0000 (03:58 +0000)]
[BlackBerry] Autofill feature implementation for BlackBerry porting
https://bugs.webkit.org/show_bug.cgi?id=85577

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-09
Reviewed by Rob Buis.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::autofillTextField): Added this interface
function to auto fill the inputting text field when user selects
a autofill candidate value from autofill context dialog.
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::notifyPopupAutofillDialog): Added
this interface function to notify WebPageClient to pop up the autofill
context dialog with the suggested input items.
(BlackBerry::WebKit::WebPage::clearAutofillData):
* Api/WebPage.h:
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebCore):
(WebPagePrivate):
* WebCoreSupport/AutofillManager.cpp:
(WebCore::AutofillManager::didChangeInTextField):
* WebCoreSupport/EditorClientBlackBerry.cpp:
(WebCore::EditorClientBlackBerry::textDidChangeInTextField): Implemented
this function to listen to the notification of text field change, and
notify AutofillManager to handle the autofill.
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSubmitForm):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):
Save the name and value pair of every autofillable input text field when
user submitting a form.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116603 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Add ability to override user agent string per-WebFrameClient
commit-queue@webkit.org [Thu, 10 May 2012 03:44:23 +0000 (03:44 +0000)]
[chromium] Add ability to override user agent string per-WebFrameClient
https://bugs.webkit.org/show_bug.cgi?id=83959

Patch by Dan Alcantara <dfalcantara@chromium.org> on 2012-05-09
Reviewed by Adam Barth.

Adds a method that can be used to override the normal user agent in
chromium.  Also adds a unit test to check if the override is taking effect.

* WebKit.gypi:
* public/WebFrameClient.h:
(WebFrameClient):
(WebKit::WebFrameClient::userAgent):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::userAgent):
* tests/FrameLoaderClientImplTest.cpp: Added.
(WebKit):
(TestWebFrameClient):
(WebKit::TestWebFrameClient::setUserAgentOverride):
(FrameLoaderClientImplTest):
(WebKit::FrameLoaderClientImplTest::SetUp):
(WebKit::FrameLoaderClientImplTest::TearDown):
(WebKit::FrameLoaderClientImplTest::setUserAgentOverride):
(WebKit::FrameLoaderClientImplTest::userAgent):
(WebKit::TEST_F):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116602 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[BlackBerry] Cookie parsing issue. If the cookie value provided was (") then the...
commit-queue@webkit.org [Thu, 10 May 2012 03:30:48 +0000 (03:30 +0000)]
[BlackBerry] Cookie parsing issue. If the cookie value provided was (") then the browser creates a session cookie instead.
https://bugs.webkit.org/show_bug.cgi?id=85775

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-05-09
Reviewed by Rob Buis.

Source/WebCore:

Make CookieParser::parseOneCookie handle (cookiename="cookievalue;expires=xxxx) correctly.
This cookie's value is "cookievalue not "cookievalue;expires=xxxx.

Test: http/tests/cookies/single-quoted-value.html

* platform/blackberry/CookieParser.cpp:
(WebCore::CookieParser::parseOneCookie):

LayoutTests:

* http/tests/cookies/script-tests/single-quoted-value.js: Added.
* http/tests/cookies/single-quoted-value-expected.txt: Added.
* http/tests/cookies/single-quoted-value.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116601 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoImprove a warning message for a reftest having an unused expectation file.
hayato@chromium.org [Thu, 10 May 2012 03:24:40 +0000 (03:24 +0000)]
Improve a warning message for a reftest having an unused expectation file.
https://bugs.webkit.org/show_bug.cgi?id=85975

Reviewed by Adam Barth.

The current warning message is not intuitive. It might be better to update the message
so that it encourage users to remove unused expectation files.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner.__init__):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116600 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoChange "losing test coverage" to cover all non-layout test problems in garden-o-matic
ojan@chromium.org [Thu, 10 May 2012 03:08:02 +0000 (03:08 +0000)]
Change "losing test coverage" to cover all non-layout test problems in garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=86043

Reviewed by Adam Barth.

-Get rid of the gtest iframe.
-Cover all non-layout test problems. Before we wouldn't catch compile failures
or gtest failures since they were not on the webkit testing bots.
-Include the list of failing steps next to the builder name. This is a lot less
cluttered than you'd expect and already helped me find a compile failure early.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
Delete unused map.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116599 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove unused test expectation files.
hayato@chromium.org [Thu, 10 May 2012 02:48:02 +0000 (02:48 +0000)]
Remove unused test expectation files.
https://bugs.webkit.org/show_bug.cgi?id=85973

Reviewed by Ojan Vafai.

Since cell-shrinkback.html is a reftest, these txt and png
expectations files are not used by test runner and cause warning messages when running tests.

* platform/chromium-linux/fast/multicol/cell-shrinkback-expected.png: Removed.
* platform/chromium-win/fast/multicol/cell-shrinkback-expected.png: Removed.
* platform/qt/fast/multicol/cell-shrinkback-expected.png: Removed.
* platform/qt/fast/multicol/cell-shrinkback-expected.txt: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116598 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdded myself as a committer.
creis@chromium.org [Thu, 10 May 2012 02:45:10 +0000 (02:45 +0000)]
Added myself as a committer.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116597 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoAdd multi-channels support for CopyWithGainFrom in AudioBus
commit-queue@webkit.org [Thu, 10 May 2012 02:32:46 +0000 (02:32 +0000)]
Add multi-channels support for CopyWithGainFrom in AudioBus
https://bugs.webkit.org/show_bug.cgi?id=80675

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-05-09
Reviewed by Chris Rogers.

* platform/audio/AudioBus.cpp:
(WebCore):
(WebCore::AudioBus::AudioBus):
(WebCore::AudioBus::copyWithGainFrom):
* platform/audio/AudioBus.h:
(AudioBus):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116596 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCrash using the new WKBundleDOMWindowExtensions APIs.
jberlin@webkit.org [Thu, 10 May 2012 02:00:38 +0000 (02:00 +0000)]
Crash using the new WKBundleDOMWindowExtensions APIs.
https://bugs.webkit.org/show_bug.cgi?id=85888

Reviewed by Brady Eidson.

Source/WebCore:

WKBundlePageWillDestroyGlobalObjectForDOMWindowExtensionCallback was only being invoked when
the WKPage was destroyed, and then only for the child frames. In addition, the
DOMWindowExtension was holding onto a destroyed DOMWindow and attempting to unregister from
when the WK2 wrapper object was attempting to destroy the DOMWindowExtension.

The underlying issue here was that the DOMWindowProperties were getting disconnectFrame
and willDetachPage called on them at the wrong times.

Rename DOMWindowProperty::disconnectFrame and reconnectFrame to disconnectFrameForPageCache
and reconnectFrameFromPageCache for clarity.

Only invoke DOMWindowProperty::disconnectFrameForPageCache when the frame is going into the
page cache.

In the cases where the DOMWindow is getting destroyed, the frame is being destroyed, or the
DOMWindow is getting cleared because the frame is being navigated, invoke
DOMWindowProperty::willDestroyGlobalObjectInFrame instead of disconnectFrame.

Invoke DOMWindowProperty::willDetachGlobalObjectFromFrame when a document is being detached
because the frame has been detached (e.g. fast/storage/storage-detached-iframe.html) and
won't be immediately destroyed.

Invoke DOMWindowProperty::willDestroyGlobalObjectInCachedFrame when a cached frame is
being destroyed.

New WK2 API Test: DOMWindowExtensionNoCache.

* Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
(WebCore::DOMWindowIndexedDatabase::disconnectFrameForPageCache):
Updated for disconnectFrame rename.
(WebCore::DOMWindowIndexedDatabase::reconnectFrameFromPageCache):
Updated for reconnectFrame rename.
(WebCore::DOMWindowIndexedDatabase::willDestroyGlobalObjectInCachedFrame):
Get rid of the suspended IDBFactory.
(WebCore::DOMWindowIndexedDatabase::willDestroyGlobalObjectInFrame):
Get rid of the IDBFactory.
(WebCore::DOMWindowIndexedDatabase::willDetachGlobalObjectFromFrame):
Ditto.
* Modules/indexeddb/DOMWindowIndexedDatabase.h:

* dom/Document.cpp:
(WebCore::Document::prepareForDestruction):
Tell the DOMWindow before detaching the Document.
* dom/Document.h:

* history/CachedFrame.cpp:
(WebCore::CachedFrame::destroy):
Tell the DOMWindow.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::clear):
Use Document::prepareForDestruction so that the DOMWindow is told about the main frame
navigation before detaching the Document.

* loader/appcache/DOMApplicationCache.cpp:
(WebCore::DOMApplicationCache::disconnectFrameForPageCache):
Updated for the disconnectFrame rename.
(WebCore::DOMApplicationCache::reconnectFrameFromPageCache):
Updated for the reconnectFrame rename.
(WebCore::DOMApplicationCache::willDestroyGlobalObjectInFrame):
Cover the cases formerly covered by disconnectFrame (which was sometimes being called when
called when the frame was destroyed).
* loader/appcache/DOMApplicationCache.h:

* notifications/DOMWindowNotifications.cpp:
(WebCore::DOMWindowNotifications::disconnectFrameForPageCache):
Updated for the disconnectFrame rename.
(WebCore::DOMWindowNotifications::reconnectFrameFromPageCache):
Updated for the reconnectFrame rename.
(WebCore::DOMWindowNotifications::willDestroyGlobalObjectInCachedFrame):
Get rid of the suspended notification center.
(WebCore::DOMWindowNotifications::willDestroyGlobalObjectInFrame):
Get rid of the notification center.
(WebCore::DOMWindowNotifications::willDetachGlobalObjectFromFrame):
Do not allow use of the notification center by detached frames.
* notifications/DOMWindowNotifications.h:

* page/DOMWindow.cpp:
(WebCore::DOMWindow::clearDOMWindowProperties):
Do not call disconnectDOMWindowProperties. It is now the responsibility of the callers to
tell the DOMWindowProperties the correct cause of being cleared.
(WebCore::DOMWindow::~DOMWindow):
Make sure the DOMWindowProperties still know that the DOMWindow is going away.
(WebCore::DOMWindow::frameDestroyed):
Invoke willDestroyGlobalObjectInFrame on the DOMWindowProperties.
(WebCore::DOMWindow::willDetachPage):
It is no longer necessary to tell the DOMWindowProperties anything here.
(WebCore::DOMWindow::willDestroyCachedFrame):
Tell the DOMWindowProperties.
(WebCore::DOMWindow::willDestroyDocumentInFrame):
Ditto.
(WebCore::DOMWindow::willDetachDocumentFromFrame):
Ditto.
(WebCore::DOMWindow::clear):
Ditto.
(WebCore::DOMWindow::disconnectDOMWindowProperties):
Updated for the disconnectFrame rename.
(WebCore::DOMWindow::reconnectDOMWindowProperties):
Ditto.
* page/DOMWindow.h:

* page/DOMWindowExtension.cpp:
(WebCore::DOMWindowExtension::DOMWindowExtension):
Move the responsibility for tracking the disconnected DOMWindow to DOMWindowProperty, since
DOMWindowProperty will need it to unregister the property when a cached frame is destroyed.
(WebCore::DOMWindowExtension::disconnectFrameForPageCache):
Remove the code to check for disconnectFrame being called twice - it is now only called when
a frame goes into the page cache.
Let the DOMWindowProperty keep track of the disconnected DOMWindow.
(WebCore::DOMWindowExtension::reconnectFrameFromPageCache):
Let the DOMWindowProperty keep track of the disconnected DOMWindow.
(WebCore::DOMWindowExtension::willDestroyGlobalObjectInCachedFrame):
Dispatch the willDestroyGlobalObjectForDOMWindowExtension callback.
(WebCore::DOMWindowExtension::willDestroyGlobalObjectInFrame):
Ditto, but only if the callback hasn't already been sent because the frame has been detached.
(WebCore::DOMWindowExtension::willDetachGlobalObjectFromFrame):
Send the callback because nothing interesting can be done in the frame once it has been
detached.
* page/DOMWindowExtension.h:

* page/DOMWindowProperty.cpp:
(WebCore::DOMWindowProperty::DOMWindowProperty):
Keep track of the disconnected DOMWindow so it can be used to unregister the property when a
cached frame is destroyed.
(WebCore::DOMWindowProperty::~DOMWindowProperty):
Also unregister the property when a DOMWindowProperty for a cached frame is destroyed.
(WebCore::DOMWindowProperty::disconnectFrameForPageCache):
Keep track of the disconnected DOMWindow.
(WebCore::DOMWindowProperty::reconnectFrameFromPageCache):
Ditto.
(WebCore::DOMWindowProperty::willDestroyGlobalObjectInCachedFrame):
Unregister the property from the disconnected DOMWindow.
(WebCore::DOMWindowProperty::willDestroyGlobalObjectInFrame):
Unregister the property from the DOMWindow and stop keeping track of the frame.
(WebCore::DOMWindowProperty::willDetachGlobalObjectFromFrame):
Do not set m_frame to 0 because detached frames still have access to the DOMWindow, even if
they can't do anything meaningful with it.
* page/DOMWindowProperty.h:

* page/Frame.cpp:
(WebCore::Frame::setView):
Tell the DOMWindow that the Document is being detached so it can tell the
DOMWindowProperties.

* page/PointerLock.cpp:
(WebCore::PointerLock::disconnectFrameForPageCache):
Updated for disconnectFrame rename.
(WebCore::PointerLock::willDestroyGlobalObjectInFrame):
Cover the cases formerly covered by disconnectFrame (which was sometimes being called when
called when the frame was destroyed).
* page/PointerLock.h:

Tools:

Cached frames can live slightly longer than the page, but most clients unregister themselves
and do other cleanup in the willDestroyPage callback, making them miss the
willDestroyGlobalObjectForDOMWindowExtension callbacks.

The calls to willDestroyGlobalObjectForDOMWindowExtension in the DOMWindowExtensionBasic
test were all being invoked underneath WebPage::close. This is unrealistic. Update that test
to destroy the BundleDOMWindowExtensions in response to the willDestroyPage callback.

Add a test to verify that willDestroyGlobalObjectForDOMWindowExtension is being called for
pages that don't go into the page cache.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
Add DOMWindowExtensionNoCache.cpp, DOMWindowExtensionNoCache_Bundle.cpp, simple-unload.html
and simple-iframe-unload.html

* TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic.cpp:
(TestWebKitAPI):
Remove the expected messages for willDestroyGlobalObjectForDOMWindowExtension.
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
Do not bother to keep track of the live extension count - all of them are expected to be
live until the test completes.
(TestWebKitAPI::TEST):
Fix the calls to EXPECT to pass the expected value first, and use EXPECT_WK_STREQ so that
message failures will be clearer.
* TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp:
(TestWebKitAPI::DOMWindowExtensionBasic::willDestroyPage):
Clean up the BundleDOMWindowExtensions.
(TestWebKitAPI::DOMWindowExtensionBasic::willDestroyGlobalObjectForDOMWindowExtension):
Add an ASSERT_NOT_REACHED.

* TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache.cpp: Added.
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
Keep track of the messages received so they can be checked at the end of the test.
(TestWebKitAPI::TEST):
Navigate to uncacheable pages and back.
* TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionNoCache_Bundle.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKit2/DOMWindowExtensionBasic_Bundle.cpp.
(DOMWindowExtensionNoCache):
(TestWebKitAPI::DOMWindowExtensionNoCache::DOMWindowExtensionNoCache):
Set up all the states for each BundleDOMWindowExtension.
(TestWebKitAPI::DOMWindowExtensionNoCache::frameLoadFinished):
Tell the UI Process about the states of the BundleDOMWindowExtensions.
(TestWebKitAPI::DOMWindowExtensionNoCache::sendExtensionStateMessage):
(TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
(TestWebKitAPI::DOMWindowExtensionNoCache::didCreatePage):
(TestWebKitAPI::DOMWindowExtensionNoCache::willDestroyPage):
Remvoe the remaining BundleDOMWindowExtensions, send the updated state, and finish the test.
(TestWebKitAPI::DOMWindowExtensionNoCache::updateExtensionStateRecord):
(TestWebKitAPI::DOMWindowExtensionNoCache::sendBundleMessage):
(TestWebKitAPI::DOMWindowExtensionNoCache::globalObjectIsAvailableForFrame):
(TestWebKitAPI::DOMWindowExtensionNoCache::willDisconnectDOMWindowExtensionFromGlobalObject):
ASSERT that these pages not going into the page cache are not getting disconnected to go into
the page cache.
(TestWebKitAPI::DOMWindowExtensionNoCache::didReconnectDOMWindowExtensionToGlobalObject):
Ditto about getting reconnected when coming out of the page cache.
(TestWebKitAPI::DOMWindowExtensionNoCache::willDestroyGlobalObjectForDOMWindowExtension):
Tell the UI Process, update the state, and get rid of the BundleDOMWindowExtension.
(TestWebKitAPI::didFinishLoadForFrameCallback):
(TestWebKitAPI::globalObjectIsAvailableForFrameCallback):
(TestWebKitAPI::willDisconnectDOMWindowExtensionFromGlobalObjectCallback):
(TestWebKitAPI::didReconnectDOMWindowExtensionToGlobalObjectCallback):
(TestWebKitAPI::willDestroyGlobalObjectForDOMWindowExtensionCallback):

* TestWebKitAPI/Tests/WebKit2/simple-iframe-unload.html: Added.
* TestWebKitAPI/Tests/WebKit2/simple-unload.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116595 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Ensure animations get ticked at least once when added.
commit-queue@webkit.org [Thu, 10 May 2012 01:52:56 +0000 (01:52 +0000)]
[chromium] Ensure animations get ticked at least once when added.
https://bugs.webkit.org/show_bug.cgi?id=86013

Patch by Ian Vollick <vollick@chromium.org> on 2012-05-09
Reviewed by James Robinson.

Source/WebCore:

Tested in
  CCLayerTreeHostTestTickAnimationWhileBackgrounded.runSingleThreaded
  CCLayerTreeHostTestAddAnimationWithTimingFunction.runSingleThreaded
  CCLayerTreeHostTestSynchronizeAnimationStartTimes.runSingleThreaded
  CCLayerTreeHostTestAnimationFinishedEvents.runSingleThreaded

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::addAnimation):
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
(WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::didAddAnimation):
(WebCore):
(WebCore::CCLayerTreeHost::didBecomeInvisibleOnImplThread):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(CCSingleThreadProxyAnimationTimer):
(WebCore::CCSingleThreadProxyAnimationTimer::create):
(WebCore::CCSingleThreadProxyAnimationTimer::CCSingleThreadProxyAnimationTimer):
(WebCore):
(WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
(WebCore::CCSingleThreadProxy::didAddAnimation):
(WebCore::CCSingleThreadProxy::doComposite):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(WebCore):
* platform/graphics/chromium/cc/CCThreadProxy.h:

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestTickAnimationWhileBackgrounded::animateLayers):
(WTF):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116594 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoJIT memory allocator is not returning memory to the OS on Darwin
fpizlo@apple.com [Thu, 10 May 2012 01:31:59 +0000 (01:31 +0000)]
JIT memory allocator is not returning memory to the OS on Darwin
https://bugs.webkit.org/show_bug.cgi?id=86047
<rdar://problem/11414948>

Reviewed by Geoff Garen.

Work around the problem by using a different madvise() flag, but only for the JIT memory
allocator. Also put in ASSERTs that the call is actually working.

* jit/ExecutableAllocatorFixedVMPool.cpp:
(JSC::FixedVMPoolExecutableAllocator::notifyNeedPage):
(JSC::FixedVMPoolExecutableAllocator::notifyPageIsFree):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116593 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoImplement HTML Media Capture
abarth@webkit.org [Thu, 10 May 2012 01:21:14 +0000 (01:21 +0000)]
Implement HTML Media Capture
https://bugs.webkit.org/show_bug.cgi?id=85958

Reviewed by Eric Seidel.

Source/WebCore:

This patch begins the implementation of
http://www.w3.org/TR/html-media-capture/ by adding the capture
attribute to HTMLInputElement.

Test: fast/forms/file/file-input-capture.html

* html/FileInputType.cpp:
(WebCore::FileInputType::handleDOMActivateEvent):
* html/HTMLAttributeNames.in:
* html/HTMLInputElement.cpp:
(WebCore):
(WebCore::HTMLInputElement::capture):
(WebCore::HTMLInputElement::setCapture):
* html/HTMLInputElement.h:
(HTMLInputElement):
* html/HTMLInputElement.idl:
* platform/FileChooser.h:
(FileChooserSettings):

Source/WebKit/chromium:

* features.gypi:
* public/WebFileChooserParams.h:
(WebFileChooserParams):
* src/ChromeClientImpl.cpp:
(WebKit::ChromeClientImpl::runOpenPanel):

LayoutTests:

* fast/forms/file/file-input-capture-expected.txt: Added.
* fast/forms/file/file-input-capture.html: Added.
    - Test that the capture attribute works properly.
* platform/chromium/test_expectations.txt:
* platform/efl/Skipped:
* platform/gtk/test_expectations.txt:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
    - Skip the test on all platforms. The feature is enabled only on
      Android, which isn't yet able to run LayoutTests upstream.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116592 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[BlackBerry] Refactor data scheme support
charles.wei@torchmobile.com.cn [Thu, 10 May 2012 01:13:35 +0000 (01:13 +0000)]
[BlackBerry]  Refactor data scheme support
https://bugs.webkit.org/show_bug.cgi?id=85938

Reviewed by Rob Buis.

We will create a DataStream in our platform repository,
so that can be wrapped up by NetworkJob for webkit rendering,
and by DownloadStream for downloading.

Refactor, no new tests.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::NetworkJob):
(WebCore::NetworkJob::initialize):
(WebCore::NetworkJob::cancelJob):
(WebCore::NetworkJob::sendResponseIfNeeded):
* platform/network/blackberry/NetworkJob.h:
(NetworkJob):
* platform/network/blackberry/NetworkManager.cpp:
(WebCore::NetworkManager::startJob):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116591 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Android's DRT doesn't want to build WebUserMediaClientMock
abarth@webkit.org [Thu, 10 May 2012 01:01:27 +0000 (01:01 +0000)]
[Chromium] Android's DRT doesn't want to build WebUserMediaClientMock
https://bugs.webkit.org/show_bug.cgi?id=86045

Reviewed by Eric Seidel.

* DumpRenderTree/DumpRenderTree.gypi:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116590 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] MockWebSpeechInputController.cpp should be guarded by ENABLE(INPUT_SPEECH)
abarth@webkit.org [Thu, 10 May 2012 00:56:17 +0000 (00:56 +0000)]
[Chromium] MockWebSpeechInputController.cpp should be guarded by ENABLE(INPUT_SPEECH)
https://bugs.webkit.org/show_bug.cgi?id=86041

Reviewed by Eric Seidel.

* DumpRenderTree/chromium/MockWebSpeechInputController.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116589 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Android needs to swizzle pixel dumps in order to get the same hash as...
abarth@webkit.org [Thu, 10 May 2012 00:51:14 +0000 (00:51 +0000)]
[Chromium] Android needs to swizzle pixel dumps in order to get the same hash as other platforms
https://bugs.webkit.org/show_bug.cgi?id=86040

Reviewed by Kent Tamura.

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::dumpImage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116588 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Don't draw when canDraw() is false
danakj@chromium.org [Thu, 10 May 2012 00:41:28 +0000 (00:41 +0000)]
[chromium] Don't draw when canDraw() is false
https://bugs.webkit.org/show_bug.cgi?id=85829

Reviewed by Adrienne Walker.

Source/WebCore:

This is based on the work of Daniel Sievers in bug
https://bugs.webkit.org/show_bug.cgi?id=82680. When canDraw() is false,
we should not call drawLayers() or prepareToDraw() in both Single- and
Multi-Threaded mode.

drawLayers() is crashing in single threaded mode, and this attempts to
prevent it from being called with invalid state. While making it behave
properly in single-threaded mode, it seems appropriate to unrevert the
parts of 82680 that made threaded mode behave similarly appropriately.

A single-threaded test is not included since LTHTests is unable to run
in single-threaded mode at this time (pending work from Ian Vollick). So
we test in threaded mode only with a note to include a single thread
version.

Tests: CCLayerTreeHostTestCanDrawBlocksDrawing.runMultiThread

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::prepareToDraw):
(WebCore::CCLayerTreeHostImpl::drawLayers):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::doComposite):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
(WebKitTests::CCLayerTreeHostImplTest::CCLayerTreeHostImplTest):
(WebKitTests::TEST_F):
* tests/CCLayerTreeHostTest.cpp:
(WTF):
(CCLayerTreeHostTestCanDrawBlocksDrawing):
(WTF::CCLayerTreeHostTestCanDrawBlocksDrawing::CCLayerTreeHostTestCanDrawBlocksDrawing):
(WTF::CCLayerTreeHostTestCanDrawBlocksDrawing::beginTest):
(WTF::CCLayerTreeHostTestCanDrawBlocksDrawing::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestCanDrawBlocksDrawing::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestCanDrawBlocksDrawing::didCommitAndDrawFrame):
(WTF::CCLayerTreeHostTestCanDrawBlocksDrawing::afterTest):
(WTF::TEST_F):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116587 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL] Build fix after r116464.
rakuco@webkit.org [Thu, 10 May 2012 00:35:47 +0000 (00:35 +0000)]
[EFL] Build fix after r116464.

`ulong' is a type defined by glibc, so it is not very
portable. Use `unsigned long' instead.

* DumpRenderTree/efl/EventSender.cpp:
(DelayedEvent::DelayedEvent):
(DelayedEvent):
(leapForwardCallback):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116586 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Cairo] GLContextGLX releases the context with an uninitialized display
commit-queue@webkit.org [Thu, 10 May 2012 00:34:48 +0000 (00:34 +0000)]
[Cairo] GLContextGLX releases the context with an uninitialized display
https://bugs.webkit.org/show_bug.cgi?id=86039

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-05-09
Reviewed by Philippe Normand.

No new tests. This does not change behavior on most machines, but has
the potential to prevent a pretty nasty crash on others.

Use the shared display to release GLX contexts instead of the uninitialized
m_display member.

* platform/graphics/glx/GLContextGLX.cpp:
(WebCore::GLContextGLX::~GLContextGLX): Release the display with the shared
display.
* platform/graphics/glx/GLContextGLX.h:
(GLContextGLX): Remove the m_display member.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116585 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSubresources loaded after a reload completes shouldn't be revalidated.
tonyg@chromium.org [Thu, 10 May 2012 00:32:55 +0000 (00:32 +0000)]
Subresources loaded after a reload completes shouldn't be revalidated.
https://bugs.webkit.org/show_bug.cgi?id=84614

Source/WebCore:

Based on patch by Darin Fisher.

Reviewed by Darin Fisher.

Tests: http/tests/cache/loaded-from-cache-after-reload-within-iframe.html
       http/tests/cache/loaded-from-cache-after-reload.html

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::checkLoadCompleteForThisFrame): Reset m_loadType after the load completes.

LayoutTests:

Tests by Darin Fisher.

Reviewed by Darin Fisher.

* http/tests/cache/loaded-from-cache-after-reload-expected.txt: Added.
* http/tests/cache/loaded-from-cache-after-reload-within-iframe-expected.txt: Added.
* http/tests/cache/loaded-from-cache-after-reload-within-iframe.html: Added.
* http/tests/cache/loaded-from-cache-after-reload.html: Added.
* http/tests/cache/resources/loaded-from-cache-after-reload-within-iframe-subframe.html: Added.
* http/tests/cache/resources/random-cached.cgi: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116584 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoIt should be possible to get useful debug logging from the JIT memory allocator
fpizlo@apple.com [Thu, 10 May 2012 00:19:55 +0000 (00:19 +0000)]
It should be possible to get useful debug logging from the JIT memory allocator
https://bugs.webkit.org/show_bug.cgi?id=86042

Reviewed by Geoff Garen.

Source/JavaScriptCore:

* jit/ExecutableAllocator.h:

Source/WTF:

* wtf/MetaAllocator.cpp:
(WTF::MetaAllocator::findAndRemoveFreeSpace):
(WTF::MetaAllocator::addFreeSpace):
(WTF::MetaAllocator::dumpProfile):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116583 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed, rolling out r116573.
commit-queue@webkit.org [Thu, 10 May 2012 00:18:23 +0000 (00:18 +0000)]
Unreviewed, rolling out r116573.
http://trac.webkit.org/changeset/116573
https://bugs.webkit.org/show_bug.cgi?id=86038

Broke the Chromium Mac compile (Requested by ojan_gardening on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-05-09

* public/WebPlugin.h:
(WebPlugin):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116582 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] LayoutTestController should use ENABLE guards for some features
abarth@webkit.org [Thu, 10 May 2012 00:15:11 +0000 (00:15 +0000)]
[Chromium] LayoutTestController should use ENABLE guards for some features
https://bugs.webkit.org/show_bug.cgi?id=86030

Reviewed by Eric Seidel.

These features are disabled on OS(ANDROID) and so shouldn't be compiled
when the feature is off.

* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::LayoutTestController):
* DumpRenderTree/chromium/LayoutTestController.h:
(LayoutTestController):
* DumpRenderTree/chromium/TestShell.h:
(TestShell):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116581 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[V8] Fix issue where V8BindingPerContextData could keep the context object alive
arv@chromium.org [Thu, 10 May 2012 00:14:49 +0000 (00:14 +0000)]
[V8] Fix issue where V8BindingPerContextData could keep the context object alive
https://bugs.webkit.org/show_bug.cgi?id=86036

Reviewed by Kentaro Hara.

This is a partial revert of http://trac.webkit.org/changeset/114320/. This keeps
the layout tests that were introduced since it turns out that
http://trac.webkit.org/changeset/114989 fixes the tests too.

Covered by: http/tests/security/isolatedWorld/context-destroy.html

* bindings/v8/V8IsolatedContext.cpp:
(WebCore::V8IsolatedContext::destroy):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116580 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoSpeed up some parts of TileCache drawing
andersca@apple.com [Thu, 10 May 2012 00:12:48 +0000 (00:12 +0000)]
Speed up some parts of TileCache drawing
https://bugs.webkit.org/show_bug.cgi?id=86033
<rdar://problem/10919373>

Reviewed by Sam Weinig.

* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::tileCoverageRect):
If we can't have scrollbars, there's not much need to extend the tile coverage rect outside of the visible rect, since it's
unlikely that we'll do any form of scrolling here.

(WebCore::TileCache::revalidateTiles):
Don't update the tile layer frame if it's big enough to contain the tile size. Also, if there are no new tiles created,
don't call platformCALayerDidCreateTiles since that will trigger an extra layer flush.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116579 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoGC race condition in OpaqueJSClass::prototype
barraclough@apple.com [Thu, 10 May 2012 00:04:25 +0000 (00:04 +0000)]
GC race condition in OpaqueJSClass::prototype
https://bugs.webkit.org/show_bug.cgi?id=86034

Build fix.

* API/JSClassRef.cpp:
(OpaqueJSClass::prototype):
    - Eeeep, landed bad version of patch!

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116578 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoGC race condition in OpaqueJSClass::prototype
barraclough@apple.com [Wed, 9 May 2012 23:56:05 +0000 (23:56 +0000)]
GC race condition in OpaqueJSClass::prototype
https://bugs.webkit.org/show_bug.cgi?id=86034

Reviewed by Filip Pizlo.

The bug here is basically:
    if (weakref) weakref->method()
where a GC may occur between the if & the method call.

* API/JSClassRef.cpp:
(OpaqueJSClass::prototype):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116575 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agosetPageScaleFactor should setScrollPosition if scale is unchanged
commit-queue@webkit.org [Wed, 9 May 2012 23:44:03 +0000 (23:44 +0000)]
setPageScaleFactor should setScrollPosition if scale is unchanged
https://bugs.webkit.org/show_bug.cgi?id=84400

Patch by Alexandre Elias <aelias@google.com> on 2012-05-09
Reviewed by Adam Barth.

Previously, setPageScaleFactor forgot about its "origin" argument if
the page scale factor is unchanged.  This has proven undesirable in
practice because, for example, a single pinch gesture may zoom in and
back out to the original page scale factor, but at a different scroll
offset.

New test case added to scale-and-scroll-body-expected.txt

* page/Page.cpp:
(WebCore::Page::setPageScaleFactor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116574 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Expose WebPluginContainer of WebPlugin to embedder
fsamuel@chromium.org [Wed, 9 May 2012 23:33:57 +0000 (23:33 +0000)]
[Chromium] Expose WebPluginContainer of WebPlugin to embedder
https://bugs.webkit.org/show_bug.cgi?id=85916

Reviewed by Darin Fisher.

The browser plugin needs to access its current guest's  WebPluginContainer
so that it can replace the guest with another guest WebPlugin when navigating
across processes.

* public/WebPlugin.h:
(WebPlugin):
(WebKit::WebPlugin::container):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116573 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix overzealous re-opened since blocked by... message
tomz@codeaurora.org [Wed, 9 May 2012 23:22:04 +0000 (23:22 +0000)]
Fix overzealous re-opened since blocked by... message
https://bugs.webkit.org/show_bug.cgi?id=86020

Reviewed by Adam Barth.

Changed CreateBug behavior to only re-open a blocked bug if it
was RESOLVED.  Also had to update the test infrastructure slightly
to allow for distinct mock commit revisions, so one could point
to a RESOLVED bug for testing while another pointed to an OPEN bug.

Also moved default created mock bug to be 60001 instead of 50004
which already exists as a reference mock bug.

* Scripts/webkitpy/common/checkout/checkout_mock.py:
(MockCheckout.__init__):
(MockCheckout.commit_info_for_revision):
* Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
(MockBugzilla.create_bug):
* Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
* Scripts/webkitpy/tool/commands/download_unittest.py:
(test_create_rollout_resolved):
* Scripts/webkitpy/tool/commands/queries_unittest.py:
(FailureReasonTest.test_blame_line_for_revision):
* Scripts/webkitpy/tool/steps/createbug.py:
(CreateBug.run):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116572 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUse suitable viewport values on XHTML-MP pages.
commit-queue@webkit.org [Wed, 9 May 2012 23:10:21 +0000 (23:10 +0000)]
Use suitable viewport values on XHTML-MP pages.
https://bugs.webkit.org/show_bug.cgi?id=85425

Patch by Hugo Parente Lima <hugo.lima@openbossa.org> on 2012-05-09
Reviewed by Kenneth Rohde Christiansen.

.:

Add LEGACY_VIEWPORT_ADAPTION use feature to cmake build system,
this feature will enable the use of a suitable viewport size
on legacy XHTML-MP pages.

* Source/cmake/WebKitFeatures.cmake:

Source/WebCore:

Tests: fast/viewport/viewport-legacy-xhtmlmp-misplaced-doctype.html
       fast/viewport/viewport-legacy-xhtmlmp-ordering.html
       fast/viewport/viewport-legacy-xhtmlmp.html

Use device-width and device-height as viewport size on
XHTML-MP pages if the use feature LEGACY_VIEWPORT_ADAPTION
is set according as the non normative section of
http://www.w3.org/TR/css-device-adapt/

* dom/Document.cpp:
(WebCore::Document::setDocType):

Tools:

Enable LEGACY_VIEWPORT_ADAPTION on Qt port.

* qmake/mkspecs/features/features.prf:

LayoutTests:

Add tests for legacy viewport adaption and skip them
on all ports but the Qt one.

* fast/viewport/viewport-legacy-xhtmlmp-expected.txt: Added.
* fast/viewport/viewport-legacy-xhtmlmp-misplaced-doctype-expected.txt: Added.
* fast/viewport/viewport-legacy-xhtmlmp-misplaced-doctype.html: Added.
* fast/viewport/viewport-legacy-xhtmlmp-ordering-expected.txt: Added.
* fast/viewport/viewport-legacy-xhtmlmp-ordering.html: Added.
* fast/viewport/viewport-legacy-xhtmlmp.html: Added.
* platform/chromium/test_expectations.txt:
* platform/efl/Skipped:
* platform/gtk/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116571 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agohttps://bugs.webkit.org/show_bug.cgi?id=86025
bdakin@apple.com [Wed, 9 May 2012 23:06:06 +0000 (23:06 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=86025
RTL and vertical text documents do no scroll properly with the new
tiled scrolling model
-and corresponding-
<rdar://problem/11077589>

Reviewed by Dan Bernstein.

Most of the fix here is just to teach the scrolling tree about the
scroll origin.
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinator::setScrollParameters):
* page/scrolling/ScrollingCoordinator.h:
(ScrollParameters):
* page/scrolling/ScrollingTreeNode.cpp:
(WebCore::ScrollingTreeNode::update):
* page/scrolling/ScrollingTreeNode.h:
(WebCore::ScrollingTreeNode::scrollOrigin):
(ScrollingTreeNode):
* page/scrolling/ScrollingTreeState.cpp:
(WebCore::ScrollingTreeState::setScrollOrigin):
(WebCore):
* page/scrolling/ScrollingTreeState.h:
(WebCore::ScrollingTreeState::scrollOrigin):
(ScrollingTreeState):
* page/scrolling/mac/ScrollingTreeNodeMac.mm:
(WebCore::ScrollingTreeNodeMac::scrollPosition):
(WebCore::ScrollingTreeNodeMac::setScrollLayerPosition):
(WebCore::ScrollingTreeNodeMac::minimumScrollPosition):
(WebCore::ScrollingTreeNodeMac::maximumScrollPosition):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidScroll):

Teaching the scrolling tree about the scroll origin revealed this pre-
existing bug. layoutOverflowRect() is not the right rect to use since
it is not writing-mode savvy. unscaledDocumentRect() is the right rect
for the view's bounds.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateCompositedBounds):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116570 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCleanup SVGElement.cpp
rwlbuis@webkit.org [Wed, 9 May 2012 22:53:02 +0000 (22:53 +0000)]
Cleanup SVGElement.cpp
https://bugs.webkit.org/show_bug.cgi?id=86004

Reviewed by Eric Seidel.

Remove unneeded includes. We do not need to check attr in SVGElement::attributeChanged,
lower layers assume it is non-null and we do not call attributeChanged in SVG.

* svg/SVGElement.cpp:
(WebCore::SVGElement::attributeChanged):
(WebCore::SVGElement::isAnimatableAttribute):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116569 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Move clipboard to Platform.h
pilgrim@chromium.org [Wed, 9 May 2012 22:50:48 +0000 (22:50 +0000)]
[Chromium] Move clipboard to Platform.h
https://bugs.webkit.org/show_bug.cgi?id=85758

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/Platform:

* Platform.gypi:
* chromium/public/Platform.h:
(WebKit):
(Platform):
(WebKit::Platform::clipboard):
* chromium/public/WebClipboard.h: Added.
(WebKit):
(WebClipboard):
(WebKit::WebClipboard::sequenceNumber):
(WebKit::WebClipboard::isFormatAvailable):
(WebKit::WebClipboard::readAvailableTypes):
(WebKit::WebClipboard::readPlainText):
(WebKit::WebClipboard::readHTML):
(WebKit::WebClipboard::readImage):
(WebKit::WebClipboard::readCustomData):
(WebKit::WebClipboard::writePlainText):
(WebKit::WebClipboard::writeHTML):
(WebKit::WebClipboard::writeURL):
(WebKit::WebClipboard::writeImage):
(WebKit::WebClipboard::writeDataObject):
(WebKit::WebClipboard::~WebClipboard):
* chromium/public/WebDragData.h: Added.
(WebKit):
(WebDragData):
(WebKit::WebDragData::~WebDragData):
(WebKit::WebDragData::WebDragData):
(WebKit::WebDragData::operator=):
(WebKit::WebDragData::isNull):
* chromium/public/WebImage.h: Added.
(WebKit):
(WebImage):
(WebKit::WebImage::~WebImage):
(WebKit::WebImage::WebImage):
(WebKit::WebImage::operator=):
(WebKit::WebImage::getSkBitmap):
(WebKit::WebImage::init):
(WebKit::WebImage::getCGImageRef):

Source/WebKit/chromium:

* WebKit.gyp:
* public/platform/WebClipboard.h:
* public/platform/WebDragData.h:
* public/platform/WebImage.h:
* public/platform/WebKitPlatformSupport.h:
(WebKit):
(WebKitPlatformSupport):
* src/AssertMatchingEnums.cpp:
* src/DragClientImpl.cpp:
* src/PlatformSupport.cpp:
* src/WebDragData.cpp:
* src/WebImageCG.cpp:
* src/WebImageDecoder.cpp:
* src/WebImageSkia.cpp:
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::copy):
* src/WebViewImpl.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116566 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCopiedSpace does not add pinned blocks back to the to-space filter
mhahnenberg@apple.com [Wed, 9 May 2012 22:50:42 +0000 (22:50 +0000)]
CopiedSpace does not add pinned blocks back to the to-space filter
https://bugs.webkit.org/show_bug.cgi?id=86011

Reviewed by Geoffrey Garen.

After a collection has finished, we go through the blocks in from-space
and move any of them that are pinned into to-space. At the beginning of
collection, we reset the to-space block filter that is used during
conservative scanning and add back the blocks that are filled during the
collection. However, we neglect to add back those blocks that are moved
from from-space to to-space, which can cause the conservative scan to
think that some pinned items are not actually in CopiedSpace.

* heap/CopiedSpace.cpp:
(JSC::CopiedSpace::doneCopying): Add the pinned blocks back to the
to-space filter. Also added a comment and assert for future readers that
indicates that it's okay that we don't also add the block to the
to-space block set since it was never removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116565 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoadd some basic perf-o-matic tests for flexbox
tony@chromium.org [Wed, 9 May 2012 22:45:20 +0000 (22:45 +0000)]
add some basic perf-o-matic tests for flexbox
https://bugs.webkit.org/show_bug.cgi?id=86017

Reviewed by Ryosuke Niwa.

Each of these tests take < 3s on my machine.

* Layout/flexbox-column-nowrap.html: Added.
* Layout/flexbox-column-wrap.html: Added.
* Layout/flexbox-row-nowrap.html: Added.
* Layout/flexbox-row-wrap.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoWhen creating a new page during a navigation, prime the initial document with the...
jochen@chromium.org [Wed, 9 May 2012 22:13:12 +0000 (22:13 +0000)]
When creating a new page during a navigation, prime the initial document with the correct referrer policy
https://bugs.webkit.org/show_bug.cgi?id=86001

Reviewed by Adam Barth.

Source/WebCore:

Test: http/tests/security/referrer-policy-redirect-link.html

* dom/Document.h:
(WebCore::Document::setReferrerPolicy):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):

Tools:

Store the referrer policy in the request, so the network stack can comply with it.

* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::willSendRequest):

LayoutTests:

Skip the test on all but chromium, see https://bugs.webkit.org/show_bug.cgi?id=86000

* http/tests/security/referrer-policy-redirect-link-expected.txt: Added.
* http/tests/security/referrer-policy-redirect-link.html: Added.
* http/tests/security/resources/referrer-policy-postmessage.php: Added.
* http/tests/security/resources/referrer-policy-redirect-link.html: Added.
* platform/efl/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116563 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoIndexedDB: call abort handler when there are problems committing
commit-queue@webkit.org [Wed, 9 May 2012 22:09:10 +0000 (22:09 +0000)]
IndexedDB: call abort handler when there are problems committing
https://bugs.webkit.org/show_bug.cgi?id=85841

Patch by Alec Flett <alecflett@chromium.org> on 2012-05-09
Reviewed by Ojan Vafai.

No new tests. Every existing test that calls commit() is testing
the success side of this, and this only throws when there are
LevelDB errors, which is exactly what we're trying to diagnose
with this patch.

* Modules/indexeddb/IDBBackingStore.h:
(Transaction):
* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore::IDBLevelDBBackingStore::deleteDatabase):
(WebCore::IDBLevelDBBackingStore::Transaction::commit):
* Modules/indexeddb/IDBLevelDBBackingStore.h:
(Transaction):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::commit):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116562 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Chromium] Remove PlatformSupport::loadPlatformImageResource, call loadResource directly
pilgrim@chromium.org [Wed, 9 May 2012 22:06:27 +0000 (22:06 +0000)]
[Chromium] Remove PlatformSupport::loadPlatformImageResource, call loadResource directly
https://bugs.webkit.org/show_bug.cgi?id=84417

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* platform/chromium/PlatformSupport.h:
(PlatformSupport):
* platform/graphics/chromium/ImageChromium.cpp:
(WebCore::Image::loadPlatformResource):
* platform/graphics/chromium/ImageChromiumMac.mm: Removed.

Source/WebKit/chromium:

* src/PlatformSupport.cpp:
(WebCore):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116561 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUpdate compositing/RTL tests to fail if the root layer is shifted incorrectly
enne@google.com [Wed, 9 May 2012 22:01:09 +0000 (22:01 +0000)]
Update compositing/RTL tests to fail if the root layer is shifted incorrectly
https://bugs.webkit.org/show_bug.cgi?id=85820

Reviewed by James Robinson.

For the Chromium port, if the root layer was shifted incorrectly, the
non-composited red indicator layers would get drawn outside the root
layers bounds, making it impossible to see if the test was failing.

Also turn off overflow:hidden because compositing/ tests have mock
scrollbars. This makes it much easier to debug these tests locally.

* compositing/rtl/rtl-absolute-expected.png:
* compositing/rtl/rtl-absolute-overflow-expected.png:
* compositing/rtl/rtl-absolute-overflow-expected.txt:
* compositing/rtl/rtl-absolute-overflow-scrolled-expected.png:
* compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
* compositing/rtl/rtl-absolute-overflow-scrolled.html:
* compositing/rtl/rtl-absolute-overflow.html:
* compositing/rtl/rtl-absolute.html:
* compositing/rtl/rtl-fixed-expected.png:
* compositing/rtl/rtl-fixed-overflow-expected.png:
* compositing/rtl/rtl-fixed-overflow-expected.txt:
* compositing/rtl/rtl-fixed-overflow-scrolled-expected.png:
* compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
* compositing/rtl/rtl-fixed-overflow-scrolled.html:
* compositing/rtl/rtl-fixed-overflow.html:
* compositing/rtl/rtl-fixed.html:
* compositing/rtl/rtl-iframe-absolute-overflow-expected.png:
* compositing/rtl/rtl-iframe-absolute-overflow-expected.txt:
* compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.png:
* compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt:
* compositing/rtl/rtl-iframe-fixed-overflow-expected.png:
* compositing/rtl/rtl-iframe-fixed-overflow-expected.txt:
* compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.png:
* compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116560 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove CYGWIN=tty from environment variable as its no longer supported
commit-queue@webkit.org [Wed, 9 May 2012 21:56:11 +0000 (21:56 +0000)]
Remove CYGWIN=tty from environment variable as its no longer supported
https://bugs.webkit.org/show_bug.cgi?id=85791

The CYGWIN=tty environment variable is no longer supported from Cygwin
version 1.7.10. This fix avoids addition of this environment variable
for Cygwin versions greater than 1.7.9. For supporting older versions
i.e. 1.7.9 or older, the script takes care of retaining the environment
variable.

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-05-09
Reviewed by Adam Roben.

* Scripts/webkitdirs.pm:
(setupAppleWinEnv):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116559 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] remove the obsolete WebFrame::referrerPolicy method
jochen@chromium.org [Wed, 9 May 2012 21:27:36 +0000 (21:27 +0000)]
[chromium] remove the obsolete WebFrame::referrerPolicy method
https://bugs.webkit.org/show_bug.cgi?id=86003

Reviewed by Adam Barth.

* public/WebFrame.h:
* src/WebFrameImpl.cpp:
* src/WebFrameImpl.h:
(WebFrameImpl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116558 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoRemove some isSVGFoo methods
commit-queue@webkit.org [Wed, 9 May 2012 21:20:08 +0000 (21:20 +0000)]
Remove some isSVGFoo methods
https://bugs.webkit.org/show_bug.cgi?id=86009

Patch by Rob Buis <rbuis@rim.com> on 2012-05-09
Reviewed by Eric Seidel.

These are not used at the moment and were probably just copy and pasted from
isSVGFoo methods in RenderObject.h.

* rendering/RenderObject.h:
* rendering/svg/RenderSVGEllipse.h:
(RenderSVGEllipse):
* rendering/svg/RenderSVGRect.h:
(RenderSVGRect):
* rendering/svg/RenderSVGShape.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116557 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Check whether an active document loader exists before accessing it
jochen@chromium.org [Wed, 9 May 2012 21:17:35 +0000 (21:17 +0000)]
[chromium] Check whether an active document loader exists before accessing it
https://bugs.webkit.org/show_bug.cgi?id=85892

Reviewed by Eric Seidel.

Although FrameLoader::loadInSameDocument which invokes this
method does not have a provisional document loader, we're seeing crashes
where the FrameLoader is in provisional state, and thus
activeDocumentLoader returns 0. Lacking any understanding of how this
can happen, we do this check here to avoid crashing.

* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDidNavigateWithinPage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116556 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Add impl-thread support for fill-mode and direction css animation properties
commit-queue@webkit.org [Wed, 9 May 2012 20:27:03 +0000 (20:27 +0000)]
[chromium] Add impl-thread support for fill-mode and direction css animation properties
https://bugs.webkit.org/show_bug.cgi?id=77662

Patch by Ian Vollick <vollick@chromium.org> on 2012-05-09
Reviewed by James Robinson.

Source/WebCore:

Adds support for accelerating css animations with -webkit-animation-fill-mode,
and -webkit-animation-direction properties.

Tested in:
  CCActiveAnimationTest.TrimTimeAlternating
  CCLayerAnimationControllerTest.createReversedAnimation
  CCLayerAnimationControllerTest.createAlternatingAnimation
  CCLayerAnimationControllerTest.createReversedAlternatingAnimation

* platform/graphics/chromium/cc/CCActiveAnimation.cpp:
(WebCore::CCActiveAnimation::CCActiveAnimation):
(WebCore::CCActiveAnimation::trimTimeToCurrentIteration):
(WebCore::CCActiveAnimation::cloneForImplThread):
* platform/graphics/chromium/cc/CCActiveAnimation.h:
(CCActiveAnimation):
(WebCore::CCActiveAnimation::alternatesDirection):
(WebCore::CCActiveAnimation::setAlternatesDirection):
* platform/graphics/chromium/cc/CCLayerAnimationController.cpp:

Source/WebKit/chromium:

* tests/CCActiveAnimationTest.cpp:
(WebCore::TEST):
(WebCore):
* tests/CCLayerAnimationControllerTest.cpp:
(WebKitTests::TEST):
(WebKitTests):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116554 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
zandobersek@gmail.com [Wed, 9 May 2012 20:25:15 +0000 (20:25 +0000)]
[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=85591

Reviewed by Philippe Normand.

Remove all the test expectations for tests that seem to consistently
pass on the Gtk bots but are expected to crash. Any tests that backfire
will have their bug entries updated or closed otherwise.

* platform/gtk/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116553 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agonrwt: --skip-failing-tests should also skip flaky tests
dpranke@chromium.org [Wed, 9 May 2012 19:59:44 +0000 (19:59 +0000)]
nrwt: --skip-failing-tests should also skip flaky tests
https://bugs.webkit.org/show_bug.cgi?id=85941

Reviewed by Ojan Vafai.

This changes --skip-failing-tests so that we skip tests that
are believed to pass sometimes as well as tests that are
believed to always fail.

In addition, in testing this I discovered that we had lousy
test coverage of the details of retrying test failures and
--clobber-old-results, so I wrote some more tests.

* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.prepare_lists_and_print_output):
* Scripts/webkitpy/layout_tests/port/test.py:
(unit_test_list):
(TestPort.__init__):
(TestDriver.run_test):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_skip_failing_tests):
(MainTest.test_retrying_and_flaky_tests):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116552 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCrash from removal of a line break object
commit-queue@webkit.org [Wed, 9 May 2012 19:48:51 +0000 (19:48 +0000)]
Crash from removal of a line break object
https://bugs.webkit.org/show_bug.cgi?id=85997

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-05-09
Reviewed by David Hyatt.

Source/WebCore:

Regression from r115343. That replaced a call to setNeedsLayout()
with a separate call that used a different bit during linebox
invalidation after renderer child removal. There are special cases
where layout isn't marked on parent nodes just from the removal, so
line dirtying needs to explicitly mark ancestors for layout.

* rendering/RenderObject.h:
(WebCore::RenderObject::setAncestorLineBoxDirty):

LayoutTests:

Test case to exercise crashing condition in bug 85997.

* fast/block/line-layout/line-break-removal-near-textarea-crash-expected.txt: Added
* fast/block/line-layout/line-break-removal-near-textarea-crash.html: Added

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116551 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt][WK2] REGRESSION(r113678):After this change fast/text/text-stroke-width-cairo...
alexis.menard@openbossa.org [Wed, 9 May 2012 19:37:24 +0000 (19:37 +0000)]
[Qt][WK2] REGRESSION(r113678):After this change fast/text/text-stroke-width-cairo-dos.html makes the next test crash
https://bugs.webkit.org/show_bug.cgi?id=83582

Unreviewed gardening : I don't observe crashes anymore.

* platform/qt-5.0-wk2/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116550 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoFix performance regression for floats caused by LayoutUnit change
leviw@chromium.org [Wed, 9 May 2012 19:36:05 +0000 (19:36 +0000)]
Fix performance regression for floats caused by LayoutUnit change
https://bugs.webkit.org/show_bug.cgi?id=85834

Reviewed by Ojan Vafai.

Refactoring FractionalLayout types to alleviate performance issues. Explicitly
inlining constructor and operator functions in FractionalLayoutUnit, as well as
pixelSnappedIntSize and pixelSnappedIntRect (particularly hot code paths). Also
further simplifying round and ceil functions when sub-pixel layout is not enabled.

pixelSnappedIntSize was the only function defined in FractionalLayoutSize.cpp,
so it is removed.

No new tests. No change in functionality.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/FractionalLayoutUnit.h:
(WebCore::FractionalLayoutUnit::FractionalLayoutUnit):
(FractionalLayoutUnit):
(WebCore::FractionalLayoutUnit::toInt):
(WebCore::FractionalLayoutUnit::toFloat):
(WebCore::FractionalLayoutUnit::toDouble):
(WebCore::FractionalLayoutUnit::toUnsigned):
(WebCore::FractionalLayoutUnit::operator int):
(WebCore::FractionalLayoutUnit::operator unsigned):
(WebCore::FractionalLayoutUnit::operator float):
(WebCore::FractionalLayoutUnit::operator double):
(WebCore::FractionalLayoutUnit::operator bool):
(WebCore::FractionalLayoutUnit::ceil):
(WebCore::FractionalLayoutUnit::round):
* platform/graphics/FractionalLayoutRect.cpp:
(WebCore):
* platform/graphics/FractionalLayoutRect.h:
(WebCore::FractionalLayoutRect::pixelSnappedSize):
(WebCore::pixelSnappedIntRect):
(WebCore):
* platform/graphics/FractionalLayoutSize.cpp: Removed.
* platform/graphics/FractionalLayoutSize.h:
(WebCore):
* rendering/LayoutTypes.h:
(WebCore::pixelSnappedIntSize):
(WebCore):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116549 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoUnreviewed. Rolled DEPS.
ojan@chromium.org [Wed, 9 May 2012 19:01:03 +0000 (19:01 +0000)]
Unreviewed.  Rolled DEPS.

* DEPS:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116548 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[EFL][DRT] EFL's DRT needs to support LayoutTestController.dumpIconChanges()
commit-queue@webkit.org [Wed, 9 May 2012 18:40:25 +0000 (18:40 +0000)]
[EFL][DRT] EFL's DRT needs to support LayoutTestController.dumpIconChanges()
https://bugs.webkit.org/show_bug.cgi?id=84435

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-09
Reviewed by Antonio Gomes.

Source/WebKit/efl:

Emit a "icon,changed" signal on the frame when its favion changed.
Clarify that the "icon,loaded" signal is only emitted for the main
frame.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::dispatchDidReceiveIcon):
(WebCore::FrameLoaderClientEfl::dispatchDidChangeIcons):
* ewk/ewk_frame.cpp:
(ewk_frame_icon_changed):
* ewk/ewk_frame.h:
* ewk/ewk_private.h:

Tools:

Catch the "icon,changed" signal on the frames in EFL's DumpRenderTree
to support LayoutTestController's dumpIconChanges().

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onFrameIconChanged):
(DumpRenderTreeChrome::onFrameCreated):
* DumpRenderTree/efl/DumpRenderTreeChrome.h:
(DumpRenderTreeChrome):

LayoutTests:

Unskip the test checking for DumpRenderTree's support for
LayoutTestController's dumpIconChanges() in EFL port.

* platform/efl/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116547 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Wed, 9 May 2012 18:30:58 +0000 (18:30 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-5.0/fast/text/international/text-spliced-font-expected.png: Added.
* platform/qt-5.0/fast/text/international/text-spliced-font-expected.txt: Added.
* platform/qt/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116546 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoCrash in ReplaceSelectionCommand::performTrivialReplace
inferno@chromium.org [Wed, 9 May 2012 18:28:39 +0000 (18:28 +0000)]
Crash in ReplaceSelectionCommand::performTrivialReplace
https://bugs.webkit.org/show_bug.cgi?id=85943

Reviewed by Ryosuke Niwa.

Source/WebCore:

RefPtr nodeAfterInsertionPos to guard against mutation events.

Test: editing/inserting/insert-html-crash.html

* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::performTrivialReplace):

LayoutTests:

* editing/inserting/insert-html-crash-expected.txt: Added.
* editing/inserting/insert-html-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116545 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[chromium] Exposes OrientationChangeEvent.
bulach@chromium.org [Wed, 9 May 2012 17:58:47 +0000 (17:58 +0000)]
[chromium] Exposes OrientationChangeEvent.
https://bugs.webkit.org/show_bug.cgi?id=85976

Reviewed by Adam Barth.

This is used by the android port, we need to expose the existing
WebCore API.

* public/WebFrame.h:
(WebFrame):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::sendOrientationChangeEvent):
(WebKit):
* src/WebFrameImpl.h:
(WebFrameImpl):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116544 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoHit testing is incorrect in some cases with perspective transforms
shawnsingh@chromium.org [Wed, 9 May 2012 17:57:50 +0000 (17:57 +0000)]
Hit testing is incorrect in some cases with perspective transforms
https://bugs.webkit.org/show_bug.cgi?id=79136

Reviewed by Simon Fraser.

Source/WebCore:

Tests: transforms/3d/hit-testing/coplanar-with-camera.html
       transforms/3d/hit-testing/perspective-clipped.html

* platform/graphics/transforms/TransformationMatrix.cpp:
(WebCore::TransformationMatrix::projectPoint): Fix a
divide-by-zero error so that values do not become Inf or Nan. Also
fix an overflow error by using a large, but not-too-large constant
to represent infinity.

(WebCore::TransformationMatrix::projectQuad): Fix an error where
incorrect quads were being returned. Incorrect quads can occur
when projectPoint clamped==true after returning.

LayoutTests:

* transforms/3d/hit-testing/coplanar-with-camera-expected.txt: Added.
* transforms/3d/hit-testing/coplanar-with-camera.html: Added.
* transforms/3d/hit-testing/perspective-clipped-expected.txt: Added.
* transforms/3d/hit-testing/perspective-clipped.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116543 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agoTextarea-placeholder-wrapping.html may fail because of scrollbars
commit-queue@webkit.org [Wed, 9 May 2012 17:47:03 +0000 (17:47 +0000)]
Textarea-placeholder-wrapping.html may fail because of scrollbars
https://bugs.webkit.org/show_bug.cgi?id=85989

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-05-09
Reviewed by Ryosuke Niwa.

Increasing rows to avoid scrollbar single pixel differences
to cause failures of this test.

* fast/forms/textarea-placeholder-wrapping-expected.html:
* fast/forms/textarea-placeholder-wrapping.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116542 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years ago[GTK] Missing WebPreferences for media playback requiring user gestures and inline...
commit-queue@webkit.org [Wed, 9 May 2012 17:23:24 +0000 (17:23 +0000)]
[GTK] Missing WebPreferences for media playback requiring user gestures and inline playback
https://bugs.webkit.org/show_bug.cgi?id=85194

Patch by Simon Pena <spena@igalia.com> on 2012-05-09
Reviewed by Martin Robinson.

Expose WebPreferences for media playback requires user gesture and
media playback allows inline to GTK side.

This adds two properties (mediaPlaybackRequiresUserGesture and
mediaPlaybackAllowsInline) to GTK WebKit WebSettings, and connects
them to the WebKit WebView, so clients can programmatically modify
them.

* webkit/webkitwebsettings.cpp: install new properties and update
setter and getter
(webkit_web_settings_class_init):
(webkit_web_settings_set_property):
(webkit_web_settings_get_property):
* webkit/webkitwebsettingsprivate.h: add media playback related
properties
* webkit/webkitwebview.cpp: connect newly added properties
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@116541 268f45cc-cd09-0410-ab3c-d52691b4dbfc