WebKit-https.git
6 years agoREGRESSION(r162922): [SOUP] Several tests are failing in EFL and GTK+ after r162922
carlosgc@webkit.org [Wed, 29 Jan 2014 14:52:22 +0000 (14:52 +0000)]
REGRESSION(r162922): [SOUP] Several tests are failing in EFL and GTK+ after r162922
https://bugs.webkit.org/show_bug.cgi?id=127836

Reviewed by Gustavo Noronha Silva.

The problem is that I assumed that several things done in
ResourceRequest::soupURI() were always desired, so I moved them to
URL. This patch restores the previous behaviour, so that those
tings are only done right before making a request.

* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::createSoupURI):
* platform/soup/URLSoup.cpp:
(WebCore::URL::createSoupURI):

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

6 years ago[EFL][WK2] REGRESSION (r162586-r162589): accessibility/range-alter-by-percent.html...
k.czech@samsung.com [Wed, 29 Jan 2014 14:24:08 +0000 (14:24 +0000)]
[EFL][WK2] REGRESSION (r162586-r162589): accessibility/range-alter-by-percent.html failing
https://bugs.webkit.org/show_bug.cgi?id=127724

Unreviewed EFL gardening. Passes after r162932.

* platform/efl/TestExpectations: Test is no longer failing.

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

6 years agoWeb Inspector: [REGRESSION(r162931)] Tab navigation broken in DataGrid
commit-queue@webkit.org [Wed, 29 Jan 2014 13:57:53 +0000 (13:57 +0000)]
Web Inspector: [REGRESSION(r162931)] Tab navigation broken in DataGrid
https://bugs.webkit.org/show_bug.cgi?id=127816

Patch by Diego Pino Garcia <dpino@igalia.com> on 2014-01-29
Reviewed by Timothy Hatcher.

* UserInterface/DataGrid.js:
(WebInspector.DataGrid.prototype.moveToNextIfNeeded):
(WebInspector.DataGrid.prototype._editingCommitted):
Change columnIdentifier values 0 and 1 to strings "0" and "1".

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

6 years ago[ATK] Expose aria-describedby with ATK_RELATION_DESCRIBED_BY
k.czech@samsung.com [Wed, 29 Jan 2014 13:16:27 +0000 (13:16 +0000)]
[ATK] Expose aria-describedby with ATK_RELATION_DESCRIBED_BY
https://bugs.webkit.org/show_bug.cgi?id=121684

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Exposed aria-describedby by ATK_RELATION_DESCRIBED_BY.
Moved elementsFromAttribut to AccessibilityObject to have common interface
for AccessibilityNodeObject and AccessibilityRenderObject. Implemented
supportsARIADescribedBy and ariaDescribedByElements to better deal with aria-describedby attribute.

No new tests. Covered by existed one.

* accessibility/AccessibilityNodeObject.cpp:
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::elementsFromAttribute):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::supportsARIADescribedBy):
(WebCore::AccessibilityObject::ariaDescribedByElements):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::supportsARIADescribedBy):
(WebCore::AccessibilityRenderObject::ariaDescribedByElements):
* accessibility/AccessibilityRenderObject.h:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(setAtkRelationSetFromCoreObject):

Tools:

Implementing helpText by using relation ATK_RELATION_DESCRIBED_BY.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::helpText):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::helpText):

LayoutTests:

Slightly extended test so that it could test aria-describedby with multiple id references.

* accessibility/aria-describedby-on-input-expected.txt:
* accessibility/aria-describedby-on-input.html:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:

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

6 years ago[CSS Grid Layout] minmax() should be a CSSFunction instead of a CSSValueList
svillar@igalia.com [Wed, 29 Jan 2014 10:56:48 +0000 (10:56 +0000)]
[CSS Grid Layout] minmax() should be a CSSFunction instead of a CSSValueList
https://bugs.webkit.org/show_bug.cgi?id=127057

Source/WebCore:

Reviewed by Antti Koivisto.

We were incorrectly dumping minmax(x,y) as "x y" instead of
"minmax(x,y)". That's because we were treating minmax() internally
as a CSSValueList instead of a CSSFunction. Replaced that and also
added some extra information to our tests in order to check that
we don't regress. From now on the CSS grid layout testing helper
functions print not only the computed style but also the contents
of element.style.webkitGridDefinition{Columns|Rows}.

* css/CSSFunctionValue.h:
(WebCore::CSSFunctionValue::arguments):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseGridTrackList):
(WebCore::CSSParser::parseGridTrackRepeatFunction):
(WebCore::CSSParser::parseGridTrackSize):
* css/CSSParser.h:
* css/StyleResolver.cpp:
(WebCore::createGridTrackSize):

LayoutTests:

Include the output of element.style.webkitGridDefinition{Columns|Rows}
as part of the expected output.

* fast/css-grid-layout/grid-columns-rows-get-set-expected.txt:
* fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt:
* fast/css-grid-layout/named-grid-line-get-set-expected.txt:
* fast/css-grid-layout/named-grid-line-get-set.html:
* fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:
(testGridDefinitionsSetJSValues):
(testNonGridDefinitionsSetJSValues):
(checkGridDefinitionsSetJSValues):

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

6 years agoRename notifyRendererOfSelectionChange
rniwa@webkit.org [Wed, 29 Jan 2014 09:32:29 +0000 (09:32 +0000)]
Rename notifyRendererOfSelectionChange
https://bugs.webkit.org/show_bug.cgi?id=127831

Reviewed by Antti Koivisto.

Renamed notifyRendererOfSelectionChange to updateSelectionCachesIfSelectionIsInsideTextFormControl.

* WebCore.order: Removed the exported symbol name as it's not used in WebKit or WebKit2 code.
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::selectAll):
(WebCore::FrameSelection::updateSelectionCachesIfSelectionIsInsideTextFormControl): Don't update the style since the existence
of text form control's shadow DOM no longer depends on renderer.
* editing/FrameSelection.h:
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::selectionChanged): Don't check renderer() for the same reason.
* page/EventHandler.cpp:
(WebCore::EventHandler::handleMouseReleaseEvent):

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

6 years agoUnreviewed. Fix GTK+ build after r162981.
carlosgc@webkit.org [Wed, 29 Jan 2014 08:31:46 +0000 (08:31 +0000)]
Unreviewed. Fix GTK+ build after r162981.

* GNUmakefile.list.am: Add WebProcess/WebPage/WebDocumentLoader to
the compilation.

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

6 years agoUnreviewed. Actually fix the GTK+ build after r162967.
carlosgc@webkit.org [Wed, 29 Jan 2014 08:23:17 +0000 (08:23 +0000)]
Unreviewed. Actually fix the GTK+ build after r162967.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_can_go_back):
(webkit_web_view_can_go_forward):

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

6 years agoUnreviewed EFL gardening after r162972.
jinwoo7.song@samsung.com [Wed, 29 Jan 2014 07:59:43 +0000 (07:59 +0000)]
Unreviewed EFL gardening after r162972.

* platform/efl/fast/table/quote-text-around-iframe-expected.txt:

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

6 years agoUnreviewed followup to r163006. That change incorrectly modified
zandobersek@gmail.com [Wed, 29 Jan 2014 07:58:33 +0000 (07:58 +0000)]
Unreviewed followup to r163006. That change incorrectly modified
webkit_web_view_go_forward when webkit_web_view_can_go_forward needed fixing.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_go_forward):
(webkit_web_view_can_go_forward):

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

6 years agoRebaseline quote-text-around-iframe.html after r162972
mmaxfield@apple.com [Wed, 29 Jan 2014 07:52:03 +0000 (07:52 +0000)]
Rebaseline quote-text-around-iframe.html after r162972
https://bugs.webkit.org/show_bug.cgi?id=127822

Reviewed by Alexey Proskuryakov.

Forgot to rebaseline fast/table/quote-text-around-iframe.html

* platform/mac/fast/table/quote-text-around-iframe-expected.txt:

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

6 years agoUnreviewed GTK build fix after r162967.
zandobersek@gmail.com [Wed, 29 Jan 2014 07:21:14 +0000 (07:21 +0000)]
Unreviewed GTK build fix after r162967.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_can_go_back):
(webkit_web_view_go_forward):

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

6 years agoUnreviewed EFL gardening after r162972.
jinwoo7.song@samsung.com [Wed, 29 Jan 2014 06:42:29 +0000 (06:42 +0000)]
Unreviewed EFL gardening after r162972.

* platform/efl/fast/css-generated-content/005-expected.txt:
* platform/efl/fast/css-generated-content/beforeAfter-interdocument-expected.txt:
* platform/efl/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
* platform/efl/fast/css-generated-content/no-openclose-quote-expected.txt:

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

6 years agoCrashes in ViewGestureController::wheelEventWasNotHandledByWebCore
timothy_horton@apple.com [Wed, 29 Jan 2014 06:12:19 +0000 (06:12 +0000)]
Crashes in ViewGestureController::wheelEventWasNotHandledByWebCore
https://bugs.webkit.org/show_bug.cgi?id=127828
<rdar://problem/15932902>

Reviewed by Dan Bernstein.

* UIProcess/API/mac/WKView.mm:
(-[WKView _wheelEventWasNotHandledByWebCore:]):
Null check. ViewGestureController only needs unhandled wheel events after it has been created.

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

6 years agoFix the Mountain Lion build if you have private headers.
timothy_horton@apple.com [Wed, 29 Jan 2014 06:03:52 +0000 (06:03 +0000)]
Fix the Mountain Lion build if you have private headers.

* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::beginSwipeGesture):

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

6 years ago[iOS] UI process crashes whenever web process crashes
commit-queue@webkit.org [Wed, 29 Jan 2014 05:22:38 +0000 (05:22 +0000)]
[iOS] UI process crashes whenever web process crashes
https://bugs.webkit.org/show_bug.cgi?id=127826

Patch by Ian Henderson <ianh@apple.com> on 2014-01-28
Reviewed by Tim Horton.

* UIProcess/API/ios/WKContentView.mm:
(-[WKContentView _updateFixedPositionRect]): Null-check the drawing
area before calling size() on it.

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

6 years agoWKRemoteObjectCoder should support more argument types
commit-queue@webkit.org [Wed, 29 Jan 2014 05:14:06 +0000 (05:14 +0000)]
WKRemoteObjectCoder should support more argument types
https://bugs.webkit.org/show_bug.cgi?id=127824

Patch by Ian Henderson <ianh@apple.com> on 2014-01-28
Reviewed by Anders Carlsson.

* Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(encodeInvocation): Support encoding char values.
(decodeInvocationArguments): Support decoding char values.

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

6 years ago[Mac] Handle NSURLAuthenticationMethodServerTrust challenges from -resourceLoader...
jer.noble@apple.com [Wed, 29 Jan 2014 04:44:56 +0000 (04:44 +0000)]
[Mac] Handle NSURLAuthenticationMethodServerTrust challenges from -resourceLoader:shouldWaitForResponseToAuthenticationChallenge:
https://bugs.webkit.org/show_bug.cgi?id=127806

Reviewed by Eric Carlson.

In addition to the normal "user/password" NSURLAuthenticationChallenges, the
-resourceLoader:shouldWaitForResponseToAuthenticationChallenge: delegate method will
ask us to confirm server certificate chains. Rather than pop up an authentication
dialog (which won't work anyway) we will now just drop such requests and continue
on normally.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(-[WebCoreAVFLoaderDelegate resourceLoader:shouldWaitForResponseToAuthenticationChallenge:]):

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

6 years agoUnreviewed, rolling out r162987.
commit-queue@webkit.org [Wed, 29 Jan 2014 04:18:20 +0000 (04:18 +0000)]
Unreviewed, rolling out r162987.
http://trac.webkit.org/changeset/162987
https://bugs.webkit.org/show_bug.cgi?id=127825

Broke Mountain Lion build (Requested by andersca on #webkit).

Source/JavaScriptCore:

* inspector/InjectedScriptSource.js:
(.):
* runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/PropertyDescriptor.cpp:
* runtime/PropertyDescriptor.h:
* runtime/PropertySlot.h:

Source/WebCore:

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateAttributesHashTable):
(GenerateImplementation):
* bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::jsTestActiveDOMObjectConstructor):
* bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::jsTestCustomNamedGetterConstructor):
* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::jsTestEventConstructorConstructor):
* bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::jsTestEventTargetConstructor):
* bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::jsTestExceptionConstructor):
* bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
(WebCore::jsTestGenerateIsReachableConstructor):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::jsTestInterfaceConstructor):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::jsTestMediaQueryListListenerConstructor):
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::jsTestNamedConstructorConstructor):
* bindings/scripts/test/JS/JSTestNode.cpp:
(WebCore::jsTestNodeConstructor):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjConstructor):
* bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::jsTestOverloadedConstructorsConstructor):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::jsTestSerializedScriptValueInterfaceConstructor):
* bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::jsTestTypedefsConstructor):
* bindings/scripts/test/JS/JSattribute.cpp:
(WebCore::jsattributeConstructor):
* bindings/scripts/test/JS/JSreadonly.cpp:
(WebCore::jsreadonlyConstructor):

