WebKit-https.git
9 years agoBuild Fix. <rdar://problem/12260893>
lforschler@apple.com [Sun, 9 Sep 2012 22:11:38 +0000 (22:11 +0000)]
Build Fix.  <rdar://problem/12260893>

* platform/graphics/mac/WebGLLayer.mm:

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

9 years agoUnreviewed, rolling out r127979.
commit-queue@webkit.org [Sun, 9 Sep 2012 21:21:10 +0000 (21:21 +0000)]
Unreviewed, rolling out r127979.
http://trac.webkit.org/changeset/127979
https://bugs.webkit.org/show_bug.cgi?id=96217

Appears to have broken the windows and linux builds (Requested
by jamesr_ on #webkit).

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

* bindings/scripts/CodeGeneratorV8.pm:
(NativeToJSValue):
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::convertEventTargetToV8Object):
(V8DOMWrapper):

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

9 years ago[chromium] Export WebFilterOperation(FilterType, SkScalar[20]) constructor
jamesr@google.com [Sun, 9 Sep 2012 21:05:24 +0000 (21:05 +0000)]
[chromium] Export WebFilterOperation(FilterType, SkScalar[20]) constructor
https://bugs.webkit.org/show_bug.cgi?id=96215

Reviewed by Adrienne Walker.

Unlike the other WebFilterOperation constructors this one is defined out-of-line and so must be exported to be
usable outside of WebKit.dll

* chromium/public/WebFilterOperation.h:
(WebFilterOperation):

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

9 years ago[chromium] webkit_platform should only be linked into the webkit target
jamesr@google.com [Sun, 9 Sep 2012 21:04:49 +0000 (21:04 +0000)]
[chromium] webkit_platform should only be linked into the webkit target
https://bugs.webkit.org/show_bug.cgi?id=96213

Reviewed by Adrienne Walker.

The Platform.gyp:webkit_platform target provides the implementation of several WEBKIT_EXPORTed symbols. It only
makes sense as a target of WebKit.gyp:webkit, other targets shouldn't directly depend on it.

Source/WebCore:

* WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

* WebKit.gyp:

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

9 years ago[chromium] Use WebCompositorSupport creation functions in GraphicsLayerChromiumTest
jamesr@google.com [Sun, 9 Sep 2012 21:04:02 +0000 (21:04 +0000)]
[chromium] Use WebCompositorSupport creation functions in GraphicsLayerChromiumTest
https://bugs.webkit.org/show_bug.cgi?id=96212

Reviewed by Adrienne Walker.

The static ::create()s the test references currently are going away soon.

* tests/GraphicsLayerChromiumTest.cpp:
(WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
(WebKit::TEST_F):

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

9 years agoUnreviewed.\n\nRebaselining 5 mac accessibility tests, skipping one.\n\nhttps://bugs...
dmazzoni@google.com [Sun, 9 Sep 2012 21:02:14 +0000 (21:02 +0000)]
Unreviewed.\n\nRebaselining 5 mac accessibility tests, skipping one.\n\nhttps://bugs.webkit.org/show_bug.cgi?id=96173

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

9 years agoUnreviewed, rolling out r127963.
dmazzoni@google.com [Sun, 9 Sep 2012 20:52:03 +0000 (20:52 +0000)]
Unreviewed, rolling out r127963.
http://trac.webkit.org/changeset/127963
https://bugs.webkit.org/show_bug.cgi?id=96173

Inappropriately modified test, and not just expectations,
without review. Will land changes to expectations only, and then
upload a patch to modify the test for review.

* accessibility/transformed-element-expected.txt:
* platform/mac/accessibility/image-map2-expected.txt:
* platform/mac/accessibility/internal-link-anchors2-expected.txt:
* platform/mac/accessibility/table-detection-expected.txt:
* platform/mac/accessibility/table-one-cell-expected.txt:
* platform/mac/accessibility/update-children-when-aria-role-changes.html:

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

9 years agoMake the String initialization on the function side of String::number()
paroga@webkit.org [Sun, 9 Sep 2012 20:48:23 +0000 (20:48 +0000)]
Make the String initialization on the function side of String::number()
https://bugs.webkit.org/show_bug.cgi?id=95940

Reviewed by Benjamin Poulain.

Source/JavaScriptCore:

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

Source/WTF:

Un-Inline String::number() to make the String initialization done on the function side
instead of being on the caller side.

* GNUmakefile.list.am:
* WTF.gypi:
* WTF.pro:
* WTF.vcproj/WTF.vcproj:
* WTF.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:
* wtf/text/IntegerToStringConversion.cpp: Removed.
* wtf/text/IntegerToStringConversion.h:
(WTF::numberToStringImpl):
(WTF::numberToStringSigned):
(WTF::numberToStringUnsigned):
* wtf/text/WTFString.cpp:
(WTF::String::number):
* wtf/text/WTFString.h:

Tools:

* TestWebKitAPI/Tests/WTF/IntegerToStringConversion.cpp:
(testBoundaries):
(testNumbers):

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

9 years ago[EFL][WK2] Mark sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A5.html...
rakuco@webkit.org [Sun, 9 Sep 2012 17:40:12 +0000 (17:40 +0000)]
[EFL][WK2] Mark sputnik/Conformance/07_Lexical_Conventions/7.4_Comments/S7.4_A5.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=96210

Unreviewed EFL gardening.

Mark additional sputnik test as flaky on WK2 EFL build bot.

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

* platform/efl-wk2/TestExpectations:

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

9 years ago[EFL] Mark fast/innerHTML/innerHTML-iframe.html as flaky
commit-queue@webkit.org [Sun, 9 Sep 2012 17:34:37 +0000 (17:34 +0000)]
[EFL] Mark fast/innerHTML/innerHTML-iframe.html as flaky
https://bugs.webkit.org/show_bug.cgi?id=96209

Unreviewed EFL gardening.

Mark fast/innerHTML/innerHTML-iframe.html as flaky for
both WK1 and WK2 EFL.

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

* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

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

9 years ago[WK2] expose element rect for color input type
pierre.rossi@gmail.com [Sun, 9 Sep 2012 17:22:58 +0000 (17:22 +0000)]
[WK2] expose element rect for color input type
https://bugs.webkit.org/show_bug.cgi?id=91664

Reviewed by Simon Hausmann.

Source/WebKit2:

In the same way we do for select elements already. This allows placing the picker
in a sensible location.

* UIProcess/API/efl/PageClientImpl.cpp: Update the function's signature.
(WebKit::PageClientImpl::createColorChooserProxy): Ditto.
* UIProcess/API/efl/PageClientImpl.h: Ditto.
(PageClientImpl):
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorChooserProxy): Ditto.
* UIProcess/API/gtk/PageClientImpl.h: Ditto.
(PageClientImpl):
* UIProcess/API/mac/PageClientImpl.h: Ditto.
(PageClientImpl):
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::createColorChooserProxy): Ditto.
* UIProcess/API/qt/raw/qrawwebview.cpp:
(QRawWebViewPrivate::createColorChooserProxy): Ditto.
* UIProcess/API/qt/raw/qrawwebview_p_p.h: Ditto.
(QRawWebViewPrivate):
* UIProcess/PageClient.h: Ditto.
(PageClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::showColorChooser): Compute the rect mapped to the current view's transform.
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* UIProcess/WebPageProxy.messages.in:
* UIProcess/qt/QtPageClient.cpp:
(WebKit::QtPageClient::createColorChooserProxy):
* UIProcess/qt/QtPageClient.h:
(QtPageClient):
* UIProcess/qt/WebColorChooserProxyQt.cpp:
(ColorChooserContextObject):
(WebKit::ColorChooserContextObject::ColorChooserContextObject):
(WebKit::ColorChooserContextObject::elementRect):
(WebKit::ColorChooserContextObject::accept):
(WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):
* UIProcess/qt/WebColorChooserProxyQt.h:
(WebKit::WebColorChooserProxyQt::create):
(WebColorChooserProxyQt):
* UIProcess/win/WebView.cpp:
(WebKit::WebView::createColorChooserProxy): Update the function's signature.
* UIProcess/win/WebView.h:
(WebView): Ditto.
* WebProcess/WebCoreSupport/WebColorChooser.cpp:
(WebKit::WebColorChooser::WebColorChooser):

Tools:

Update the QML logic in MiniBrowser to take advantage of this.
The picker size is now hardcoded and we try to place it below the
input element if possible.

* MiniBrowser/qt/qml/ColorChooser.qml:

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

9 years agoRolled out <http://trac.webkit.org/changeset/127939> because it broke
ggaren@apple.com [Sun, 9 Sep 2012 17:10:21 +0000 (17:10 +0000)]
Rolled out <trac.webkit.org/changeset/127939> because it broke
fast/js/named-function-expression.html.

    Refactored bytecode generator initialization to support moving captured vars around
    https://bugs.webkit.org/show_bug.cgi?id=96159

    Reviewed by Gavin Barraclough.

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

9 years ago[Qt] Add missing files to the WebKit2 build on Windows
hausmann@webkit.org [Sun, 9 Sep 2012 16:46:52 +0000 (16:46 +0000)]
[Qt] Add missing files to the WebKit2 build on Windows
https://bugs.webkit.org/show_bug.cgi?id=96177

Reviewed by Kenneth Rohde Christiansen.

For the build on Windows we can re-use existing functionality from the Safari/Windows
build, such as the IPC implementation.

* Target.pri:

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

9 years ago[EFL][WK2] Gardening to make the bot green
rakuco@webkit.org [Sun, 9 Sep 2012 16:44:50 +0000 (16:44 +0000)]
[EFL][WK2] Gardening to make the bot green
https://bugs.webkit.org/show_bug.cgi?id=96208

Unreviewed EFL gardening.

Update TestExpectations to make the EFL WK2 bot green.

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

* platform/efl-wk2/TestExpectations:
* platform/efl-wk2/fast/events/mouseup-from-button2-expected.txt: Added. Test
needs baseline for wk2 (better output).

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

9 years ago[BlackBerry] Fix flicker due to introduction of the fence extension.
anilsson@rim.com [Sun, 9 Sep 2012 16:34:01 +0000 (16:34 +0000)]
[BlackBerry] Fix flicker due to introduction of the fence extension.
https://bugs.webkit.org/show_bug.cgi?id=96207

Reviewed by George Staikos.

Don't immediately add fence to garbage list, so it is destroyed
after only one swap, for a set of tiles just because one tile in
the set gets a new fence, the old fence may still not be signalled
and before rendering the other tiles in the set we have to wait for it.

* WebKitSupport/BackingStoreTile.cpp:
(BlackBerry::WebKit::Fence::~Fence):
(WebKit):
* WebKitSupport/BackingStoreTile.h:
(WebKit):
(Fence):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::initialize):
(BlackBerry::WebKit::SurfacePool::notifyBuffersComposited):
(WebKit):
(BlackBerry::WebKit::SurfacePool::destroyPlatformSync):
* WebKitSupport/SurfacePool.h:
(SurfacePool):

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

9 years ago[WK2] Fix PLATFORM(WIN) vs. OS(WINDOWS) in various files
commit-queue@webkit.org [Sun, 9 Sep 2012 14:46:26 +0000 (14:46 +0000)]
[WK2] Fix PLATFORM(WIN) vs. OS(WINDOWS) in various files
https://bugs.webkit.org/show_bug.cgi?id=96178

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-09
Reviewed by Kenneth Rohde Christiansen.

PLATFORM(WIN) is used in various places, where it is safe to use OS(WINDOWS) to allow
the re-use of that code path in ports beyond Safari/Windows.

* Platform/CoreIPC/BinarySemaphore.h:
(BinarySemaphore):
* Platform/CoreIPC/Connection.h:
(Connection):
* Platform/SharedMemory.h:
(Handle):
(SharedMemory):
* Platform/WorkQueue.h:

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

9 years ago[EFL] Unskip test cases passing reliably on the bots
rakuco@webkit.org [Sun, 9 Sep 2012 14:37:27 +0000 (14:37 +0000)]
[EFL] Unskip test cases passing reliably on the bots
https://bugs.webkit.org/show_bug.cgi?id=96204

Unreviewed EFL gardening.

Unskip test cases that are passing reliably on the
EFL build bots.

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

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

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

9 years ago[EFL] Fix build break when MEDIA_STREAM is enabled.
gyuyoung.kim@samsung.com [Sun, 9 Sep 2012 10:57:33 +0000 (10:57 +0000)]
[EFL] Fix build break when MEDIA_STREAM is enabled.
https://bugs.webkit.org/show_bug.cgi?id=96063

Unreviewed. Fix build break when MEDIA_STREAM is enabled.

* CMakeLists.txt:

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

9 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Sun, 9 Sep 2012 08:00:23 +0000 (08:00 +0000)]
Unreviewed GTK gardening.

Adding expectations for two crashing tests and two regressions.

* platform/gtk/TestExpectations:

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

9 years ago[V8] convertEventTargetToV8Object doesn't need to be overloaded
abarth@webkit.org [Sun, 9 Sep 2012 07:47:50 +0000 (07:47 +0000)]
[V8] convertEventTargetToV8Object doesn't need to be overloaded
https://bugs.webkit.org/show_bug.cgi?id=96195

Reviewed by Kentaro Hara.

WTF::getPtr solves this problem for us.

* bindings/scripts/CodeGeneratorV8.pm:
(NativeToJSValue):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):

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

9 years ago[V8] V8PerContextData holds m_context using a v8::Handle rather than a v8::Persistent
abarth@webkit.org [Sun, 9 Sep 2012 07:39:13 +0000 (07:39 +0000)]
[V8] V8PerContextData holds m_context using a v8::Handle rather than a v8::Persistent
https://bugs.webkit.org/show_bug.cgi?id=96193

Reviewed by Kentaro Hara.

There are two types of handles in V8: Local and Persistent. We are now
permitted to keep Local handles in the heap because they get
deallocated when the C++ stack unwinds and v8::HandleScope objects are
destructed.

V8PerContextData holds its m_context using the non-specific v8::Handle
type. If we used a Local handle here, we'd have a memory safety
problem. Thankfully, we use a Persistent handle, which need to be
allocated and freed manually.

This patch makes the type of V8PerContextData::m_context more specific
to ensure that we never try to store a local handle in this variable.
This patch should not have any behavior change because we were already
storing a Persistent handle.

