[chromium] Mark a test as slow.
https://bugs.webkit.org/show_bug.cgi?id=90207

fast/forms/select/select-state-restore.html is a slow test on debug builds.
Not reviewed.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121470 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] rebaseline svg text layouts?
https://bugs.webkit.org/show_bug.cgi?id=89936

Unreviewed Chromium test expectations update.

The SVG tests for this bug all seem OK, so they are being rebaselined.
The other content is less clear, so it is being left for an expert.

* platform/chromium-win-xp/svg/W3C-SVG-1.1-SE/text-intro-05-t-expected.txt: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png: Added.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Added.
* platform/chromium-win-xp/svg/custom/js-late-gradient-and-object-creation-expected.png: Added.
* platform/chromium-win-xp/svg/text/text-intro-05-t-expected.txt: Added.
* platform/chromium-win-xp/svg/zoom/page/zoom-foreignObject-expected.png: Added.
* platform/chromium/TestExpectations:


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

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

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121472 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Move chromium compositor implementation files into separate section in WebCore.gypi
https://bugs.webkit.org/show_bug.cgi?id=90201

Patch by James Robinson <jamesr@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

This moves the chromium compositor implementation files to a separate gyp variable to make future changes
easier. The files still all link into webcore_platform.lib, as before.

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add support for DEPTH_STENCIL to WEBGL_depth_texture
https://bugs.webkit.org/show_bug.cgi?id=90109

Patch by Gregg Tavares <gman@google.com> on 2012-06-28
Reviewed by Kenneth Russell.

Source/WebCore:

* html/canvas/WebGLDepthTexture.idl:
* html/canvas/WebGLFramebuffer.cpp:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):

LayoutTests:

* fast/canvas/webgl/webgl-depth-texture-expected.txt:
* fast/canvas/webgl/webgl-depth-texture.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Add unit tests for GtkInputMethodFilter
https://bugs.webkit.org/show_bug.cgi?id=88698

Reviewed by Carlos Garcia Campos.

Add unit tests for GtkInputMethodFilter in the WebCore platform layer.
This change adds the TestGtk test suite which will be used for all non-API
layer GTK unit tests.

* TestWebKitAPI/GNUmakefile.am: Update the build to include the new tests.
* TestWebKitAPI/Tests/gtk/InputMethodFilter.cpp: Added.
(TestWebKitAPI::PlatformWebView::PlatformWebView): Remove the call to gtk_init here
as it's now in main.cpp.
* TestWebKitAPI/gtk/main.cpp: Change the g_type_init call to gtk_init, because now
a majority of all unit tests depend on GTK+ being initialized.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[mac] WKTR windows still don't stay off screen sometimes
https://bugs.webkit.org/show_bug.cgi?id=90214
<rdar://problem/11760263>

Reviewed by Simon Fraser.

In some cases, the system itself will consult [WebKitTestRunnerWindow frame], so we should refrain from
overriding it and instead provide a different method to use when we want the web-facing "fake" window origin
(for PlatformWebView::windowFrame()).

* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(-[WebKitTestRunnerWindow frameRespectingFakeOrigin]):
(WTR::PlatformWebView::windowFrame):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121476 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Hook up render-side key ASSERTing for get()
https://bugs.webkit.org/show_bug.cgi?id=90001

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-28
Reviewed by Tony Chang.

Source/WebCore:

Hook up the new onSuccess and add it to the interface. For now,
simply assert that the right value is set. Add the same assertion
logic in the value-construction logic when the cursor advances.

No new tests, existing tests verify this refactor is correct.

* Modules/indexeddb/IDBCallbacks.h:
(IDBCallbacks):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::getInternal):
* Modules/indexeddb/IDBRequest.cpp:
(WebCore):
(WebCore::IDBRequest::onSuccess):
* Modules/indexeddb/IDBRequest.h:
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::createIDBKeyFromSerializedValueAndKeyPath):
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):

Source/WebKit/chromium:

Hook up Chromium WebKit API to new onSuccess handler.

* src/WebIDBCallbacksImpl.cpp:
(WebKit::WebIDBCallbacksImpl::onSuccess):
* tests/IDBAbortOnCorruptTest.cpp:
(WebCore::MockIDBCallbacks::onSuccess):
* tests/IDBDatabaseBackendTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121477 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Cleanup HTMLFormCollection
https://bugs.webkit.org/show_bug.cgi?id=90111