LayoutTests:

* fast/dom/Window/replaceable-expected.txt:
* fast/dom/Window/replaceable.html:
* js/dom/getOwnPropertyDescriptor-expected.txt:
* js/resources/getOwnPropertyDescriptor.js:

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

6 years agoAdd support for ActionSheets in WK2 for iOS.
enrica@apple.com [Wed, 29 Jan 2014 04:09:12 +0000 (04:09 +0000)]
Add support for ActionSheets in WK2 for iOS.
https://bugs.webkit.org/show_bug.cgi?id=127586
<rdar://problem/15283667>

Reviewed by Benjamin Poulain.

This patch contains some WebCore changes required to
implement support for ActionSheets.
It adds copyURL implementation for iOS in the Editor
class and fixes some bugs in the iOS specific pasteboard
writing code.
The changes to Localizable.strings are the result of
running update-webkit-localizedstrings script.

* English.lproj/Localizable.strings:
* WebCore.exp.in:
* editing/Editor.cpp:
* editing/Editor.h:
* editing/ios/EditorIOS.mm:
(WebCore::Editor::writeImageToPasteboard):
* platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::write):
* platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::write):

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

6 years agoUnreviewed build fix on the cmake based port after r162981
ryuan.choi@samsung.com [Wed, 29 Jan 2014 03:24:01 +0000 (03:24 +0000)]
Unreviewed build fix on the cmake based port after r162981

One more build fix.

* CMakeLists.txt: Added WebDocumentLoader.cpp

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

6 years ago[iOS] REGRESSION (r162663): Webpages have strange artifacts or corruption around...
aestes@apple.com [Wed, 29 Jan 2014 03:06:01 +0000 (03:06 +0000)]
[iOS] REGRESSION (r162663): Webpages have strange artifacts or corruption around tile boundaries
https://bugs.webkit.org/show_bug.cgi?id=127823

Reviewed by Daniel Bates.

Original patch by Simon Fraser.

* platform/ScrollView.cpp: Specify LegacyIOSDocumentViewRect when calling visibleContentRect().

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

6 years agoUnreviewed build fix on the EFL build after r162984
ryuan.choi@samsung.com [Wed, 29 Jan 2014 02:58:04 +0000 (02:58 +0000)]
Unreviewed build fix on the EFL build after r162984

r162984 added wheelEventWasNotHandledByWebCore which is guarded to PLATFORM(MAC).

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

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

6 years agoFix a thinko.
andersca@apple.com [Wed, 29 Jan 2014 01:44:47 +0000 (01:44 +0000)]
Fix a thinko.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::goBack):
Remove early return if isValid() is true.

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

6 years agoWebPage should be in charge of creating document loaders
andersca@apple.com [Wed, 29 Jan 2014 01:39:32 +0000 (01:39 +0000)]
WebPage should be in charge of creating document loaders
https://bugs.webkit.org/show_bug.cgi?id=127818

Reviewed by Dan Bernstein.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createDocumentLoader):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::createDocumentLoader):
* WebProcess/WebPage/WebPage.h:

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

6 years ago[CSS Shapes] Adjust inset sizing syntax to the latest specification
zoltan@webkit.org [Wed, 29 Jan 2014 01:22:16 +0000 (01:22 +0000)]
[CSS Shapes] Adjust inset sizing syntax to the latest specification
https://bugs.webkit.org/show_bug.cgi?id=127785

Reviewed by Bem Jones-Bey.

Source/WebCore:

According to the latest CSS Shapes specification [1], the width arguments of inset should
follow the syntax of the margin shorthand, which let us set all four insets with one, two
or four values. This patch updates the behavior and updates the affected tests.

[1] http://dev.w3.org/csswg/css-shapes/#funcdef-inset

Existing tests have been updated.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseInsetRoundedCorners):
(WebCore::CSSParser::parseBasicShapeInset):

LayoutTests:

* fast/shapes/parsing/parsing-shape-inside-expected.txt:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-test-utils.js:
* fast/shapes/shape-outside-floats/shape-outside-floats-inset.html:

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

6 years agoUnreviewed GTK build fix after r162951.
commit-queue@webkit.org [Wed, 29 Jan 2014 01:19:50 +0000 (01:19 +0000)]
Unreviewed GTK build fix after r162951.
https://bugs.webkit.org/show_bug.cgi?id=127815

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-01-28

* GNUmakefile.list.am: Adding missing build targets.

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

6 years agoMake DOM attributes appear to be faux accessor properties
oliver@apple.com [Wed, 29 Jan 2014 01:13:02 +0000 (01:13 +0000)]
Make DOM attributes appear to be faux accessor properties
https://bugs.webkit.org/show_bug.cgi?id=127797

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Add flag so we can identify which properties should have the old
custom property semantics vs. the new faux accessors. Update the
inspector protocol accordingly.

These faux accessors produce descriptors with "get" and "set"
properties, but both values are undefined so can't be used
directly. A few custom properties actually require their
existing magical behaviour, so we now have a flag to
distinguish the expected output.

* inspector/InjectedScriptSource.js:
(.):
* runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/PropertyDescriptor.cpp:
(JSC::PropertyDescriptor::setCustomDescriptor):
* runtime/PropertyDescriptor.h:
* runtime/PropertySlot.h:

Source/WebCore:

Refactor the bindings generator, and make sure we emit
the CustomAccessor flag on properties that should
appear to be accessors.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateAttributesHashTable):
(GenerateImplementation):

LayoutTests:

These properties now show up as accessors in these tests

* fast/dom/Window/replaceable-expected.txt:
* fast/dom/Window/replaceable.html:
* js/dom/getOwnPropertyDescriptor-expected.txt:
* js/resources/getOwnPropertyDescriptor.js:

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

6 years agoAX: Support @scope in HTML tables
cfleizach@apple.com [Wed, 29 Jan 2014 01:05:07 +0000 (01:05 +0000)]
AX: Support @scope in HTML tables
https://bugs.webkit.org/show_bug.cgi?id=127688

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Add support for scope attribute so that row headers and column headers
are now exposed at the table cell level where appropriate.

Test: platform/mac/accessibility/table-scope.html

* accessibility/AccessibilityARIAGridCell.cpp:
(WebCore::AccessibilityARIAGridCell::parentTable):
* accessibility/AccessibilityARIAGridCell.h:
* accessibility/AccessibilityARIAGridRow.cpp:
(WebCore::AccessibilityARIAGridRow::parentTable):
* accessibility/AccessibilityARIAGridRow.h:
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::columns):
(WebCore::AccessibilityTable::rows):
* accessibility/AccessibilityTable.h:
* accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::parentTable):
(WebCore::AccessibilityTableCell::isTableHeaderCell):
(WebCore::AccessibilityTableCell::isTableCellInSameRowGroup):
(WebCore::AccessibilityTableCell::isTableCellInSameColGroup):
(WebCore::AccessibilityTableCell::columnHeaders):
(WebCore::AccessibilityTableCell::rowHeaders):
* accessibility/AccessibilityTableCell.h:
* accessibility/AccessibilityTableRow.cpp:
(WebCore::AccessibilityTableRow::parentTable):
* accessibility/AccessibilityTableRow.h:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Tools:

Add support for rowHeaders and columnHeaders.

* DumpRenderTree/AccessibilityUIElement.cpp:
(convertElementsToObjectArray):
(columnHeadersCallback):
(rowHeadersCallback):
(uiElementArrayAttributeValueCallback):
(AccessibilityUIElement::columnHeaders):
(AccessibilityUIElement::rowHeaders):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::rowHeaders):
(AccessibilityUIElement::columnHeaders):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):
(WTR::AccessibilityUIElement::rowHeaders):
(WTR::AccessibilityUIElement::columnHeaders):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::convertElementsToObjectArray):
(WTR::AccessibilityUIElement::rowHeaders):
(WTR::AccessibilityUIElement::columnHeaders):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue):

LayoutTests:

* platform/mac/accessibility/aria-columnrowheaders-expected.txt:
* platform/mac/accessibility/table-attributes-expected.txt:
* platform/mac/accessibility/table-cell-spans-expected.txt:
* platform/mac/accessibility/table-cells-expected.txt:
* platform/mac/accessibility/table-scope-expected.txt: Added.
* platform/mac/accessibility/table-scope.html: Added.
* platform/mac/accessibility/table-sections-expected.txt:

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

6 years agoImprove latching behavior for wheel events
bfulgham@apple.com [Wed, 29 Jan 2014 00:59:52 +0000 (00:59 +0000)]
Improve latching behavior for wheel events
https://bugs.webkit.org/show_bug.cgi?id=127386
<rdar://problem/12176858>

Reviewed by Simon Fraser.

* page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::clearLatchedNode): Added
(WebCore::ScrollingTree::latchedNode): Added
(WebCore::ScrollingTree::removeDestroyedNodes): Clear latched node if it's being removed.
(WebCore::ScrollingTree::ScrollingTree): Initialize new value used for tracking
scroll latching state.
(WebCore::ScrollingTree::setLatchedNode): Added
(WebCore::ScrollingTree::setOrClearLatchedNode): Added
Set latched node when beginning a swipe event, or clear latched node when scroll/momentum ends.
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Check for an existing
latched node and stay in fast scrolling mode if possible. If the current event should
start a swipe event, clear the current latched node so we can correctly find and assign
the new latch node.
* page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::hasLatchedNode): Added
* page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
(WebCore::ScrollingTreeScrollingNodeMac::handleWheelEvent): Determine latching state
based on wheel event state and position of mouse pointer in the document.
* platform/ScrollAnimator.cpp:
(ScrollAnimator::handleWheelEvent): Always treat PlatformWheelEventPhaseMayBegin
as successfully handled so that it does not "bubble back up" to the root of
the scrolling tree.

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

6 years agoWebKit2 View Gestures (Swipe): Give WebCore the first crack at scroll events if it...
timothy_horton@apple.com [Wed, 29 Jan 2014 00:50:56 +0000 (00:50 +0000)]
WebKit2 View Gestures (Swipe): Give WebCore the first crack at scroll events if it needs it
https://bugs.webkit.org/show_bug.cgi?id=127396

Reviewed by Anders Carlsson.

* UIProcess/API/ios/PageClientImplIOS.h:
* UIProcess/API/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
* UIProcess/API/mac/WKView.mm:
(-[WKView _wheelEventWasNotHandledByWebCore:]):
* UIProcess/API/mac/WKViewInternal.h:
* UIProcess/PageClient.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didReceiveEvent):
In addition to informing the page client about un-handled wheel events,
inform the ViewGestureController, in a roundabout way.

* UIProcess/mac/ViewGestureController.h:
Add and use SwipeDirection enum instead of 'bool willSwipeLeft'.

* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::handleScrollWheelEvent):
If we get a Begin scroll wheel event, any previously deferred
swipes are invalid.

If the page has subframes or wheel handlers, defer starting the
swipe until we get a wheelEventWasNotHandledByWebCore back from the WebProcess.

(WebKit::ViewGestureController::wheelEventWasNotHandledByWebCore):
Start the swipe if the WebProcess didn't eat the event.

(WebKit::ViewGestureController::trackSwipeGesture):
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::handleSwipeGesture):
Use SwipeDirection.

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

6 years agoFix build.
andersca@apple.com [Wed, 29 Jan 2014 00:42:12 +0000 (00:42 +0000)]
Fix build.

* WebProcess/WebPage/WebFrame.cpp:

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

6 years agoAdd WebDocumentLoader, a WebCore::DocumentLoader subclass
andersca@apple.com [Wed, 29 Jan 2014 00:39:42 +0000 (00:39 +0000)]
Add WebDocumentLoader, a WebCore::DocumentLoader subclass
https://bugs.webkit.org/show_bug.cgi?id=127817