* bindings/v8/V8PerContextData.h:
(WebCore::V8PerContextData::create):
(WebCore::V8PerContextData::V8PerContextData):
(V8PerContextData):

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

9 years ago[V8] V8DOMWindowShell does not need to be RefCounted
abarth@webkit.org [Sun, 9 Sep 2012 07:27:40 +0000 (07:27 +0000)]
[V8] V8DOMWindowShell does not need to be RefCounted
https://bugs.webkit.org/show_bug.cgi?id=96192

Reviewed by Kentaro Hara.

V8DOMWindowShell holds a raw Frame pointer, which would point to
unallocated memory if any object that wasn't owned by the frame took a
reference to a V8DOMWindowShell. Thankfully, the only object that takes
a reference to the V8DOMWindowShell is ScriptController, which is owned
by the Frame.

This patch stops V8DOMWindowShell from being RefCounted so that no
other objects are tempted to take a reference to it in the future.

* bindings/v8/ScriptController.h:
(ScriptController):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::create):
* bindings/v8/V8DOMWindowShell.h:
(V8DOMWindowShell):

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

9 years ago[V8] unsafeHandleToCurrentWorldContext doesn't need to exist
abarth@webkit.org [Sun, 9 Sep 2012 06:48:14 +0000 (06:48 +0000)]
[V8] unsafeHandleToCurrentWorldContext doesn't need to exist
https://bugs.webkit.org/show_bug.cgi?id=96191

Reviewed by Kentaro Hara.

Previously, we used this function when instantiating DOM wrappers. Now
we get the context from the creationContext, so we don't need access to
this unsafe handle. This patch inlines the function into its one other
caller.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::currentWorldContext):
* bindings/v8/ScriptController.h:
(ScriptController):

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

9 years ago[BlackBerry] Exiting fullscreen mode can leave user stuck without Browser menus
commit-queue@webkit.org [Sun, 9 Sep 2012 04:29:19 +0000 (04:29 +0000)]
[BlackBerry] Exiting fullscreen mode can leave user stuck without Browser menus
https://bugs.webkit.org/show_bug.cgi?id=96027

Patch by Max Feil <mfeil@rim.com> on 2012-09-08
Reviewed by Antonio Gomes.

The changes for bug 87337 (landed as trunk svn revision 119119)
introduced a bug. The same conditions are not checked on enter
fullscreen vs. exit. Web sites such as http://videojs.com
and youtube's mobile HTML5 player make the div container
of the video element go fullscreen. This is allowed in
WebPagePrivate::enterFullScreenForElement() but disallowed in
WebPagePrivate::exitFullScreenForElement(). I am fixing this by
allowing containers of video elements to exit fullscreen.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):

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

9 years agoSpecialize nextBreakablePosition depending on breakNBSP
benjamin@webkit.org [Sun, 9 Sep 2012 00:35:47 +0000 (00:35 +0000)]
Specialize nextBreakablePosition depending on breakNBSP
https://bugs.webkit.org/show_bug.cgi?id=96042

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-08
Reviewed by Eric Seidel.

The speed of isBreakableSpace() is limited by the speed of the inner loop of nextBreakablePosition().
The branches done to handle noBreakSpace can be simplified outside the loop
to reduce the number of tests inside the loop.

This patch split the code of nextBreakablePosition() in two function, depending if breakNBSP is true
or false.

If breakNBSP is true, isBreakableSpace() would return true on noBreakSpace.
->There is no need to test that value again for needsLineBreakIterator().
->There is no need to special case the switch() of isBreakableSpace() for noBreakSpace.

If breakNBSP is false:
->isBreakableSpace() does not need to test for noBreakSpace.

On x86_64, this improves PerformanceTests/Layout/line-layout.html by 2.8%.

* rendering/break_lines.cpp:
(WebCore::isBreakableSpace):
(WebCore::nextBreakablePositionIgnoringNBSP):
(WebCore::nextBreakablePosition):
* rendering/break_lines.h:
(WebCore::isBreakable): Remove the default value for breakNBSP, no caller is using it.

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

9 years agoGive AtomicString SimpleClassVectorTraits.
kling@webkit.org [Sat, 8 Sep 2012 19:50:03 +0000 (19:50 +0000)]
Give AtomicString SimpleClassVectorTraits.
<http://webkit.org/b/96186>

Reviewed by Karl Anders Carlsson.

AtomicString can be initialized/moved/compared with memset/memcpy/memcmp,
so add a VectorTraits<AtomicString> to make Vector<AtomicString> a little
more efficient.

* wtf/VectorTraits.h:

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

9 years ago[V8] DOM wrapper creation involves a bunch of sketchy code related to finding the...
commit-queue@webkit.org [Sat, 8 Sep 2012 18:17:39 +0000 (18:17 +0000)]
[V8] DOM wrapper creation involves a bunch of sketchy code related to finding the Frame
https://bugs.webkit.org/show_bug.cgi?id=96147

Patch by Adam Barth <abarth@chromium.org> on 2012-09-08
Reviewed by Eric Seidel.

Source/WebCore:

Previously, we used the Frame when instantiating DOM wrappers. That's
sketchy because not all DOM wrappers know how to find their Frame, and
the Frame might be displaying a different document now anyway. This
patch now gets all the information directly from the creation context.

In addition, this patch gets the proper creation context in a few more
cases, including Location.

* bindings/scripts/CodeGeneratorV8.pm:
(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateToV8Converters):
(GenerateFunctionCallString):
(NativeToJSValue):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::Float64ArrayV8Internal::fooCallback):
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* 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/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.cpp:
(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::contentDocumentAttrGetter):
(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::strictFunctionCallback):
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::disposeContext):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/V8PerContextData.cpp:
(WebCore):
(WebCore::V8PerContextData::current):
(WebCore::V8PerContextData::dispose):
(WebCore::V8PerContextData::init):
* bindings/v8/V8PerContextData.h:
(V8PerContextData):

LayoutTests:

The V8 results for this test now match the JSC results. We can remove
the chromium-specific baseline.

* platform/chromium/fast/workers/storage/test-authorizer-sync-expected.txt: Removed.

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

9 years ago[Chromium] Layout Tests tables/mozilla/bugs/bug27038*.html are failing
jchaffraix@webkit.org [Sat, 8 Sep 2012 15:24:47 +0000 (15:24 +0000)]
[Chromium] Layout Tests tables/mozilla/bugs/bug27038*.html are failing
https://bugs.webkit.org/show_bug.cgi?id=93006

Unreviewed Chromium rebaselining.

The tests were not rebaselined after bug 81826 (the TestExpectations were wrongly pointing
to bug 37244). The new rebaselines are expected as we add the extra logical height to the
last section, which was our original behavior before bug 37244.

* platform/chromium-linux/tables/mozilla/bugs/bug27038-1-expected.png:
* platform/chromium-linux/tables/mozilla/bugs/bug27038-2-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug27038-1-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug27038-1-expected.txt: Removed.
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug27038-2-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug27038-1-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug27038-1-expected.txt: Removed.
* platform/chromium-mac/tables/mozilla/bugs/bug27038-2-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug27038-2-expected.txt: Removed.
* platform/chromium-win/tables/mozilla/bugs/bug27038-1-expected.png:
* platform/chromium-win/tables/mozilla/bugs/bug27038-1-expected.txt:
* platform/chromium-win/tables/mozilla/bugs/bug27038-2-expected.png:
* platform/chromium-win/tables/mozilla/bugs/bug27038-2-expected.txt:
* platform/chromium/TestExpectations:
* platform/gtk/tables/mozilla/bugs/bug27038-1-expected.txt: Removed.
* platform/gtk/tables/mozilla/bugs/bug27038-2-expected.txt: Removed.
* tables/mozilla/bugs/bug27038-1-expected.txt: Renamed from LayoutTests/platform/efl/tables/mozilla/bugs/bug27038-1-expected.txt.
* tables/mozilla/bugs/bug27038-2-expected.txt: Renamed from LayoutTests/platform/efl/tables/mozilla/bugs/bug27038-2-expected.txt.

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

9 years agoLLInt buildfix for case sensitive filesystems
ossy@webkit.org [Sat, 8 Sep 2012 12:21:35 +0000 (12:21 +0000)]
LLInt buildfix for case sensitive filesystems
https://bugs.webkit.org/show_bug.cgi?id=96099

Reviewed by Michael Saboff.

* llint/LowLevelInterpreter.cpp: Fix filenames.

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

9 years ago[EFL] Gardening of failing tests after r127939
commit-queue@webkit.org [Sat, 8 Sep 2012 11:37:45 +0000 (11:37 +0000)]
[EFL] Gardening of failing tests after r127939
https://bugs.webkit.org/show_bug.cgi?id=96182

Unreviewed EFL gardening of failing tests after r127939.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-08

* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

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

9 years ago[EFL][WK2] Minibrowser crashes on right mouse click
commit-queue@webkit.org [Sat, 8 Sep 2012 10:57:44 +0000 (10:57 +0000)]
[EFL][WK2] Minibrowser crashes on right mouse click
https://bugs.webkit.org/show_bug.cgi?id=95955

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-09-08
Reviewed by Simon Hausmann.

Make early return if the PageClient does not create a ContextMenuProxy.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::internalShowContextMenu):

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

9 years ago[Qt] Fix CoreIPC setup between ProcessLauncher and WebProcessMain on Windows
commit-queue@webkit.org [Sat, 8 Sep 2012 10:50:37 +0000 (10:50 +0000)]
[Qt] Fix CoreIPC setup between ProcessLauncher and WebProcessMain on Windows
https://bugs.webkit.org/show_bug.cgi?id=96179

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-08
Reviewed by Kenneth Rohde Christiansen.

* UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
(WebKit::ProcessLauncher::launchProcess): Hide Unixy platform specific code
and includes behind appropriate platform #ifdefs and use
CoreIPC::Connection::createServerAndClientIdentifiers to set up the IPC pipes.
We also need to tell Windows about our intent of using the client handle in
the child web process.
* WebProcess/qt/WebProcessMainQt.cpp:
(WebKit::WebProcessMainQt): After retrieving the IPC identifier we call
WebKit::WebProcess::shared().initialize with it. That function actually
cares a CIPC::Connection::Identifier as argument, which happens to be an
int on Unix, but it's actually a HANDLE on Windows. Change the parameter
type according to and a reinterpret_cast from the converted unsigned integer,
similar to WebProcessMainWin.cpp.

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

9 years ago[WK2] New fast/events/tab-focus-link-in-canvas fails from r126908
commit-queue@webkit.org [Sat, 8 Sep 2012 10:48:09 +0000 (10:48 +0000)]
[WK2] New fast/events/tab-focus-link-in-canvas fails from r126908
https://bugs.webkit.org/show_bug.cgi?id=95329

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-08
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add implementation for overriding the WebKitTabToLinksPreferenceKey
preference as well as the corresponding WKPreferences API that
is needed by WebKitTestRunner.

* Shared/WebPreferencesStore.h:
(WebKit):
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetTabToLinksEnabled):
(WKPreferencesGetTabToLinksEnabled):
* UIProcess/API/C/WKPreferencesPrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::setTabToLinksEnabled):
(WebKit::WebPage::tabToLinksEnabled):

Tools:

Explicitely disable TabToLinks setting in WebKitTestRunner.
Tests override the "WebKitTabToLinksPreferenceKey" preference
to enable it.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):

LayoutTests:

Unskip fast/events/tab-focus-link-in-canvas for WK2 now that WebKitTestRunner
supports overriding the "WebKitTabToLinksPreferenceKey" preference.

* platform/efl-wk2/TestExpectations:
* platform/wk2/Skipped:

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

9 years agowebkit.py gdb pretty printer can't print CString
bashi@chromium.org [Sat, 8 Sep 2012 07:36:18 +0000 (07:36 +0000)]
webkit.py gdb pretty printer can't print CString
https://bugs.webkit.org/show_bug.cgi?id=96068

Reviewed by Tony Chang.

Update WTFCStringPrinter to follow r126191.

* gdb/webkit.py:
(WTFCStringPrinter.to_string):

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

9 years ago[CSS Shaders] [BlackBerry] Refactor CustomFilterMesh and CustomFilter*Program
anilsson@rim.com [Sat, 8 Sep 2012 07:31:59 +0000 (07:31 +0000)]
[CSS Shaders] [BlackBerry] Refactor CustomFilterMesh and CustomFilter*Program
https://bugs.webkit.org/show_bug.cgi?id=94725

Reviewed by George Staikos.

Separate the MeshGenerator from the CustomFilterMesh into
CustomFilterMeshGenerator.h/cpp. This allows the BlackBerry port to
reuse the mesh generator in its accelerated compositing implementation.

Also add support for creating a "PlatformCompiledProgram" from a
CustomFilterValidatedProgram, so the BlackBerry port can reuse the
shader validation code in its accelerated compositing implementation.

It turns out the GraphicsContext3D is not needed for ANGLE to function,
so this patch removes an ASSERT that required a context before
validating the shaders using ANGLE. This allows the BlackBerry port to
reuse the validation code without triggering the assert. In the future,
the validation code could be moved to a separate class to make it more
obvious that it isn't really related to GraphicsContext3D.

In general, this refactoring can be useful for any port that uses
OpenGL to implement accelerated compositing.

Inspired by an original patch by Joshua Netterfield.