Reviewed by Andreas Kling.

Source/WebCore: 

Got rid of getNamedItem and enamed getNamedFormItem to firstNamedItem and got rid of duplicateNumber argument since
it's always 0. Also made it a static local function. In addition, removed nextItem() since it's not used anywhere.

WebKit API Test: WebKit1.HTMLFormCollectionNamedItemTest

* html/HTMLFormCollection.cpp:
(WebCore::firstNamedItem):
(WebCore):
(WebCore::HTMLFormCollection::namedItem):
* html/HTMLFormCollection.h:
(HTMLFormCollection):

Tools: 

Add a WebKit API test using copy-paste design pattern per kling's request.

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.html: Added.
* TestWebKitAPI/Tests/mac/HTMLFormCollectionNamedItem.mm: Added.
(-[HTMLFormCollectionNamedItemTest webView:didFinishLoadForFrame:]):
(TestWebKitAPI):
(TestWebKitAPI::TEST):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix a typo in the change log per review comment.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Adding a commenting utility to record BytecodeGenerator comments
with opcodes that are emitted.  Presently, the comments can only
be constant strings.  Adding comments for opcodes is optional.
If a comment is added, the comment will be printed following the
opcode when CodeBlock::dump() is called.

This utility is disabled by default, and is only meant for VM
development purposes.  It should not be enabled for product builds.

To enable this utility, set ENABLE_BYTECODE_COMMENTS in CodeBlock.h
to 1.

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

Patch by Mark Lam <mark.lam@apple.com> on 2012-06-28
Reviewed by Geoffrey Garen.

* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecodeCommentAndNewLine): Dumps the comment.
(JSC):
(JSC::CodeBlock::printUnaryOp): Add comment dumps.
(JSC::CodeBlock::printBinaryOp): Add comment dumps.
(JSC::CodeBlock::printConditionalJump): Add comment dumps.
(JSC::CodeBlock::printCallOp): Add comment dumps.
(JSC::CodeBlock::printPutByIdOp): Add comment dumps.
(JSC::CodeBlock::dump): Add comment dumps.
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::commentForBytecodeOffset):
    Finds the comment for an opcode if available.
(JSC::CodeBlock::dumpBytecodeComments):
    For debugging whether comments are collected.
    It is not being called anywhere.
* bytecode/CodeBlock.h:
(CodeBlock):
(JSC::CodeBlock::bytecodeComments):
* bytecode/Comment.h: Added.
(JSC):
(Comment):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitOpcode): Calls emitComment().
(JSC):
(JSC::BytecodeGenerator::emitComment): Adds comment to CodeBlock.
(JSC::BytecodeGenerator::prependComment):
    Registers a comment for emitComemnt() to use later.
* bytecompiler/BytecodeGenerator.h:
(BytecodeGenerator):
(JSC::BytecodeGenerator::emitComment):
(JSC::BytecodeGenerator::prependComment):
    These are inlined versions of these functions that nullify them
    when ENABLE_BYTECODE_COMMENTS is 0.
(JSC::BytecodeGenerator::comments):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CompositeShadowTreeWalker should use InsertionPoint::hasDistribution() instead of InsertionPoint::isActive().
https://bugs.webkit.org/show_bug.cgi?id=89177

Reviewed by Dimitri Glazkov.

Source/WebCore:

Prevents ComposedShadowTreeWalker from escaping out of an
insertion point (which has distributed nodes) from a non-used
fallback element in the insertion point.  Such a fallback element
should be treated as in an orphaned subtree.

ComposedShadowTreeParentWalker will be also fixed in a follow-up patch.

Test: fast/dom/shadow/composed-shadow-tree-walker.html

* dom/ComposedShadowTreeWalker.cpp:
(WebCore::ComposedShadowTreeWalker::traverseNodeEscapingFallbackContents):

LayoutTests:

* fast/dom/shadow/composed-shadow-tree-walker-expected.txt:
* fast/dom/shadow/composed-shadow-tree-walker.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://bugs.webkit.org/show_bug.cgi?id=90216>
<rdar://problem/11766518>
Undo handling in WebKit2 is not robust against some page-closing code paths

Reviewed by Enrica Casucci.