Reviewed by Tim Horton.

We need a place to store navigation IDs, and since they are per document loader, putting them
in a DocumentLoader subclass seems like a good idea.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createDocumentLoader):
* WebProcess/WebPage/WebDocumentLoader.cpp: Added.
(WebKit::WebDocumentLoader::WebDocumentLoader):
(WebKit::WebDocumentLoader::setNavigationID):
* WebProcess/WebPage/WebDocumentLoader.h: Added.
(WebKit::WebDocumentLoader::create):
(WebKit::WebDocumentLoader::navigationID):

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

6 years agoSimplify WebFrame::isMainFrame
andersca@apple.com [Wed, 29 Jan 2014 00:16:00 +0000 (00:16 +0000)]
Simplify WebFrame::isMainFrame
https://bugs.webkit.org/show_bug.cgi?id=127812

Reviewed by Sam Weinig.

* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::isMainFrame):

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

6 years agoREGRESSION (r162947): Repaint test results are different between WK1 and WK2
ap@apple.com [Wed, 29 Jan 2014 00:07:24 +0000 (00:07 +0000)]
REGRESSION (r162947): Repaint test results are different between WK1 and WK2
https://bugs.webkit.org/show_bug.cgi?id=127814

* platform/mac-wk2/TestExpectations: Marking them as failing for now.

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

6 years ago[iOS] Set INSTALL_PATH_ACTUAL when building WebKit2 for the iOS Simulator
aestes@apple.com [Tue, 28 Jan 2014 23:55:40 +0000 (23:55 +0000)]
[iOS] Set INSTALL_PATH_ACTUAL when building WebKit2 for the iOS Simulator
https://bugs.webkit.org/show_bug.cgi?id=127811

Reviewed by Dan Bernstein.

* Configurations/WebKit2.xcconfig:

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

6 years agoUnreviewed EFL WebKit2 build fix.
jinwoo7.song@samsung.com [Tue, 28 Jan 2014 23:51:30 +0000 (23:51 +0000)]
Unreviewed EFL WebKit2 build fix.

* CMakeLists.txt: Added Shared/NavigationActionData.cpp

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

6 years agoREGRESSION (r162947): css3/flexbox/multiline-justify-content.html and
ap@apple.com [Tue, 28 Jan 2014 23:46:30 +0000 (23:46 +0000)]
REGRESSION (r162947): css3/flexbox/multiline-justify-content.html and
css3/flexbox/position-absolute-child.html are timing out
https://bugs.webkit.org/show_bug.cgi?id=127809

* platform/mac/TestExpectations: Skipping for now, Antti is going to take a look tomorrow.

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

6 years agoASSERT_WITH_SECURITY_IMPLICATION in WebCore::InlineTextBox::paint
mmaxfield@apple.com [Tue, 28 Jan 2014 23:36:04 +0000 (23:36 +0000)]
ASSERT_WITH_SECURITY_IMPLICATION in WebCore::InlineTextBox::paint
https://bugs.webkit.org/show_bug.cgi?id=114586

Reviewed by Dave Hyatt.

Taken mostly from https://chromium.googlesource.com/chromium/blink/+/cb2297db16f2e9328cb4dd8b552093d6b22340a8

If RenderQuote is a subclass of RenderObject, it can't be split by the first-letter CSS pseudoclass.
Instead, we should make it a subclass of RenderElement, so that it can be split properly.

Source/WebCore:

Test: fast/css-generated-content/quote-first-letter.html

* dom/PseudoElement.cpp:
(WebCore::PseudoElement::didRecalcStyle):
* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::RenderQuote):
(WebCore::RenderQuote::willBeDestroyed):
(WebCore::RenderQuote::willBeRemovedFromTree):
(WebCore::RenderQuote::styleDidChange):
(WebCore::RenderQuote::updateText):
(WebCore::RenderQuote::computeText):
(WebCore::RenderQuote::updateDepth):
* rendering/RenderQuote.h:
* rendering/style/ContentData.cpp:
(WebCore::QuoteContentData::createContentRenderer):

LayoutTests:

This adds a test to make sure that the splitting behavior occurs, as well as updates existing tests that
didn't use the splitting behavior.

* fast/css-generated-content/quote-first-letter-expected.html: Added.
* fast/css-generated-content/quote-first-letter.html: Added.
* platform/mac/fast/css-generated-content/005-expected.txt:
* platform/mac/fast/css-generated-content/beforeAfter-interdocument-expected.txt:
* platform/mac/fast/css-generated-content/nested-tables-with-before-after-content-crash-expected.txt:
* platform/mac/fast/css-generated-content/no-openclose-quote-expected.txt:

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

6 years agoTeach Buildbot dashboard to parse alternative revision format
dbates@webkit.org [Tue, 28 Jan 2014 23:30:29 +0000 (23:30 +0000)]
Teach Buildbot dashboard to parse alternative revision format
https://bugs.webkit.org/show_bug.cgi?id=127561

Reviewed by Alexey Proskuryakov.

Add support for extracting the OpenSource and Internal revision numbers when Buildbot
returns a dictionary for the value of property got_revision.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(isMultiCodebaseGotRevisionProperty): Added.
(parseRevisionProperty): Added; parses Buildbot revision property, which can either be a
string or a dictionary.
(BuildbotIteration.prototype.update.): Modified to call parseRevisionProperty() to determine
the OpenSource and Internal revision numbers.

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

6 years agoRemove some unneeded debugger code.
mark.lam@apple.com [Tue, 28 Jan 2014 23:29:30 +0000 (23:29 +0000)]
Remove some unneeded debugger code.
https://bugs.webkit.org/show_bug.cgi?id=127805.

Reviewed by Oliver Hunt.

JSC will now always support the debugger. Hence, the #if ENABLE(JAVASCRIPT_DEBUGGER)
checks can be removed.

DebuggerCallFrame::callFrame() is also unused and will be removed.

* debugger/Breakpoint.h:
* debugger/Debugger.cpp:
* debugger/DebuggerCallFrame.h:
* inspector/InjectedScript.cpp:
(Inspector::InjectedScript::wrapCallFrames):
* inspector/InjectedScript.h:
* inspector/JSGlobalObjectScriptDebugServer.cpp:
* inspector/JSGlobalObjectScriptDebugServer.h:
* inspector/JSJavaScriptCallFrame.cpp:
* inspector/JSJavaScriptCallFrame.h:
* inspector/JSJavaScriptCallFramePrototype.cpp:
* inspector/JSJavaScriptCallFramePrototype.h:
* inspector/JavaScriptCallFrame.cpp:
* inspector/JavaScriptCallFrame.h:
* inspector/ScriptDebugListener.h:
* inspector/ScriptDebugServer.cpp:
* inspector/ScriptDebugServer.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
* inspector/agents/InspectorDebuggerAgent.h:
* inspector/agents/InspectorRuntimeAgent.cpp:
(Inspector::InspectorRuntimeAgent::InspectorRuntimeAgent):
(Inspector::setPauseOnExceptionsState):
(Inspector::InspectorRuntimeAgent::evaluate):
(Inspector::InspectorRuntimeAgent::callFunctionOn):
(Inspector::InspectorRuntimeAgent::getProperties):
* inspector/agents/InspectorRuntimeAgent.h:

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

6 years agoREGRESSION: JavascriptCore crash during OS Installation (due to
ggaren@apple.com [Tue, 28 Jan 2014 23:12:19 +0000 (23:12 +0000)]
REGRESSION: JavascriptCore crash during OS Installation (due to
Heap::m_operationInProgress ASSERT vs DelayedReleaseScope)
https://bugs.webkit.org/show_bug.cgi?id=127793

Reviewed by Mark Hahnenberg.

This was a mistaken ASSERT.

* API/tests/testapi.mm:
(-[EvilAllocationObject doEvilThingsWithContext:]): Added a test to verify
that GC from a DelayedReleaseScope doesn't crash.

* heap/DelayedReleaseScope.h:
(JSC::DelayedReleaseScope::~DelayedReleaseScope): Our contract is that
it is valid to do anything while running a DelayedReleaseScope -dealloc
method, so the Heap must be ready for new allocations and collections.

Change the Heap's operationInProgress value to NoOperation while running
-dealloc methods, so that it doesn't ASSERT in the face of new allocations
and collections.

* heap/Heap.h: Made DelayedReleaseScope a friend because exposing a setter
for m_operationInProgress seemed like the worse of the two options for
encapsulation: we don't really want arbitrary clients to set the Heap's
m_operationInProgress.

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

6 years agoRemove WebPageProxy::canGoBack and WebPageProxy::canGoForward
andersca@apple.com [Tue, 28 Jan 2014 23:04:56 +0000 (23:04 +0000)]
Remove WebPageProxy::canGoBack and WebPageProxy::canGoForward
https://bugs.webkit.org/show_bug.cgi?id=127803

Reviewed by Andreas Kling.

* UIProcess/API/C/WKPage.cpp:
(WKPageCanGoForward):
(WKPageCanGoBack):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController canGoForward]):
(-[WKBrowsingContextController canGoBack]):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::goForward):
(WebKit::WebPageProxy::goBack):
(WebKit::WebPageProxy::sendWheelEvent):
* UIProcess/WebPageProxy.h:

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

6 years agoUnreviewed follow-up to r162965. Better coding style.
joepeck@webkit.org [Tue, 28 Jan 2014 23:02:05 +0000 (23:02 +0000)]
Unreviewed follow-up to r162965. Better coding style.

Timothy Hatcher pointed out a clearer style for classes
on the <body> is to specify body.class. I agree.

* UserInterface/DashboardView.css:
(body.javascript .toolbar .dashboard):
(body.web .toolbar.collapsed .dashboard > .logs):
(body.javascript .toolbar .dashboard > .resourcesCount):

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

6 years agoWeb Inspector: Tweak UI when debugging a JSContext
joepeck@webkit.org [Tue, 28 Jan 2014 22:47:03 +0000 (22:47 +0000)]
Web Inspector: Tweak UI when debugging a JSContext
https://bugs.webkit.org/show_bug.cgi?id=127799

Reviewed by Timothy Hatcher.

* UserInterface/DashboardView.css:
(.toolbar.javascript .dashboard):
(.toolbar.web.collapsed .dashboard > .logs):
(.toolbar.javascript .dashboard > .resourcesCount):
Adjust collapsed dashboard in web and javascript debugging modes.
JavaScript debugging mode is always treated as collapsed.

* UserInterface/Main.js:
(WebInspector.contentLoaded):
Adjust what is created and shown when in javascript debugging mode.

* UserInterface/NavigationSidebarPanel.css:
(.navigation-sidebar-panel-content-tree-outline.hide-disclosure-buttons .item.small):
* UserInterface/ResourceSidebarPanel.js:
(WebInspector.ResourceSidebarPanel):
(WebInspector.ResourceSidebarPanel.prototype._scriptWasAdded):
* UserInterface/TimelineSidebarPanel.css:
(.sidebar > .panel.timeline > .status-bar):
(.sidebar > .panel.timeline > .title-bar):
When javascript debugging expect to put things at the root level, so hide
disclosure buttons and adjust the style so resources look nice here.

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

6 years agoAPI::PolicyClient::decidePolicyForNavigationAction should take a NavigationActionData...
andersca@apple.com [Tue, 28 Jan 2014 22:46:43 +0000 (22:46 +0000)]
API::PolicyClient::decidePolicyForNavigationAction should take a NavigationActionData object
https://bugs.webkit.org/show_bug.cgi?id=127798

Reviewed by Tim Horton.

* UIProcess/API/APIPolicyClient.h:
(API::PolicyClient::decidePolicyForNavigationAction):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPagePolicyClient):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):

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

6 years agoUnreviewed GTK gardening.
commit-queue@webkit.org [Tue, 28 Jan 2014 22:44:43 +0000 (22:44 +0000)]
Unreviewed GTK gardening.

Remove failure/timeout expectations for the following passed tests:
    fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-non-intersecting-underline.html
    fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html
    svg/custom/mouse-move-on-svg-container.xhtml
    svg/custom/mouse-move-on-svg-root.xhtml
    fast/css/style-scoped/style-scoped-with-dom-operation.html

http/tests/download failures only affect gtk-wk1 now