No new tests, because this patch implements no new functionality.

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/filters/CustomFilterGlobalContext.cpp:
(WebCore::CustomFilterGlobalContext::getValidatedProgram):
* platform/graphics/filters/CustomFilterMesh.cpp:
(WebCore::CustomFilterMesh::CustomFilterMesh):
* platform/graphics/filters/CustomFilterMeshGenerator.cpp: Added.
(WebCore):
(WebCore::CustomFilterMeshGenerator::CustomFilterMeshGenerator):
(WebCore::CustomFilterMeshGenerator::addAttachedMeshIndex):
(WebCore::CustomFilterMeshGenerator::generateAttachedMesh):
(WebCore::CustomFilterMeshGenerator::addDetachedMeshVertexAndIndex):
(WebCore::CustomFilterMeshGenerator::generateDetachedMesh):
(WebCore::CustomFilterMeshGenerator::addPositionAttribute):
(WebCore::CustomFilterMeshGenerator::addTexCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addMeshCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addTriangleCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addAttachedMeshVertexAttributes):
(WebCore::CustomFilterMeshGenerator::addDetachedMeshVertexAttributes):
(WebCore::CustomFilterMeshGenerator::dumpBuffers):
* platform/graphics/filters/CustomFilterMeshGenerator.h: Added.
(WebCore):
(CustomFilterMeshGenerator):
(WebCore::CustomFilterMeshGenerator::vertices):
(WebCore::CustomFilterMeshGenerator::indices):
(WebCore::CustomFilterMeshGenerator::points):
(WebCore::CustomFilterMeshGenerator::pointsCount):
(WebCore::CustomFilterMeshGenerator::tiles):
(WebCore::CustomFilterMeshGenerator::tilesCount):
(WebCore::CustomFilterMeshGenerator::indicesCount):
(WebCore::CustomFilterMeshGenerator::floatsPerVertex):
(WebCore::CustomFilterMeshGenerator::verticesCount):
(WebCore::CustomFilterMeshGenerator::addTile):
* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
(WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
(WebCore::CustomFilterValidatedProgram::compiledProgram):
(WebCore::CustomFilterValidatedProgram::~CustomFilterValidatedProgram):
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram):
(WebCore::CustomFilterValidatedProgram::platformDestroy):
* platform/graphics/filters/CustomFilterValidatedProgram.h:
(WebCore):
(CustomFilterValidatedProgram):
* platform/graphics/filters/blackberry/CustomFilterValidatedProgramBlackBerry.cpp: Added.
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram):
(WebCore::CustomFilterValidatedProgram::platformDestroy):

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

9 years agoRebaselining accessibility test expectations
dmazzoni@google.com [Sat, 8 Sep 2012 06:57:32 +0000 (06:57 +0000)]
Rebaselining accessibility test expectations

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

9 years ago[BlackBerry] Remove browser from the build info page
commit-queue@webkit.org [Sat, 8 Sep 2012 06:49:57 +0000 (06:49 +0000)]
[BlackBerry] Remove browser from the build info page
https://bugs.webkit.org/show_bug.cgi?id=96162

Patch by Ming Xie <mxie@rim.com> on 2012-09-07
Reviewed by George Staikos.
Internal reviewed by Jeff Rogers.

WebKit build should not have the build info for browser which is
built on top of webkit.

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

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

9 years agoFix the build of OpenGLShims on Windows
commit-queue@webkit.org [Sat, 8 Sep 2012 06:21:06 +0000 (06:21 +0000)]
Fix the build of OpenGLShims on Windows
https://bugs.webkit.org/show_bug.cgi?id=96123

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-07
Reviewed by Kenneth Rohde Christiansen.

OpenGL functions on Windows are generally defined as __stdcall, so we need to make sure
that we declare our own "copies" of those functions with the same calling convention.

This is also required for the situation where we build against ANGLE, because then we
initialize the function table entries with a direct assignment (entry = ::glMyFunction())
and the assignment does not compile if the types don't match, i.e. if RHS has a different
calling convention than LHS.

The approach chosen is basically the same as in the Khronos headers,
using a GLAPIENTRY macro.

* platform/graphics/OpenGLShims.h:

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

9 years agoUnreviewed prospective build fix.
benjamin@webkit.org [Sat, 8 Sep 2012 06:16:08 +0000 (06:16 +0000)]
Unreviewed prospective build fix.

* tests/WebCompositorInputHandlerImplTest.cpp: Looks like someone is missing an #include.
Remove the using directive from r127959.

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

9 years agoUnreviewed prospective build fix.
hausmann@webkit.org [Sat, 8 Sep 2012 05:53:39 +0000 (05:53 +0000)]
Unreviewed prospective build fix.

Use WTF namespace like in other files in the same directory to resolve unqualified
adoptPtr correctly.

* tests/WebCompositorInputHandlerImplTest.cpp:

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

9 years agoRename the ustring() accessor to string()
benjamin@webkit.org [Sat, 8 Sep 2012 05:46:29 +0000 (05:46 +0000)]
Rename the ustring() accessor to string()
https://bugs.webkit.org/show_bug.cgi?id=95919

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-07
Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Rename ustring() to string() to make the accessor name more logical after
r127191.

* API/JSBase.cpp:
(JSEvaluateScript):
(JSCheckScriptSyntax):
* API/JSObjectRef.cpp:
(JSObjectMakeFunctionWithCallback):
(JSObjectMakeFunction):
(JSObjectCopyPropertyNames):
* API/JSProfilerPrivate.cpp:
(JSStartProfiling):
(JSEndProfiling):
* API/JSValueRef.cpp:
(JSValueMakeString):
(JSValueMakeFromJSONString):
* API/OpaqueJSString.cpp:
(OpaqueJSString::string):
* API/OpaqueJSString.h:
(OpaqueJSString):
* bytecode/CodeBlock.cpp:
(JSC::idName):
(JSC::CodeBlock::dump):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitLoad):
(JSC::BytecodeGenerator::addStringConstant):
* bytecompiler/NodesCodegen.cpp:
(JSC::RegExpNode::emitBytecode):
(JSC::processClauseList):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* jsc.cpp:
(GlobalObject::addFunction):
(GlobalObject::addConstructableFunction):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createRegExp):
* parser/Parser.cpp:
(JSC::::parsePrimaryExpression):
* parser/Parser.h:
(JSC::Scope::declareVariable):
(JSC::Scope::declareParameter):
(JSC::Scope::useVariable):
* parser/SyntaxChecker.h:
(JSC::SyntaxChecker::createRegExp):
* runtime/ExceptionHelpers.cpp:
(JSC::createUndefinedVariableError):
* runtime/Executable.cpp:
(JSC::FunctionExecutable::paramString):
* runtime/Executable.h:
(JSC::FunctionExecutable::finishCreation):
* runtime/FunctionPrototype.cpp:
(JSC::FunctionPrototype::addFunctionProperties):
* runtime/Identifier.h:
(JSC::Identifier::string):
* runtime/JSFunction.cpp:
(JSC::JSFunction::calculatedDisplayName):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
* runtime/JSONObject.cpp:
(JSC::PropertyNameForFunctionCall::value):
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):
* runtime/JSPropertyNameIterator.h:
(JSC::JSPropertyNameIterator::finishCreation):
* runtime/JSScope.cpp:
(JSC::JSScope::resolveBase):
* runtime/JSString.h:
(JSC::inlineJSValueNotStringtoString):
* runtime/LiteralParser.cpp:
(JSC::::parse):
* runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::finishCreation):
(JSC::objectConstructorGetOwnPropertyNames):
(JSC::objectConstructorKeys):
* runtime/RegExpConstructor.cpp:
(JSC::RegExpConstructor::finishCreation):

Source/WebCore:

* bindings/js/Dictionary.cpp:
(WebCore::Dictionary::getOwnPropertiesAsStringHashMap):
(WebCore::Dictionary::getOwnPropertyNames):
* bindings/js/SerializedScriptValue.cpp:
Simplify a few String constructions which were still using type conversion
through StringImpl.

(WebCore::CloneSerializer::write):
(WebCore::CloneDeserializer::CachedString::string):
(WebCore::CloneDeserializer::readFile):
(WebCore::CloneDeserializer::readTerminal):
(WebCore::CloneDeserializer::deserialize):
* bridge/NP_jsobject.cpp:
(_NPN_Enumerate):

Source/WebKit/efl:

* WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
(DumpRenderTreeSupportEfl::sendWebIntentResponse):
(DumpRenderTreeSupportEfl::deliverWebIntent):
Aslo update the code from the UString->String conversion through StringImpl.

Source/WebKit/mac:

* Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::enumerate):

Source/WebKit2:

* WebProcess/Plugins/Netscape/NPJSObject.cpp:
(WebKit::NPJSObject::enumerate):

Tools:

Update EFL's DRT.

Fix some string conversion that have been made useless
with recent changes.

* DumpRenderTree/efl/EventSender.cpp:
(keyPadNameFromJSValue):
(keyNameFromJSValue):
* DumpRenderTree/efl/TestRunnerEfl.cpp:
(TestRunner::queueLoad):
(TestRunner::addOriginAccessWhitelistEntry):
(TestRunner::removeOriginAccessWhitelistEntry):
(TestRunner::setUserStyleSheetLocation):
(TestRunner::setValueForUser):
(TestRunner::elementDoesAutoCompleteForElementWithId):
(TestRunner::execCommand):
(TestRunner::findString):
(TestRunner::isCommandEnabled):
(TestRunner::clearApplicationCacheForOrigin):
(TestRunner::setDomainRelaxationForbiddenForURLScheme):
(TestRunner::pauseAnimationAtTimeOnElementWithId):
(TestRunner::pauseTransitionAtTimeOnElementWithId):
(toInt):
(TestRunner::overridePreference):
(TestRunner::addUserScript):
(TestRunner::addUserStyleSheet):
(TestRunner::evaluateInWebInspector):
(TestRunner::evaluateScriptInIsolatedWorld):
(TestRunner::setTextDirection):
* DumpRenderTree/efl/WorkQueueItemEfl.cpp:
(LoadItem::invoke):
(LoadHTMLStringItem::invoke):
(ScriptItem::invoke):

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

9 years agoUnreviewed, rolling out r127955.
commit-queue@webkit.org [Sat, 8 Sep 2012 05:02:54 +0000 (05:02 +0000)]
Unreviewed, rolling out r127955.
http://trac.webkit.org/changeset/127955
https://bugs.webkit.org/show_bug.cgi?id=96174

Hits an ASSERT (Requested by abarth on #webkit).

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

Source/WebCore:

* bindings/scripts/CodeGeneratorV8.pm:
(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateToV8Converters):
(GenerateFunctionCallString):
(NativeToJSValue):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::Float64ArrayV8Internal::fooCallback):
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* 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/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.cpp:
(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::contentDocumentAttrGetter):
(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::strictFunctionCallback):
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::disposeContext):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/V8PerContextData.cpp:
(WebCore::V8PerContextData::dispose):
(WebCore::V8PerContextData::init):
* bindings/v8/V8PerContextData.h:
(V8PerContextData):

LayoutTests:

* platform/chromium/fast/workers/storage/test-authorizer-sync-expected.txt: Added.

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

9 years agoExtend third-party storage blocking API to optionally allow blocking all storage
jpfau@apple.com [Sat, 8 Sep 2012 02:05:36 +0000 (02:05 +0000)]
Extend third-party storage blocking API to optionally allow blocking all storage
https://bugs.webkit.org/show_bug.cgi?id=95915

Reviewed by Brady Eidson.

Source/WebCore:

Replace boolean API with tri-state API that allows for blocking no, third-party, or all storage.

Tests: http/tests/security/same-origin-shared-worker-blocked.html
       http/tests/security/same-origin-storage-blocked.html
       http/tests/security/same-origin-websql-blocked.html

* dom/Document.cpp:
(WebCore::Document::initSecurityContext):
* page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::SecurityOrigin):
(WebCore::SecurityOrigin::canAccessStorage):
* page/SecurityOrigin.h:
(WebCore::SecurityOrigin::setStorageBlockingPolicy):
(SecurityOrigin):
* page/Settings.cpp:
(WebCore::Settings::Settings):
* page/Settings.h:
(WebCore::Settings::setStorageBlockingPolicy):
(WebCore::Settings::storageBlockingPolicy):
(Settings):
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setStorageBlockingPolicy):
* testing/InternalSettings.h:
(InternalSettings):
* testing/InternalSettings.idl:

Source/WebKit2:

Update WK2 API to use revised Settings API.

* Shared/WebPreferencesStore.h:
(WebKit):
* UIProcess/API/C/WKAPICast.h:
(WebKit::toStorageBlockingPolicy):
(WebKit):
(WebKit::toAPI):
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetStorageBlockingPolicy):
(WKPreferencesGetStorageBlockingPolicy):
* UIProcess/API/C/WKPreferences.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

Tools:

Modified API test to use new revised API.

* TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
(TestWebKitAPI::TEST):

LayoutTests:

Update tests to use revised API.

* http/tests/security/cross-origin-local-storage.html:
* http/tests/security/cross-origin-plugin-private-browsing-toggled.html:
* http/tests/security/cross-origin-plugin.html:
* http/tests/security/cross-origin-session-storage.html:
* http/tests/security/cross-origin-shared-worker.html:
* http/tests/security/cross-origin-websql.html:
* http/tests/security/cross-origin-worker-websql.html:
* http/tests/security/resources/document-for-cross-origin-worker-websql.html:
* http/tests/security/same-origin-document-domain-storage-allowed.html:
* http/tests/security/same-origin-shared-worker-blocked-expected.txt: Added.
* http/tests/security/same-origin-shared-worker-blocked.html: Added.
* http/tests/security/same-origin-storage-blocked-expected.txt: Added.
* http/tests/security/same-origin-storage-blocked.html: Added.
* http/tests/security/same-origin-websql-blocked-expected.txt: Added.
* http/tests/security/same-origin-websql-blocked.html: Added.
* platform/chromium/TestExpectations:

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

9 years ago[V8] DOM wrapper creation involves a bunch of sketchy code related to finding the...
abarth@webkit.org [Sat, 8 Sep 2012 01:39:13 +0000 (01:39 +0000)]
[V8] DOM wrapper creation involves a bunch of sketchy code related to finding the Frame
https://bugs.webkit.org/show_bug.cgi?id=96147

Patch by Adam Barth <abarth@chromium.org> on 2012-09-07
Reviewed by Eric Seidel.

Source/WebCore:

Previously, we used the Frame when instantiating DOM wrappers. That's
sketchy because not all DOM wrappers know how to find their Frame, and
the Frame might be displaying a different document now anyway. This
patch now gets all the information directly from the creation context.

In addition, this patch gets the proper creation context in a few more
cases, including Location.

* bindings/scripts/CodeGeneratorV8.pm:
(GetInternalFields):
(GenerateNormalAttrGetter):
(GenerateToV8Converters):
(GenerateFunctionCallString):
(NativeToJSValue):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore::Float64ArrayV8Internal::fooCallback):
(WebCore::V8Float64Array::wrapSlow):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore::V8TestActiveDOMObject::wrapSlow):
* 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/V8TestEventConstructor.cpp:
(WebCore::V8TestEventConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::V8TestEventTarget::wrapSlow):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore::V8TestException::wrapSlow):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::wrapSlow):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore::V8TestMediaQueryListListener::wrapSlow):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructor::wrapSlow):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore::V8TestNode::wrapSlow):
* bindings/scripts/test/V8/V8TestObj.cpp:
(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::contentDocumentAttrGetter):
(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::strictFunctionCallback):
(WebCore::V8TestObj::wrapSlow):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::wrapSlow):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::disposeContext):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/V8PerContextData.cpp:
(WebCore):
(WebCore::V8PerContextData::current):
(WebCore::V8PerContextData::dispose):
(WebCore::V8PerContextData::init):
* bindings/v8/V8PerContextData.h:
(V8PerContextData):

