[WIN] Deprecate String += operator
https://bugs.webkit.org/show_bug.cgi?id=96083

Reviewed by Adam Barth.

* wtf/Platform.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127879 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r127820.
http://trac.webkit.org/changeset/127820
https://bugs.webkit.org/show_bug.cgi?id=96117

Introduces crashes in Chromium compositing tests (Requested by
fsamuel on #webkit).

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

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::evictAllContentTextures):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:
(WebCore::CCPrioritizedTextureManager::clearAllMemory):
(WebCore::CCPrioritizedTextureManager::allBackingTexturesWereDeleted):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:
(CCPrioritizedTextureManager):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::commitAndComposite):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::beginFrameCompleteOnImplThread):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127880 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Remove feature about:cache/disable and about:cache/enable
https://bugs.webkit.org/show_bug.cgi?id=95820

Reviewed by Yong Li.

Fix warning that was caused by r127680.

* WebKitSupport/AboutData.cpp:
(BlackBerry::WebKit::cachePage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127881 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: AX: ARIA spin button should support range value attributes
https://bugs.webkit.org/show_bug.cgi?id=96076

Reviewed by Chris Fleizach.

Make an ARIA spin button support ARIA range attributes like
aria-valuenow, aria-valuemin, etc. - just like slider, progressbar,
and scrollbar.

Test: accessibility/spinbutton-value.html

* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::isSpinButton):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::valueDescription):
(WebCore):
(WebCore::AccessibilityRenderObject::isAriaRange):
(WebCore::AccessibilityRenderObject::valueForRange):
(WebCore::AccessibilityRenderObject::maxValueForRange):
(WebCore::AccessibilityRenderObject::minValueForRange):
(WebCore::AccessibilityRenderObject::stringValue):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::isGenericFocusableElement):
(WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Source/WebKit/chromium: AX: ARIA spin button should support range value attributes
https://bugs.webkit.org/show_bug.cgi?id=96076

Reviewed by Chris Fleizach.

Expose supportsRangeValue to simplify Chromium logic for when to
extract a value from a range.

* public/WebAccessibilityObject.h:
(WebAccessibilityObject):
* src/WebAccessibilityObject.cpp:
(WebKit::WebAccessibilityObject::supportsRangeValue):
(WebKit):

Tools: New time input needs accessibility
https://bugs.webkit.org/show_bug.cgi?id=96032

Reviewed by Chris Fleizach.

Add support for valueDescription for testing.

* DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:
(getValueDescription):
(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::valueDescriptionGetterCallback):
* DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.h:
(AccessibilityUIElement):

LayoutTests: AX: ARIA spin button should support range value attributes
https://bugs.webkit.org/show_bug.cgi?id=96076

Reviewed by Chris Fleizach.

Test that an ARIA spin button exposes ARIA range attributes like
aria-valuenow, aria-valuemin, etc.

* accessibility/spinbutton-value-expected.txt: Added.
* accessibility/spinbutton-value.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127882 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Chromium Linux EWS bots and CQ bots are flaky
https://bugs.webkit.org/show_bug.cgi?id=96041

Unreviewed, trying to get the cr-linux ews into a usable state.

* platform/chromium/TestExpectations: mark 2 http cache tests as flaky

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127883 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] when one of multiple tabs uses authentication, user can get the auth dialog while the other tab has focus.
https://bugs.webkit.org/show_bug.cgi?id=95488
PR: 186597.

Internally reviewed by Joe Mason.
Patch by Lianghui Chen <liachen@rim.com> on 2012-09-07
Reviewed by Yong Li.

Source/WebCore:

The fix for this PR will come as 2 patches. This is the first patch which
will make the authentication challenge asynchronous inside WebKit. The
bext patch will add an AuthenticationChallengeManager that manages these
authentication requests asynchronously.

This patch add AuthenticationChallengeClient interface to define asynchronous
authentication challenge callback. And MediaPlayerPrivateBlackBerry and
NetworkJob are changed to inherit from AuthenticationChallengeClient to
support asynchronous authentication challenge.

Note: there is also an accompanying platform patch to make our PlatformPlayer
to support asychronous authentication, see PR 186597 for details.

No new tests as this is platform specific change.

* platform/blackberry/AuthenticationChallengeManager.h: Added.
(WebCore):
(AuthenticationChallengeClient):
* platform/blackberry/PageClientBlackBerry.h:
(WebCore):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
(WebCore::MediaPlayerPrivate::notifyChallengeResult):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):
* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::sendRequestWithCredentials):
(WebCore::NetworkJob::notifyChallengeResult):
(WebCore):
* platform/network/blackberry/NetworkJob.h:
(WebCore):
(NetworkJob):

Source/WebKit/blackberry:

Use new AuthenticationChallengeClient interface to make authentication
challenge asynchronous to NetworkJob, MediaPlayerPrivateBlackBerry, and
other module that will use HTTP authentication. WebPage itself still use
synchronous authentication though. Switching to asynchronous authentication
in WebPage will require bigger platform layer change and not very necessary
at the moment for this bug.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
* Api/WebPage_p.h:
(WebCore):
(WebPagePrivate):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127884 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed, fix overlapping test expectation.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127885 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update bindings results after https://bugs.webkit.org/show_bug.cgi?id=96039

* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::Float64ArrayV8Internal::fooCallback):
(WebCore::toV8):
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8Float64Array.h:
(V8Float64Array):
(WebCore::V8Float64Array::wrap):
(WebCore):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(V8TestActiveDOMObject):
(WebCore::V8TestActiveDOMObject::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestCallback.cpp:
(WebCore::V8TestCallback::callbackWithClass1Param):
(WebCore::V8TestCallback::callbackWithClass2Param):
(WebCore::V8TestCallback::callbackWithStringList):
(WebCore::V8TestCallback::callbackRequiresThisToPass):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore::V8TestCustomNamedGetter::wrapSlow):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(V8TestCustomNamedGetter):
(WebCore::V8TestCustomNamedGetter::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(V8TestEventConstructor):
(WebCore::V8TestEventConstructor::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
(WebCore::V8TestEventTarget::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::wrapSlow):
* bindings/scripts/test/V8/V8TestException.h:
(V8TestException):
(WebCore::V8TestException::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.h:
(V8TestInterface):
(WebCore::V8TestInterface::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(V8TestMediaQueryListListener):
(WebCore::V8TestMediaQueryListListener::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructorCallback):
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(V8TestNamedConstructor):
(WebCore::V8TestNamedConstructor::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
(WebCore::V8TestNode::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetter):
(WebCore::TestObjV8Internal::testObjAttrAttrGetter):
(WebCore::TestObjV8Internal::XMLObjAttrAttrGetter):
(WebCore::TestObjV8Internal::typedArrayAttrAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetter):
(WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetter):
(WebCore::TestObjV8Internal::cachedAttribute1AttrGetter):
(WebCore::TestObjV8Internal::cachedAttribute2AttrGetter):
(WebCore::TestObjV8Internal::contentDocumentAttrGetter):
(WebCore::TestObjV8Internal::mutablePointAttrGetter):
(WebCore::TestObjV8Internal::immutablePointAttrGetter):
(WebCore::TestObjV8Internal::objMethodCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::withScriptStateObjCallback):
(WebCore::TestObjV8Internal::withScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateObjExceptionCallback):
(WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesCallback):
(WebCore::TestObjV8Internal::getSVGDocumentCallback):
(WebCore::TestObjV8Internal::mutablePointFunctionCallback):
(WebCore::TestObjV8Internal::immutablePointFunctionCallback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.h:
(V8TestObj):
(WebCore::V8TestObj::wrap):
(WebCore::toV8):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::TestSerializedScriptValueInterfaceV8Internal::portsAttrGetter):
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(V8TestSerializedScriptValueInterface):
(WebCore::V8TestSerializedScriptValueInterface::wrap):
(WebCore::toV8):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127886 268f45cc-cd09-0410-ab3c-d52691b4dbfc
equalIgnoringCase of two StringImpls doesn't handle 8 bit strings
https://bugs.webkit.org/show_bug.cgi?id=96028

Reviewed by Benjamin Poulain.

Added 8 bit checks and paths to CaseFoldingHash::equal.  Also cleaned up StringHash::equal(), removing
obvious and in one case wrong comments.  Moved equalIgnoringCase(UChar*, UChar*) from StringImpl.cpp
to StringImpl.h.

* wtf/text/StringHash.h:
(WTF::StringHash::equal):
(WTF::CaseFoldingHash::equal):
* wtf/text/StringImpl.cpp:
* wtf/text/StringImpl.h:
(WTF::equalIgnoringCase):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127887 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Clean up dependencies in ScrollbarLayerChromiumTest
https://bugs.webkit.org/show_bug.cgi?id=96052

Patch by James Robinson <jamesr@chromium.org> on 2012-09-07
Reviewed by Adrienne Walker.

Fixes two minor but annoying dependencies in ScrollbarLayerChromiumTest:
*) WebScrollbarImpl.h is #included, but not use
*) The two-arg constructor of WebThemeScrollbarPainter is used, but this is guarded by #if
    WEBKIT_IMPLEMENTATION. The no-arg c'tor does the right thing for this test.

* tests/ScrollbarLayerChromiumTest.cpp:
(WebCore::TEST):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127888 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Move user agent helpers to WebCore
https://bugs.webkit.org/show_bug.cgi?id=95745

Reviewed by Carlos Garcia Campos.

.:

Added an autoconf step for the new user agent shared code header in
WebCore. This is necessary so that we can use the user agent version
based on the information in the configure.ac file.

* configure.ac:

Source/WebCore:

Moved the user agent determination code from WebKit1 to WebCore so that it can
be shared with WebKit2. Also add a method for creating the user agent given
a non-default application name.

* GNUmakefile.list.am: Add new files to the list.
* platform/gtk/UserAgentGtk.cpp: Added.
* platform/gtk/UserAgentGtk.h.in: Added.

Source/WebKit/gtk:

Move the code for determining the user agent to WebCore and have WebKit1
use the new shared code.

* webkit/webkitwebsettings.cpp: Use the WebCore code to determine the user
agent in WebKit1.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127889 268f45cc-cd09-0410-ab3c-d52691b4dbfc
http/tests/security/contentSecurityPolicy/blob-urls-match-self.html fails on Windows port.
https://bugs.webkit.org/show_bug.cgi?id=96133

Test fails on Windows port since added in http://trac.webkit.org/changeset/126785.
Blobs might be completely disabled on Windows. Adding to skip list for now.

* platform/win/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127890 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Remove dead CCActiveGestureAnimation code and related classes
https://bugs.webkit.org/show_bug.cgi?id=96075

Reviewed by Adrienne Walker.

Source/WebCore:

The CCGestureCurve / CCActiveGestureAnimation code isn't used and never has been used. Gesture curves are
evaluated by the CCInputHandlerClient (WebCompositorInputHandlerImpl), CC itself logically doesn't know anything
about gestures.

* WebCore.gypi:
* platform/graphics/chromium/cc/CCActiveGestureAnimation.cpp: Removed.
* platform/graphics/chromium/cc/CCActiveGestureAnimation.h: Removed.
* platform/graphics/chromium/cc/CCGestureCurve.h: Removed.
* platform/graphics/chromium/cc/CCInputHandler.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::animate):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImpl):

Source/WebKit/chromium:

Cuts out unnecessary boilerplate in PlatformGestureCurve evaluation for handling flings. WCIHI can easily
evaluate the curve itself without intermediate classes.

* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
(WebKit::WebCompositorInputHandlerImpl::animate):
(WebKit::WebCompositorInputHandlerImpl::cancelCurrentFling):
* src/WebCompositorInputHandlerImpl.h:
(WebCore):
(WebCompositorInputHandlerImpl):
* tests/PlatformGestureCurveTest.cpp:
* tests/WebCompositorInputHandlerImplTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127891 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed rebaseline for chromium gardening.

* platform/chromium-win-xp/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-win/media/track/track-cue-rendering-vertical-expected.png:
* platform/chromium-win/media/track/track-cue-rendering-vertical-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127892 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Move some CC unit tests into correct gyp variable
https://bugs.webkit.org/show_bug.cgi?id=96048

Patch by James Robinson <jamesr@chromium.org> on 2012-09-07
Reviewed by Adrienne Walker.

These tests are testing compositor internals, so they belong in the webkit_compositor_unittest_files variable.

* WebKit.gypi:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127893 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Initialize caret rectangle with invalid location
https://bugs.webkit.org/show_bug.cgi?id=96011

Patch by Yongxin Dai <yodai@rim.com> on 2012-09-07
Reviewed by Rob Buis.

In SelectionHandler::selectionPositionChanged() method, startCaret and
endCaret are used to notify clients about new caret positions. This patch
initializes startCaret and endCaret with location(-1. -1), and keeps them
empty before they are assigned to valid values. This would help for other
classes to check validity of the caret correctly.

Internal reviewed by Mike Fenton.

* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::adjustCaretRects):
(BlackBerry::WebKit::SelectionHandler::selectionPositionChanged):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127894 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Actually trigger the Android Tester
https://bugs.webkit.org/show_bug.cgi?id=96118

Reviewed by Adam Barth.

* BuildSlaveSupport/build.webkit.org-config/config.json:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127895 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] GraphicsLayerChromiumTest::applyScrollToScrollableArea() is failing
https://bugs.webkit.org/show_bug.cgi?id=95932

Patch by Sami Kyostila <skyostil@google.com> on 2012-09-07
Reviewed by James Robinson.

Give the FakeScrollableArea valid geometry to allow ScrollAnimatorMac to
properly scroll it.

* tests/GraphicsLayerChromiumTest.cpp:
(WebKit::TEST_F): Re-enable the test.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127896 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Chromium Linux EWS bots and CQ bots are flaky
https://bugs.webkit.org/show_bug.cgi?id=96041

Unreviewed, trying to get the cr-linux ews into a usable state.

* platform/chromium/TestExpectations: Revert r127883 and skip http/tests/cache/cancel-during-revalidation-succeeded.html
on the cr-ews linux bots. This is causing the following 2 tests to fail.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127897 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed rebaseline.

Colors changed slightly, but the test's intention is to verify scaling
works as expected and it continues to do so.

* platform/chromium-mac/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.

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