Report and mark flaky tests:
    http/tests/w3c/webperf/approved/navigation-timing/html/test_timing_attributes_order.html
    fast/spatial-navigation/snav-unit-overflow-and-scroll-in-direction.html
    fast/parser/document-write-basic.html
    http/tests/w3c/webperf/submission/Google/resource-timing/html/test_resource_dynamic_insertion.html
    media/crash-closing-page-with-media-as-plugin-fallback.html

Add timeout to flaky test media/audio-garbage-collect.html

Report and mark failed tests:
     accessibility/range-alter-by-percent.html
     media/video-restricted-no-preload-auto.html

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-01-28

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

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

6 years agoDocument::topDocument() should return a reference
antti@apple.com [Tue, 28 Jan 2014 22:32:05 +0000 (22:32 +0000)]
Document::topDocument() should return a reference
https://bugs.webkit.org/show_bug.cgi?id=127786

Reviewed by Darin Adler.

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::mainFrame):
(WebCore::AccessibilityObject::topDocument):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityContainer]):
* dom/Document.cpp:
(WebCore::Document::~Document):
(WebCore::Document::createRenderTree):
(WebCore::Document::destroyRenderTree):
(WebCore::Document::clearAXObjectCache):
(WebCore::Document::existingAXObjectCache):
(WebCore::Document::axObjectCache):
(WebCore::Document::implicitClose):
(WebCore::Document::topDocument):
(WebCore::Document::topOrigin):
(WebCore::Document::webkitCancelFullScreen):
(WebCore::Document::webkitDidExitFullScreenForElement):
* dom/Document.h:
* page/DOMWindow.cpp:
(WebCore::DOMWindow::incrementScrollEventListenersCount):
(WebCore::DOMWindow::decrementScrollEventListenersCount):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::isReplacementObscured):
* rendering/RenderView.cpp:
(WebCore::RenderView::RepaintRegionAccumulator::RepaintRegionAccumulator):

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

6 years agojs/dom/post-message-numeric-property.html is flaky
ap@apple.com [Tue, 28 Jan 2014 22:25:40 +0000 (22:25 +0000)]
js/dom/post-message-numeric-property.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=127713

Reviewed by Geoffrey Garen.

Plain testRunner and js-test-post.js approaches to being asynchronous don't work
together, you need one or the other.

* js/dom/post-message-numeric-property-expected.txt:
* js/dom/script-tests/post-message-numeric-property.js:
Updated to use jsTestIsAsync, as the wrapper includes js-test-post.js. The results
are now always printed in correct order, not flakily.

* js/dom/cross-global-object-inline-global-var-expected.txt:
* js/dom/script-tests/cross-global-object-inline-global-var.js:
Ditto.

* js/dom/function-prototype.html:
* js/dom/parse-error-external-script-in-eval.html:
* js/dom/parse-error-external-script-in-new-Function.html:
* js/dom/parse-syntax-error-in-initializer.html:
Removed waitUntilDone, these tests are not asynchronous at all.

* js/dom/script-tests/cross-frame-bad-time.js:
* js/dom/script-tests/cross-frame-really-bad-time-with-__proto__.js:
* js/dom/script-tests/cross-frame-really-bad-time.js:
Updated to use jsTestIsAsync. These tests were not flaky because they happened to
run synchronously in practice, but document.writing a script into subframe won't
necessarily execute it synchronously in the future.

* js/resources/fs-test-post.js: Removed. This file was unused.

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

6 years agoSticky positioning is broken for table rows
commit-queue@webkit.org [Tue, 28 Jan 2014 22:21:47 +0000 (22:21 +0000)]
Sticky positioning is broken for table rows
https://bugs.webkit.org/show_bug.cgi?id=112024

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2014-01-28
Reviewed by Simon Fraser.

Source/WebCore:

Enable sticky positioning for table elements.
Also includes fix for bug ​wkb.ug/105654
I don't have access to this bug, but from related commit message I
assume it says about "Heap use after free problem".
Debugging showed that it wasn't heap use after free.
The real problem that RenderObject::container() returns object which is
not RenderBlock and it is used as RenderBlock in
RenderBox::containingBlockLogicalHeightForPositioned() method.
Added extra isRenderBlock check and search for containingBlock if
current block is not RenderBlock.

Tests: fast/css/sticky/sticky-table-row-top.html
       fast/css/sticky/sticky-table-thead-top.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
* rendering/RenderTableRow.h:

LayoutTests:

Add layout tests for sticky positioned table row and table thead.

* fast/css/sticky/sticky-table-row-top-expected.html: Added.
* fast/css/sticky/sticky-table-row-top.html: Added.
* fast/css/sticky/sticky-table-thead-top-expected.html: Added.
* fast/css/sticky/sticky-table-thead-top.html: Added.

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

6 years agoAdd an empty WKNavigation class
andersca@apple.com [Tue, 28 Jan 2014 22:20:04 +0000 (22:20 +0000)]
Add an empty WKNavigation class
https://bugs.webkit.org/show_bug.cgi?id=127796

Reviewed by Tim Horton.

* UIProcess/API/Cocoa/WKNavigation.h: Added.
* UIProcess/API/Cocoa/WKNavigation.mm: Added.
* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoFixing several incorrect assumptions with handling isolated inlines.
mmaxfield@apple.com [Tue, 28 Jan 2014 22:03:57 +0000 (22:03 +0000)]
Fixing several incorrect assumptions with handling isolated inlines.
https://bugs.webkit.org/show_bug.cgi?id=127608

Reviewed by Simon Fraser.

Fixing capitalization.

* rendering/RenderBlockLineLayout.cpp:
(WebCore::setUpResolverToResumeInIsolate):
(WebCore::constructBidiRunsForSegment):

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

6 years agoFixing several incorrect assumptions with handling isolated inlines.
mmaxfield@apple.com [Tue, 28 Jan 2014 21:53:22 +0000 (21:53 +0000)]
Fixing several incorrect assumptions with handling isolated inlines.
https://bugs.webkit.org/show_bug.cgi?id=127608

Reviewed by Dave Hyatt.

Source/WebCore:

First, when an isolated inline spans multiple lines, we aren't guaranteed
to exit BidiResolver with a nested inline count of zero. Removing the
assert that says otherwise.

Previously in constructBidiRunsForSegment, we called bidiFirst in
an attempt to properly setup the isolatedResolver for any dom/style
that applied, but this only worked on the first line the isolated
inline appeared in. Adding a function that approaches this properly
by recursing through the parents of the starting object for the line
and post-fixing direction attributes to the resolver.

Finally, addressing an issue where the line following a removed isolated
inline (with a continuation) failed to be marked dirty.

Blink: https://chromium.googlesource.com/chromium/blink/+/72698f203b1c50900e535b80945563b92b7eef23
Tests: fast/text/nested-bidi-assert.html
       fast/text/nested-bidi-with-continuation-crash.html

* platform/text/BidiResolver.h:
(WebCore::Run>::~BidiResolver):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::setupResolverToResumeInIsolate):
(WebCore::constructBidiRunsForSegment):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):

LayoutTests:

See file-specific info.

Blink: https://chromium.googlesource.com/chromium/blink/+/72698f203b1c50900e535b80945563b92b7eef23
* fast/text/nested-bidi-assert-expected.txt: Added.
* fast/text/nested-bidi-assert.html: Added. Tests that no crash occurs
when an isolated inline spans several lines
* fast/text/nested-bidi-with-continuation-crash-expected.txt: Added.
* fast/text/nested-bidi-with-continuation-crash.html: Added. Tests that
no crash occurs when additional isolates need to be set up for a
continuation

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

6 years agoRebase fast/repaint/background-shorthand-with-gradient-and-height-changes.html after...
antti@apple.com [Tue, 28 Jan 2014 21:37:12 +0000 (21:37 +0000)]
Rebase fast/repaint/background-shorthand-with-gradient-and-height-changes.html after https://trac.webkit.org/r162947

* fast/repaint/background-shorthand-with-gradient-and-height-changes-expected.txt:
* fast/repaint/background-shorthand-with-gradient-and-height-changes.html:

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

6 years agoRebaseline some repaint test results after https://trac.webkit.org/r162947
antti@apple.com [Tue, 28 Jan 2014 21:26:23 +0000 (21:26 +0000)]
Rebaseline some repaint test results after https://trac.webkit.org/r162947

There are less repaint rects.

* compositing/repaint/resize-repaint-expected.txt:
* fast/box-shadow/shadow-repaint-expected.txt:
* fast/css-grid-layout/grid-element-change-columns-repaint-expected.txt:
* fast/css-grid-layout/grid-element-change-rows-repaint-expected.txt:
* fast/css-grid-layout/grid-item-change-column-repaint-expected.txt:
* fast/css-grid-layout/grid-item-change-row-repaint-expected.txt:
* fast/regions/repaint/element-in-named-flow-absolute-from-fixed-expected.txt:
* fast/regions/repaint/element-in-named-flow-fixed-from-absolute-expected.txt:
* fast/regions/repaint/element-inflow-fixed-from-outflow-static-expected.txt:
* fast/regions/repaint/element-outflow-static-from-inflow-fixed-expected.txt:
* fast/regions/repaint/invalid-region-repaint-crash-expected.txt:
* fast/regions/repaint/repaint-element-inside-relative-region-expected.txt:
* fast/regions/repaint/repaint-regions-overflow-expected.txt:
* fast/repaint/horizontal-bt-overflow-child-expected.txt:
* fast/repaint/horizontal-bt-overflow-parent-expected.txt:
* fast/repaint/horizontal-bt-overflow-same-expected.txt:
* fast/repaint/negative-text-indent-with-overflow-hidden-expected.txt:
* fast/repaint/overflow-flipped-writing-mode-table-expected.txt:
* fast/repaint/reflection-table-layout-expected.txt:
* fast/repaint/transform-table-layout-expected.txt:
* fast/repaint/vertical-overflow-child-expected.txt:
* fast/repaint/vertical-overflow-parent-expected.txt:
* fast/repaint/vertical-overflow-same-expected.txt:
* platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
* platform/mac/fast/images/repaint-subrect-grid-expected.txt:
* svg/repaint/repaint-webkit-svg-shadow-container-expected.txt:

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

6 years agoAdd a NavigationActionData object for easy storage of navigation action data
andersca@apple.com [Tue, 28 Jan 2014 21:15:23 +0000 (21:15 +0000)]
Add a NavigationActionData object for easy storage of navigation action data
https://bugs.webkit.org/show_bug.cgi?id=127787

Reviewed by Tim Horton.

* Scripts/webkit2/messages.py:
(struct_or_class):
* Shared/NavigationActionData.cpp: Added.
(WebKit::NavigationActionData::NavigationActionData):
(WebKit::NavigationActionData::encode):
(WebKit::NavigationActionData::decode):
* Shared/NavigationActionData.h: Added.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

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

6 years agoFix the Mountain Lion build.
timothy_horton@apple.com [Tue, 28 Jan 2014 20:49:49 +0000 (20:49 +0000)]
Fix the Mountain Lion build.

* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):
* UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshotStore::recordSnapshot):

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

6 years agoFix the iOS build.
timothy_horton@apple.com [Tue, 28 Jan 2014 20:25:24 +0000 (20:25 +0000)]
Fix the iOS build.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::recordNavigationSnapshot):
* UIProcess/mac/ViewSnapshotStore.h:
* UIProcess/mac/ViewSnapshotStore.mm:

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

6 years agoRemove unneeded “WebCore::” prefixing in two .cpp files.
beidson@apple.com [Tue, 28 Jan 2014 20:01:59 +0000 (20:01 +0000)]
Remove unneeded “WebCore::” prefixing in two .cpp files.

Rubberstamped by Alexey Proskuryakov.

* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:

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

6 years agoREGRESSION(r162837): 5% regression on html5-full-render and 3% regression in DoYouEve...
antti@apple.com [Tue, 28 Jan 2014 19:40:05 +0000 (19:40 +0000)]
REGRESSION(r162837): 5% regression on html5-full-render and 3% regression in DoYouEvenBench
https://bugs.webkit.org/show_bug.cgi?id=127722

Reviewed by Darin Adler.

Accumulate repaint region in RendeView instead of flushing rects directly to the system.

* dom/Document.cpp:
(WebCore::Document::recalcStyle):
(WebCore::Document::updateLayout):
(WebCore::Document::topDocument):

    Make less silly.