LayoutTests:

The V8 results for this test now match the JSC results. We can remove
the chromium-specific baseline.

* platform/chromium/fast/workers/storage/test-authorizer-sync-expected.txt: Removed.

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

9 years agoSkip some tests that appear to be making bots unstable.
jamesr@google.com [Sat, 8 Sep 2012 01:36:02 +0000 (01:36 +0000)]
Skip some tests that appear to be making bots unstable.

* platform/chromium/TestExpectations:

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

9 years ago[chromium] Remove unused WebScrollbarThemePainter::isNull
jamesr@google.com [Sat, 8 Sep 2012 01:33:27 +0000 (01:33 +0000)]
[chromium] Remove unused WebScrollbarThemePainter::isNull
https://bugs.webkit.org/show_bug.cgi?id=96169

Reviewed by Adrienne Walker.

This doesn't appear to be used anywhere and triggers MSVS C4800 in any chromium file that #includes this header.

* chromium/public/WebScrollbarThemePainter.h:

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

9 years ago[chromium] Remove transitional WebCompositorSupport fallback code
jamesr@google.com [Sat, 8 Sep 2012 01:32:53 +0000 (01:32 +0000)]
[chromium] Remove transitional WebCompositorSupport fallback code
https://bugs.webkit.org/show_bug.cgi?id=96155

Reviewed by Adrienne Walker.

Source/WebCore:

The implementation of WebCompositorSupport has rolled out everywhere and the static ::create() functions are
going way.

* page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
(WebCore::createScrollbarLayer):
* platform/graphics/chromium/AnimationTranslationUtil.cpp:
(WebCore::createWebAnimation):
* platform/graphics/chromium/Canvas2DLayerBridge.cpp:
(WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
* platform/graphics/chromium/DrawingBufferChromium.cpp:
(WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::setContentsToImage):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):

Source/WebKit/chromium:

* src/LinkHighlight.cpp:
(WebKit::LinkHighlight::LinkHighlight):
(WebKit::LinkHighlight::startHighlightAnimation):
* src/WebMediaPlayerClientImpl.cpp:
(WebKit::WebMediaPlayerClientImpl::readyStateChanged):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::setBackingTextureId):
(WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit):

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

9 years agoVersioning.
lforschler@apple.com [Sat, 8 Sep 2012 01:30:41 +0000 (01:30 +0000)]
Versioning.

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

9 years agoFix compilation of TextureMapperShaderManager.cpp with MSVC
commit-queue@webkit.org [Sat, 8 Sep 2012 01:30:22 +0000 (01:30 +0000)]
Fix compilation of TextureMapperShaderManager.cpp with MSVC
https://bugs.webkit.org/show_bug.cgi?id=96121

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-07
Reviewed by Kenneth Rohde Christiansen.

Named variadic parameters in macros appear to be a GCC extension. Fortunately __VA_ARGS__ seems
to work with GCC and MSVC here.

* platform/graphics/texmap/TextureMapperShaderManager.cpp:
(WebCore):
(WebCore::StandardFilterProgram::StandardFilterProgram):

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

9 years agoSeek to end after duration change in HTMLMediaElement
vrk@chromium.org [Sat, 8 Sep 2012 01:28:44 +0000 (01:28 +0000)]
Seek to end after duration change in HTMLMediaElement
https://bugs.webkit.org/show_bug.cgi?id=95986

Reviewed by Eric Carlson.

This seeks the media element to the end of the media resource if the current playback
position has become greater than the duration after a duration change.
http://dev.w3.org/html5/spec/media-elements.html#durationChange

Source/WebCore:

Test: http/tests/media/media-source/seek-to-end-after-duration-change.html

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaPlayerDurationChanged): After firing the duration change event, checks to see if current time exceeds duration and if so, seeks to duration.

LayoutTests:

* http/tests/media/media-source/seek-to-end-after-duration-change-expected.txt: Added.
* http/tests/media/media-source/seek-to-end-after-duration-change.html: Added.

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

9 years ago[chromium] Implement WebCompositorInputHandlerImpl on top of exposed API instead...
jamesr@google.com [Sat, 8 Sep 2012 01:22:54 +0000 (01:22 +0000)]
[chromium] Implement WebCompositorInputHandlerImpl on top of exposed API instead of CC internals
https://bugs.webkit.org/show_bug.cgi?id=96151

Reviewed by Adrienne Walker.

Source/Platform:

This adds public input handling interfaces for the compositor.

* chromium/public/WebInputHandler.h:
(WebKit):
(WebInputHandler):
(WebKit::WebInputHandler::~WebInputHandler):
* chromium/public/WebInputHandlerClient.h:
(WebKit):
(WebInputHandlerClient):
(WebKit::WebInputHandlerClient::~WebInputHandlerClient):
* chromium/public/WebLayerTreeView.h:
(WebLayerTreeView):
* chromium/public/WebLayerTreeViewClient.h:
(WebKit):
(WebKit::WebLayerTreeViewClient::createInputHandler):
(WebLayerTreeViewClient):

Source/WebCore:

Reworks the CC hookup for input handling to be more similar to the OutputSurface handling. If on compositor
startup we want to initialize threaded input handling, we ask the embedder for a CCInputHandler implementation
via CCLayerTreeHostClient. If the client provides one, we later bind this to a CCInputHandlerClient (actually
CCLayerTreeHostImpl) from the compositor thread.

* platform/graphics/chromium/cc/CCInputHandler.h:
(WebCore):
(CCInputHandler):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::createInputHandler):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostClient.h:
(WebCore):
(CCLayerTreeHostClient):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::start):
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
(WebCore::CCThreadProxy::initializeImplOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):

Source/WebKit/chromium:

Moves input handler setup code up to the WebKit layer instead of reaching in to CC internals.
WebLayerTreeViewImpl implements createInputHandler() by asking its embedder for a WebInputHandler. If one is
provided, it wraps the WebInputHandler in a CCInputHandler implementation to pass down to CC.

WebViewImpl implements WebLayerTreeView::createInputHandler() by constructing a WebCompositorInputHandlerImpl
and storing its identifier for the didActivateCompositor call.  From this point on the setup is the same as
before.

WCIHI changes covered by unit tests, overall scrolling behavior manually tested.

* WebKit.gypi:
* src/WebCompositorInputHandlerImpl.cpp:
(WebKit::WebCompositorInputHandlerImpl::fromIdentifier):
(WebKit::WebCompositorInputHandlerImpl::WebCompositorInputHandlerImpl):
(WebKit::WebCompositorInputHandlerImpl::~WebCompositorInputHandlerImpl):
(WebKit::WebCompositorInputHandlerImpl::setClient):
(WebKit::WebCompositorInputHandlerImpl::handleInputEvent):
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):
(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
(WebKit::WebCompositorInputHandlerImpl::bindToClient):
* src/WebCompositorInputHandlerImpl.h:
(WebCompositorInputHandlerImpl):
(WebKit::WebCompositorInputHandlerImpl::identifier):
* src/WebLayerTreeViewImpl.cpp:
(WebKit::WebLayerTreeViewImpl::createInputHandler):
(WebKit):
* src/WebLayerTreeViewImpl.h:
(WebLayerTreeViewImpl):
* src/WebToCCInputHandlerAdapter.cpp: Added.
(WebKit):
(WebKit::WebToCCInputHandlerAdapter::create):
(WebKit::WebToCCInputHandlerAdapter::WebToCCInputHandlerAdapter):
(WebKit::WebToCCInputHandlerAdapter::~WebToCCInputHandlerAdapter):
(WebToCCInputHandlerAdapter::ClientAdapter):
(WebKit::WebToCCInputHandlerAdapter::ClientAdapter::ClientAdapter):
(WebKit::WebToCCInputHandlerAdapter::ClientAdapter::~ClientAdapter):
(WebKit::WebToCCInputHandlerAdapter::bindToClient):
(WebKit::WebToCCInputHandlerAdapter::animate):
* src/WebToCCInputHandlerAdapter.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCLayerTreeHostClient.h.
(WebKit):
(WebToCCInputHandlerAdapter):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit):
(WebKit::WebViewImpl::createInputHandler):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/CCThreadedTest.cpp:
* tests/FakeCCLayerTreeHostClient.h:
* tests/WebCompositorInputHandlerImplTest.cpp:
(MockWebInputHandlerClient):
(WebKit::MockWebInputHandlerClient::MockWebInputHandlerClient):
(WebKit::MockWebInputHandlerClient::~MockWebInputHandlerClient):
(WebKit::WebCompositorInputHandlerImplTest::WebCompositorInputHandlerImplTest):
(WebCompositorInputHandlerImplTest):
(WebKit::TEST_F):

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

9 years ago[V8] Use a v8::Object rather than a v8::Context to represent the creationContext
abarth@webkit.org [Sat, 8 Sep 2012 01:17:53 +0000 (01:17 +0000)]
[V8] Use a v8::Object rather than a v8::Context to represent the creationContext
https://bugs.webkit.org/show_bug.cgi?id=96154

Patch by Adam Barth <abarth@chromium.org> on 2012-09-07
Reviewed by Eric Seidel.

This patch is a mechanical search-and-replace. Using a v8::Object
rather than a v8::Context lets us delay the call to CreationContext()
until we actually need to call it. This should not affect behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeader):
(GenerateNormalAttrGetter):
(GenerateNamedConstructorCallback):
(GenerateImplementation):
(GenerateToV8Converters):
(GenerateFunctionCallString):
(NativeToJSValue):
* 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):
* bindings/v8/DOMTransaction.cpp:
(WebCore::DOMTransaction::callFunction):
* bindings/v8/IDBCustomBindings.cpp:
(WebCore::V8IDBCursorWithValue::valueAccessorGetter):
* bindings/v8/SerializedScriptValue.cpp:
* bindings/v8/V8Binding.h:
(WebCore::V8ValueTraits::arrayV8Value):
* bindings/v8/V8Collection.h:
(WebCore::getV8Object):
(WebCore::getNamedPropertyOfCollection):
(WebCore::collectionNamedPropertyGetter):
(WebCore::getIndexedPropertyOfCollection):
(WebCore::collectionIndexedPropertyGetter):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::getter):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::convertEventTargetToV8Object):
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::convertEventTargetToV8Object):
(V8DOMWrapper):
* bindings/v8/V8ThrowException.cpp:
(WebCore):
* bindings/v8/custom/V8BlobCustom.cpp:
(WebCore::toV8):
(WebCore::V8Blob::constructorCallback):
* bindings/v8/custom/V8CSSRuleCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8CSSValueCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
(WebCore::toV8Object):
(WebCore::V8CanvasRenderingContext2D::strokeStyleAccessorGetter):
(WebCore::V8CanvasRenderingContext2D::fillStyleAccessorGetter):
* bindings/v8/custom/V8ConsoleCustom.cpp:
(WebCore::V8Console::memoryAccessorGetter):
* bindings/v8/custom/V8DOMWindowCustom.cpp:
(WebCore::V8DOMWindow::openCallback):
(WebCore::V8DOMWindow::indexedPropertyGetter):
(WebCore::V8DOMWindow::namedPropertyGetter):
(WebCore::toV8):
* bindings/v8/custom/V8DataViewCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8DocumentCustom.cpp:
(WebCore::V8Document::evaluateCallback):
(WebCore::V8Document::getCSSCanvasContextCallback):
(WebCore::toV8):
(WebCore::V8Document::createTouchListCallback):
* bindings/v8/custom/V8DocumentLocationCustom.cpp:
(WebCore::V8Document::locationAccessorGetter):
* bindings/v8/custom/V8EntryCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8EntrySyncCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8EventCustom.cpp:
(WebCore::V8Event::dataTransferAccessorGetter):
(WebCore::V8Event::clipboardDataAccessorGetter):
(WebCore::toV8):
* bindings/v8/custom/V8FileReaderCustom.cpp:
(WebCore::V8FileReader::resultAccessorGetter):
* bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
(WebCore::getNamedItems):
(WebCore::getItem):
(WebCore::V8HTMLAllCollection::namedPropertyGetter):
(WebCore::V8HTMLAllCollection::itemCallback):
(WebCore::V8HTMLAllCollection::namedItemCallback):
(WebCore::V8HTMLAllCollection::callAsFunctionCallback):
* bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
(WebCore::V8HTMLCanvasElement::getContextCallback):
* bindings/v8/custom/V8HTMLCollectionCustom.cpp:
(WebCore::getNamedItems):
(WebCore::V8HTMLCollection::namedPropertyGetter):
(WebCore::V8HTMLCollection::namedItemCallback):
(WebCore::toV8):
* bindings/v8/custom/V8HTMLDocumentCustom.cpp:
(WebCore::V8HTMLDocument::getNamedProperty):
(WebCore::V8HTMLDocument::allAccessorGetter):
(WebCore::toV8):
* bindings/v8/custom/V8HTMLElementCustom.cpp:
(WebCore::toV8):
(WebCore::V8HTMLElement::itemValueAccessorGetter):
* bindings/v8/custom/V8HTMLFormElementCustom.cpp:
(WebCore::V8HTMLFormElement::indexedPropertyGetter):
(WebCore::V8HTMLFormElement::namedPropertyGetter):
* bindings/v8/custom/V8HTMLFrameSetElementCustom.cpp:
(WebCore::V8HTMLFrameSetElement::namedPropertyGetter):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore::v8HTMLImageElementConstructorCallback):
* bindings/v8/custom/V8HTMLLinkElementCustom.cpp:
(WebCore::V8HTMLLinkElement::sizesAccessorGetter):
* bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
(WebCore::V8HTMLOptionsCollection::indexedPropertyGetter):
* bindings/v8/custom/V8HTMLOutputElementCustom.cpp:
(WebCore::V8HTMLOutputElement::htmlForAccessorGetter):
* bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
(WebCore::V8HTMLSelectElement::indexedPropertyGetter):
* bindings/v8/custom/V8IDBAnyCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8IDBKeyCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8ImageDataCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8LocationCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8MessageChannelConstructor.cpp:
(WebCore::V8MessageChannel::constructorCallback):
* bindings/v8/custom/V8MessageEventCustom.cpp:
(WebCore::V8MessageEvent::dataAccessorGetter):
(WebCore::V8MessageEvent::portsAccessorGetter):
* bindings/v8/custom/V8MicroDataItemValueCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
(WebCore::V8NamedNodeMap::indexedPropertyGetter):
(WebCore::V8NamedNodeMap::namedPropertyGetter):
* bindings/v8/custom/V8NodeCustom.cpp:
(WebCore::toV8Slow):
* bindings/v8/custom/V8NodeListCustom.cpp:
(WebCore::V8NodeList::namedPropertyGetter):
* bindings/v8/custom/V8NotificationCenterCustom.cpp:
(WebCore::V8NotificationCenter::createHTMLNotificationCallback):
(WebCore::V8NotificationCenter::createNotificationCallback):
* bindings/v8/custom/V8PerformanceCustom.cpp:
(WebCore::V8Performance::memoryAccessorGetter):
* bindings/v8/custom/V8PerformanceEntryCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8PopStateEventCustom.cpp:
(WebCore::V8PopStateEvent::stateAccessorGetter):
* bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
(WebCore::V8SQLTransactionSync::executeSqlCallback):
* bindings/v8/custom/V8SVGDocumentCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8SVGElementCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8SVGPathSegCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8ScriptProfileCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8ScriptProfileNodeCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8StyleSheetCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8StyleSheetListCustom.cpp:
(WebCore::V8StyleSheetList::namedPropertyGetter):
* bindings/v8/custom/V8TrackEventCustom.cpp:
(WebCore::V8TrackEvent::trackAccessorGetter):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
(WebCore::getObjectParameter):
(WebCore::V8WebGLRenderingContext::getAttachedShadersCallback):
(WebCore::V8WebGLRenderingContext::getFramebufferAttachmentParameterCallback):
(WebCore::V8WebGLRenderingContext::getParameterCallback):
(WebCore::V8WebGLRenderingContext::getProgramParameterCallback):
(WebCore::V8WebGLRenderingContext::getShaderParameterCallback):
(WebCore::V8WebGLRenderingContext::getUniformCallback):
* bindings/v8/custom/V8WorkerContextCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
(WebCore::V8XMLHttpRequest::responseAccessorGetter):
* dom/make_names.pl:
(printWrapperFunctions):
(printWrapperFactoryCppFile):
(printWrapperFactoryHeaderFile):

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