* UIProcess/API/mac/PageClientImpl.h:
Declared public function viewWillMoveToAnotherWindow().
        
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
New function, calls clearAllEditCommands() to remove any Undo actions from the stack.
This guarantees that no Undo actions will be abandoned when the PageClientImpl is dealloc'ed.

* UIProcess/API/mac/WKView.mm:
(-[WKView viewWillMoveToWindow:]):
Now informs PageClientImpl via new function PageClientImpl::viewWillMoveToAnotherWindow().



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] On Android, we should be able to ask the embedder what intents exist in a region of the page
https://bugs.webkit.org/show_bug.cgi?id=90210

Reviewed by Dimitri Glazkov.

This patch introduces a function that asks the embedder to analyze the
region around a hit test result for interesting content, like phone
numbers, email addresses, or physical addresses. The embedder then
responds with the "most interesting" content, together with an intent
URL for enacting the intent embodied by that content.

This function will be used in a subsequent patch to detect content
after touch events.

* WebKit.gyp:
* public/WebContentDetectionResult.h: Added.
(WebKit):
(WebContentDetectionResult):
(WebKit::WebContentDetectionResult::WebContentDetectionResult):
(WebKit::WebContentDetectionResult::isValid):
(WebKit::WebContentDetectionResult::range):
(WebKit::WebContentDetectionResult::string):
(WebKit::WebContentDetectionResult::intent):
* public/WebViewClient.h:
(WebViewClient):
(WebKit::WebViewClient::detechContentAround):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rebaselines after http://trac.webkit.org/changeset/119507.
These were all done using "webkit-patch rebaseline-expectations".

* platform/chromium-mac-leopard/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug131020-expected.txt:
* platform/chromium-win/tables/mozilla/bugs/bug131020-expected.png:
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/efl/tables/mozilla/bugs/bug131020-expected.txt: Copied from LayoutTests/tables/mozilla/bugs/bug131020-expected.txt.
* platform/gtk/TestExpectations:
* platform/gtk/tables/mozilla/bugs/bug131020-expected.txt: Renamed from LayoutTests/tables/mozilla/bugs/bug131020-expected.txt.
* platform/mac/TestExpectations:
* platform/mac/tables/mozilla/bugs/bug131020-expected.txt:
* platform/qt/TestExpectations:
* platform/qt/tables/mozilla/bugs/bug131020-expected.txt:
* platform/win/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121484 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Mark a test as failing on Linux debug

fast/forms/select/select-state-restore.html is failing on Linux debug because of timeout.

Not reviewed.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Split WebScrollbar into WebPluginScrollbar and WebScrollbar
https://bugs.webkit.org/show_bug.cgi?id=90117

Reviewed by James Robinson.

Source/Platform:

Move WebScrollbar from client API to Platform.

* Platform.gypi:
* chromium/public/WebScrollbar.h: Copied from Source/WebKit/chromium/public/WebPluginScrollbarClient.h.
(WebKit):
(WebScrollbar):
(WebKit::WebScrollbar::~WebScrollbar):

Source/WebCore:

Make WebCore also depend on Platform.

* WebCore.gyp/WebCore.gyp:

Source/WebKit/chromium:

Convert WebScrollbar/WebScrollbarClient/WebScrollbarImpl to be
WebPluginScrollbar, WebPluginScrollbarClient, and
WebPluginScrollbarImpl. Modify ScrollbarGroup
to use this instead.

WebScrollbar is now the base interface for a pre-existing scrollbar
that is accessed in a const manner. It also provides all of the common
WebKit ScrollTypes.h enums. WebPluginScrollbar is now a scrollbar that
has been externally created and is externally modified in terms of its
position, invalidation, and painting.

This is a pre-refactoring for adding Web versions of ScrollbarTheme
into the Platform directory which will operate on WebScrollbar, but
that don't need all of what WebPluginScrollbar provides.

As WebScrollbar is moved to Platform, WebKit.gyp now must depend on
Platform as well.