* page/FrameView.cpp:
(WebCore::FrameView::layout):
* rendering/RenderView.cpp:
(WebCore::RenderView::repaintViewRectangle):
(WebCore::RenderView::flushAccumulatedRepaintRegion):
(WebCore::RenderView::RepaintRegionAccumulator::RepaintRegionAccumulator):
(WebCore::RenderView::RepaintRegionAccumulator::~RepaintRegionAccumulator):
* rendering/RenderView.h:

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

6 years agoWebKit2 View Gestures (Swipe): Snapshots should be purgeable
timothy_horton@apple.com [Tue, 28 Jan 2014 19:33:49 +0000 (19:33 +0000)]
WebKit2 View Gestures (Swipe): Snapshots should be purgeable
https://bugs.webkit.org/show_bug.cgi?id=127390
<rdar://problem/15876775>

Reviewed by Anders Carlsson.

Make snapshots be purgeable, and implement a straightforward
(if perhaps expensive, for now) cache eviction strategy to limit the
number of snapshots to 20.

* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
When beginning a gesture, attempt to make the retrieved snapshot
non-volatile. If it was purged while volatile, we won't use it, but if it
is still valid, we'll go ahead and use it as the swipe layer's contents.

(WebKit::ViewGestureController::removeSwipeSnapshot):
When removing the swipe snapshot, make it volatile once again.

* UIProcess/mac/ViewSnapshotStore.h:
Store a creation time along with the image.
Store and return IOSurfaces instead of CGImages.
Store snapshots and render tree sizes separately, so that we can
throw away snapshots but keep the render tree sizes indefinitely.

* UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshotStore::pruneSnapshots):
Cap the number of snapshots we'll ever have live at 20.
Enforce this cap by first trying to remove snapshots farthest
from the current back-forward list's current item, falling back
to removing the least recently created snapshot if there are no
snapshots owned by the current back-forward list.

(WebKit::createIOSurfaceFromImage):
Build an IOSurface from the CGImage snapshot we took, for ease of
use of its purgeability API.

(WebKit::ViewSnapshotStore::recordSnapshot):
Bail from taking the snapshot if the image is empty; this can happen
if the view is out of the window when the snapshot is taken.

Mark snapshots as purgeable as soon as they go into the cache.

(WebKit::ViewSnapshotStore::snapshotAndRenderTreeSize):
Return the target render tree size even if there is no snapshot image.
Take care not to look up an empty UUID.

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

6 years agoHTMLMediaElement::m_platformLayerBorrowed is uninitialized.
commit-queue@webkit.org [Tue, 28 Jan 2014 19:26:21 +0000 (19:26 +0000)]
HTMLMediaElement::m_platformLayerBorrowed is uninitialized.
https://bugs.webkit.org/show_bug.cgi?id=127759

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-01-28
Reviewed by Eric Carlson.

Initalize m_platformLayerBorrowed to false.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):

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

6 years ago[Mac] Use explicit, rather than canonical, AudioFormatFlags and types.
jer.noble@apple.com [Tue, 28 Jan 2014 18:22:07 +0000 (18:22 +0000)]
[Mac] Use explicit, rather than canonical, AudioFormatFlags and types.
https://bugs.webkit.org/show_bug.cgi?id=127781

Reviewed by Eric Carlson.

Since every mac platform uses Float32 audio samples, use these types explicitly
rather than the implicit, canonical AudioSampleType type. Once we're using Float32
explicity, we can also use the explicit kAudioFormatFlagsNativeFloatPacked flag
rather than the canonical version.

* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestinationMac::configure):
* platform/audio/mac/AudioFileReaderMac.cpp:
(WebCore::AudioFileReader::createBus):

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

6 years agoExpose SQL database creation and modification times
ap@apple.com [Tue, 28 Jan 2014 18:18:47 +0000 (18:18 +0000)]
Expose SQL database creation and modification times
https://bugs.webkit.org/show_bug.cgi?id=127728

Reviewed by Brady Eidson.

Source/WebCore:

* platform/FileSystem.h:
* platform/posix/FileSystemPOSIX.cpp:
(WebCore::getFileCreationTime):
* platform/win/FileSystemWin.cpp:
(WebCore::getFileCreationTimeFromFindData):
(WebCore::getFileCreationTime):
Added functions to get file creation times. Not all OSes support that, but Darwin
and Windows do, as (I think) various BSD flavors.

* platform/gtk/FileSystemGtk.cpp: Added a stub for getFileCreationTime().

* platform/sql/SQLiteFileSystem.h:
* platform/sql/SQLiteFileSystem.cpp:
(WebCore::SQLiteFileSystem::databaseCreationTime):
(WebCore::SQLiteFileSystem::databaseModificationTime):
Expose it in the same strange manner other database file operations are.

* Modules/webdatabase/DatabaseDetails.h:
(WebCore::DatabaseDetails::DatabaseDetails):
(WebCore::DatabaseDetails::creationTime):
(WebCore::DatabaseDetails::modificationTime):
Added creation and modification times to DatabaseDetails.

* Modules/webdatabase/DatabaseManager.cpp:
(WebCore::DatabaseManager::ProposedDatabase::ProposedDatabase):
(WebCore::DatabaseManager::openDatabaseBackend):
ProposedDatabase is an unfortunate mechanism for communicating quota errors to the
client, we should really straighten it up. But for now, just leave the times uninitialized.

* Modules/webdatabase/DatabaseBackendBase.cpp: (WebCore::DatabaseBackendBase::details):
This code path is for handling quota errors, so there is no need to initialize most
of DatabaseDetails here as well.

* Modules/webdatabase/DatabaseTracker.cpp: (WebCore::DatabaseTracker::detailsForNameAndOrigin):
* Modules/webdatabase/DatabaseTracker.h:
Fill in database file times. Inlined and removed usageForDatabase function to
avoid rebuilding the path multiple times.

Source/WebKit2:

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<DatabaseDetails>::encode):
(IPC::ArgumentCoder<DatabaseDetails>::decode):
Encode and decode new DatabaseDetails member variables.

* UIProcess/API/C/WKDatabaseManager.cpp:
(WKDatabaseManagerGetDatabaseDetailsCreationTimeKey):
(WKDatabaseManagerGetDatabaseDetailsModificationTimeKey):
* UIProcess/API/C/WKDatabaseManager.h:
Added new keys for database details.

* UIProcess/WebDatabaseManagerProxy.cpp:
(WebKit::WebDatabaseManagerProxy::databaseDetailsCreationTimeKey):
(WebKit::WebDatabaseManagerProxy::databaseDetailsModificationTimeKey):
(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
* UIProcess/WebDatabaseManagerProxy.h:
Set the new keys if times are valid.

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

6 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Tue, 28 Jan 2014 17:55:17 +0000 (17:55 +0000)]
Unreviewed EFL gardening

Skip crashing http tests.

* platform/efl-wk2/TestExpectations:

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

6 years agoSetting muted attribute on <video> element is not reflected in controls
jer.noble@apple.com [Tue, 28 Jan 2014 17:49:58 +0000 (17:49 +0000)]
Setting muted attribute on <video> element is not reflected in controls
https://bugs.webkit.org/show_bug.cgi?id=127726

Reviewed by Eric Carlson.

Source/WebCore:

If the 'muted' IDL attribute is queried after the 'muted' and 'src' content attributes are
set but before loading begins, it will return 'false' until loading begins, but with no
way to query whether that value is valid, nor firing a volumechange event when its value
changes.

The HTML spec says that the 'muted' content attribute controls whether audio output is
muted "when the media element is created", not when loading begins, but we don't
necessarily have a signal that the element is fully parsed.  Additionally, this means its
impossible to make an element via script and get this behavior.

So the new behavior is that the 'muted' IDL attribute will always reflect the 'muted'
content attribute up until one of the following three conditions:

- The 'muted' IDL attribute is set via script.
- The element is inserted in the document.
- The element begins loading.

After the first one of the above conditions, the 'muted' IDL attribute will no longer
change when the 'muted' content attribute changes.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::parseAttribute):
* html/HTMLMediaElement.h:

LayoutTests:

* media/video-defaultmuted-expected.txt:
* media/video-defaultmuted.html:

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

6 years agoJettison DFG code when neither breakpoints or the profiler are active.
mark.lam@apple.com [Tue, 28 Jan 2014 17:43:07 +0000 (17:43 +0000)]
Jettison DFG code when neither breakpoints or the profiler are active.
<https://webkit.org/b/127766>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

We need to jettison the DFG CodeBlocks under the following circumstances:
1. When adding breakpoints to a CodeBlock, jettison it if it is a DFG CodeBlock.
2. When enabling stepping mode in a CodeBlock, jettison it if it a DFG CodeBlock.
3. When settign the enabled profiler in the VM, we need to jettison all DFG
   CodeBlocks.

Instead of emitting speculation checks, the DFG code will now treat Breakpoint,
ProfileWillCall, and ProfileDidCall as no-ops similar to a Phantom node. We
still need to track these nodes so that they match the corresponding opcodes
in the baseline JIT when we jettison and OSR exit. Without them, we would OSR
exit to the wrong location in the baseline JIT code.

In DFGDriver's compileImpl() and DFGPlan's finalizeWithoutNotifyingCallback()
we fail the compilation effort with a CompilationInvalidated result. This allows
the DFG compiler to re-attampt the compilation of the function after some time
if it is hot. The CompilationInvalidated result is supposed to cause the DFG
to exercise an exponential back off before re-attempting compilation again
(see runtime/CompilationResult.h).

This patch improves the Octane score from ~2950 to ~3067.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::addBreakpoint):
(JSC::CodeBlock::setSteppingMode):
* bytecode/CodeBlock.h:
* debugger/Debugger.h:
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDriver.cpp:
(JSC::DFG::compileImpl):
* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::finalizeWithoutNotifyingCallback):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* profiler/LegacyProfiler.cpp:
(JSC::LegacyProfiler::startProfiling):
(JSC::LegacyProfiler::stopProfiling):
* runtime/VM.cpp:
(JSC::VM::VM):
(JSC::SetEnabledProfilerFunctor::operator()):
(JSC::VM::setEnabledProfiler):
* runtime/VM.h:
(JSC::VM::enabledProfiler):

LayoutTests:

Added a test to exercise setting a breakpoint in 2 DFG compiled functions:
1 not inlined, and 1 inlined.

* inspector-protocol/debugger/resources/breakpoint.js:
(notInlineable):
(inlineable):
(notInliningFoo):
(inliningFoo):
(dfgWithoutInline):
(dfgWithInline):
* inspector-protocol/debugger/setBreakpoint-dfg-expected.txt: Added.
* inspector-protocol/debugger/setBreakpoint-dfg.html: Added.

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

6 years agoActually turn stack stats back off.
andersca@apple.com [Tue, 28 Jan 2014 17:38:49 +0000 (17:38 +0000)]
Actually turn stack stats back off.

* wtf/StackStats.cpp:
* wtf/StackStats.h:

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

6 years agoTurn stack stats back off.
andersca@apple.com [Tue, 28 Jan 2014 17:36:54 +0000 (17:36 +0000)]
Turn stack stats back off.

* wtf/StackStats.cpp:

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

6 years agoAdd stubbed out VisitedLinkProvider class
andersca@apple.com [Tue, 28 Jan 2014 17:28:44 +0000 (17:28 +0000)]
Add stubbed out VisitedLinkProvider class
https://bugs.webkit.org/show_bug.cgi?id=127744

Reviewed by Andreas Kling.

This is a first step towards moving responsibility of visited links from
the page group to a separate object.

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* page/PageGroup.cpp:
(WebCore::PageGroup::PageGroup):
* page/PageGroup.h:
(WebCore::PageGroup::visitedLinkProvider):
* page/VisitedLinkProvider.cpp: Added.
(WebCore::VisitedLinkProvider::VisitedLinkProvider):
(WebCore::VisitedLinkProvider::~VisitedLinkProvider):
* page/VisitedLinkProvider.h: Added.
(WebCore::VisitedLinkProvider::create):

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

6 years agoWebKit2 View Gestures (Swipe): Use CGSCaptureWindowsContentsToRect for now
timothy_horton@apple.com [Tue, 28 Jan 2014 17:19:05 +0000 (17:19 +0000)]
WebKit2 View Gestures (Swipe): Use CGSCaptureWindowsContentsToRect for now
https://bugs.webkit.org/show_bug.cgi?id=127768
<rdar://problem/15923662>

Reviewed by Simon Fraser.