9 years agoCheck objects for null when recreating context
commit-queue@webkit.org [Sat, 8 Sep 2012 01:09:27 +0000 (01:09 +0000)]
Check objects for null when recreating context
https://bugs.webkit.org/show_bug.cgi?id=95926

Patch by John Bauman <jbauman@chromium.org> on 2012-09-07
Reviewed by Dean Jackson.

Upon navigation the FrameViwe and other objects may go null, so detect
that and return rather than try to dereference them.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::maybeRestoreContext):

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

9 years agoCALLFRAME_OFFSET and EXCEPTION_OFFSET are same in ctiTrampoline on ARM Thumb2
barraclough@apple.com [Sat, 8 Sep 2012 00:59:27 +0000 (00:59 +0000)]
CALLFRAME_OFFSET and EXCEPTION_OFFSET are same in ctiTrampoline on ARM Thumb2
https://bugs.webkit.org/show_bug.cgi?id=82013

Reviewed by Geoff Garen.

Neither of these values need to be stored. At all.

* jit/JITStubs.cpp:
(JSC):
(JSC::ctiTrampoline):
(JSC::JITThunks::JITThunks):
    - Nothing to see here. Move along.

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

9 years agobox-shadow causes overlay scrollbars to be in the wrong position when element is...
simon.fraser@apple.com [Sat, 8 Sep 2012 00:48:40 +0000 (00:48 +0000)]
box-shadow causes overlay scrollbars to be in the wrong position when element is composited
https://bugs.webkit.org/show_bug.cgi?id=85647

Reviewed by James Robinson.

Test overlay scrollbars in composited layers.

* ManualTests/scrollbars/scrollbars-in-composited-layers.html: Added.

Source/WebCore:

The code that positioned the GraphicsLayers for scrollbars failed to take
into account any offset between the origin of the compositing layer,
and the renderer. This caused scrollbar layers to be misplaced or hidden
on layers with, for example, box-shadows.

Also moved the code that positions the scrollbar layers into RendderLayerBacking,
since this is where all the rest of the GraphicsLayer-positioning code lives.

Renamed an "offsetFromLayer" param to "offsetFromRoot" which is more accurate.

Manual test, since overlay scrollbars are not enabled in DRT/WTR:
    ManualTests/scrollbars/scrollbars-in-composited-layers.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::positionOverflowControls):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::positionOverflowControlsLayers):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):

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

9 years ago[EFL] [WK2] Set theme for the inspector view
commit-queue@webkit.org [Sat, 8 Sep 2012 00:42:47 +0000 (00:42 +0000)]
[EFL] [WK2] Set theme for the inspector view
https://bugs.webkit.org/show_bug.cgi?id=96108

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-07
Reviewed by Kenneth Rohde Christiansen.

Set the theme for the inspector view when it is created.

* UIProcess/efl/WebInspectorProxyEfl.cpp:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):

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

9 years agoUnreviewed, rolling out r127938.
commit-queue@webkit.org [Sat, 8 Sep 2012 00:32:15 +0000 (00:32 +0000)]
Unreviewed, rolling out r127938.
http://trac.webkit.org/changeset/127938
https://bugs.webkit.org/show_bug.cgi?id=96166

It broke the build (Requested by smfr on #webkit).

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

Source/JavaScriptCore:

* llint/LowLevelInterpreter.cpp:
(JSC):
(JSC::CLoop::execute):
* offlineasm/cloop.rb:

Source/WTF:

* wtf/Assertions.h:

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

9 years ago[Chromium] Multiple commits without invalidation allowed per redraw.
commit-queue@webkit.org [Sat, 8 Sep 2012 00:25:24 +0000 (00:25 +0000)]
[Chromium] Multiple commits without invalidation allowed per redraw.
https://bugs.webkit.org/show_bug.cgi?id=95661

Patch by David Reveman <reveman@chromium.org> on 2012-09-07
Reviewed by James Robinson.

Source/WebCore:

Always enter COMMIT_STATE_WAITING_FOR_FIRST_DRAW after commit. This
ensures we draw before beginning a new frame.

Unit tests: CCLayerTreeHostTestContinuousCommit.runMultiThread
            CCLayerTreeHostTestContinuousInvalidate.runMultiThread
            CCLayerTreeHostTestContinuousAnimate.runMultiThread

* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
(WebCore::CCSchedulerStateMachine::updateState):

Source/WebKit/chromium:

* tests/CCLayerTreeHostTest.cpp:
(CCLayerTreeHostTestContinuousCommit):
(WebKitTests::CCLayerTreeHostTestContinuousCommit::CCLayerTreeHostTestContinuousCommit):
(WebKitTests):
(WebKitTests::TEST_F):
(CCLayerTreeHostTestContinuousInvalidate):
(WebKitTests::CCLayerTreeHostTestContinuousInvalidate::CCLayerTreeHostTestContinuousInvalidate):
(CCLayerTreeHostTestContinuousAnimate):
(WebKitTests::CCLayerTreeHostTestContinuousAnimate::CCLayerTreeHostTestContinuousAnimate):
* tests/CCSchedulerStateMachineTest.cpp:
(WebCore::TEST):

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

9 years agoRefactored bytecode generator initialization to support moving captured vars around
ggaren@apple.com [Fri, 7 Sep 2012 23:59:10 +0000 (23:59 +0000)]
Refactored bytecode generator initialization to support moving captured vars around
https://bugs.webkit.org/show_bug.cgi?id=96159

Reviewed by Gavin Barraclough.

This patch separates the stages of allocating registers, declaring identifiers
in the symbol table, and initializing registers, so you can change
allocation decisions without breaking the world.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator): Call a set of helper functions
instead of inlining all the code, to help clarity.

(JSC::BytecodeGenerator::allocateCapturedVars):
(JSC::BytecodeGenerator::allocateUncapturedVars):
(JSC::BytecodeGenerator::allocateActivationVar):
(JSC::BytecodeGenerator::allocateArgumentsVars):
(JSC::BytecodeGenerator::allocateCalleeVarUndeclared):
(JSC::BytecodeGenerator::declareParameters):
(JSC::BytecodeGenerator::declareCallee):
(JSC::BytecodeGenerator::initCalleeVar):
(JSC::BytecodeGenerator::initArgumentsVars):
(JSC::BytecodeGenerator::initActivationVar):
(JSC::BytecodeGenerator::initThisParameter):
(JSC::BytecodeGenerator::initFunctionDeclarations):
(JSC::BytecodeGenerator::declareParameter):
(JSC::BytecodeGenerator::createLazyRegisterIfNecessary):
(JSC::BytecodeGenerator::createActivationIfNecessary): Factored these
helper functions out from pre-existing code.

* bytecompiler/BytecodeGenerator.h:
(BytecodeGenerator):
* parser/ASTBuilder.h:
(JSC::ASTBuilder::createFuncDeclStatement):
(JSC::ASTBuilder::addVar):
* parser/Nodes.h:
(JSC::DeclarationStacks::VarDeclaration::VarDeclaration):
(VarDeclaration):
(JSC::DeclarationStacks::FunctionDeclaration::FunctionDeclaration):
(FunctionDeclaration): Declaration stacks get a little more data now,
to support allocating registers before putting things in the symbol
table. I'm convinced that we should eventually just expand the symbol
table to understand these things.

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

9 years agoSource/JavaScriptCore: Fix a llint C++ interpreter bugs.
commit-queue@webkit.org [Fri, 7 Sep 2012 23:58:47 +0000 (23:58 +0000)]
Source/JavaScriptCore: Fix a llint C++ interpreter bugs.
https://bugs.webkit.org/show_bug.cgi?id=96127.

Patch by Mark Lam <mark.lam@apple.com> on 2012-09-07
Reviewed by Filip Pizlo.

* llint/LowLevelInterpreter.cpp:
(JSC):
(JSC::CLoop::execute):
* offlineasm/cloop.rb:

Source/WTF: Fixed ASSERT() and ASSERT_AT() macros so that they can be used in
comma expressions.
https://bugs.webkit.org/show_bug.cgi?id=96127.

Patch by Mark Lam <mark.lam@apple.com> on 2012-09-07
Reviewed by Filip Pizlo.

* wtf/Assertions.h:
(wtfAssert):

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

9 years agoAdd OVERRIDE to computeLogical{Width,Height} overrides
tony@chromium.org [Fri, 7 Sep 2012 23:54:30 +0000 (23:54 +0000)]
Add OVERRIDE to computeLogical{Width,Height} overrides
https://bugs.webkit.org/show_bug.cgi?id=96153

Reviewed by Ojan Vafai.

I plan on renaming these functions to updateLogical{Width,Height} and
I want to be extra sure that I don't mess up.

No new tests, this is just a refactoring.

* rendering/RenderFlowThread.h: Also mark the functions virtual!
* rendering/RenderListBox.h:
(RenderListBox):
* rendering/RenderMeter.h:
(RenderMeter):
* rendering/RenderTable.h:
(RenderTable):
* rendering/RenderTableCell.h:
(RenderTableCell):
* rendering/RenderTextControl.h:
(RenderTextControl):
* rendering/svg/RenderSVGForeignObject.h:
(RenderSVGForeignObject):

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

9 years agoAX: WebCore accessibility roles should be cross-platform
dmazzoni@google.com [Fri, 7 Sep 2012 23:46:45 +0000 (23:46 +0000)]
AX: WebCore accessibility roles should be cross-platform
https://bugs.webkit.org/show_bug.cgi?id=94870

Reviewed by Chris Fleizach.

Source/WebCore:

Make 5 accessibility roles cross-platform rather than GTK-only.

Instead of mapping the HR tag to SplitterRole (which is an interactive
splitter control on Mac), create a new role HorizontalRuleRole.

Map all of the new roles to AXGroup on Mac, which matches the existing
behavior. Add a new test for these roles on Chromium.

Test: platform/chromium/accessibility/chromium-only-roles.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIAAttributes):
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* accessibility/gtk/AccessibilityObjectAtk.cpp:
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
* accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:
(atkRole):
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(createAccessibilityRoleMap):

Source/WebKit/chromium:

Add a new accessibility role.

* public/WebAccessibilityRole.h:
* src/AssertMatchingEnums.cpp:

Tools:

Add debug strings to Chromium for new accessibility roles.

* DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:
(roleToString):

LayoutTests:

Adds a test for some new accessibility roles that aren't present on all platforms.

* platform/chromium/accessibility/chromium-only-roles-expected.txt: Added.
* platform/chromium/accessibility/chromium-only-roles.html: Added.

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

9 years agoRebaselines after http://trac.webkit.org/changeset/127915.
ojan@chromium.org [Fri, 7 Sep 2012 23:27:21 +0000 (23:27 +0000)]
Rebaselines after trac.webkit.org/changeset/127915.

* fast/css/percent-top-value-with-relative-position-expected.txt: Renamed from LayoutTests/platform/efl/fast/css/percent-top-value-with-relative-position-expected.txt.
* platform/chromium-mac-snowleopard/fast/css/percent-top-value-with-relative-position-expected.png:
* platform/chromium-mac/fast/css/percent-top-value-with-relative-position-expected.png:
* platform/chromium-win/fast/css/percent-top-value-with-relative-position-expected.png:
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/gtk/fast/css/percent-top-value-with-relative-position-expected.txt: Removed.
* platform/mac/TestExpectations:
* platform/mac/fast/css/percent-top-value-with-relative-position-expected.txt:
* platform/qt/TestExpectations:
* platform/qt/fast/css/percent-top-value-with-relative-position-expected.txt:

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

9 years agoFix build of GraphicsContext3DOpenGLCommon.cpp with MSVC
commit-queue@webkit.org [Fri, 7 Sep 2012 23:19:41 +0000 (23:19 +0000)]
Fix build of GraphicsContext3DOpenGLCommon.cpp with MSVC
https://bugs.webkit.org/show_bug.cgi?id=96120

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-07
Reviewed by Noam Rosenthal.