* WebKit.gyp:
* public/WebPluginScrollbar.h:
(WebKit):
(WebPluginScrollbar):
(WebKit::WebPluginScrollbar::~WebPluginScrollbar):
* public/WebPluginScrollbarClient.h:
(WebKit):
(WebPluginScrollbarClient):
* public/WebScrollbar.h: Removed.
* public/WebScrollbarClient.h: Removed.
* src/AssertMatchingEnums.cpp:
* src/ScrollbarGroup.cpp:
(WebKit::ScrollbarGroup::scrollbarCreated):
(WebKit::ScrollbarGroup::scrollbarDestroyed):
(WebKit::ScrollbarGroup::scrollSize):
(WebKit::ScrollbarGroup::scrollPosition):
(WebKit::ScrollbarGroup::contentsSize):
* src/ScrollbarGroup.h:
(WebKit):
(ScrollbarGroup):
* src/WebPluginScrollbarImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarImpl.cpp.
(WebKit):
(WebKit::WebPluginScrollbar::createForPlugin):
(WebKit::WebPluginScrollbar::defaultThickness):
(WebKit::WebPluginScrollbarImpl::WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::~WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::setScrollOffset):
(WebKit::WebPluginScrollbarImpl::invalidateScrollbarRect):
(WebKit::WebPluginScrollbarImpl::getTickmarks):
(WebKit::WebPluginScrollbarImpl::convertFromContainingViewToScrollbar):
(WebKit::WebPluginScrollbarImpl::scrollbarStyleChanged):
(WebKit::WebPluginScrollbarImpl::isOverlay):
(WebKit::WebPluginScrollbarImpl::value):
(WebKit::WebPluginScrollbarImpl::setLocation):
(WebKit::WebPluginScrollbarImpl::setValue):
(WebKit::WebPluginScrollbarImpl::setDocumentSize):
(WebKit::WebPluginScrollbarImpl::scroll):
(WebKit::WebPluginScrollbarImpl::paint):
(WebKit::WebPluginScrollbarImpl::handleInputEvent):
(WebKit::WebPluginScrollbarImpl::onMouseDown):
(WebKit::WebPluginScrollbarImpl::onMouseUp):
(WebKit::WebPluginScrollbarImpl::onMouseMove):
(WebKit::WebPluginScrollbarImpl::onMouseLeave):
(WebKit::WebPluginScrollbarImpl::onMouseWheel):
(WebKit::WebPluginScrollbarImpl::onKeyDown):
* src/WebPluginScrollbarImpl.h: Added.
(WebCore):
(WebKit):
(WebPluginScrollbarImpl):
(WebKit::WebPluginScrollbarImpl::scrollOffset):
(WebKit::WebPluginScrollbarImpl::scrollbar):
* src/WebScrollbarImpl.h: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121486 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Replace a BUG_OJAN with a proper tracking bug and unskip two
tests in preparation for rebaselining them.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121487 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: IDBDatabase should have a close pending field.
https://bugs.webkit.org/show_bug.cgi?id=71129

Reviewed by Tony Chang.

Source/WebCore:

Handle the IDB spec case that "versionchange" events should not be fired
against connections that have the internal "closePending" flag set but
are not yet closed due to running transactions.

Test: storage/indexeddb/database-closepending-flag.html

* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::onVersionChange):

LayoutTests:

* storage/indexeddb/database-closepending-flag-expected.txt: Added.
* storage/indexeddb/database-closepending-flag.html: Added.
* storage/indexeddb/resources/database-closepending-flag.js: Added.
(test):
(openConnection.request.onsuccess.request.onsuccess):
(openConnection.request.onsuccess):
(openConnection):
(testIDBDatabaseName):
(testIDBDatabaseObjectStoreNames.request.onsuccess.request.onsuccess.transaction.oncomplete):
(testIDBDatabaseObjectStoreNames.request.onsuccess.request.onsuccess):
(testIDBDatabaseObjectStoreNames.request.onsuccess):
(testIDBDatabaseObjectStoreNames):
(testIDBDatabaseTransaction):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onblocked):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onsuccess.transaction.oncomplete):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess.request.onsuccess):
(testVersionChangeTransactionSteps.request.onsuccess.request.onsuccess):
(testDatabaseDeletion.request.onsuccess.request.onblocked):
(testDatabaseDeletion.request.onsuccess.request.onsuccess):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121488 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Reset the device scale factor to 1 before each test is run
https://bugs.webkit.org/show_bug.cgi?id=90212

Patch by Terry Anderson <tdanderson@chromium.org> on 2012-06-28
Reviewed by Adam Barth.

Some tests change the device scale factor, so this needs to be reset to
1.0 at the start of each test to avoid test flakiness.

* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::reset):


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