* UIProcess/API/mac/WKView.mm:
(-[WKView _takeViewSnapshot]):
Until <rdar://problem/15709646> is resolved, we'll use
CGSCaptureWindowsContentsToRect instead of CGWindowListCreateImage.

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

6 years agoUse std::mutex instead of WTF::Mutex in WTF
andersca@apple.com [Tue, 28 Jan 2014 17:13:41 +0000 (17:13 +0000)]
Use std::mutex instead of WTF::Mutex in WTF
https://bugs.webkit.org/show_bug.cgi?id=127783

Reviewed by Antti Koivisto.

* wtf/CryptographicallyRandomNumber.cpp:
* wtf/MainThread.cpp:
(WTF::mainThreadFunctionQueueMutex):
(WTF::functionQueue):
(WTF::dispatchFunctionsFromMainThread):
(WTF::callOnMainThread):
(WTF::cancelCallOnMainThread):
* wtf/StackStats.cpp:
(WTF::StackStats::initialize):
(WTF::StackStats::CheckPoint::CheckPoint):
(WTF::StackStats::CheckPoint::~CheckPoint):
(WTF::StackStats::probe):
(WTF::StackStats::LayoutCheckPoint::LayoutCheckPoint):
(WTF::StackStats::LayoutCheckPoint::~LayoutCheckPoint):
* wtf/StackStats.h:

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

6 years agoAdd support for menclose element
commit-queue@webkit.org [Tue, 28 Jan 2014 16:34:52 +0000 (16:34 +0000)]
Add support for menclose element
https://bugs.webkit.org/show_bug.cgi?id=85729

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2014-01-28
Reviewed by Chris Fleizach.

Source/WebCore:

Added support for menclose element. MathML <menclose> element renders
its content inside an enclosing notation specified by the notation
attribute. The notation attribute can have values longdiv, box, left,
right, top, bottom , radical, madruwb, actuarial, roundedbox, circle,
updiagonalstrike, downdiagonalstrike, verticalstrike and
horizontalstrike.

Tests: mathml/presentation/menclose-add-children.html
       mathml/presentation/menclose-notation-attribute-add.html
       mathml/presentation/menclose-notation-attribute-change-value.html
       mathml/presentation/menclose-notation-attribute-remove.html
       mathml/presentation/menclose-notation-attribute-set1.html
       mathml/presentation/menclose-notation-attribute-set2.html
       mathml/presentation/menclose-notation-no-overlap.html
       mathml/presentation/menclose-notation-radical.html
       mathml/presentation/menclose-remove-children.html

* CMakeLists.txt:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* css/mathml.css:
(mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose):
(math, mrow, mfenced, msqrt, mroot, merror, mphantom, mstyle, menclose):
* mathml/MathMLAllInOne.cpp:
* mathml/MathMLElement.h:
* mathml/MathMLInlineContainerElement.cpp:
* mathml/MathMLMencloseElement.cpp: Added.
(WebCore::MathMLMencloseElement::MathMLMencloseElement):
(WebCore::MathMLMencloseElement::create):
(WebCore::MathMLMencloseElement::createElementRenderer):
(WebCore::MathMLMencloseElement::isPresentationAttribute):
(WebCore::MathMLMencloseElement::finishParsingChildren):
(WebCore::MathMLMencloseElement::collectStyleForPresentationAttribute):
(WebCore::MathMLMencloseElement::longDivLeftPadding):
* mathml/MathMLMencloseElement.h: Added.
(WebCore::toMathMLMencloseElement):
* mathml/mathattrs.in:
* mathml/mathtags.in:
* rendering/mathml/RenderMathMLMenclose.cpp: Added.
(WebCore::RenderMathMLMenclose::RenderMathMLMenclose):
(WebCore::RenderMathMLMenclose::addChild):
(WebCore::RenderMathMLMenclose::computePreferredLogicalWidths):
(WebCore::RenderMathMLMenclose::updateLogicalHeight):
(WebCore::RenderMathMLMenclose::paint):
(WebCore::RenderMathMLMenclose::checkNotationalValuesValidity):
* rendering/mathml/RenderMathMLMenclose.h: Added.
* rendering/mathml/RenderMathMLRoot.cpp:
(WebCore::RenderMathMLRoot::RenderMathMLRoot):
* rendering/mathml/RenderMathMLRoot.h:
* rendering/mathml/RenderMathMLSquareRoot.cpp:
(WebCore::RenderMathMLSquareRoot::RenderMathMLSquareRoot):
(WebCore::RenderMathMLSquareRoot::createAnonymousWithParentRenderer):
* rendering/mathml/RenderMathMLSquareRoot.h:
Added new file related to menclose element implementation. Menclose
element is created and while parsing its notation attribute based on
its values like top, left CSSBorder properties are applied and for
values like circle, verticalstrike, longidv its taken care in paint.
For radical value an anonymous RenderMathMLSquareRoot is created as
a child of menclose.

LayoutTests:

* mathml/presentation/inferred-mrow-baseline-expected.txt:
* mathml/presentation/inferred-mrow-baseline.html:
* mathml/presentation/inferred-mrow-stretchy-expected.txt:
* mathml/presentation/inferred-mrow-stretchy.html:
Rebaselining existing tests as per the new behavior.

* mathml/presentation/menclose-add-children-expected.html: Added.
* mathml/presentation/menclose-add-children.html: Added.
* mathml/presentation/menclose-notation-attribute-add-expected.html: Added.
* mathml/presentation/menclose-notation-attribute-add.html: Added.
* mathml/presentation/menclose-notation-attribute-change-value-expected.html: Added.
* mathml/presentation/menclose-notation-attribute-change-value.html: Added.
* mathml/presentation/menclose-notation-attribute-remove-expected.html: Added.
* mathml/presentation/menclose-notation-attribute-remove.html: Added.
* mathml/presentation/menclose-notation-attribute-set1-expected.txt: Added.
* mathml/presentation/menclose-notation-attribute-set1.html: Added.
* mathml/presentation/menclose-notation-attribute-set2-expected-mismatch.html: Added.
* mathml/presentation/menclose-notation-attribute-set2.html: Added.
* mathml/presentation/menclose-notation-no-overlap-expected.txt: Added.
* mathml/presentation/menclose-notation-no-overlap.html: Added.
* mathml/presentation/menclose-notation-radical-expected.html: Added.
* mathml/presentation/menclose-notation-radical.html: Added.
* mathml/presentation/menclose-remove-children-expected.html: Added.
* mathml/presentation/menclose-remove-children.html: Added.
Added new test cases for verifying the behaviour of menclose element
with different values of notation attribute and removing/changing/adding
notation attribute.

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

6 years ago[ATK] accessibility/range-alter-by-percent.html is failing after r162587.
k.czech@samsung.com [Tue, 28 Jan 2014 16:29:26 +0000 (16:29 +0000)]
[ATK] accessibility/range-alter-by-percent.html is failing after r162587.
https://bugs.webkit.org/show_bug.cgi?id=127774

Reviewed by Mario Sanchez Prada.

Implicit value of step in range type elements should be one or larger.

No new tests. Covered by exiting one.

* accessibility/atk/WebKitAccessibleInterfaceValue.cpp:
(webkitAccessibleValueGetMinimumIncrement):

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

6 years agoWeb Inspector: In a DataGrid, store value of columnIdentifier to DOM node representin...
commit-queue@webkit.org [Tue, 28 Jan 2014 15:40:29 +0000 (15:40 +0000)]
Web Inspector: In a DataGrid, store value of columnIdentifier to DOM node representing a cell
https://bugs.webkit.org/show_bug.cgi?id=127613

Patch by Diego Pino Garcia <dpino@igalia.com> on 2014-01-28
Reviewed by Timothy Hatcher.

* UserInterface/DOMStorageContentView.js:
(WebInspector.DOMStorageContentView.prototype._editingCallback):
* UserInterface/DataGrid.js:
(WebInspector.DataGrid):
(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGrid.prototype._contextMenuInDataTable):
(WebInspector.DataGridNode.prototype.createCell):

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

6 years agoRemove unnecessary forward declarations of MessagePortChannel, MessagePortChannelArra...
zandobersek@gmail.com [Tue, 28 Jan 2014 15:08:31 +0000 (15:08 +0000)]
Remove unnecessary forward declarations of MessagePortChannel, MessagePortChannelArray in DumpRenderTreeSupportEfl.h
https://bugs.webkit.org/show_bug.cgi?id=127654

Reviewed by Alexey Proskuryakov.

* WebCoreSupport/DumpRenderTreeSupportEfl.h: Remove the forward declarations of MessagePortChannel
and MessagePortChannelArray. They were most likely at one point used in DRT support methods, but are
not necessary anymore.

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

6 years ago<https://webkit.org/b/127767> Disable some deprecation warnings to fix the build.
mrowe@apple.com [Tue, 28 Jan 2014 10:40:58 +0000 (10:40 +0000)]
<https://webkit.org/b/127767> Disable some deprecation warnings to fix the build.

Reviewed by Ryosuke Niwa.

Source/WebCore:

* accessibility/mac/AXObjectCacheMac.mm:
(WebCore::AXObjectCache::postPlatformNotification):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper renderWidgetChildren]):
* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestinationMac::configure):
* platform/audio/mac/AudioFileReaderMac.cpp:
(WebCore::AudioFileReader::createBus):

Source/WebKit/mac:

* WebCoreSupport/PopupMenuMac.mm:
(PopupMenuMac::populate):

Source/WebKit2:

* UIProcess/API/mac/WKView.mm:
(-[WKView _updateWindowAndViewFrames]):
* WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:

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

6 years ago[GTK] Add API to allow setting the process model in WebKitWebContext
commit-queue@webkit.org [Tue, 28 Jan 2014 10:22:47 +0000 (10:22 +0000)]
[GTK] Add API to allow setting the process model in WebKitWebContext
https://bugs.webkit.org/show_bug.cgi?id=125463

Patch by Adrian Perez de Castro <aperez@igalia.com> on 2014-01-28
Reviewed by Carlos Garcia Campos.

Implements accessors in WebKitWebContext for the process model.
The default behavior is unchanged, and a single web process is
used. Using WEBKIT_PROCESS_MODEL_ONE_SECONDARY_PROCESS_PER_WEB_VIEW
as the process model will make use one web process for each
WebKitWebView. This also enables the network process. Setting
the process model must be done as early as possible, before the
very first web process is spawned.

Source/WebKit2:

* UIProcess/API/gtk/WebKitWebContext.cpp:
Add accessors in the API to get/set the process model.
(webkit_web_context_set_process_model):
(webkit_web_context_get_process_model):
* UIProcess/API/gtk/WebKitWebContext.h:
Define the WebKitProcessModel enum.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
Add new public API bits to the documentation.

Tools:

* MiniBrowser/gtk/main.c:
(main):
Enable multiple process mode if the MINIBROWSER_MULTIPROCESS
environment variable is defined and not empty.
* TestWebKitAPI/GNUmakefile.am:
Add new TestMultiprocess test case.
* TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
Add new TestMultiprocess test case.
* TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp: Added.
(loadChanged):
(testMultipleSecondaryProcesses):
(initializeWebExtensions):
(beforeAll):
(afterAll):
* TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(methodCallCallback):
Implement the GetProcessIdentifier D-Bus method.
(makeBusName):
Choose a different bus name when the web extension is used
from TestMultiprocess.
(webkit_web_extension_initialize_with_user_data):
Use makeBusName() to choose the bus name.

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

6 years agoVersioning.
bshafiei@apple.com [Tue, 28 Jan 2014 09:21:07 +0000 (09:21 +0000)]
Versioning.

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

6 years ago[SOUP] Remove soupURIToKURL
carlosgc@webkit.org [Tue, 28 Jan 2014 09:08:40 +0000 (09:08 +0000)]
[SOUP] Remove soupURIToKURL
https://bugs.webkit.org/show_bug.cgi?id=127104

Reviewed by Martin Robinson.

Source/WebCore:

In favor of a URL constructor receiving a SoupURI. Also add a
method to URL to create a soupURI.