Variable stack arrays are a GCC extension. Replace their use with OwnArrayPtr, similar to
other functions in the same file.

* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::getActiveAttrib):

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

9 years agoPrevent overflows in FractionalLayoutUnit
eae@chromium.org [Fri, 7 Sep 2012 23:16:39 +0000 (23:16 +0000)]
Prevent overflows in FractionalLayoutUnit
https://bugs.webkit.org/show_bug.cgi?id=95883

Reviewed by Eric Seidel.

Source/WebCore:

Avoid overflow in snapSizeToPixel by using the fraction of the
location instead of the full value.

Add safe versions of min/max, adjusted by half a pixel to allow
round to allow rounding without overflowing.

Avoid overflow when snapping a FractionalLayoutRect by using the
safe versions of min/max in infiniteRect.

Avoid overflow when converting from a Length to a LayoutUnit by
limiting the value to FractionalLayoutUnit min/max. This matches
the behavior of the non-subpixel code path where the values are
similarly limited.

Test: fast/sub-pixel/large-sizes.html

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeLength):
Limit to FractionalLayoutUnit min/max.

* platform/FractionalLayoutUnit.h:
(FractionalLayoutUnit):
(WebCore::FractionalLayoutUnit::nearlyMax):
(WebCore::FractionalLayoutUnit::nearlyMin):
Reduce max/increase min by 1/2 to allow round to operate
without overflowing.

(WebCore::snapSizeToPixel):
* platform/graphics/FractionalLayoutRect.h:
(WebCore::FractionalLayoutRect::infiniteRect):
Use nearlyMin/nearlyMax.

(WebCore::pixelSnappedIntRect):
Change pixelSnappedIntRect to use snapSizeToPixel.

LayoutTests:

Add test for handling of large values.

* fast/sub-pixel/large-sizes-expected.txt: Added.
* fast/sub-pixel/large-sizes.html: Added.
* platform/chromium-win/media/video-zoom-controls-expected.txt:
* platform/chromium/fast/css/large-number-round-trip-expected.txt: Added.
* platform/mac-lion/Skipped:
* platform/mac-snowleopard/Skipped:
* platform/mac-wk2/Skipped:
* platform/mac/Skipped:
* platform/qt-4.8/Skipped:
* platform/qt/Skipped:
* platform/win-wk2/Skipped:
* platform/win-xp/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

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

9 years agoUnreviewed, rolling out r127920 and r127926.
commit-queue@webkit.org [Fri, 7 Sep 2012 22:58:56 +0000 (22:58 +0000)]
Unreviewed, rolling out r127920 and r127926.
http://trac.webkit.org/changeset/127920
http://trac.webkit.org/changeset/127926
https://bugs.webkit.org/show_bug.cgi?id=96152

billions and billions of assertion failures on mac debug
builds (Requested by thorton on #webkit).

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

Source/WebCore:

* WebCore.exp.in:
* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::getFontData):
* css/CSSSegmentedFontFace.cpp:
(WebCore::CSSSegmentedFontFace::getFontData):
* dom/Document.cpp:
(WebCore::Document::~Document):
(WebCore::Document::registerCustomFont):
(WebCore):
(WebCore::Document::deleteCustomFonts):
(WebCore::Document::reportMemoryUsage):
* dom/Document.h:
(WebCore):
(Document):
* platform/graphics/FontData.h:
* platform/graphics/FontFallbackList.cpp:
(WebCore::FontFallbackList::releaseFontData):
(WebCore::FontFallbackList::fontDataAt):
(WebCore::FontFallbackList::setPlatformFont):
* platform/graphics/FontFallbackList.h:
(FontFallbackList):
(WebCore::FontFallbackList::setGlyphPageZero):
(WebCore::FontFallbackList::setGlyphPages):
* platform/graphics/GlyphPageTreeNode.cpp:
(WebCore::GlyphPageTreeNode::pruneFontData):

LayoutTests:

* fast/frames/seamless/seamless-custom-font-pruning-crash-expected.txt: Removed.
* fast/frames/seamless/seamless-custom-font-pruning-crash.html: Removed.
* fast/frames/seamless/seamless-nested-crash-expected.txt: Removed.
* fast/frames/seamless/seamless-nested-crash.html: Removed.

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

9 years agoAX: Chromium needs access to canvasHasFallbackContent
dmazzoni@google.com [Fri, 7 Sep 2012 22:55:23 +0000 (22:55 +0000)]
AX: Chromium needs access to canvasHasFallbackContent
https://bugs.webkit.org/show_bug.cgi?id=96124

Reviewed by Chris Fleizach.

Source/WebKit/chromium:

Expose canvasHasFallbackContent on Chromium.

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

Tools:

Distinguish between canvas roles with and without fallback
content on Chromium.

* DumpRenderTree/chromium/TestRunner/AccessibilityUIElementChromium.cpp:
(getRole):

LayoutTests:

Update canvas test to distinguish between canvas elements with
fallback content on Chromium.

* platform/chromium/accessibility/canvas-description-and-role-expected.txt:

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

9 years agoObject.prototype.__define{G,S}etter__ with non-callable second parameter should throw...
barraclough@apple.com [Fri, 7 Sep 2012 22:50:45 +0000 (22:50 +0000)]
Object.prototype.__define{G,S}etter__ with non-callable second parameter should throw TypeError instead of SyntaxError
https://bugs.webkit.org/show_bug.cgi?id=93873

Reviewed by Sam Weinig.

Source/JavaScriptCore:

* runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncDefineGetter):
    - throw TypeError instead of SyntaxError
(JSC::objectProtoFuncDefineSetter):
    - throw TypeError instead of SyntaxError

LayoutTests:

* fast/js/property-getters-and-setters-expected.txt:
    - updated results

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

9 years ago[CSS Shaders] WebKitCSSMixFunctionValue.h needs forward declaration of MemoryObjectInfo
anilsson@rim.com [Fri, 7 Sep 2012 22:39:15 +0000 (22:39 +0000)]
[CSS Shaders] WebKitCSSMixFunctionValue.h needs forward declaration of MemoryObjectInfo
https://bugs.webkit.org/show_bug.cgi?id=96150

Reviewed by George Staikos.

Otherwise files that include it may fail to compile.

No new tests, because this patch implements no new functionality.

* css/WebKitCSSMixFunctionValue.h:
(WebCore):

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

9 years agoStringImpl::find(StringImpl*) doesn't handle cases where search and match strings...
msaboff@apple.com [Fri, 7 Sep 2012 22:25:24 +0000 (22:25 +0000)]
StringImpl::find(StringImpl*) doesn't handle cases where search and match strings are different bitness
https://bugs.webkit.org/show_bug.cgi?id=96125

Reviewed by Benjamin Poulain.

Changed findInner and reverseFindInner to be templated on both search and match character types.
Changed both find's and reverseFind to use all four bitness combinations of findInner and
reverseFindInner.

* wtf/text/StringImpl.cpp:
(WTF::findInner):
(WTF::StringImpl::find):
(WTF::reverseFindInner):
(WTF::StringImpl::reverseFind):

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

9 years agoFix the remaining linter errors. These are all cases of paths
ojan@chromium.org [Fri, 7 Sep 2012 22:22:04 +0000 (22:22 +0000)]
Fix the remaining linter errors. These are all cases of paths
that don't actually exist or that are duplicated between TestExpectations
and Skipped files. I left in the Skipped file entries since those
were the ones that win out when duplicated.

* platform/efl/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt-4.8/TestExpectations:
* platform/qt/Skipped:
* platform/qt/TestExpectations:
* platform/win/Skipped:
* platform/win/TestExpectations:

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

9 years agoMac build fix.
schenney@chromium.org [Fri, 7 Sep 2012 22:13:19 +0000 (22:13 +0000)]
Mac build fix.
https://bugs.webkit.org/show_bug.cgi?id=93640

Reviewed by Abhishek Arya.

The original patch for this bug broke the mac builds.

* WebCore.exp.in: Adding const marker

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

9 years agoHandle non-existant TestExpectations files gracefully
ojan@chromium.org [Fri, 7 Sep 2012 22:06:35 +0000 (22:06 +0000)]
Handle non-existant TestExpectations files gracefully
https://bugs.webkit.org/show_bug.cgi?id=96149

Reviewed by Eric Seidel.

Even when we get rid of Skipped files, we shouldn't have each port
require a TestExpectations file for each platform if it doesn't
need one.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.expectations_dict):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_nonexistant_expectations):

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

9 years ago[chromium] Add touchscreen specific fling curve parametrization
rjkroege@chromium.org [Fri, 7 Sep 2012 21:57:15 +0000 (21:57 +0000)]
[chromium] Add touchscreen specific fling curve parametrization
https://bugs.webkit.org/show_bug.cgi?id=95997

Reviewed by James Robinson.

Added a new set of fling curve parameters with a good feel for touchscreen
initiated flings. Renamed TouchpadFlingPlatformGestureCurve to
TouchFlingPlatformGestureCurve to better reflect that the class
can serve for both touchscreen and touchpad flings when appropriately
parametrized. Updated build files as necessary for the rename.

No new tests - existing tests apply.

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.gypi:
* platform/ScrollAnimatorNone.cpp:
(WebCore::ScrollAnimatorNone::fireUpAnAnimation):
* platform/TouchFlingPlatformGestureCurve.cpp: Renamed from Source/WebCore/platform/TouchpadFlingPlatformGestureCurve.cpp.
(WebCore):
(WebCore::TouchFlingPlatformGestureCurve::createForTouchPad):
(WebCore::TouchFlingPlatformGestureCurve::createForTouchScreen):
Added with touchscreen parameters.
(WebCore::TouchFlingPlatformGestureCurve::create):
(WebCore::position):
(WebCore::velocity):
(WebCore::TouchFlingPlatformGestureCurve::TouchFlingPlatformGestureCurve):
(WebCore::TouchFlingPlatformGestureCurve::~TouchFlingPlatformGestureCurve):
(WebCore::TouchFlingPlatformGestureCurve::debugName):
(WebCore::TouchFlingPlatformGestureCurve::apply):
* platform/TouchFlingPlatformGestureCurve.h: Renamed from Source/WebCore/platform/TouchpadFlingPlatformGestureCurve.h.
(WebCore):
(TouchFlingPlatformGestureCurve):
* platform/chromium/support/PlatformGestureCurveFactory.cpp: invokes
createForTouchPad or createForTouchScreen as appropriate.
(WebKit::PlatformGestureCurveFactory::createCurve):

Source/WebKit/chromium:

* tests/PlatformGestureCurveTest.cpp: To use the renamed curve constructor.

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

9 years agoEnter the creationContext before creating DOM wrappers
commit-queue@webkit.org [Fri, 7 Sep 2012 21:45:23 +0000 (21:45 +0000)]
Enter the creationContext before creating DOM wrappers
https://bugs.webkit.org/show_bug.cgi?id=96044

Patch by Adam Barth <abarth@chromium.org> on 2012-09-07
Reviewed by Eric Seidel.

Source/WebCore:

Now that we have the creationContext available when instantiating DOM
wrappers, we should use it! After this patch, we enter the creation
context so that the DOM wrapper is created in the right context (and
therefore has the right prototype chain).

This patch would have been tested by
fast/dom/prototype-inheritance.html, but that test was removed because
it was too much work to maintain. I'll post what the diff would have
been to the results for that test as an attachment to this bug.

Note: After this patch there are a number of cleanup patches to write,
but I'll do those separately.

* bindings/js/JSGeolocationCustom.cpp:
(WebCore::JSGeolocation::getCurrentPosition):
(WebCore::JSGeolocation::watchPosition):
  - This patch also includes a minor bug fix to the JSC implementations
    of Geolocation and Notifications. Previously, JSC was using the
    current lexical context for the callback object, which makes very
    little sense as it neither cooresponds to the Geolocation (or
    Notification) object or the functions being used for the callback.

    To be consistent with how we do callbacks elsewhere in WebKit, we
    should use the context that corresponds to the Geolocation (or
    Notification) object. This change happened automatically for V8
    when this patch fixed the Geolocation (and Notifications) wrapper
    to use the right context, but for JSC we need to change these lines
    of code explicitly.
* bindings/scripts/CodeGeneratorV8.pm:
(GenerateToV8Converters):

LayoutTests:

Update the Geolocation tests to show that we now use the correct
context for these callback. Specifically, we use the context that
cooresponds to the Geolocation object itself, not whatever random
context we happened to be in when we first touched the Geolocation
object.

* fast/dom/Geolocation/callback-to-deleted-context-expected.txt:
* fast/dom/Geolocation/disconnected-frame-expected.txt:
* fast/dom/Geolocation/disconnected-frame-permission-denied-expected.txt:
* fast/dom/Geolocation/resources/callback-to-deleted-context-inner1.html:
* fast/dom/Geolocation/script-tests/callback-to-deleted-context.js:
(onSecondIframeLoaded):
* fast/dom/Geolocation/script-tests/disconnected-frame-permission-denied.js:
(onIframeUnloaded.setTimeout):
* fast/dom/Geolocation/script-tests/disconnected-frame.js:
(onIframeUnloaded.setTimeout):
(onIframeUnloaded):

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

9 years agoAppcache fallback URL match should use the longest candidate
leoyang@rim.com [Fri, 7 Sep 2012 21:28:57 +0000 (21:28 +0000)]
Appcache fallback URL match should use the longest candidate
https://bugs.webkit.org/show_bug.cgi?id=96126

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: http/tests/appcache/multi-fallback.html

* loader/appcache/ApplicationCache.cpp:
(WebCore::fallbackURLLongerThan):
(WebCore::ApplicationCache::setFallbackURLs):

LayoutTests:

Test with multiple candidates of fallback match.

* http/tests/appcache/multi-fallback-expected.txt: Added.
* http/tests/appcache/multi-fallback.html: Added.
* http/tests/appcache/resources/multi-fallback.manifest: Added.

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

9 years agoFont data is purged while fonts are still using it
schenney@chromium.org [Fri, 7 Sep 2012 21:17:50 +0000 (21:17 +0000)]
Font data is purged while fonts are still using it
https://bugs.webkit.org/show_bug.cgi?id=93640

Reviewed by Eric Seidel.

Source/WebCore:

Move the handling of custom font pruning from Document to FontFallbackList.
The previous inplementation allowed fonts to be removed before all their
clients were done. This change moves handling of custom font purging to the
FontFallbackList class, which is the shared object that is only removed
when all clients of a font are done with it. This fixes a crash in Angry
Birds due to a seamless iframe and some failing tests in fast/frames/seamless.

The specific element that causes problems is:
<iframe id="ingame_frame0" name="ingame_frame0" frameborder="0" seamless="true"
  src="http://chrome.angrybirds.com/ingame_graphic.html"
  onload="this.style.opacity = 1; parent.adLoaded();" scrolling="no"
  style="opacity: 1; -webkit-transition: opacity 1s ease-in-out 0s;
  position: absolute; border: 0px; width: 312px; height: 320px; z-index:
  300; overflow: hidden; visibility: visible;"></iframe>
The source document uses the same font as the embedding document.

Tests: fast/frames/seamless/seamless-custom-font-pruning-crash.html
       fast/frames/seamless/seamless-nested-crash.html

* css/CSSFontFaceSource.cpp:
(WebCore::CSSFontFaceSource::getFontData): Remove code to register the
font with the document.
* css/CSSSegmentedFontFace.cpp:
(WebCore::CSSSegmentedFontFace::getFontData): Remove code to register
the font with the document.
* dom/Document.cpp:
(WebCore::Document::~Document): Remove code that records and purges
custom fonts.
(WebCore):
(WebCore::Document::reportMemoryUsage): Remove reference to removed
object.
* dom/Document.h:
(Document): Remove method declarations for custom font handling.
* platform/graphics/FontData.h: Add RefCounted to FontData. Previously, FontData
for custom fonts was owned by a Vector<OwnPtr<FontData>> in Document. Now it
is owned by FontFallbackList, and ref counting is required. A future patch will
add RefPtr code for all FontData use cases.
* platform/graphics/FontFallbackList.cpp:
(WebCore): Add global custom font data cache, which owns the FontData pointers
used as keys.
(WebCore::FontFallbackList::appendFontData): Helper method increments
the ref count on custom FontData.
(WebCore::FontFallbackList::releaseFontData): Helper method decrements
the ref count on custom FontData.
(WebCore::FontFallbackList::fontDataAt): Add calls to register the
FontFallbackList as a client of custom fonts.
* platform/graphics/FontFallbackList.h:
(WebCore::FontFallbackList::setGlyphPageZero): Moved this declaration.
(WebCore::FontFallbackList::setGlyphPages): Moved this declaration.
(FontFallbackList):
* platform/graphics/GlyphPageTreeNode.cpp:
(WebCore::GlyphPageTreeNode::pruneFontData): Removed unnecessary null check.

LayoutTests:

Tests for font purging. The seamless-custom-font-pruning-crash test
was only failing in Chromium Asan, while the seamless-nested-crash case
was only failing in Asan DumpRenderTree.

* fast/frames/seamless/seamless-custom-font-pruning-crash-expected.txt: Added.
* fast/frames/seamless/seamless-custom-font-pruning-crash.html: Added.
* fast/frames/seamless/seamless-nested-crash-expected.txt: Added.
* fast/frames/seamless/seamless-nested-crash.html: Added.

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

9 years agoUnreviewed, rolling out r127911.
jamesr@google.com [Fri, 7 Sep 2012 21:14:22 +0000 (21:14 +0000)]
Unreviewed, rolling out r127911.
http://trac.webkit.org/changeset/127911
https://bugs.webkit.org/show_bug.cgi?id=96146

Patch breaks build with clang (Requested by rbuis on #webkit).

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

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/filters/CustomFilterGlobalContext.cpp:
(WebCore::CustomFilterGlobalContext::getValidatedProgram):
* platform/graphics/filters/CustomFilterMesh.cpp:
(WebCore):
(MeshGenerator):
(WebCore::MeshGenerator::MeshGenerator):
(WebCore::MeshGenerator::vertices):
(WebCore::MeshGenerator::indices):
(WebCore::MeshGenerator::points):
(WebCore::MeshGenerator::pointsCount):
(WebCore::MeshGenerator::tiles):
(WebCore::MeshGenerator::tilesCount):
(WebCore::MeshGenerator::indicesCount):
(WebCore::MeshGenerator::floatsPerVertex):
(WebCore::MeshGenerator::verticesCount):
(WebCore::MeshGenerator::addTile):
(WebCore::MeshGenerator::addAttachedMeshIndex):
(WebCore::MeshGenerator::generateAttachedMesh):
(WebCore::MeshGenerator::addDetachedMeshVertexAndIndex):
(WebCore::MeshGenerator::generateDetachedMesh):
(WebCore::MeshGenerator::addPositionAttribute):
(WebCore::MeshGenerator::addTexCoordAttribute):
(WebCore::MeshGenerator::addMeshCoordAttribute):
(WebCore::MeshGenerator::addTriangleCoordAttribute):
(WebCore::MeshGenerator::addAttachedMeshVertexAttributes):
(WebCore::MeshGenerator::addDetachedMeshVertexAttributes):
(WebCore::MeshGenerator::dumpBuffers):
(WebCore::CustomFilterMesh::CustomFilterMesh):
* platform/graphics/filters/CustomFilterMeshGenerator.cpp: Removed.
* platform/graphics/filters/CustomFilterMeshGenerator.h: Removed.
* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
(WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
(WebCore::CustomFilterValidatedProgram::compiledProgram):
(WebCore::CustomFilterValidatedProgram::~CustomFilterValidatedProgram):
* platform/graphics/filters/CustomFilterValidatedProgram.h:
(CustomFilterValidatedProgram):
* platform/graphics/filters/blackberry/CustomFilterValidatedProgramBlackBerry.cpp: Removed.

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

9 years agoFix linter errors. The deleted lines are all tests that are passing
ojan@chromium.org [Fri, 7 Sep 2012 21:04:25 +0000 (21:04 +0000)]
Fix linter errors. The deleted lines are all tests that are passing
or that no longer exist at that path.

* platform/efl/TestExpectations:
* platform/mac/TestExpectations:

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

9 years ago[chromium] Unreviewed gardening. Remove platform/chromium-linux/compositing/gestures
tony@chromium.org [Fri, 7 Sep 2012 20:58:49 +0000 (20:58 +0000)]
[chromium] Unreviewed gardening.  Remove platform/chromium-linux/compositing/gestures
test skipping. All compositing tests seem to have the same failure.

* platform/chromium/TestExpectations:

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

9 years agoFix RenderBox::availableHeight to subtract scrollbars in the right places
ojan@chromium.org [Fri, 7 Sep 2012 20:54:56 +0000 (20:54 +0000)]
Fix RenderBox::availableHeight to subtract scrollbars in the right places
https://bugs.webkit.org/show_bug.cgi?id=96031

Reviewed by Tony Chang.

Source/WebCore:

This matches Firefox 15 and IE9 rendering for the two new tests.

Tests: fast/block/positioning/percent-top-left-on-relative-position.html
       fast/css/nested-percent-height-on-replaced.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePercentageLogicalHeight):
Subtract scrollbars when recurring on percentage heights.
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
This is the wrong place to subtract scrollbars. availableLogicalHeight
should return a value that doesn't include scrollbars.
(WebCore::RenderBox::availableLogicalHeightUsing):
Subtract scrollbars from specified heights. Also, consolidate the code to
use computeContentLogicalHeightUsing. This makes percentage heights use
the right containingBlock in quirks mode and makes viewport percentage heights work.

LayoutTests:

* fast/block/positioning/percent-top-left-on-relative-position-expected.html: Added.
* fast/block/positioning/percent-top-left-on-relative-position.html: Added.
* fast/css/nested-percent-height-on-replaced-expected.txt: Added.
* fast/css/nested-percent-height-on-replaced.html: Added.
* platform/chromium-linux/fast/css/percent-top-value-with-relative-position-expected.png:
* platform/chromium-win/fast/css/percent-top-value-with-relative-position-expected.txt:
This is now correctly centering the 50%. It moved up 8px because that is half of the body's margin.
This matches other Firefox 15 and IE9.

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

9 years agoMake RenderBox::computeLogicalWidthInRegion const
tony@chromium.org [Fri, 7 Sep 2012 20:50:41 +0000 (20:50 +0000)]
Make RenderBox::computeLogicalWidthInRegion const
https://bugs.webkit.org/show_bug.cgi?id=96129

Reviewed by Ojan Vafai.

Making computeLogicalWidthInRegion const allows us to get rid of the gross hack in
RenderBox::renderBoxRegionInfo.

No new tests, this is covered by existing layout tests.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::constrainLogicalWidthInRegionByMinMax): Make const.
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): Make const.
(WebCore::RenderBox::computeLogicalWidth): Use a LogicalExtentComputedValues when calling computeLogicalWidthInRegion.
(WebCore::RenderBox::computeLogicalWidthInRegion): Make const. Fill in a LogicalExtentComputedValues struct instead.
(WebCore::RenderBox::computeLogicalWidthInRegionUsing): Make const.
(WebCore::RenderBox::renderBoxRegionInfo): Remove hack and get region width values in a LogicalExtentComputedValues struct.
* rendering/RenderBox.h:
(RenderBox):

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

9 years ago[chromium] Remove bad assert in CCRenderPass::Id
danakj@chromium.org [Fri, 7 Sep 2012 20:47:44 +0000 (20:47 +0000)]
[chromium] Remove bad assert in CCRenderPass::Id
https://bugs.webkit.org/show_bug.cgi?id=96138

Reviewed by James Robinson.

The assert prevents HashMap from creating "deleted" and "empty" ids. We
assert that RenderPasses have correct ids already, and don't need to
assert inside the Id structure itself.

* platform/graphics/chromium/cc/CCRenderPass.h:
(WebCore::CCRenderPass::Id::Id):

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

9 years agoUnreviewed, fix incorrect comment character(s) in Skipped list.
timothy_horton@apple.com [Fri, 7 Sep 2012 20:41:40 +0000 (20:41 +0000)]
Unreviewed, fix incorrect comment character(s) in Skipped list.

* platform/mac/Skipped:

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

9 years ago[CSS Shaders] [BlackBerry] Refactor CustomFilterMesh and CustomFilter*Program
anilsson@rim.com [Fri, 7 Sep 2012 20:19:26 +0000 (20:19 +0000)]
[CSS Shaders] [BlackBerry] Refactor CustomFilterMesh and CustomFilter*Program
https://bugs.webkit.org/show_bug.cgi?id=94725

Reviewed by Rob Buis.

Separate the MeshGenerator from the CustomFilterMesh into
CustomFilterMeshGenerator.h/cpp. This allows the BlackBerry port to
reuse the mesh generator in its accelerated compositing implementation.

Also add support for creating a "PlatformCompiledProgram" from a
CustomFilterValidatedProgram, so the BlackBerry port can reuse the
shader validation code in its accelerated compositing implementation.

It turns out the GraphicsContext3D is not needed for ANGLE to function,
so this patch removes an ASSERT that required a context before
validating the shaders using ANGLE. This allows the BlackBerry port to
reuse the validation code without triggering the assert. In the future,
the validation code could be moved to a separate class to make it more
obvious that it isn't really related to GraphicsContext3D.

In general, this refactoring can be useful for any port that uses
OpenGL to implement accelerated compositing.

Inspired by an original patch by Joshua Netterfield.

No new tests, because this patch implements no new functionality.

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/filters/CustomFilterGlobalContext.cpp:
(WebCore::CustomFilterGlobalContext::getValidatedProgram):
* platform/graphics/filters/CustomFilterMesh.cpp:
(WebCore::CustomFilterMesh::CustomFilterMesh):
* platform/graphics/filters/CustomFilterMeshGenerator.cpp: Added.
(WebCore):
(WebCore::CustomFilterMeshGenerator::CustomFilterMeshGenerator):
(WebCore::CustomFilterMeshGenerator::addAttachedMeshIndex):
(WebCore::CustomFilterMeshGenerator::generateAttachedMesh):
(WebCore::CustomFilterMeshGenerator::addDetachedMeshVertexAndIndex):
(WebCore::CustomFilterMeshGenerator::generateDetachedMesh):
(WebCore::CustomFilterMeshGenerator::addPositionAttribute):
(WebCore::CustomFilterMeshGenerator::addTexCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addMeshCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addTriangleCoordAttribute):
(WebCore::CustomFilterMeshGenerator::addAttachedMeshVertexAttributes):
(WebCore::CustomFilterMeshGenerator::addDetachedMeshVertexAttributes):
(WebCore::CustomFilterMeshGenerator::dumpBuffers):
* platform/graphics/filters/CustomFilterMeshGenerator.h: Added.
(WebCore):
(CustomFilterMeshGenerator):
(WebCore::CustomFilterMeshGenerator::vertices):
(WebCore::CustomFilterMeshGenerator::indices):
(WebCore::CustomFilterMeshGenerator::points):
(WebCore::CustomFilterMeshGenerator::pointsCount):
(WebCore::CustomFilterMeshGenerator::tiles):
(WebCore::CustomFilterMeshGenerator::tilesCount):
(WebCore::CustomFilterMeshGenerator::indicesCount):
(WebCore::CustomFilterMeshGenerator::floatsPerVertex):
(WebCore::CustomFilterMeshGenerator::verticesCount):
(WebCore::CustomFilterMeshGenerator::addTile):
* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
(WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
(WebCore::CustomFilterValidatedProgram::compiledProgram):
(WebCore::CustomFilterValidatedProgram::~CustomFilterValidatedProgram):
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram):
(WebCore::CustomFilterValidatedProgram::platformDestroy):
* platform/graphics/filters/CustomFilterValidatedProgram.h:
(WebCore):
(CustomFilterValidatedProgram):
* platform/graphics/filters/blackberry/CustomFilterValidatedProgramBlackBerry.cpp: Added.
(WebCore):
(WebCore::CustomFilterValidatedProgram::platformCompiledProgram):
(WebCore::CustomFilterValidatedProgram::platformDestroy):

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

9 years agoRegression: check-webkit-style no longer checks TestExpectations for syntax errors
tony@chromium.org [Fri, 7 Sep 2012 20:12:00 +0000 (20:12 +0000)]
Regression: check-webkit-style no longer checks TestExpectations for syntax errors
https://bugs.webkit.org/show_bug.cgi?id=96136