* GNUmakefile.list.am: Remove SoupURIUtils and add URLSoup.
* PlatformEfl.cmake: Ditto.
* PlatformGTK.cmake: Ditto.
* platform/URL.h: Add URL constructor receiving a SoupURI and
createSoupURI() to create a new soupURI for the URL.
* platform/network/soup/CookieJarSoup.cpp:
(WebCore::setCookiesFromDOM): Use URL::createSoupURI().
(WebCore::cookiesForSession): Ditto.
(WebCore::getRawCookies): Ditto.
(WebCore::deleteCookie): Ditto.
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::doRedirect): Use the new URL constructor instead of
soupURIToKURL.
(WebCore::createSoupRequestAndMessageForHandle): Use URL::createSoupURI().
* platform/network/soup/ResourceRequest.h: Rename soupURI as
createSoupURI to make it clear that the method returns a newly
created SoupURI.
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupMessageMembers): Use URL::createSoupURI().
(WebCore::ResourceRequest::updateSoupMessage): Ditto.
(WebCore::ResourceRequest::updateFromSoupMessage): Use the new URL
constructor instead of soupURIToKURL.
(WebCore::ResourceRequest::createSoupURI): Use URL::createSoupURI().
* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::updateFromSoupMessage): Use the new
URL constructor instead of soupURIToKURL.
* platform/network/soup/SoupURIUtils.cpp: Removed.
* platform/network/soup/SoupURIUtils.h: Removed.
* platform/soup/URLSoup.cpp: Added.
(WebCore::URL::URL):
(WebCore::URL::createSoupURI):

Tools:

* TestWebKitAPI/GNUmakefile.am: Add soup cppflags to WebCore unit
tests, because URL.h now includes GUniquePtrSoup.h.
* TestWebKitAPI/CMakeLists.txt: Ditto.
* WebKitTestRunner/PlatformEfl.cmake: Add soup cppflags to WTR,
because URL.h now includes GUniquePtrSoup.h.

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

6 years ago[GTK] Avoid unnecessary string duplications in FileSystemGtk
carlosgc@webkit.org [Tue, 28 Jan 2014 08:15:39 +0000 (08:15 +0000)]
[GTK] Avoid unnecessary string duplications in FileSystemGtk
https://bugs.webkit.org/show_bug.cgi?id=127469

Reviewed by Martin Robinson.

We are using fileSystemRepresentation() everywhere internally
which returns a CString that always duplicates the string.
Add unescapedFilename() internal helper function that returns a
GUniquePtr and used it everywhere instead of fileSystemRepresentation().

* platform/gtk/FileSystemGtk.cpp:
(WebCore::unescapedFilename):
(WebCore::fileSystemRepresentation):
(WebCore::filenameForDisplay):
(WebCore::fileExists):
(WebCore::deleteFile):
(WebCore::deleteEmptyDirectory):
(WebCore::getFileStat):
(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata):
(WebCore::pathByAppendingComponent):
(WebCore::makeAllDirectories):
(WebCore::pathGetFileName):
(WebCore::directoryName):
(WebCore::listDirectory):
(WebCore::openFile):

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

6 years ago[GTK] Make webkit_uri_scheme_request_get_web_view() work with CustomProtocols
carlosgc@webkit.org [Tue, 28 Jan 2014 07:52:01 +0000 (07:52 +0000)]
[GTK] Make webkit_uri_scheme_request_get_web_view() work with CustomProtocols
https://bugs.webkit.org/show_bug.cgi?id=127614

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

Add API to set the page identifier that initiated the request to
ResourceRequest, and remove the initiatingPageID() method from the
NetworkingContext class.

* platform/network/NetworkingContext.h:
* platform/network/ResourceHandle.h:
* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::createSoupRequestAndMessageForHandle):
* platform/network/soup/ResourceRequest.h:
(WebCore::ResourceRequest::ResourceRequest):
(WebCore::ResourceRequest::initiatingPageID):
(WebCore::ResourceRequest::setInitiatingPageID):
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupRequest):
(WebCore::ResourceRequest::updateFromSoupRequest):

Source/WebKit/efl:

Remove initiatingPageID() method form the FrameNetworkingContext.

* WebCoreSupport/FrameNetworkingContextEfl.cpp:
* WebCoreSupport/FrameNetworkingContextEfl.h:

Source/WebKit/gtk:

Remove initiatingPageID() method from FrameNetworkingContext.

* WebCoreSupport/FrameNetworkingContextGtk.cpp:
* WebCoreSupport/FrameNetworkingContextGtk.h:

Source/WebKit2:

* NetworkProcess/RemoteNetworkingContext.h: Remove
initiatingPageID() method.
* NetworkProcess/soup/RemoteNetworkingContextSoup.cpp: Ditto.
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
(WebKit::CustomProtocolManagerImpl::send): Create the request with
the ResourceRequest constructor that receives a SoupRequest.
* Shared/soup/WebCoreArgumentCodersSoup.cpp:
(IPC::ArgumentCoder<ResourceRequest>::encodePlatformData): Encode initiatingPageID.
(IPC::ArgumentCoder<ResourceRequest>::decodePlatformData): Decode initiatingPageID.
* UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestCreate): Remove initiatingPageID parameter
and get it from the given ResourceRequest.
* UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
* UIProcess/API/gtk/WebKitWebContext.cpp:
(webkitWebContextStartLoadingCustomProtocol): Update to
webkitURISchemeRequestCreate API change.
* WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
(willSendRequestForFrame): Set the initiatingPageID to the ResourceRequest.
* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
(WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext):
Remove initiatingPageID() method.
* WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
* WebProcess/soup/WebSoupRequestManager.cpp:
(WebKit::WebSoupRequestManager::send): Get the initiatingPageID
from the SoupRequest using the ResourceRequest API.

Tools:

* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp: Bring
back the custom URI scheme WebView check.

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

6 years ago[EFL][WK1] Remove ewk_history_item_time_last_visited_get and ewk_history_item_visit_count
ryuan.choi@samsung.com [Tue, 28 Jan 2014 07:43:02 +0000 (07:43 +0000)]
[EFL][WK1] Remove ewk_history_item_time_last_visited_get and ewk_history_item_visit_count
https://bugs.webkit.org/show_bug.cgi?id=127662

Reviewed by Gyuyoung Kim.

These APIs are exposing WebCore's internal structure, but they removed
from WebCore since 162808.

This patch removed not to support them because applications can do it
if they want.

* ewk/ewk_history.cpp:
* ewk/ewk_history.h:

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

6 years ago-[JSContext evaluteScript:] calls JSEvaluteScript with startingLineNumber 0, later...
joepeck@webkit.org [Tue, 28 Jan 2014 07:29:57 +0000 (07:29 +0000)]
-[JSContext evaluteScript:] calls JSEvaluteScript with startingLineNumber 0, later interpreted as a oneBasedInt
https://bugs.webkit.org/show_bug.cgi?id=127648

Reviewed by Geoffrey Garen.

The actual bug being fixed here is that the line number for
scripts evaluated via the JSC APIs is now sane. However,
there is no good infrastructure in place right now to test that.

* API/tests/testapi.c:
(main):
* API/tests/testapi.mm:
(testObjectiveCAPI):
Add tests for exception line numbers and handling of bad
startingLineNumbers in public APIs. These tests were already
passing, I just add them to make sure they are not regressed
in the future.

* API/JSBase.cpp:
(JSEvaluateScript):
(JSCheckScriptSyntax):
* API/JSBase.h:
* API/JSObjectRef.cpp:
(JSObjectMakeFunction):
* API/JSObjectRef.h:
* API/JSScriptRef.cpp:
* API/JSScriptRefPrivate.h:
* API/JSStringRef.h:
- Clarify documentation that startingLineNumber is 1 based and clamped.
- Add clamping in the implementation to put sane values into JSC::SourceProvider.

* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::didParseSource):
Remove the FIXME now that the SourceProvider is giving us expected values.

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

6 years agoRevert yet one more tiny part of r162629 that didn't get reverted in r162883
timothy_horton@apple.com [Tue, 28 Jan 2014 07:25:58 +0000 (07:25 +0000)]
Revert yet one more tiny part of r162629 that didn't get reverted in r162883

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::pluginLoadPolicy):
* WebKitTestRunner/TestController.h:

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

6 years agoRevert one more tiny part of r162629 that didn't get reverted in r162883.
timothy_horton@apple.com [Tue, 28 Jan 2014 07:20:57 +0000 (07:20 +0000)]
Revert one more tiny part of r162629 that didn't get reverted in r162883.

... which was also causing test failures!

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

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

6 years agoLots of varied and random crashes on the scrolling thread (ScrollbarPainters are...
timothy_horton@apple.com [Tue, 28 Jan 2014 07:16:15 +0000 (07:16 +0000)]
Lots of varied and random crashes on the scrolling thread (ScrollbarPainters are going away)
https://bugs.webkit.org/show_bug.cgi?id=127734
<rdar://problem/15906263>

Reviewed by Simon Fraser.

* page/scrolling/ScrollingStateScrollingNode.h:
Retain the ScrollbarPainters in the scrolling state tree.

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

6 years agoUnreviewed iOS build fix. FALLTHROUGHs for iOS.
joepeck@webkit.org [Tue, 28 Jan 2014 05:19:48 +0000 (05:19 +0000)]
Unreviewed iOS build fix. FALLTHROUGHs for iOS.

Source/WebCore:

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityTraits]):
(-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):

Source/WebKit/ios:

* Misc/WebNSStringDrawing.mm:
(needsBidiLayout):

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

6 years agoWebGLLoadPolicy::WebGLAsk is an unnecessary value.
roger_fong@apple.com [Tue, 28 Jan 2014 05:09:51 +0000 (05:09 +0000)]
WebGLLoadPolicy::WebGLAsk is an unnecessary value.
https://bugs.webkit.org/show_bug.cgi?id=127755

Reviewed by Anders Carlsson.

* UIProcess/API/C/WKAPICast.h:
(WebKit::toWebGLLoadPolicy):
* UIProcess/API/C/WKPageLoaderClient.h:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getContext):
* loader/FrameLoaderTypes.h:

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

6 years agoIDB: Cursor support - Messaging, IPC, Threading plumbing
beidson@apple.com [Tue, 28 Jan 2014 05:03:45 +0000 (05:03 +0000)]
IDB: Cursor support - Messaging, IPC, Threading plumbing
https://bugs.webkit.org/show_bug.cgi?id=127736

Reviewed by Sam Weinig.

Source/WebCore:

* Modules/indexeddb/IDBCursorBackendOperations.h:
(WebCore::CursorIterationOperation::cursorID):
(WebCore::CursorAdvanceOperation::cursorID):

* Modules/indexeddb/IDBTransactionBackendOperations.h:
(WebCore::OpenCursorOperation::transactionID):

* WebCore.exp.in:

Source/WebKit2:

Pipe three cursor-related calls to the DatabaseProcess, and handle messages
from the database process when it is done handling them:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::didOpenCursor):
(WebKit::WebIDBServerConnection::didAdvanceCursor):
(WebKit::WebIDBServerConnection::didIterateCursor):
(WebKit::WebIDBServerConnection::openCursor):
(WebKit::WebIDBServerConnection::cursorAdvance):
(WebKit::WebIDBServerConnection::cursorIterate):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

Pipe the calls through to the appropriate UniqueIDBDatabase:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::openCursor):
(WebKit::DatabaseProcessIDBConnection::cursorAdvance):
(WebKit::DatabaseProcessIDBConnection::cursorIterate):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Pass the calls to the backing store thread, then message back to the WebProcess
when the requests are complete.
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::openCursor):
(WebKit::UniqueIDBDatabase::cursorAdvance):
(WebKit::UniqueIDBDatabase::cursorIterate):
(WebKit::UniqueIDBDatabase::openCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didOpenCursorInBackingStore):
(WebKit::UniqueIDBDatabase::advanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didAdvanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::iterateCursorInBackingStore):
(WebKit::UniqueIDBDatabase::didIterateCursorInBackingStore):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

* Shared/WebCrossThreadCopier.cpp:
(WebCore::Vector<char>>::copy):
* Shared/WebCrossThreadCopier.h:

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

6 years agoWeb Inspector: CRASH when debugger closes remote inspecting JSContext
commit-queue@webkit.org [Tue, 28 Jan 2014 04:55:55 +0000 (04:55 +0000)]
Web Inspector: CRASH when debugger closes remote inspecting JSContext
https://bugs.webkit.org/show_bug.cgi?id=127738

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-27
Reviewed by Timothy Hatcher.

RemoteInspectorXPCConnection could be accessed in a background dispatch
queue, while being deallocated on the main thread when a connection
was suddenly terminated.