Reviewed by Ojan Vafai.

When we renamed the file to TestExpectations, it was no longer considered a text file so
it was no longer being checked. Since then, test_expectations_overrides() has been removed
from the port object, so I've removed that from the check. I'm not sure what it was
supposed to do.

* Scripts/webkitpy/style/checker.py:
(CheckerDispatcher._file_type): Mark TestExpectations as a text file.
* Scripts/webkitpy/style/checkers/test_expectations.py:
(TestExpectationsChecker.check_test_expectations): Remove overrides param.
(TestExpectationsChecker.check): Remove overrides param.
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
(TestExpectationsTestCase.assert_lines_lint): Remove overrides param.

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

9 years ago[EFL] Use same default minimum logical font size in DRT and WTR
commit-queue@webkit.org [Fri, 7 Sep 2012 20:04:16 +0000 (20:04 +0000)]
[EFL] Use same default minimum logical font size in DRT and WTR
https://bugs.webkit.org/show_bug.cgi?id=96116

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-07
Reviewed by Martin Robinson.

Source/WebKit/efl:

Add DRT helper function to set the minimum logical
font size setting.

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

Source/WebKit2:

Add private bundle C API to set the minimum logicial font
size setting. This is needed by WebKitTestRunner.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetMinimumLogicalFontSize):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setMinimumLogicalFontSize):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::resetDefaultsToConsistentValues): Set minimum
logical font size to 9 to match the value used in WTR.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting): Explicitly set the minimum
logical font size to 9 (default value in WK2)

LayoutTests:

Provide new baseline for several tests now that the minimum
logical font size setting is set to 9 in EFL's DRT.

Unskip several tests in EFL WK2 now that EFL's DRT uses
the same minimum logical font size and now that the tests
have been rebaselined.

* platform/efl-wk2/TestExpectations:
* platform/efl/fast/css/bidi-override-in-anonymous-block-expected.png:
* platform/efl/fast/css/bidi-override-in-anonymous-block-expected.txt: Added.
* platform/efl/fast/ruby/nested-ruby-expected.png:
* platform/efl/fast/ruby/nested-ruby-expected.txt:
* platform/efl/fast/ruby/ruby-beforeafter-expected.png:
* platform/efl/fast/ruby/ruby-beforeafter-expected.txt:
* platform/efl/fast/ruby/ruby-empty-rt-expected.png:
* platform/efl/fast/ruby/ruby-empty-rt-expected.txt:
* platform/efl/fast/ruby/ruby-length-expected.png:
* platform/efl/fast/ruby/ruby-length-expected.txt:
* platform/efl/fast/ruby/ruby-run-break-expected.png:
* platform/efl/fast/ruby/ruby-run-break-expected.txt:
* platform/efl/fast/ruby/ruby-runs-expected.png:
* platform/efl/fast/ruby/ruby-runs-expected.txt:
* platform/efl/fast/ruby/ruby-runs-spans-expected.png:
* platform/efl/fast/ruby/ruby-runs-spans-expected.txt:
* platform/efl/fast/ruby/ruby-simple-expected.png:
* platform/efl/fast/ruby/ruby-simple-expected.txt:
* platform/efl/fast/ruby/ruby-simple-rp-expected.png:
* platform/efl/fast/ruby/ruby-simple-rp-expected.txt:
* platform/efl/fast/ruby/ruby-trailing-expected.png:
* platform/efl/fast/ruby/ruby-trailing-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-rt-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-rt-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-text1-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-text1-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-text2-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-text2-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-text3-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-text3-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-rt1-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-rt1-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-rt2-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-rt2-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-text1-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-text1-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-text2-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-text2-expected.txt:
* platform/efl/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.png:
* platform/efl/http/tests/misc/object-embedding-svg-delayed-size-negotiation-2-expected.txt:

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

9 years ago[chromium] Dynamically removing preserve-3d from a layer has no effect
commit-queue@webkit.org [Fri, 7 Sep 2012 19:54:31 +0000 (19:54 +0000)]
[chromium] Dynamically removing preserve-3d from a layer has no effect
https://bugs.webkit.org/show_bug.cgi?id=95732

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

Move preserve-3d-toggle.html to the common compositing tests directory because
it isn't Chromium-specific.

* compositing/preserve-3d-toggle-expected.png: Renamed from LayoutTests/platform/chromium/compositing/preserve-3d-toggle-expected.png.
* compositing/preserve-3d-toggle-expected.txt: Renamed from LayoutTests/platform/chromium/compositing/preserve-3d-toggle-expected.txt.
* compositing/preserve-3d-toggle.html: Renamed from LayoutTests/platform/chromium/compositing/preserve-3d-toggle.html.

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

9 years ago[chromium] Make RenderPass ids hold both generating layer id and an index
danakj@chromium.org [Fri, 7 Sep 2012 19:37:30 +0000 (19:37 +0000)]
[chromium] Make RenderPass ids hold both generating layer id and an index
https://bugs.webkit.org/show_bug.cgi?id=95500

Reviewed by Adrienne Walker.

Source/WebCore:

This change allows us to avoid complex renderPassId mappings between
compositors for ubercomp. The ubercomp layer needs to add a number
of RenderPasses to the frame, and these must not conflict with other
RenderPasses in the frame. By using its layer id along with an extra
value it determines, the layer can create a unique id without needing
access to any global state or id generator.

Covered by existing tests.

* platform/graphics/chromium/cc/CCDirectRenderer.cpp:
(WebCore::CCDirectRenderer::decideRenderPassAllocationsForFrame):
(WebCore::CCDirectRenderer::haveCachedResourcesForRenderPassId):
* platform/graphics/chromium/cc/CCDirectRenderer.h:
(CCDirectRenderer):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
(WebCore::findRenderPassById):
(WebCore::removeRenderPassesRecursive):
* platform/graphics/chromium/cc/CCRenderPass.cpp:
(WebCore::CCRenderPass::create):
(WebCore::CCRenderPass::CCRenderPass):
* platform/graphics/chromium/cc/CCRenderPass.h:
(Id):
(WebCore::CCRenderPass::Id::Id):
(WebCore::CCRenderPass::Id::operator==):
(WebCore::CCRenderPass::Id::operator!=):
(WebCore::CCRenderPass::Id::operator<):
(CCRenderPass):
(WebCore::CCRenderPass::id):
(WebCore):
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.cpp:
(WebCore::CCRenderPassDrawQuad::create):
(WebCore::CCRenderPassDrawQuad::CCRenderPassDrawQuad):
* platform/graphics/chromium/cc/CCRenderPassDrawQuad.h:
(CCRenderPassDrawQuad):
(WebCore::CCRenderPassDrawQuad::renderPassId):
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::renderPassId):
(WebCore):
(WebCore::CCRenderSurface::appendRenderPasses):
(WebCore::CCRenderSurface::appendQuads):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(WebCore):
(CCRenderSurface):
* platform/graphics/chromium/cc/CCRenderer.h:
(WebCore::CCRenderer::haveCachedResourcesForRenderPassId):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
* tests/CCRenderSurfaceTest.cpp:
* tests/CCRendererGLTest.cpp:
(FakeCCRendererClient::FakeCCRendererClient):

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

9 years agoMediaStream API: add RTCPeerConnection::createAnswer
tommyw@google.com [Fri, 7 Sep 2012 19:30:55 +0000 (19:30 +0000)]
MediaStream API: add RTCPeerConnection::createAnswer
https://bugs.webkit.org/show_bug.cgi?id=96092

Reviewed by Adam Barth.

Source/Platform:

* chromium/public/WebRTCPeerConnectionHandler.h:
(WebRTCPeerConnectionHandler):

Source/WebCore:

Test: fast/mediastream/RTCPeerConnection-createAnswer.html

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::createAnswer):
(WebCore):
* Modules/mediastream/RTCPeerConnection.h:
(RTCPeerConnection):
* Modules/mediastream/RTCPeerConnection.idl:
* platform/mediastream/RTCPeerConnectionHandler.cpp:
(RTCPeerConnectionHandlerDummy):
(WebCore::RTCPeerConnectionHandlerDummy::createAnswer):
(WebCore):
* platform/mediastream/RTCPeerConnectionHandler.h:
(RTCPeerConnectionHandler):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
(WebCore::RTCPeerConnectionHandlerChromium::createAnswer):
(WebCore):
* platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
(RTCPeerConnectionHandlerChromium):

Tools:

Expanding and enhancing MockWebRTCPeerConnectionHandler.

* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
(MockWebRTCPeerConnectionHandler::createOffer):
(MockWebRTCPeerConnectionHandler::createAnswer):
(MockWebRTCPeerConnectionHandler::setLocalDescription):
(MockWebRTCPeerConnectionHandler::setRemoteDescription):
* DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
(MockWebRTCPeerConnectionHandler):

LayoutTests:

* fast/mediastream/RTCPeerConnection-createAnswer-expected.txt: Added.
* fast/mediastream/RTCPeerConnection-createAnswer.html: Added.
* fast/mediastream/RTCPeerConnection-createOffer-expected.txt:
* fast/mediastream/RTCPeerConnection-createOffer.html:
* fast/mediastream/RTCPeerConnection-localDescription-expected.txt:
* fast/mediastream/RTCPeerConnection-localDescription.html:
* fast/mediastream/RTCPeerConnection-remoteDescription-expected.txt:
* fast/mediastream/RTCPeerConnection-remoteDescription.html:

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

9 years agoUnreviewed. Update test expectation media/video-set-rate-from-pause.html on Android.
wangxianzhu@chromium.org [Fri, 7 Sep 2012 19:20:06 +0000 (19:20 +0000)]
Unreviewed. Update test expectation media/video-set-rate-from-pause.html on Android.

* platform/chromium/TestExpectations:

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

9 years ago[WK2][WTR] Unskip detached-stylesheet-without-wrapper.html test case.
commit-queue@webkit.org [Fri, 7 Sep 2012 19:15:31 +0000 (19:15 +0000)]
[WK2][WTR] Unskip detached-stylesheet-without-wrapper.html test case.
https://bugs.webkit.org/show_bug.cgi?id=96069

Unreviewed EFL gardening.

fast/dom/StyleSheet/detached-stylesheet-without-wrapper.html test case has been passed on EFL layout test.
WebKit EFL doesn't have to skip this.

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-07

* platform/gtk-wk2/Skipped:
* platform/mac-wk2/Skipped:
* platform/qt-5.0-wk2/Skipped:
* platform/win-wk2/Skipped:
* platform/wk2/Skipped:

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

9 years ago[Chromium] IndexedDB: public WebKit API changes for consolidating two-phase connect
jsbell@chromium.org [Fri, 7 Sep 2012 19:04:23 +0000 (19:04 +0000)]
[Chromium] IndexedDB: public WebKit API changes for consolidating two-phase connect
https://bugs.webkit.org/show_bug.cgi?id=96122

Reviewed by Adam Barth.

Prep work for landing Chromium side of http://webkit.org/b/90411 - the IDBFactory
open() method now takes the "database callbacks", rather than being sent through
in a later call.

Also, delete an obsolete method.

* public/WebIDBFactory.h:
(WebKit):
(WebIDBFactory): Delete pre-version overload of open().
(WebKit::WebIDBFactory::open): Add overload that takes WebIDBDatabaseCallbacks.

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

9 years agoWeb Inspector: [REGRESSION] Content is not available for dynamically loaded script...
vsevik@chromium.org [Fri, 7 Sep 2012 18:51:37 +0000 (18:51 +0000)]
Web Inspector: [REGRESSION] Content is not available for dynamically loaded script sometimes.
https://bugs.webkit.org/show_bug.cgi?id=95954

Reviewed by Yury Semikhatsky.

Source/WebCore:

Resource now loads content from request when it is available.
Content was loaded from PageAgent before where it might be not available if the resource was already GCed.

Test: http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache.html

* inspector/front-end/Resource.js:
(WebInspector.Resource.prototype._innerRequestContent.contentLoaded):
(WebInspector.Resource.prototype._innerRequestContent.resourceContentLoaded):
(WebInspector.Resource.prototype._innerRequestContent):

LayoutTests:

* http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache-expected.txt: Added.
* http/tests/inspector/resource-tree/resource-request-content-after-loading-and-clearing-cache.html: Added.
* http/tests/inspector/resource-tree/resources/dynamic-script.js: Added.
(foo):
* http/tests/inspector/resources-test.js:

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

9 years agoUnreviewed changes to watchlist.
dino@apple.com [Fri, 7 Sep 2012 18:44:32 +0000 (18:44 +0000)]
Unreviewed changes to watchlist.

- Add new WebGL and Filters definitions
- Add myself to OpenGL bugs

* Scripts/webkitpy/common/config/watchlist:

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

9 years agoUnreviewed, skip accessibility/spinbutton-value.html on win.
dmazzoni@google.com [Fri, 7 Sep 2012 18:39:16 +0000 (18:39 +0000)]
Unreviewed, skip accessibility/spinbutton-value.html on win.

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

9 years agoHTMLTokenizer should use the latest EfficientStrings hotness
abarth@webkit.org [Fri, 7 Sep 2012 18:32:56 +0000 (18:32 +0000)]
HTMLTokenizer should use the latest EfficientStrings hotness
https://bugs.webkit.org/show_bug.cgi?id=95276

Reviewed by Benjamin Poulain.

Using ASCIILiteral avoids memcpying the string into the heap and
therefore uses less total memory.

* html/parser/HTMLTokenizer.cpp:
(WebCore::HTMLTokenizer::nextToken):

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

9 years agoUnreviewed rebaseline.
fsamuel@chromium.org [Fri, 7 Sep 2012 18:31:16 +0000 (18:31 +0000)]
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: https://svn.webkit.org/repository/webkit/trunk@127898 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] Chromium Linux EWS bots and CQ bots are flaky
tony@chromium.org [Fri, 7 Sep 2012 18:27:13 +0000 (18:27 +0000)]
[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: https://svn.webkit.org/repository/webkit/trunk@127897 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Chromium] GraphicsLayerChromiumTest::applyScrollToScrollableArea() is failing
commit-queue@webkit.org [Fri, 7 Sep 2012 18:26:08 +0000 (18:26 +0000)]
[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: https://svn.webkit.org/repository/webkit/trunk@127896 268f45cc-cd09-0410-ab3c-d52691b4dbfc