Make RemoteInspectorXPCConnection a ThreadSafeRefCounted object. Always
keep the connection object ref'd until the main thread calls close()
and removes its reference. At that point we can close the connection,
queue, and deref safely on the background queue.

* inspector/remote/RemoteInspector.h:
* inspector/remote/RemoteInspector.mm:
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
(Inspector::RemoteInspector::xpcConnectionFailed):
For simplicity RemoteInspectorXPCConnections's don't have any threading
primatives to prevent client callbacks after they are closed. RemoteInspector
does, so it just ignores possible callbacks from connections it no longer
cares about.

* inspector/remote/RemoteInspectorXPCConnection.h:
* inspector/remote/RemoteInspectorXPCConnection.mm:
(Inspector::RemoteInspectorXPCConnection::RemoteInspectorXPCConnection):
(Inspector::RemoteInspectorXPCConnection::~RemoteInspectorXPCConnection):
(Inspector::RemoteInspectorXPCConnection::close):
Keep the connection alive as long as the queue it can be used on
is alive. Clean up everything on the queue when close() is called.

(Inspector::RemoteInspectorXPCConnection::handleEvent):
Checking if closed here is not thread safe so it is meaningless.
Remove the check.

(Inspector::RemoteInspectorXPCConnection::sendMessage):
Bail based on the m_closed state.

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

6 years agoWebKit2: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
joepeck@webkit.org [Tue, 28 Jan 2014 04:04:56 +0000 (04:04 +0000)]
WebKit2: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
https://bugs.webkit.org/show_bug.cgi?id=127665

Reviewed by Anders Carlsson.

* Shared/UserData.cpp:
(WebKit::UserData::encode):
These look like they should not have fallen through!

* Configurations/Base.xcconfig:
* Shared/mac/ObjCObjectGraphCoders.mm:
(WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode):

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

6 years agoWebKit1: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
joepeck@webkit.org [Tue, 28 Jan 2014 04:04:54 +0000 (04:04 +0000)]
WebKit1: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
https://bugs.webkit.org/show_bug.cgi?id=127664

Reviewed by Darin Adler.

* Configurations/Base.xcconfig:
* History/BinaryPropertyList.cpp:
(BinaryPropertyListSerializer::appendObjectReference):
(BinaryPropertyListSerializer::startObject):
(BinaryPropertyListSerializer::addAggregateObjectReference):
* WebView/WebPDFView.mm:
(-[WebPDFView PDFViewWillClickOnLink:withURL:]):

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

6 years agoWebCore: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
joepeck@webkit.org [Tue, 28 Jan 2014 04:04:52 +0000 (04:04 +0000)]
WebCore: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
https://bugs.webkit.org/show_bug.cgi?id=127671

Source/WebCore:

Reviewed by Ryosuke Niwa.

* Configurations/Base.xcconfig:
Enable the warning.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
Caught a bug. CSSPropertyWebkitAlt could fall through to CSSPropertyQuotes.

* css/SVGCSSParser.cpp:
(WebCore::CSSParser::parseSVGValue):
Caught a bug. CSSPropertyWebkitSvgShadow could fall through to CSSPropertyMaskType.

* platform/Decimal.cpp:
(WebCore::Decimal::fromString):
Possible bug. Implementation doesn't seem to match its documentation.
Filed an issue to follow-up on this unclear function.

* css/makeprop.pl:
* css/makevalues.pl:
* platform/ColorData.gperf:
Ignore implicit fallthrough warnings in generated code. gperf outputs
a "/*FALLTHROUGH*/" comment, but is not easily customizable to change
this output. Easiest to just ignore the warning for now.

* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::recalcColumn):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
(WebCore::AutoTableLayout::layout):
There has been a "fall through" comment immediately followed by a break
since its introduction in 2003. Removing the inaccurate comment.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::canHaveChildren):
(WebCore::AccessibilityNodeObject::visibleText):
(WebCore::AccessibilityNodeObject::title):
* accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
(-[WebAccessibilityObjectWrapperBase accessibilityDescription]):
(-[WebAccessibilityObjectWrapperBase accessibilityHelpText]):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::serialize):
(WebCore::CloneDeserializer::deserialize):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseContent):
(WebCore::CSSParser::realLex):
* css/CSSSelector.cpp:
(WebCore::CSSSelector::extractPseudoType):
(WebCore::CSSSelector::selectorText):
* css/StyleProperties.cpp:
(WebCore::StyleProperties::asText):
* css/StyleSheetContents.cpp:
(WebCore::childRulesHaveFailedOrCanceledSubresources):
* dom/Node.cpp:
(WebCore::appendTextContent):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):
(WebCore::HTMLTreeBuilder::processEndOfFile):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
* page/EventSource.cpp:
(WebCore::EventSource::parseEventStream):
* platform/DateComponents.cpp:
(WebCore::DateComponents::toStringForTime):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::updateStates):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::platformInit):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::totalBytes):
* platform/graphics/win/FullScreenController.cpp:
(FullScreenController::Private::fullscreenClientWndProc):
* platform/text/BidiResolver.h:
(WebCore::Run>::updateStatusLastFromCurrentDirection):
(WebCore::Run>::createBidiRunsForLine):
* platform/text/win/LocaleWin.cpp:
(WebCore::LocaleWin::initializeLocaleData):
* rendering/PointerEventsHitRules.cpp:
(WebCore::PointerEventsHitRules::PointerEventsHitRules):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::newLine):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlockFlow::updateLogicalWidthForAlignment):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalWidthUsing):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateFillTileSize):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawLineForBoxSide):
* rendering/RenderQuote.cpp:
(WebCore::RenderQuote::originalText):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::replacedContentRect):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild):
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustStyle):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setWordSpacing):
* rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* rendering/svg/SVGMarkerData.h:
(WebCore::SVGMarkerData::updateMarkerDataForPathElement):
* svg/SVGPathParser.cpp:
(WebCore::SVGPathParser::parsePathDataFromSource):
* svg/SVGTransformDistance.cpp:
(WebCore::SVGTransformDistance::SVGTransformDistance):
(WebCore::SVGTransformDistance::scaledDistance):
(WebCore::SVGTransformDistance::addSVGTransforms):
(WebCore::SVGTransformDistance::addToSVGTransform):
(WebCore::SVGTransformDistance::distance):
Add annotation or break before falling into a default:break;

Source/WTF:

Reviewed by Ryosuke Niwa.

* wtf/text/WTFString.h:
(WTF::appendNumber):

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

6 years agoJavaScriptCore: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where...
joepeck@webkit.org [Tue, 28 Jan 2014 04:04:45 +0000 (04:04 +0000)]
JavaScriptCore: Enable -Wimplicit-fallthrough and add FALLTHROUGH annotation where needed
https://bugs.webkit.org/show_bug.cgi?id=127647

Reviewed by Anders Carlsson.

Explicitly annotate switch case fallthroughs in JavaScriptCore and
enable warnings for unannotated fallthroughs.

* dfg/DFGArithMode.h:
(doesOverflow):
Only insert FALLTHROUGH in release builds. In debug builds, the
FALLTHROUGH would be unreachable (due to the ASSERT_NOT_REACHED)
and would through a warning.

* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt52):
Due to the templatized nature of this function, a fallthrough
in one of the template expansions would be unreachable. Disable
the warning for this function.

* Configurations/Base.xcconfig:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
* dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validateCPS):
* parser/Lexer.cpp:
(JSC::Lexer<T>::lex):
* parser/Parser.cpp:
(JSC::Parser<LexerType>::parseStatement):
(JSC::Parser<LexerType>::parseProperty):
* runtime/JSArray.cpp:
(JSC::JSArray::push):
* runtime/JSONObject.cpp:
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC::JSObject::putByIndex):
(JSC::JSObject::putByIndexBeyondVectorLength):
* runtime/JSObject.h:
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
* runtime/LiteralParser.cpp:
(JSC::LiteralParser<CharType>::parse):
* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::backtrackParenthesesOnceBegin):
(JSC::Yarr::Interpreter::backtrackParenthesesOnceEnd):
* yarr/YarrParser.h:
(JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacter):
(JSC::Yarr::Parser::CharacterClassParserDelegate::atomBuiltInCharacterClass):
(JSC::Yarr::Parser::parseEscape):
(JSC::Yarr::Parser::parseTokens):

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

6 years ago[WebKit2] Add SPI to disable the WebCore memory cache
aestes@apple.com [Tue, 28 Jan 2014 02:56:45 +0000 (02:56 +0000)]
[WebKit2] Add SPI to disable the WebCore memory cache
https://bugs.webkit.org/show_bug.cgi?id=127747

Reviewed by Tim Horton.

* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
Initialized memoryCacheDisabled to false.
(WebKit::WebProcessCreationParameters::encode):
Encoded memoryCacheDisabled.
(WebKit::WebProcessCreationParameters::decode):
Decoded memoryCacheDisabled.
* Shared/WebProcessCreationParameters.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextSetMemoryCacheDisabled):
Called WebContext::setMemoryCacheDisabled().
* UIProcess/API/C/WKContextPrivate.h: Declared new SPI.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext): Initialized m_memoryCacheDisabled to false.
(WebKit::WebContext::createNewWebProcess):
Set WebProcessCreationParameters::memoryCacheDisabled to m_memoryCacheDisabled.
(WebKit::WebContext::setMemoryCacheDisabled): Set m_memoryCacheDisabled
and sent new value to all existing processes.
* UIProcess/WebContext.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):
Called WebProcess::setMemoryCacheDisabled().
(WebKit::WebProcess::setMemoryCacheDisabled):
Called MemoryCache::setDisabled() if the disabled state changed.
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:

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

6 years agoAdd -[WKWebView loadRequest:] API
andersca@apple.com [Tue, 28 Jan 2014 02:04:30 +0000 (02:04 +0000)]
Add -[WKWebView loadRequest:] API
https://bugs.webkit.org/show_bug.cgi?id=127727

Reviewed by Dan Bernstein.

* UIProcess/API/Cocoa/WKWebView.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView loadRequest:]):

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

6 years agoiOS DumpRenderTree.app dies loading fonts
dfarler@apple.com [Tue, 28 Jan 2014 02:02:56 +0000 (02:02 +0000)]
iOS DumpRenderTree.app dies loading fonts
https://bugs.webkit.org/show_bug.cgi?id=127730

Reviewed by Daniel Bates.

* DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
- Add Ahem to the __DATA section
* DumpRenderTree/mac/DumpRenderTree.mm:
(activateFontsIOS):
- Load "WeightWatcher100" instead.

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

6 years agoAllow mmap encoded data replacement for WOFF fonts.
akling@apple.com [Tue, 28 Jan 2014 01:59:20 +0000 (01:59 +0000)]
Allow mmap encoded data replacement for WOFF fonts.
<https://webkit.org/b/127737>

We always have to convert WOFF fonts to SFNT format. This happens
in a separate buffer from the CachedFont's internal resource buffer.
Because of this, there's no need to protect the original buffer from
mmap replacement.

With this change, WOFF web fonts are no longer duplicated between
the network and web processes.

Reviewed by Brady Eidson.

* loader/cache/CachedFont.cpp:
(WebCore::CachedFont::CachedFont):
(WebCore::CachedFont::ensureCustomFontData):
(WebCore::CachedFont::mayTryReplaceEncodedData):
* loader/cache/CachedFont.h:

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

6 years agoWeb Inspector: clean up initialization of managers and observers in InspectorTest
bburg@apple.com [Tue, 28 Jan 2014 01:56:54 +0000 (01:56 +0000)]
Web Inspector: clean up initialization of managers and observers in InspectorTest
https://bugs.webkit.org/show_bug.cgi?id=127707

Reviewed by Timothy Hatcher.

The test harness was setting up managers and observers before
telling the frontend host that the page loaded. The InspectorObserver
was also not being initialized.

For clarity, rename importInspectorScripts to initializeInspectorModels.
For easier debugging, make model test assertions use InspectorTest.log.

* http/tests/inspector-protocol/resources/InspectorTest.js:
(InspectorTest.initializeInspectorModels.console.error.window.onerror):
(InspectorTest.initializeInspectorModels.console.assert):
(InspectorTest.initializeInspectorModels):
* inspector-protocol/model/content-flow-content-nodes.html:
* inspector-protocol/model/content-flow-content-removal.html:
* inspector-protocol/model/content-flow-list.html:
* inspector-protocol/model/content-node-region-info.html:
* inspector-protocol/model/main-frame-resource.html:

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