WebKit-https.git
5 years ago[Win] JSC profiler tests asserts in debug mode
ossy@webkit.org [Tue, 27 Jan 2015 09:40:12 +0000 (09:40 +0000)]
[Win] JSC profiler tests asserts in debug mode
https://bugs.webkit.org/show_bug.cgi?id=140931

Unreviewed gardening, skip failing tests.

* profiler-test.yaml:

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

5 years ago[Win] Unreviewed gardening, skip failing tests.
ossy@webkit.org [Tue, 27 Jan 2015 09:26:56 +0000 (09:26 +0000)]
[Win] Unreviewed gardening, skip failing tests.

* tests/exceptionFuzz.yaml: Skip exception fuzz tests due to bug140928.
* tests/mozilla/mozilla-tests.yaml: Skip ecma/Date/15.9.5.28-1.js due to bug140927.

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

5 years agoRemove remaining PLUGIN_ARCHITECTURE(WIN) code blocks from WebKit2.
commit-queue@webkit.org [Tue, 27 Jan 2015 08:19:53 +0000 (08:19 +0000)]
Remove remaining PLUGIN_ARCHITECTURE(WIN) code blocks from WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=140912

Patch by Sungmann Cho <sungmann.cho@navercorp.com> on 2015-01-27
Reviewed by Anders Carlsson.

* Shared/Plugins/Netscape/NetscapePluginModule.cpp:
(WebKit::NetscapePluginModule::tryLoad):
* Shared/Plugins/PluginQuirks.h:
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::userAgent):
* WebProcess/Plugins/Netscape/NetscapePlugin.h:

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

5 years agoUnreviewed, rebaseline several CSS tests after r179168.
cdumez@apple.com [Tue, 27 Jan 2015 07:40:39 +0000 (07:40 +0000)]
Unreviewed, rebaseline several CSS tests after r179168.

Computed line-height is no longer 'normal' but the font's line
spacing.

* fast/css/font-shorthand-line-height-expected.txt:
* fast/css/font-shorthand-line-height.html:
* platform/mac-mavericks/fast/css/css2-system-fonts-expected.txt:
* platform/mac/fast/css/css2-system-fonts-expected.txt:

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

5 years ago[Win] Unskipping more tests after correcting baselines for Windows widgets.
bfulgham@apple.com [Tue, 27 Jan 2015 07:30:59 +0000 (07:30 +0000)]
[Win] Unskipping more tests after correcting baselines for Windows widgets.

* platform/win/TestExpectations:
* platform/win/fast/events/context-no-deselect-expected.png: Added.
* platform/win/fast/events/context-no-deselect-expected.txt: Added.
* platform/win/fast/events/dropzone-005-expected.txt: Added.
* platform/win/fast/events/ime-composition-events-001-expected.txt:
* platform/win/fast/events/key-events-in-input-button-expected.txt: Added.
* platform/win/fast/events/mouseup-from-button2-expected.txt: Added.
* platform/win/fast/flexbox: Added.
* platform/win/fast/flexbox/clear-overflow-before-scroll-update-expected.txt: Added.
* platform/win/fast/frames/flattening: Added.
* platform/win/fast/frames/flattening/frameset-flattening-simple-expected.txt: Added.
* platform/win/fast/multicol/client-rects-expected.png: Added.
* platform/win/fast/multicol/client-rects-expected.txt: Added.
* platform/win/fast/multicol/client-rects-spanners-complex-expected.png: Added.
* platform/win/fast/multicol/client-rects-spanners-complex-expected.txt: Added.
* platform/win/fast/multicol/client-rects-spanners-expected.png: Added.
* platform/win/fast/multicol/client-rects-spanners-expected.txt: Added.
* platform/win/fast/multicol/newmulticol: Added.
* platform/win/fast/multicol/newmulticol/client-rects-expected.png: Added.
* platform/win/fast/multicol/newmulticol/client-rects-expected.txt: Added.
* platform/win/fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt:
* platform/win/fast/overflow/scrollRevealButton-expected.txt:
* platform/win/fast/parser/bad-xml-slash-expected.txt: Added.
* platform/win/fast/parser/document-write-option-expected.txt: Added.
* platform/win/fast/repaint/control-clip-expected.txt:
* platform/win/fast/replaced/object-with-embed-url-param-expected.txt: Added.
* platform/win/fast/replaced/replaced-breaking-expected.txt: Added.
* platform/win/fast/replaced/replaced-breaking-mixture-expected.txt: Added.
* platform/win/fast/replaced/width100percent-button-expected.txt:
* platform/win/fast/replaced/width100percent-checkbox-expected.txt: Added.
* platform/win/fast/replaced/width100percent-menulist-expected.txt: Added.
* platform/win/fast/replaced/width100percent-radio-expected.txt: Added.

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

5 years agoIntroduce Document::body() for call sites interested in the <body> element
cdumez@apple.com [Tue, 27 Jan 2015 07:05:08 +0000 (07:05 +0000)]
Introduce Document::body() for call sites interested in the <body> element
https://bugs.webkit.org/show_bug.cgi?id=140920

Reviewed by Darin Adler.

Introduce Document::body() method for call sites interested only in the
document's <body> element (not the <frameset>). Also clean up the call
sites of Document::bodyOrFrameset() to cache the return value when
suitable as this method does a tree traversal.

This patch does not change behavior, it merely ports calls sites that
were calling Document::bodyOrFrameset() then checking if the tag was
<body>, to call Document::body() instead. Doing so is more efficient
and clearer.

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

5 years agoApply feTurbulence spec change to fix zero length vector generation
commit-queue@webkit.org [Tue, 27 Jan 2015 06:32:03 +0000 (06:32 +0000)]
Apply feTurbulence spec change to fix zero length vector generation
https://bugs.webkit.org/show_bug.cgi?id=140812
.:

Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2015-01-26
Reviewed by Darin Adler.

Recently a bug with the turbulence algorithm was corrected in the
Filter Effects specification.
For some seed values this bug allowed zero length vectors to be generated.
This resulted in large solid color squares being present in the generated image.
The feTurbulence algorithm was updated to reject zero length vectors. This patch
applies that change in WebCore.

Test: svg/filters/feTurbulence_bad_seeds.html

* platform/graphics/filters/FETurbulence.cpp:
(WebCore::FETurbulence::initPaint):
Added rejection sampling during vector generation to avoid zero length vectors.

LayoutTests:

Patch by Nikos Andronikos <nikos.andronikos-webkit@cisra.canon.com.au> on 2015-01-26
Reviewed by Darin Adler.

Ref test that generates a turbulence image which is then coloured black
and alpha min/maxxed (>0 becomes 1, 0 stays zero). This allows holes
caused by zero length vectors to be easily identified.

* svg/filters/feTurbulence_bad_seeds-expected.html: Added.
* svg/filters/feTurbulence_bad_seeds.html: Added.

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

5 years ago[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
bfulgham@apple.com [Tue, 27 Jan 2015 06:24:09 +0000 (06:24 +0000)]
[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
https://bugs.webkit.org/show_bug.cgi?id=87426
<rdar://problem/11527899>

Reviewed by Darin Adler.

Source/WebCore:

Revise COMPtr to work better with our HashMap implementation:
(1) Add a specialization for IsSmartPtr.
(2) Remove PtrHash specialization.
(3) Refresh HashTrails specialization for COMPtr to match what we
do for RefPtr.

* platform/win/COMPtr.h:

Source/WebKit/win:

Revise COMPtr to work better with our HashMap implementation. Use
modern loop syntax.

* WebHistory.cpp:
(WebHistory::visitedURL): Adjust for new COMPtr changes.
* WebPreferences.cpp:
(WebPreferences::getInstanceForIdentifier): Ditto.
(WebPreferences::removeReferenceForIdentifier): Ditto.
* WebView.cpp:
(WebView::setEditable): Ditto.

Source/WTF:

Revise internal containers to use std::addressof in preference to
to using the '&' operator.

* wtf/Deque.h:
(WTF::inlineCapacity>::append):
(WTF::inlineCapacity>::prepend):
(WTF::inlineCapacity>::removeFirst):
(WTF::inlineCapacity>::removeLast):
(WTF::inlineCapacity>::remove):
(WTF::inlineCapacity>::after):
(WTF::inlineCapacity>::before):
* wtf/GetPtr.h:
* wtf/HashTable.h:
(WTF::HashTableBucketInitializer<false>::initialize):
* wtf/HashTraits.h:
(WTF::SimpleClassHashTraits::constructDeletedValue):
(WTF::CustomHashTraits::constructDeletedValue):
* wtf/ListHashSet.h:
(WTF::ListHashSetConstIterator::get):
* wtf/Vector.h:
(WTF::Vector::swap):
(WTF::OverflowHandler>::append):
(WTF::OverflowHandler>::tryAppend):
(WTF::OverflowHandler>::insert):

Tools:

Revise COMPtr to work better with our HashMap implementation. Use
modern loop syntax.

* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::~AccessibilityController):
(AccessibilityController::winNotificationReceived):
* DumpRenderTree/win/DumpRenderTree.cpp:
(dumpBackForwardListForAllWindows):

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

5 years ago[Win] Enable JSC stress tests by default
ossy@webkit.org [Tue, 27 Jan 2015 06:14:01 +0000 (06:14 +0000)]
[Win] Enable JSC stress tests by default
https://bugs.webkit.org/show_bug.cgi?id=128307

Unreviewed typo fix after r179165.

* tests/mozilla/mozilla-tests.yaml:

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

5 years agoThe computed value of line-height:normal is incorrect
dino@apple.com [Tue, 27 Jan 2015 06:12:40 +0000 (06:12 +0000)]
The computed value of line-height:normal is incorrect
https://bugs.webkit.org/show_bug.cgi?id=133744

Patch by Sylvain Galineau <galineau@adobe.com> on 2015-01-26
Reviewed by Dean Jackson.

Source/WebCore:

Use font's line spacing as computed line-height value when specified value is 'normal'.
This behavior is compatible with all other engines.

No new tests; all existing tests are updated to reflect the new computed value.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::lineHeightFromStyle): If line-height wasn't set, use the font's line spacing (same as Blink).

LayoutTests:

line-height:normal now computes to a length value.
This patch updates the tests to reflect the new computed value, as needed.

* css3/calc/line-height-expected.txt:
* editing/pasteboard/simplfiying-markup-should-not-strip-content-expected.txt:
* fast/css/font-calculated-value-expected.txt:
* fast/css/font-calculated-value.html:
* fast/css/font-shorthand-from-longhands-expected.txt:
* fast/css/font-shorthand-from-longhands.html:
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-font-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/script-tests/computed-style-font.js:
* fast/css/line-height-text-autosizing-expected.txt:
* fast/css/line-height-text-autosizing.html:
* fast/ruby/ruby-line-height-expected.txt:
* fast/ruby/script-tests/ruby-line-height.js:
* media/track/track-cue-rendering-on-resize-expected.txt:
* media/track/track-cue-rendering-on-resize.html:
* platform/mac-mavericks/platform/mac/editing/attributed-string/anchor-element-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/basic-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/font-size-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/font-weight-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/letter-spacing-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/text-decorations-expected.txt:
* platform/mac-mavericks/platform/mac/editing/attributed-string/vertical-align-expected.txt:
* platform/mac/editing/attributed-string/anchor-element-expected.txt:
* platform/mac/editing/attributed-string/basic-expected.txt:
* platform/mac/editing/attributed-string/font-size-expected.txt:
* platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt:
* platform/mac/editing/attributed-string/font-weight-expected.txt:
* platform/mac/editing/attributed-string/letter-spacing-expected.txt:
* platform/mac/editing/attributed-string/text-decorations-expected.txt:
* platform/mac/editing/attributed-string/vertical-align-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

5 years ago[Win] Windows gardening (removing more skips).
bfulgham@apple.com [Tue, 27 Jan 2015 06:04:43 +0000 (06:04 +0000)]
[Win] Windows gardening (removing more skips).

* platform/win/TestExpectations:
* platform/win/fast/block/basic/011-expected.png: Added.
* platform/win/fast/block/basic/011-expected.txt: Added.
* platform/win/fast/block/float/overhanging-tall-block-expected.png: Added.
* platform/win/fast/block/float/overhanging-tall-block-expected.txt: Added.
* platform/win/fast/borders/bidi-002-expected.png: Added.
* platform/win/fast/borders/bidi-002-expected.txt: Added.
* platform/win/fast/borders/bidi-009a-expected.png: Added.
* platform/win/fast/borders/bidi-009a-expected.txt: Added.
* platform/win/fast/borders/border-fit-expected.txt: Added.
* platform/win/fast/dom/HTMLInputElement/input-image-alt-text-expected.png: Added.
* platform/win/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt: Added.
* platform/win/fast/dom/HTMLInputElement/input-slider-update-expected.txt: Removed property svn:executable.
* platform/win/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Removed property svn:executable.
* platform/win/fast/dom/HTMLTableColElement: Added.
* platform/win/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.png: Added.
* platform/win/fast/dom/HTMLTableColElement/resize-table-using-col-width-expected.txt: Added.
* platform/win/fast/dom/call-a-constructor-as-a-function-expected.txt: Removed.

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

5 years agoDocument.dir should reflect the 'dir' attribute of the root html element
cdumez@apple.com [Tue, 27 Jan 2015 05:54:05 +0000 (05:54 +0000)]
Document.dir should reflect the 'dir' attribute of the root html element
https://bugs.webkit.org/show_bug.cgi?id=140922

Reviewed by Darin Adler.

Source/WebCore:

Document.dir should reflect the 'dir' content attribute of the root
<html> element as per the specification:
https://html.spec.whatwg.org/multipage/dom.html#dom-document-dir

Previously, WebKit was reflecting the 'dir' content attribute of the
body element. This patch aligns WebKit with the specification and the
behavior of other browsers (tested Firefox 28, IE11 and Chrome).

This patch is based on the following Blink revision by me:
https://src.chromium.org/viewvc/blink?revision=171734&view=revision

Test: fast/dom/document-dir-property.html

* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::dir):
(WebCore::HTMLDocument::setDir):
* html/HTMLDocument.h:

LayoutTests:

Update fast/dom/document-dir-property.html to reflect the behavior
change.

* fast/dom/document-dir-property-expected.txt:
* fast/dom/document-dir-property.html:

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

5 years ago[Win] Enable JSC stress tests by default
ossy@webkit.org [Tue, 27 Jan 2015 05:01:08 +0000 (05:01 +0000)]
[Win] Enable JSC stress tests by default
https://bugs.webkit.org/show_bug.cgi?id=128307

Reviewed by Brent Fulgham.

Source/JavaScriptCore:

* tests/mozilla/mozilla-tests.yaml: Skipped on Windows.
* tests/stress/ftl-arithcos.js: Skipped on Windows.

Tools:

* Scripts/run-javascriptcore-tests:

LayoutTests:

* js/script-tests/date-constructor.js: Skipped on Windows.
* js/script-tests/sort-stability.js: Skipped on Windows.

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

5 years agoREGRESSION (r179101): SVGUseElement::expandUseElementsInShadowTree has an object...
darin@apple.com [Tue, 27 Jan 2015 04:39:58 +0000 (04:39 +0000)]
REGRESSION (r179101): SVGUseElement::expandUseElementsInShadowTree has an object lifetime mistake
https://bugs.webkit.org/show_bug.cgi?id=140921

Reviewed by Alexey Proskuryakov.

Bug found by running regression tests with Address Sanitizer.

* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::expandUseElementsInShadowTree): Use a Ref to protect
the original use element after it's been replaced in the tree; we use it for
one more thing after that.

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

5 years ago[iOS] Remove the various aliases for --ios-simulator (--sim, --simulator, --ios-sim) in
dbates@webkit.org [Tue, 27 Jan 2015 04:06:36 +0000 (04:06 +0000)]
[iOS] Remove the various aliases for --ios-simulator (--sim, --simulator, --ios-sim) in
arguments for build and test scripts
https://bugs.webkit.org/show_bug.cgi?id=139748

Patch by Simon Fraser <simon.fraser@apple.com> on 2015-01-26
Reviewed by Daniel Bates.

There was much confusion resulting from the multitude of aliases used to build/test for
the iOS simulator. Standardize on "--ios-simulator", which is also the name of the layout
tests directory.

This fixes an issue where run-api-tests and some other scripts failed when run with
--simulator.

* Scripts/build-webkit:
* Scripts/package-root:
(usage):
* Scripts/webkitdirs.pm:
(argumentsForConfiguration):
(determineXcodeSDK):
* Scripts/webkitpy/port/factory.py:
(platform_options):

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

5 years ago[iOS WK2] Fix possible crash when -[WKWebView evaluateJavaScript:completionHandler...
simon.fraser@apple.com [Tue, 27 Jan 2015 02:39:44 +0000 (02:39 +0000)]
[iOS WK2] Fix possible crash when -[WKWebView evaluateJavaScript:completionHandler:] was called then the WKWebView is destroyed
https://bugs.webkit.org/show_bug.cgi?id=140203
rdar://problem/19198492

Reviewed by Sam Weinig.
Source/WebKit2:

When handling the OwnerWasInvalidated case in -[WKWebView evaluateJavaScript:completionHandler:],
the block passed to dispatch_async() needs to be retained. Fix by passing the RefPtr
to the lambda.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm: Added.
(TEST):

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

5 years agoNeed a short description (OOPS!).
simon.fraser@apple.com [Tue, 27 Jan 2015 02:39:42 +0000 (02:39 +0000)]
Need a short description (OOPS!).
Need the bug URL (OOPS!).

Reviewed by NOBODY (OOPS!).

Source/WebKit2:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):

Tools:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm: Added.
(TEST):

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

5 years agoParse a function expression as a primary expression
rniwa@webkit.org [Tue, 27 Jan 2015 01:14:14 +0000 (01:14 +0000)]
Parse a function expression as a primary expression
https://bugs.webkit.org/show_bug.cgi?id=140908

Reviewed by Mark Lam.

Moved the code to generate an AST node for a function expression from parseMemberExpression
to parsePrimaryExpression to match the ES6 specification terminology:
https://people.mozilla.org/~jorendorff/es6-draft.html#sec-primary-expression

There should be no behavior change from this change since parsePrimaryExpression is only
called in parseMemberExpression other than the fact failIfStackOverflow() is called.

* parser/Parser.cpp:
(JSC::Parser<LexerType>::parsePrimaryExpression):
(JSC::Parser<LexerType>::parseMemberExpression):

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

5 years agoWebGL 2.0: Actually allow for experimental-webgl2 context creation.
roger_fong@apple.com [Tue, 27 Jan 2015 00:55:26 +0000 (00:55 +0000)]
WebGL 2.0: Actually allow for experimental-webgl2 context creation.
        https://bugs.webkit.org/show_bug.cgi?id=140906
        <rdar://problem/19606875>.

        Reviewed by Brent Fulgham.

        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::is3dType): Include experimental-webgl2 in the list of acceptable 3d context types.

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

5 years agoRename Document::body() to Document::bodyOrFrameset() for clarity
cdumez@apple.com [Tue, 27 Jan 2015 00:26:21 +0000 (00:26 +0000)]
Rename Document::body() to Document::bodyOrFrameset() for clarity
https://bugs.webkit.org/show_bug.cgi?id=140902

Reviewed by Andreas Kling.

Rename Document::body() to Document::bodyOrFrameset() for clarity. This
method does not necessarily return an HTMLBodyElement, it can also
return a frameset as per the specification:
http://www.w3.org/TR/html5/dom.html#dom-tree-accessors

This method is often misused internally (the caller is only interested
in the <body> element). I will fix these instances in a follow-up patch,
this patch is only renaming mechanically.

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

5 years ago[Win] More test gardening.
bfulgham@apple.com [Mon, 26 Jan 2015 23:23:05 +0000 (23:23 +0000)]
[Win] More test gardening.

* platform/win/TestExpectations:

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

5 years agoAdd a user default for disabling network cache
antti@apple.com [Mon, 26 Jan 2015 23:20:30 +0000 (23:20 +0000)]
Add a user default for disabling network cache
https://bugs.webkit.org/show_bug.cgi?id=140904

Reviewed by Andreas Kling

defaults write com.apple.Safari WebKitNetworkCacheEnabled -bool YES/NO

* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
* Shared/Network/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode):
(WebKit::NetworkProcessCreationParameters::decode):
* Shared/Network/NetworkProcessCreationParameters.h:
* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebProcessPool::platformInitializeWebProcess):
(WebKit::WebProcessPool::platformInitializeNetworkProcess):

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

5 years agoFix Border-radius clipping issue on a composited descendants
commit-queue@webkit.org [Mon, 26 Jan 2015 22:59:40 +0000 (22:59 +0000)]
Fix Border-radius clipping issue on a composited descendants
Source/WebCore:

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

Patch by Byungseon Shin <sun.shin@lge.com> on 2015-01-26
Reviewed by Simon Fraser.

Fix assertion in RenderLayerBacking::paintIntoLayer
by not checking out of sync with the GraphicsLayer heirarchy
in GraphicsLayerPaintChildClippingMask phase.

Test: compositing/clipping/border-radius-overflow-hidden-stacking-context.html

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintIntoLayer):

LayoutTests:

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

Patch by Byungseon Shin <sun.shin@lge.com> on 2015-01-26
Reviewed by Simon Fraser.

Ref test that clips composited descendant by stacking context with border-radius and overflow hidden element.

* compositing/clipping/border-radius-overflow-hidden-stacking-context-expected.txt: Added.
* compositing/clipping/border-radius-overflow-hidden-stacking-context.html: Added.

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

5 years agoSimplify RenderElement's shouldRepaintForImageAnimation()
cdumez@apple.com [Mon, 26 Jan 2015 22:44:19 +0000 (22:44 +0000)]
Simplify RenderElement's shouldRepaintForImageAnimation()
https://bugs.webkit.org/show_bug.cgi?id=140890

Reviewed by Darin Adler.

Simplify RenderElement's shouldRepaintForImageAnimation() by
not calling rendererForRootBackground(). The previous code was
doing a null-check on Document::documentElement() but failing
to do a null-check on the renderer just after, which lead me
to refactor this code.

Instead of calling document().documentElement.renderer(), we
now call renderer.parent(). This is equivalent because we already
know that renderer.isBody() returns true. The parent of the <body>
has to be the <html> element, which has to be the documentElement.
There is also no need to do a null-check on renderer.parent(). We
already know that the <body> has a renderer (because |renderer| is
its renderer), thus its parent <html> element has to have a renderer
as well.

Finally, simply call !rootElement.hasBackground() instead of
rootElement.rendererForRootBackground() == &bodyRenderer to determine
if the background painted by the root. This is equivalent but more
efficient because:
- We already know that the root renderer's is an <html> element. We
  can thus avoid the check in rendererForRootBackground().
- We already have the <body>'s renderer so we don't need to do the
  DOM tree traversal in rendererForRootBackground() to get it.

No new tests, already covered by:
fast/images/animated-gif-body-delegated-background-image.html
fast/images/animated-gif-html-background-image.html

* rendering/RenderElement.cpp:
(WebCore::shouldRepaintForImageAnimation):

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

5 years agoAdd iOS EWS to build.webkit.org/dashboard
ddkilzer@apple.com [Mon, 26 Jan 2015 22:40:35 +0000 (22:40 +0000)]
Add iOS EWS to build.webkit.org/dashboard
<http://webkit.org/b/140627>

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice.png: Add.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice@2x.png: Add.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer): Add ios-ews queue info.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
Add iOS8Device platform.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.ios-8 img.logo): Add CSS to draw
iOS device logo.

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

5 years agoFirst argument to DOM traversal functions should be a reference
cdumez@apple.com [Mon, 26 Jan 2015 22:36:36 +0000 (22:36 +0000)]
First argument to DOM traversal functions should be a reference
https://bugs.webkit.org/show_bug.cgi?id=140895

Reviewed by Antti Koivisto.

First argument to DOM traversal functions should be a reference instead
of a pointer as it is dereferenced without null-check.

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

5 years ago[WebGL2] Update IDL for WebGL2.
roger_fong@apple.com [Mon, 26 Jan 2015 22:03:00 +0000 (22:03 +0000)]
[WebGL2] Update IDL for WebGL2.
https://bugs.webkit.org/show_bug.cgi?id=126406
<rdar://problem/15002268>.

Reviewed by Brent Fulgham.

Update WebGL2RenderingContext idl to match spec. Create method stubs as necessary.

* bindings/js/JSWebGL2RenderingContextCustom.cpp:
(WebCore::JSWebGL2RenderingContext::getFramebufferAttachmentParameter):
(WebCore::JSWebGL2RenderingContext::getInternalformatParameter):
(WebCore::JSWebGL2RenderingContext::getQueryParameter):
(WebCore::JSWebGL2RenderingContext::getSamplerParameter):
(WebCore::JSWebGL2RenderingContext::getSyncParameter):
(WebCore::JSWebGL2RenderingContext::getIndexedParameter):
(WebCore::JSWebGL2RenderingContext::getActiveUniformBlockParameter):
(WebCore::JSWebGL2RenderingContext::getActiveUniformBlockName):
* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::copyBufferSubData):
(WebCore::WebGL2RenderingContext::getBufferSubData):
(WebCore::WebGL2RenderingContext::getFramebufferAttachmentParameter):
(WebCore::WebGL2RenderingContext::blitFramebuffer):
(WebCore::WebGL2RenderingContext::framebufferTextureLayer):
(WebCore::WebGL2RenderingContext::getInternalformatParameter):
(WebCore::WebGL2RenderingContext::invalidateFramebuffer):
(WebCore::WebGL2RenderingContext::invalidateSubFramebuffer):
(WebCore::WebGL2RenderingContext::readBuffer):
(WebCore::WebGL2RenderingContext::renderbufferStorageMultisample):
(WebCore::WebGL2RenderingContext::texStorage2D):
(WebCore::WebGL2RenderingContext::texStorage3D):
(WebCore::WebGL2RenderingContext::texImage3D):
(WebCore::WebGL2RenderingContext::texSubImage3D):
(WebCore::WebGL2RenderingContext::copyTexSubImage3D):
(WebCore::WebGL2RenderingContext::compressedTexImage3D):
(WebCore::WebGL2RenderingContext::compressedTexSubImage3D):
(WebCore::WebGL2RenderingContext::getFragDataLocation):
(WebCore::WebGL2RenderingContext::uniform1ui):
(WebCore::WebGL2RenderingContext::uniform2ui):
(WebCore::WebGL2RenderingContext::uniform3ui):
(WebCore::WebGL2RenderingContext::uniform4ui):
(WebCore::WebGL2RenderingContext::uniform1uiv):
(WebCore::WebGL2RenderingContext::uniform2uiv):
(WebCore::WebGL2RenderingContext::uniform3uiv):
(WebCore::WebGL2RenderingContext::uniform4uiv):
(WebCore::WebGL2RenderingContext::uniformMatrix2x3fv):
(WebCore::WebGL2RenderingContext::uniformMatrix3x2fv):
(WebCore::WebGL2RenderingContext::uniformMatrix2x4fv):
(WebCore::WebGL2RenderingContext::uniformMatrix4x2fv):
(WebCore::WebGL2RenderingContext::uniformMatrix3x4fv):
(WebCore::WebGL2RenderingContext::uniformMatrix4x3fv):
(WebCore::WebGL2RenderingContext::vertexAttribI4i):
(WebCore::WebGL2RenderingContext::vertexAttribI4iv):
(WebCore::WebGL2RenderingContext::vertexAttribI4ui):
(WebCore::WebGL2RenderingContext::vertexAttribI4uiv):
(WebCore::WebGL2RenderingContext::vertexAttribIPointer):
(WebCore::WebGL2RenderingContext::vertexAttribDivisor):
(WebCore::WebGL2RenderingContext::drawArraysInstanced):
(WebCore::WebGL2RenderingContext::drawElementsInstanced):
(WebCore::WebGL2RenderingContext::drawRangeElements):
(WebCore::WebGL2RenderingContext::drawBuffers):
(WebCore::WebGL2RenderingContext::clearBufferiv):
(WebCore::WebGL2RenderingContext::clearBufferuiv):
(WebCore::WebGL2RenderingContext::clearBufferfv):
(WebCore::WebGL2RenderingContext::clearBufferfi):
(WebCore::WebGL2RenderingContext::createQuery):
(WebCore::WebGL2RenderingContext::deleteQuery):
(WebCore::WebGL2RenderingContext::isQuery):
(WebCore::WebGL2RenderingContext::beginQuery):
(WebCore::WebGL2RenderingContext::endQuery):
(WebCore::WebGL2RenderingContext::getQuery):
(WebCore::WebGL2RenderingContext::getQueryParameter):
(WebCore::WebGL2RenderingContext::createSampler):
(WebCore::WebGL2RenderingContext::deleteSampler):
(WebCore::WebGL2RenderingContext::isSampler):
(WebCore::WebGL2RenderingContext::bindSampler):
(WebCore::WebGL2RenderingContext::samplerParameteri):
(WebCore::WebGL2RenderingContext::samplerParameterf):
(WebCore::WebGL2RenderingContext::getSamplerParameter):
(WebCore::WebGL2RenderingContext::fenceSync):
(WebCore::WebGL2RenderingContext::isSync):
(WebCore::WebGL2RenderingContext::deleteSync):
(WebCore::WebGL2RenderingContext::clientWaitSync):
(WebCore::WebGL2RenderingContext::waitSync):
(WebCore::WebGL2RenderingContext::getSyncParameter):
(WebCore::WebGL2RenderingContext::createTransformFeedback):
(WebCore::WebGL2RenderingContext::deleteTransformFeedback):
(WebCore::WebGL2RenderingContext::isTransformFeedback):
(WebCore::WebGL2RenderingContext::bindTransformFeedback):
(WebCore::WebGL2RenderingContext::beginTransformFeedback):
(WebCore::WebGL2RenderingContext::endTransformFeedback):
(WebCore::WebGL2RenderingContext::transformFeedbackVaryings):
(WebCore::WebGL2RenderingContext::getTransformFeedbackVarying):
(WebCore::WebGL2RenderingContext::pauseTransformFeedback):
(WebCore::WebGL2RenderingContext::resumeTransformFeedback):
(WebCore::WebGL2RenderingContext::bindBufferBase):
(WebCore::WebGL2RenderingContext::bindBufferRange):
(WebCore::WebGL2RenderingContext::getIndexedParameter):
(WebCore::WebGL2RenderingContext::getUniformIndices):
(WebCore::WebGL2RenderingContext::getActiveUniforms):
(WebCore::WebGL2RenderingContext::getUniformBlockIndex):
(WebCore::WebGL2RenderingContext::getActiveUniformBlockParameter):
(WebCore::WebGL2RenderingContext::getActiveUniformBlockName):
(WebCore::WebGL2RenderingContext::uniformBlockBinding):
(WebCore::WebGL2RenderingContext::createVertexArray):
(WebCore::WebGL2RenderingContext::deleteVertexArray):
(WebCore::WebGL2RenderingContext::isVertexArray):
(WebCore::WebGL2RenderingContext::bindVertexArray):
* html/canvas/WebGL2RenderingContext.h:
* html/canvas/WebGL2RenderingContext.idl:
* platform/graphics/GraphicsTypes3D.h:

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

5 years agoDon't let the CSSValuePool's font family cache grow unbounded.
akling@apple.com [Mon, 26 Jan 2015 21:42:40 +0000 (21:42 +0000)]
Don't let the CSSValuePool's font family cache grow unbounded.
<https://webkit.org/b/140894>

Reviewed by Chris Dumez.

Darin pointed out to Chris who pointed out to me that the font family cache
in CSSValuePool can grow unbounded until we get a system memory pressure
notification. Put a limit on it like we did with the font face cache.

* css/CSSValuePool.cpp:
(WebCore::CSSValuePool::createFontFamilyValue):

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

5 years agoPlug leak in jsValueWithDictionaryInContext().
akling@apple.com [Mon, 26 Jan 2015 20:57:36 +0000 (20:57 +0000)]
Plug leak in jsValueWithDictionaryInContext().
<https://webkit.org/b/140889>

Reviewed by Alexey Proskuryakov.

Add a missing JSStringRelease to plug leak that was showing up on leaks bot.

* platform/mac/SerializedPlatformRepresentationMac.mm:
(WebCore::jsValueWithDictionaryInContext):

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

5 years agocopy-webkitlibraries-to-product-directory's hack to build LLVM from source should...
fpizlo@apple.com [Mon, 26 Jan 2015 20:56:02 +0000 (20:56 +0000)]
copy-webkitlibraries-to-product-directory's hack to build LLVM from source should be hardened for Xcode deciding it needs SDKROOT set
https://bugs.webkit.org/show_bug.cgi?id=140896

Reviewed by Michael Saboff.

I've encountered some Xcode setups where you need to set SDKROOT to get llvm to build. This
makes our script do this.

Note that an alternative would be to run clang via "xcrun clang" rather than directly, but
this would be harder given llvm's autoconf setup.

* Scripts/copy-webkitlibraries-to-product-directory:

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

5 years agoUpdate bot assignments.
ap@apple.com [Mon, 26 Jan 2015 20:51:59 +0000 (20:51 +0000)]
Update bot assignments.

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

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

5 years agoIntegrate WP python server into WebKit test framework
youenn.fablet@crf.canon.fr [Mon, 26 Jan 2015 20:41:07 +0000 (20:41 +0000)]
Integrate WP python server into WebKit test framework
https://bugs.webkit.org/show_bug.cgi?id=127094

Reviewed by Ryosuke Niwa.

LayoutTests/imported/w3c:

Contains parameters of web platform test server.

* resources/config.json: Added.

Tools:

This patch adds W3C web server (wptserver) as a new HTTP server.
wptserver is used to serve all tests inside LayoutTests/imported/w3c/wpt.
wptserver implementation should be imported within the import of the Web Platform Test suite (to ensure keeping server and tests in sync) in LayoutTests/imported/w3c/wpt.

Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py serves as main entry point to wpt spawned process.
Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py is responsible to start/stop the wpt server process.
It also sets up the server config and testharness.js/testharnessreport.js files at start and stop of the wpt server.

* Scripts/webkitpy/common/system/executive_mock.py:
(MockProcess.communicate):
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py: Adding start/stop of web platform test server according boolean parameter.
(LayoutTestRunner.__init__):
(LayoutTestRunner.run_tests):
(LayoutTestRunner.start_servers):
(LayoutTestRunner.stop_servers):
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py: Updated to check for wpt server start/stop.
(LayoutTestRunnerTests._run_tests):
(LayoutTestRunnerTests.test_servers_started.start_web_platform_test_server):
(LayoutTestRunnerTests.test_servers_started.stop_web_platform_test_server):
(LayoutTestRunnerTests):
(LayoutTestRunnerTests.test_servers_started):
* Scripts/webkitpy/layout_tests/controllers/manager.py:  Updated to check whether a test is a wpt test and whether wpt server launch is needed.
(Manager.__init__):
(Manager._is_http_test):
(Manager._is_web_platform_test):
(Manager._run_tests):
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ManagerTest.test_needs_servers.get_wpt_doc_root):
(ManagerTest.test_needs_servers.get_manager):
(ManagerTest.test_needs_servers):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py: Added an option to control the doc_root of the wpt server.
(parse_args):
* Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py: Added.
(main):
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py: Added.
(doc_root):
(base_url):
(WebPlatformTestServer):
(WebPlatformTestServer.__init__):
(WebPlatformTestServer._set_start_cmd):
(WebPlatformTestServer._copy_webkit_test_files):
(WebPlatformTestServer._clean_webkit_test_files):
(WebPlatformTestServer._prepare_config):
(WebPlatformTestServer._spawn_process):
(WebPlatformTestServer._stop_running_server):
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server_unittest.py: Added.
(TestWebPlatformTestServer):
(TestWebPlatformTestServer.test_start_cmd):
* Scripts/webkitpy/port/base.py:
(Port.__init__):
(Port.to.start_web_platform_test_server):
(Port.to):
(Port.to.web_platform_test_server_doc_root):
(Port.to.web_platform_test_server_base_url):
(Port.to.stop_web_platform_test_server):
* Scripts/webkitpy/port/driver.py: Updated the test name <-> test URL conversion routines.
(Driver.__init__):
(Driver.is_web_platform_test):
(Driver.test_to_uri):
(Driver.uri_to_test):
(Driver._command_from_driver_input):
* Scripts/webkitpy/port/driver_unittest.py:  Updated tests according new conversion rules.
(DriverTest.test_test_to_uri):
(DriverTest.test_uri_to_test):

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

5 years agoFix CSS Selector's tag name matching when mixing HTML and XML
benjamin@webkit.org [Mon, 26 Jan 2015 20:40:18 +0000 (20:40 +0000)]
Fix CSS Selector's tag name matching when mixing HTML and XML
https://bugs.webkit.org/show_bug.cgi?id=140878

Reviewed by Darin Adler.

Source/WebCore:

Previsouly, WebKit was unable to match any XML element that had
any uppercase character if the stylesheet was in a HTML document.
This problem was most often reported due to the inability to style
SVG-in-HTML.

The reason was that the tag local name was incorrectly transformed
to lowercase at parsing time. Instead, we are supposed to only
do case-insensitive match for HTML elements in a HTML document.

This fix is very similar with how we handle attributes:
-Keep both the original and the lowercase versions of the name.
-When matching, chose which version to use depending on the element being matched.

There is one major difference in the way the names are stored.
Unlike attribute selectors, tag name selectors are common, and the uppercase
version is not that uncommon. I wanted to preserve the dense representation
so I specialized CSSSelector specifically for tag names.

To store the data, if the name is already lowercase, just use the m_data pointer
as usual.
If the name is not lowercase, allocate a new small structure in the union to store
both names.

Tests: fast/css/tagname-and-namespace-case-sensitivity-xml-in-html.html
       fast/css/tagname-and-namespace-case-sensitivity-xml-in-xhtml-expected.xhtml
       fast/css/tagname-and-namespace-case-sensitivity-xml-in-xhtml.xhtml
       fast/css/tagname-case-sensitivity-svg-in-html.html
       fast/css/tagname-case-sensitivity-svg-in-xhtml-expected.xhtml
       fast/css/tagname-case-sensitivity-svg-in-xhtml.xhtml
       fast/css/tagname-case-sensitivity-xml-in-html.html
       fast/css/tagname-case-sensitivity-xml-in-xhtml-expected.xhtml
       fast/css/tagname-case-sensitivity-xml-in-xhtml.xhtml
       fast/selectors/element-closest-tagname-case-sensitivity-svg-in-html.html
       fast/selectors/element-closest-tagname-case-sensitivity-svg-in-xhtml.xhtml
       fast/selectors/element-matches-tagname-case-sensitivity-svg-in-html.html
       fast/selectors/element-matches-tagname-case-sensitivity-svg-in-xhtml.xhtml
       fast/selectors/querySelector-tagname-case-sensitivity-svg-in-html.html
       fast/selectors/querySelector-tagname-case-sensitivity-svg-in-xhtml.xhtml
       fast/selectors/querySelector-tagname-case-sensitivity-xml-in-html.html
       fast/selectors/querySelector-tagname-case-sensitivity-xml-in-xhtml.xhtml
       fast/selectors/tagname-adjacent-backtracking-case-sensitivity-html.html
       fast/selectors/tagname-descendant-backtracking-case-sensitivity-html.html

* css/CSSGrammar.y.in:
The parser is unaware of anything case related. CSSSelector takes care of that.

* css/CSSSelector.cpp:
(WebCore::CSSSelector::CSSSelector):
(WebCore::CSSSelector::createRareData):
* css/CSSSelector.h:
(WebCore::CSSSelector::NameWithCase::NameWithCase):
(WebCore::CSSSelector::CSSSelector):
(WebCore::CSSSelector::~CSSSelector):
(WebCore::CSSSelector::tagQName):
(WebCore::CSSSelector::tagLowercaseLocalName):
The new representation stores both the original form and the lower case
form.

* css/RuleSet.cpp:
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::shrinkToFit):
* css/RuleSet.h:
(WebCore::RuleSet::tagRules):
* css/ElementRuleCollector.cpp:
(WebCore::ElementRuleCollector::collectMatchingRules):
The tag name partition is now split in two: lowercase and original case.
If the matched element is HTML, the lowercase partition is used.

* css/SelectorFilter.cpp:
(WebCore::collectElementIdentifierHashes):
(WebCore::collectDescendantSelectorIdentifierHashes):
This is the most annoying part of the patch performance wise:
the bloom filter knows the case of the real elements but it cannot know
how selectors will match them.

To make it work, all names are now converted to lowercase.
That implies that we can filter less on XML and we may have to pay for
converting the tag name to lowercase.

I expect the performance hit to be small because:
-Having two XML elements with the same name but different case is uncommon.
-Most elements use lowercase names.

Still sad...that's the price to pay for correctness.

* css/SelectorChecker.cpp:
(WebCore::tagMatches):
(WebCore::SelectorChecker::checkOne):
* css/SelectorChecker.h:
(WebCore::SelectorChecker::tagMatches): Deleted.
Update the legacy matcher, nothing special.

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::SelectorFragment::SelectorFragment):
(WebCore::SelectorCompiler::TagNamePattern::TagNamePattern):
(WebCore::SelectorCompiler::constructFragmentsInternal):
(WebCore::SelectorCompiler::equalTagNames):
(WebCore::SelectorCompiler::equalTagNamePatterns):
(WebCore::SelectorCompiler::computeBacktrackingStartOffsetInChain):
(WebCore::SelectorCompiler::computeBacktrackingHeightFromDescendant):
(WebCore::SelectorCompiler::computeBacktrackingWidthFromIndirectAdjacent):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):
Tag names are used to optimize backtracking; this is quite common for descendant
(e.g. div > ul > li).
We have to differenciate one new case there: if two tag names are equal
when compared case-insensitively but strictly different, they may still
be equal if they don't match the same kind of elements or both matches
and HTML element.

* dom/SelectorQuery.cpp:
(WebCore::localNameMatches):
(WebCore::elementsForLocalName):
(WebCore::SelectorDataList::executeSingleTagNameSelectorData):
Update the inline versions of SelectorQuery.

LayoutTests:

We had very little coverage for XHTML and XML in HTML.
I added lots of new tests to cover the basics.

* fast/dom/css-dom-read-2-expected.txt:
* fast/dom/css-dom-read-expected.txt:
CSSOM now provide the tagname in the original case instead of lowercase,
which is actually what the spec defines:
"If the character is not handled by one of the above rules and is greater
 than or equal to U+0080, is "-" (U+002D) or "_" (U+005F), or is in one
 of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to U+005A),
 or [a-z] (U+0061 to U+007A), then the character itself."

* fast/css/tagname-and-namespace-case-sensitivity-xml-in-html-expected.html: Added.
* fast/css/tagname-and-namespace-case-sensitivity-xml-in-html.html: Added.
* fast/css/tagname-and-namespace-case-sensitivity-xml-in-xhtml-expected.xhtml: Added.
* fast/css/tagname-and-namespace-case-sensitivity-xml-in-xhtml.xhtml: Added.
* fast/css/tagname-case-sensitivity-svg-in-html-expected.html: Added.
* fast/css/tagname-case-sensitivity-svg-in-html.html: Added.
* fast/css/tagname-case-sensitivity-svg-in-xhtml-expected.xhtml: Added.
* fast/css/tagname-case-sensitivity-svg-in-xhtml.xhtml: Added.
* fast/css/tagname-case-sensitivity-xml-in-html-expected.html: Added.
* fast/css/tagname-case-sensitivity-xml-in-html.html: Added.
* fast/css/tagname-case-sensitivity-xml-in-xhtml-expected.xhtml: Added.
* fast/css/tagname-case-sensitivity-xml-in-xhtml.xhtml: Added.
* fast/selectors/element-closest-tagname-case-sensitivity-svg-in-html-expected.txt: Added.
* fast/selectors/element-closest-tagname-case-sensitivity-svg-in-html.html: Added.
* fast/selectors/element-closest-tagname-case-sensitivity-svg-in-xhtml-expected.txt: Added.
* fast/selectors/element-closest-tagname-case-sensitivity-svg-in-xhtml.xhtml: Added.
* fast/selectors/element-matches-tagname-case-sensitivity-svg-in-html-expected.txt: Added.
* fast/selectors/element-matches-tagname-case-sensitivity-svg-in-html.html: Added.
* fast/selectors/element-matches-tagname-case-sensitivity-svg-in-xhtml-expected.txt: Added.
* fast/selectors/element-matches-tagname-case-sensitivity-svg-in-xhtml.xhtml: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-svg-in-html-expected.txt: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-svg-in-html.html: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-svg-in-xhtml-expected.txt: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-svg-in-xhtml.xhtml: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-xml-in-html-expected.txt: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-xml-in-html.html: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-xml-in-xhtml-expected.txt: Added.
* fast/selectors/querySelector-tagname-case-sensitivity-xml-in-xhtml.xhtml: Added.
* fast/selectors/tagname-adjacent-backtracking-case-sensitivity-html-expected.txt: Added.
* fast/selectors/tagname-adjacent-backtracking-case-sensitivity-html.html: Added.
* fast/selectors/tagname-descendant-backtracking-case-sensitivity-html-expected.txt: Added.
* fast/selectors/tagname-descendant-backtracking-case-sensitivity-html.html: Added.

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

5 years agoUse std::forward() instead of WTF::move() in CSSPrimitiveValue::create(T&& value)
cdumez@apple.com [Mon, 26 Jan 2015 20:04:38 +0000 (20:04 +0000)]
Use std::forward() instead of WTF::move() in CSSPrimitiveValue::create(T&& value)
https://bugs.webkit.org/show_bug.cgi?id=140891

Reviewed by Anders Carlsson.

Use std::forward() instead of WTF::move() in CSSPrimitiveValue::create(T&& value)
to make sure the argument is not unexpectedly moved when it shouldn't (like I
experienced yesterday in Bug 140577):
<http://trac.webkit.org/changeset/179105>

* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::create):
* css/CSSValuePool.h:
(WebCore::CSSValuePool::createValue):

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

5 years agoTeach run-webkit-app --simulator how to install custom built app
dbates@webkit.org [Mon, 26 Jan 2015 19:45:48 +0000 (19:45 +0000)]
Teach run-webkit-app --simulator how to install custom built app
https://bugs.webkit.org/show_bug.cgi?id=140691

Reviewed by David Kilzer.

We should teach run-webkit-app --simulator how to install a custom built app.

Currently run-webkit-app --simulator can only run a system app or an app that
was installed using the simctl command line tool. For convenience we should
teach run-webkit-app --simulator how to install a custom built app.

As a side effect of this change run-safari --simulator will install and run
a custom built of MobileSafari (if it exists).

* Scripts/webkitdirs.pm:
(iOSSimulatorDevices): Added FIXME comment to decouple device representation in
Perl from the structure of the device.plist file.
(plistPathFromBundle): Fix if-statement condition so that we actually perform a
file system check to determine the plist path for a Mac app bundle.
(appIdentifierFromBundle): Pass absolute files system path to defaults(1). Otherwise,
it will complain that it cannot find the file: "Domain ... does not exist".
(appDisplayNameFromBundle): Ditto.
(waitUntilIOSSimulatorDeviceIsInState): Added; helper function that does not return
until a simulator device is the specified state.
(relaunchIOSSimulator): Renamed; formerly named openIOSSimulator. Quits iOS Simulator
(if it's open) before opening it again so as to ensure that the iOS Simulator boots
the specified device.
(quitIOSSimulator): Added optional parameter, $waitForShutdownOfSimulatedDeviceUDID.
As implied by its name, this function will not return until the specified simulator
device UDID is in the shutdown state.
(iosSimulatorDeviceByUDID): Added; returns the device dictionary object for the simulator
device with the specified UDID.
(isIOSSimulatorSystemInstalledApp): Resolve symbolic links in iosSimulatorApplicationsPath()
before using it as part of a prefix match to avoid a mismatch. In the public iOS 8.1 SDK the
return value of iosSimulatorApplicationsPath(), which returns a result analogous to the shell
expression echo `xcrun --sdk iphonesimulator --show-sdk-path`/Applications/, contains a
symbolic link. Specifically, echo `xcrun --sdk iphonesimulator --show-sdk-path` returns
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk,
which is a symbolic link to /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk.
(hasUserInstalledAppInSimulatorDevice): Added.
(isSimulatorDeviceBooted): Added; returns whether the specified simulator device is in the
"Booted" state.
(runIOSWebKitAppInSimulator): Modified to install a custom built app (if needed). For now,
switching between a system installed app and a custom built version of the same app (e.g.
custom build of MobileSafari) will erase all contents and settings in the simulator device.
(eraseIOSSimulatorDevice): Deleted; inline implementation into runIOSWebKitAppInSimulator()
as that was the only caller of this function.
(bootedIOSSimulatorDevice): Deleted.
(openIOSSimulator): Deleted.

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

5 years agoBlacklist iBooks for WebKit's default immediate actions
bdakin@apple.com [Mon, 26 Jan 2015 19:44:09 +0000 (19:44 +0000)]
Blacklist iBooks for WebKit's default immediate actions
https://bugs.webkit.org/show_bug.cgi?id=140854
-and corresponding-
rdar://problem/19489518

Reviewed by Tim Horton.

Source/WebCore:

Add a runtime check for iBooks.
* WebCore.exp.in:
* platform/RuntimeApplicationChecks.cpp:
(WebCore::applicationIsIBooks):
* platform/RuntimeApplicationChecks.h:

Source/WebKit2:

Blacklist iBooks.
* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController _updateImmediateActionItem]):

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

5 years ago[iOS] [SVG -> OTF Converter] Flip the switch off on iOS
mmaxfield@apple.com [Mon, 26 Jan 2015 18:33:31 +0000 (18:33 +0000)]
[iOS] [SVG -> OTF Converter] Flip the switch off on iOS
https://bugs.webkit.org/show_bug.cgi?id=140860

Reviewed by Darin Adler.

Source/JavaScriptCore:

The fonts it makes are grotesque. (See what I did there? Typographic
humor is the best humor.)

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

No new tests because this simply reverts broken code.

The fonts it makes are grotesque. (See what I did there? Typographic
humor is the best humor.)

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

The fonts it makes are grotesque. (See what I did there? Typographic
humor is the best humor.)

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

The fonts it makes are grotesque. (See what I did there? Typographic
humor is the best humor.)

* Configurations/FeatureDefines.xcconfig:

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

5 years agoUpdate bot assignments.
ap@apple.com [Mon, 26 Jan 2015 18:31:23 +0000 (18:31 +0000)]
Update bot assignments.

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

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

5 years agoLeaks bot shouldn't run JSC tests
ap@apple.com [Mon, 26 Jan 2015 18:18:07 +0000 (18:18 +0000)]
Leaks bot shouldn't run JSC tests
https://bugs.webkit.org/show_bug.cgi?id=140877

Reviewed by Darin Adler.

Shaves off 48 minutes of time.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(TestLeaksFactory): Slim down the leaks queue.

* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
* Scripts/webkitpy/port/ios.py:
(IOSSimulatorPort.print_leaks_summary):
* Scripts/webkitpy/port/mac.py:
(MacPort.print_leaks_summary):
Don't yell when leaks are detected.

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

5 years ago[cmake] Remove compiler version calculate cruft
ossy@webkit.org [Mon, 26 Jan 2015 18:03:57 +0000 (18:03 +0000)]
[cmake] Remove compiler version calculate cruft
https://bugs.webkit.org/show_bug.cgi?id=140885

Reviewed by Darin Adler.

* Source/cmake/WebKitHelpers.cmake:

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

5 years agoRefactor run-javascriptcore-tests
ossy@webkit.org [Mon, 26 Jan 2015 18:02:16 +0000 (18:02 +0000)]
Refactor run-javascriptcore-tests
https://bugs.webkit.org/show_bug.cgi?id=140824

Reviewed by Darin Adler.

Separated mozilla, stress test code paths and
determining skipped mozilla tests into subroutines.

* Scripts/run-javascriptcore-tests:
(runMozillaTests):
(runJSCStressTests):
(defaultJsDriverArgsForMozillaTests):

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

5 years agoDemote 'line-height' to a low priority property.
cdumez@apple.com [Mon, 26 Jan 2015 17:52:35 +0000 (17:52 +0000)]
Demote 'line-height' to a low priority property.
https://bugs.webkit.org/show_bug.cgi?id=140817

Reviewed by Andreas Kling.

Our special handling of the 'line-height' property is no longer
required, since the 'font' shorthand is now expanded in the parser
in all cases (also for system fonts).

This patch is based on the following Blink revision:
https://src.chromium.org/viewvc/blink?revision=184629&view=revision

No new tests, already covered by:
fast/css/font-shorthand-line-height.html
fast/css/line-height-font-order.html

* css/CSSPropertyNames.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::applyMatchedProperties):
(WebCore::StyleResolver::initializeFontStyle):
(WebCore::StyleResolver::CascadedProperties::Property::apply):
* css/StyleResolver.h:
(WebCore::StyleResolver::State::State):
(WebCore::StyleResolver::State::setLineHeightValue): Deleted.
(WebCore::StyleResolver::State::lineHeightValue): Deleted.

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

5 years ago[buildbot] Fix grammar of TestWithFailureCount
ossy@webkit.org [Mon, 26 Jan 2015 17:20:20 +0000 (17:20 +0000)]
[buildbot] Fix grammar of TestWithFailureCount
https://bugs.webkit.org/show_bug.cgi?id=140884

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(TestWithFailureCount):
(TestWithFailureCount.commandComplete):
(TestWithFailureCount.getText2):
(RunUnitTests):
(RunPythonTests):
(RunPerlTests):
(RunLLINTCLoopTests):
(Run32bitJSCTests):
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(RunLLINTCLoopTestsTest.test_failure):
(Run32bitJSCTestsTest.test_failure):
(RunUnitTestsTest.assertFailures):

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

5 years agoAX: crash in accessibilityRootObjectWrapper method (WebPageAccessibilityObjectAtk...
commit-queue@webkit.org [Mon, 26 Jan 2015 16:25:09 +0000 (16:25 +0000)]
AX: crash in accessibilityRootObjectWrapper method (WebPageAccessibilityObjectAtk.cpp)
<https://bugs.webkit.org/show_bug.cgi?id=140618>

Patch by Fabien Vallée <fvallee@connected-labs.com> on 2015-01-26
Reviewed by Chris Fleizach.

Check if document()->axObjectCache() is nullptr to fix the crash.
Similar patch has been applied on mac port:
<http://trac.webkit.org/changeset/167136>

Crash occured on <http://itv.mit-xperts.com/hbbtvtest/appmanager/>
(this page needs CEHTML / HbbTV extensions, conditions cannot
be reproduced using regression tests)

* WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp:
(accessibilityRootObjectWrapper):

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

5 years agoUnreviewed. Moving myself to the committer section.
youenn.fablet@crf.canon.fr [Mon, 26 Jan 2015 15:51:21 +0000 (15:51 +0000)]
Unreviewed. Moving myself to the committer section.

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

5 years ago[cmake] Stop compiling with -Wno-error=uninitialized and -Wno-error=literal-suffix
ossy@webkit.org [Mon, 26 Jan 2015 15:15:27 +0000 (15:15 +0000)]
[cmake] Stop compiling with -Wno-error=uninitialized and -Wno-error=literal-suffix
https://bugs.webkit.org/show_bug.cgi?id=140886

Reviewed by Žan Doberšek.

* Source/cmake/WebKitHelpers.cmake:

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

5 years agoUnreviewed. Remove references to removed tests from GTK+ TestExpectations.
carlosgc@webkit.org [Mon, 26 Jan 2015 13:49:17 +0000 (13:49 +0000)]
Unreviewed. Remove references to removed tests from GTK+ TestExpectations.

Shared workers are no longer supported and the layout tests were
removed.

* platform/gtk/TestExpectations:

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

5 years ago[GTK] gtkdoc does not appear in DevHelp
commit-queue@webkit.org [Mon, 26 Jan 2015 11:12:24 +0000 (11:12 +0000)]
[GTK] gtkdoc does not appear in DevHelp
https://bugs.webkit.org/show_bug.cgi?id=139369

.:

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2015-01-26
Reviewed by Philippe Normand.

Expect the gtkdoc to be generated in folders named with the API version.

* Source/PlatformGTK.cmake:

Source/WebCore:

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2015-01-26
Reviewed by Philippe Normand.

* PlatformGTK.cmake: Include the API version in the gtkdoc filenames.

Source/WebKit2:

Patch by Michael Catanzaro <mcatanzaro@igalia.com> on 2015-01-26
Reviewed by Philippe Normand.

* PlatformGTK.cmake: Include the API version in the gtkdoc filenames.
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Renamed from Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk-sections.txt.
* UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Renamed from Source/WebKit2/UIProcess/API/gtk/docs/webkit2gtk.types.

Tools:

Patch by Michael Catanzaro  <mcatanzaro@igalia.com> and Carlos Garcia Campos <cgarcia@igalia.com> on 2015-01-26
Reviewed by Philippe Normand.

* gtk/generate-gtkdoc: Create the generators in the main function
and use them to get the local cross renference dependencies. Also
pass the generator module name to webkitdom.write_doc_files().
(get_gtkdoc_module_paths): Receive a list of local cross reference
dependencies.
(get_generator_for_config): Set the main_sgml_file property of the
GtkDoc object from the configuration file.
(generate_documentation): Generate the documentation for the given
generator.
(generate_documentation_for_config): Deleted.
* gtk/manifest.txt.in: Expect the API version in the gtkdoc filenames.
* gtk/webkitdom.py:
(write_doc_files): Receive the module name used to build the
-sections.txt filename.

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

5 years ago[EFL][GTK] Stop compiling with fno-omit-frame-pointer, -fno-tree-dce
zandobersek@gmail.com [Mon, 26 Jan 2015 09:42:02 +0000 (09:42 +0000)]
[EFL][GTK] Stop compiling with fno-omit-frame-pointer, -fno-tree-dce
https://bugs.webkit.org/show_bug.cgi?id=140609

Reviewed by Csaba Osztrogonác.

The latest releases of GCC versions 4.7, 4.8 and 4.9 all compile and
run JSC tests fine without the -fno-tree-dce and -fno-omit-frame-pointer
compilation flags. Those were added after the jsCStack branch merge, but
can now be removed since the -ftree-dce issues were fixed in GCC, and
changes in r173282 and r173298 again enable compiling with -fomit-frame-pointer.

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsGTK.cmake:

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

5 years agoUnreviewed, rolling out r179107.
commit-queue@webkit.org [Mon, 26 Jan 2015 09:09:52 +0000 (09:09 +0000)]
Unreviewed, rolling out r179107.
https://bugs.webkit.org/show_bug.cgi?id=140880

The GCC in the bots doesn't support the AsyncTask
implementation (Requested by KaL on #webkit).

Reverted changeset:

"[GTK] Enable IndexedDB"
https://bugs.webkit.org/show_bug.cgi?id=98932
http://trac.webkit.org/changeset/179107

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

5 years ago[EFL] Bump libseccomp version to 2.1.1
ossy@webkit.org [Mon, 26 Jan 2015 09:08:08 +0000 (09:08 +0000)]
[EFL] Bump libseccomp version to 2.1.1
https://bugs.webkit.org/show_bug.cgi?id=140357

Reviewed by Gyuyoung Kim.

* efl/jhbuild.modules:

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

5 years ago[GTK] Enable IndexedDB
carlosgc@webkit.org [Mon, 26 Jan 2015 08:25:15 +0000 (08:25 +0000)]
[GTK] Enable IndexedDB
https://bugs.webkit.org/show_bug.cgi?id=98932

Reviewed by Žan Doberšek.

.:

* Source/cmake/OptionsGTK.cmake: Enable DATABASE_PROCESS and INDEXED_DATABASE.
* Source/cmake/WebKitFeatures.cmake: Add ENABLE_DATABASE_PROCESS.

Tools:

* Scripts/webkitperl/FeatureList.pm: Enable IndexedDB for the GTK port.

LayoutTests:

* platform/gtk/TestExpectations: Update IndexedDB test expectations.

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

5 years agoWould like leaks bot results at build.webkit.org/dashboard
ap@apple.com [Mon, 26 Jan 2015 07:59:09 +0000 (07:59 +0000)]
Would like leaks bot results at build.webkit.org/dashboard
https://bugs.webkit.org/show_bug.cgi?id=122657

Reviewed by Darin Adler.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
Record links provided by buildbot steps. Currently, the dashboard hardcodes more links
than necessary, could use the ones from buildbot in more places.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue): Reflect configuration option for leaks queues.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
Add leaks queues to performance column. First, leaks are about performance indeed,
and second, this is where we have some space to spare.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot): Added Yosemite Leaks queue, which was sitting neglected for at
least a year.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid td): Moved height from queue-view - we can now have more than one
queue view per cell. The heigt is needed to avoid ugly overlapping while loading
results - once the results are loaded, all rows are currently higher than that.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/QueueView.css:
(.leaks-popover): Added.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotLeaksQueueView.js:
Added.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/index.html:
Load BuildbotLeaksQueueView.js.

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

5 years agoRemove 'font' shorthand property special casing
cdumez@apple.com [Mon, 26 Jan 2015 07:10:31 +0000 (07:10 +0000)]
Remove 'font' shorthand property special casing
https://bugs.webkit.org/show_bug.cgi?id=140577

Reviewed by Darin Adler.

Mark CSSPrimitiveValue::m_value.fontFamily as const as it is not
supposed to change. This also makes sure that m_value.fontFamily
gets copied instead of moved when constructing a clone in
CSSPrimitiveValue::cloneForCSSOM(). This was causing several tests
to fail on the bots.

* css/CSSPrimitiveValue.h:

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

5 years ago[iOS] Update expected results and test expectations
dbates@webkit.org [Mon, 26 Jan 2015 06:29:34 +0000 (06:29 +0000)]
[iOS] Update expected results and test expectations

* platform/ios-simulator-wk1/TestExpectations:
* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-simulator/TestExpectations:
[...]

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

5 years agofast/html/marquee-scrollamount.html is flaky
ap@apple.com [Mon, 26 Jan 2015 05:01:23 +0000 (05:01 +0000)]
fast/html/marquee-scrollamount.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=140851

Reviewed by Darin Adler.

Updated the test to not have a zero delay timer race. Added many comments, because
what is being tested here is quite subtle.

* fast/html/marquee-scrollamount.html:

* platform/efl/fast/html/marquee-scrollamount-expected.txt:
* platform/gtk/fast/html/marquee-scrollamount-expected.txt:
* platform/ios-simulator-wk2/fast/html/marquee-scrollamount-expected.txt:
* platform/mac/fast/html/marquee-scrollamount-expected.txt:
The DOM changed slightly, because we now insert the marquee after load event.

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

5 years agoSetting HTMLMarqueeElement.trueSpeed doesn't work
ap@apple.com [Mon, 26 Jan 2015 04:04:53 +0000 (04:04 +0000)]
Setting HTMLMarqueeElement.trueSpeed doesn't work
https://bugs.webkit.org/show_bug.cgi?id=140863

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/html/marquee-set-truespeed.html

* html/HTMLMarqueeElement.cpp: (WebCore::HTMLMarqueeElement::minimumDelay):
Check the boolean attribute properly - an empty value is true.

LayoutTests:

Verify that setting scrollDelay to a value under 60 actually works when trueSpeed is set.

* fast/html/marquee-set-truespeed-expected.html: Added.
* fast/html/marquee-set-truespeed.html: Added.

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

5 years agoStreamline SVGUseElement shadow tree handling and make it use SVGElementInstance...
darin@apple.com [Mon, 26 Jan 2015 03:22:09 +0000 (03:22 +0000)]
Streamline SVGUseElement shadow tree handling and make it use SVGElementInstance less
https://bugs.webkit.org/show_bug.cgi?id=140875

Reviewed by Anders Carlsson.

Refactoring of code that is pretty well covered by existing tests, so
not adding new tests.

Inspired by work Rob Buis did in Blink:

    http://src.chromium.org/viewvc/blink?view=revision&revision=173273

Althgouh that is less than half of what ended up in this patch.

* dom/ContainerNode.h: Fixed NoEventDispatchAssertion so it can be
copied without causing an underflow of NoEventDispatchAssertion::s_count.
Made the copy constructor call the default constructor. Also changed it
to be based on ASSERT_DISABLED rather than NDEBUG and tweaked it a bit.

* dom/ElementIteratorAssertions.h: Removed an unnecessary include and
an unnecessary default constructor. Changed to use WTF::Optional instead
of WTF::OwnPtr to handle NoEventDispatchAssertion, which makes this class
copyable and assignable, which in turn makes the iterators based on this
copyable and assignable, which is what I needed in SVGUseElement code.
Also simplified code in a couple places.

* dom/TypedElementDescendantIterator.h:
(WebCore::TypedElementDescendantIteratorAdapter<ElementType>::from):
Fixed an error where the arguments to Traversal::next were passed backwards.
This led to incomplete iteration in SVGUseElement code, and an immediate
assertion failure. Probably could use some unit test coverage, too.
(WebCore::TypedElementDescendantConstIteratorAdapter<ElementType>::from):
Ditto.

* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::animatedInstanceRoot): Deleted.
(WebCore::SVGUseElement::transferSizeAttributesToShadowTreeTargetClone):
Removed the originalElement argument, since we can use the correspondingElement
to get back to it. Removed the useElement argument and changed this into a
member function.
(WebCore::SVGUseElement::svgAttributeChanged): Updated for above changes.
(WebCore::subtreeContainsDisallowedElement): Deleted this function, because
it was only used to optimize by not calling removeDisallowedElementsFromSubtree,
but that function is already similarly efficient when called to do nothing, so
the preflight was not useful.
(WebCore::SVGUseElement::clearResourceReferences): Call userAgentShadowRoot
instead of shadowRoot for clarity.
(WebCore::SVGUseElement::buildPendingResource): Pass a reference instead of
a pointer to buildShadowAndInstanceTree, since it's guaranteed to not be null.
(WebCore::SVGUseElement::shadowTreeTargetClone): Added. Returns the SVG element
inside the shadow tree that corresponds to the use element's target.
(WebCore::SVGUseElement::buildShadowAndInstanceTree): Changed argument type
to a reference instead of a pointer. Removed comments explaining why we have
an instance tree, since soon we will not have one. Removed many comments that
simply state the names of the functions they are commenting on and perhaps a tiny
bit more. Changed to not use m_targetElementInstance as much, dealing with the
shadow tree directly instead of through the instance tree.
(WebCore::SVGUseElement::toClipPath): Use shadowTreeTargetClone instead of
getting at the element through m_targetElementInstance.
(WebCore::SVGUseElement::rendererClipChild): Ditto.
(WebCore::removeDisallowedElementsFromSubtree): Removed the inline keyword,
since there's no good reason to inline thif function's body. Improved local
variable names and used a modern for loop. Also moved the comment about why
this function is used here inside the function instead of repeating it at
each call site.
(WebCore::SVGUseElement::buildShadowTree): Changed to take a reference
instead of a pointer. Moved the check to see if the target is disallowed
out of this function and into buildShadowAndInstanceTree, which needs to
handle that failure explicitly. Tightened up the code a bit, using Ref instead
of RefPtr, putting the comment about removeDisallowedElementsFromSubtree into
that function itself, and removing the unneeded subtreeContainsDisallowedElement
check entirely.
(WebCore::SVGUseElement::expandUseElementsInShadowTree): Removed the argument,
getting the shadow tree from the shadowTree function instead. Walk the tree
iteratively instead of recursively, using the descendantsOfType function.
Rearranged and streamlined the logic.
(WebCore::SVGUseElement::expandSymbolElementsInShadowTree): Ditto.
(WebCore::SVGUseElement::transferEventListenersToShadowTree): Ditto.
(WebCore::SVGUseElement::transferAttributesToShadowTreeReplacement): Renamed
this to avoid the term "replaced element", which is not a reasonable way to
refer to the <g> element in the shadow tree that replaces the <use> element.
Changed the argument type to SVGGElement to make it harder to misuse this
function by accident, and made the use element be "this" instead of passing
it as an argument.
(WebCore::SVGUseElement::selfHasRelativeLengths): Call hasRelativeLengths
on the target inside the shadow tree rather than the original target, which
makes more sense anyway, and is straightforward now that we have the
shadowTreeTargetClone function. Removes use of m_targetElementInstance here.

* svg/SVGUseElement.h: Updated for above changes.

* svg/SVGUseElement.idl: Removed animatedInstanceRoot and tweaked formatting.

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

5 years agoRemove 'font' shorthand property special casing
cdumez@apple.com [Mon, 26 Jan 2015 02:11:14 +0000 (02:11 +0000)]
Remove 'font' shorthand property special casing
https://bugs.webkit.org/show_bug.cgi?id=140577

Reviewed by Darin Adler.

Source/WebCore:

Expand system font values during 'font' property parsing. The 'font'
CSS property was the only shorthand that wasn't always expanded in
the CSS parser, so it needed a lot of special handling that we can
now get rid of.

This patch is inspired from the following Blink revision:
https://src.chromium.org/viewvc/blink?view=rev&revision=184449

Tests:
- fast/css/css2-system-fonts.html (existing)
- fast/css/CSSPrimitiveValue-font-family-primitiveType.html (new)
- fast/css/font-systemFontID-parsing.html (new)
- fast/css/font-shorthand-line-height.html (rebased)

* WebCore.xcodeproj/project.pbxproj:
* css/CSSCalculationValue.cpp:
(WebCore::hasDoubleValue):
Handle CSS_FONT_FAMILY similarly to CSS_STRING in the switch.

* css/CSSFontFamily.h: Added.
Introduce new CSSFontFamily class to store font families inside
CSSPrimitive, instead of using a simple String as previously. We need
an additional 'fromSystemFontID' flag in addition to the font family
name now that system font ID are expanded during parsing. This
information is needed later on by the StyleBuilder (see comment below).

* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::addFontFaceRule):
Update code dealing with font family CSSPrimitiveValues now that they
hold a CSSFontFamily internally instead of a String.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseSystemFont):
Expand system font values for the 'font' property by asking the
RenderTheme for the system font and using it to set the 'font'
longhand properties.

* css/CSSParserValues.cpp:
(WebCore::CSSParserValue::createCSSValue):
Handle CSS_FONT_FAMILY value in the switch.

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::primitiveType):
Make sure we still expose font family CSSPrimitiveValues to the Web as
CSS_STRING, even though we are using a slightly different representation
internally. This is so that we don't change web-exposed behavior and I
added a new layout test to cover this.

(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::CSSPrimitiveValue::cleanup):
(WebCore::CSSPrimitiveValue::getStringValue):
(WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText):
(WebCore::CSSPrimitiveValue::cloneForCSSOM):
(WebCore::CSSPrimitiveValue::equals):
Handle CSS_FONT_FAMILY type in switches.

* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::isFontFamily):
Add method to test if a CSSPrimitiveValue holds a CSSFontFamily
internally.

(WebCore::CSSPrimitiveValue::fontFamily):
Add a getter to retrieve the internal CSSFontFamily object if the
primitive type is CSS_FONT_FAMILY.

* css/CSSPropertyNames.in:
Treat 'font' as a regular shorthand property. Specify its longhand
properties so that makeprop.pl can generate the shorthand code for
us. Also demote 'font' to being a low-priority property as it is
now always expanded during parsing.

* css/CSSValuePool.cpp:
(WebCore::CSSValuePool::createFontFamilyValue):
* css/CSSValuePool.h:
* css/StyleBuilderCustom.h:
(WebCore::StyleBuilderCustom::applyValueFontFamily):
- Update the 'font-family' value setter in the StyleBuilder to reflect
the changes in the CSS parser. The CSSPrimitiveValues in the list now
have CSS_FONT_FAMILY type instead of CSS_STRING.
- We also set the 'isGenericFamily' flag if the font-family was expanded
  from a system font ID (e.g. caption). The 'isGenericFamily' flag is
  used later on to property set the 'isSpecifiedFont' flag on the
  FontDescription object. If we don't do this, system font values will
  be treated as specified fonts, which means that we will no longer use
  the 'use backslash as Yen sign' hack for those. This is covered by the
  following layout tests:
  - fast/text/backslash-to-yen-sign-euc.html
  - editing/selection/find-yensign-and-backslash.html

(WebCore::StyleBuilderCustom::applyInitialFont): Deleted.
(WebCore::StyleBuilderCustom::applyInheritFont): Deleted.
(WebCore::StyleBuilderCustom::applyValueFont): Deleted.
Remove StyleBuilder code dealing with the 'font' property. Now that
the 'font' property is always expanded during parsing, this code can
never be reached.

* css/StylePropertyShorthand.cpp:
(WebCore::isExpandedShorthand):
Stop returning false for 'font' as it is now expanded during parsing
as well. We should probably consider renaming this method to something
else now that all shorthands are expanded, maybe isCSSShorthand() or
isShorthandProperty().

(WebCore::fontShorthand): Deleted.
* css/StylePropertyShorthand.h:
(WebCore::matchingCustomShorthandsForLonghand): Deleted.
Remove custom shorthand code for the 'font' property as it is now
generated by makeprop.pl, like other shorthands.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyFont): Deleted.
This is unused now that the StyleBuilder code for 'font' has been
removed.

* css/makeprop.pl:
Remove custom shorthand code for 'font' as it no longer requires any
special handling.

LayoutTests:

* fast/css/CSSPrimitiveValue-font-family-primitiveType-expected.txt: Added.
* fast/css/CSSPrimitiveValue-font-family-primitiveType.html: Added.
Add layout test to make sure that the font-family is still exposed to the
Web as a CSSValueList of CSSPrimitiveValues whose primitiveType is
CSS_STRING. This is useful because we now use a slightly different
representation internally.

* fast/css/font-shorthand-line-height-expected.txt:
* fast/css/font-shorthand-line-height.html:
Rebaseline the test. This is a progression. Setting the 'font' property
to a system font ID is supposed to reset the line-height property to
'normal'. It previously did not because system font IDs were not
expanded at parsing time. The new behavior is consistent with Chrome and
Firefox as well.

* fast/css/font-systemFontID-parsing-expected.txt: Added.
* fast/css/font-systemFontID-parsing.html: Added.
Add a layout test to make sure that the CSS parser is rejecting a 'font'
property with more than one system font id.

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

5 years ago[Win] Unreviewed gardening.
bfulgham@apple.com [Sun, 25 Jan 2015 19:40:18 +0000 (19:40 +0000)]
[Win] Unreviewed gardening.

Document a few more failures in the expectations file.

* platform/win/TestExpectations:

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

5 years ago[Win] Document some Debug crashes in Accessibility code.
bfulgham@apple.com [Sun, 25 Jan 2015 19:28:55 +0000 (19:28 +0000)]
[Win] Document some Debug crashes in Accessibility code.

* platform/win/TestExpectations:

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

5 years ago[Win] Unreviewed gardening.
bfulgham@apple.com [Sun, 25 Jan 2015 18:37:02 +0000 (18:37 +0000)]
[Win] Unreviewed gardening.

Skip crashes and timeouts to speed up test runs.

* platform/win/TestExpectations:

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

5 years ago[Win] Add WebKit message loop interface.
commit-queue@webkit.org [Sun, 25 Jan 2015 18:01:07 +0000 (18:01 +0000)]
[Win] Add WebKit message loop interface.
https://bugs.webkit.org/show_bug.cgi?id=140857

Patch by peavo@outlook.com <peavo@outlook.com> on 2015-01-25
Reviewed by Brent Fulgham.

Added message loop interface which will run the message loop,
and perform required tasks (like calling CFRunLoopRunInMode)
on each iteration of the loop.

Source/WebKit:

* WebKit.vcxproj/WebKit/WebKit.vcxproj: Added new files to project.
* WebKit.vcxproj/WebKit/WebKit.vcxproj.filters: Ditto.

Source/WebKit/win:

* ForEachCoClass.h:
* Interfaces/WebKit.idl:
* Interfaces/WebKitMessageLoop.idl: Added.
* WebKitClassFactory.cpp:
* WebKitMessageLoop.cpp: Added.
(WebKitMessageLoop::WebKitMessageLoop):
(WebKitMessageLoop::~WebKitMessageLoop):
(WebKitMessageLoop::createInstance):
(WebKitMessageLoop::QueryInterface):
(WebKitMessageLoop::AddRef):
(WebKitMessageLoop::Release):
(WebKitMessageLoop::run):
(WebKitMessageLoop::performMessageLoopTasks):
* WebKitMessageLoop.h: Added.

Tools:

* WinLauncher/WinMain.cpp:
(wWinMain): Use new message loop interface.

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

5 years agoUnresponsive Web processes sometimes throw ObjC exceptions under didPerformActionMenu...
timothy_horton@apple.com [Sun, 25 Jan 2015 08:20:02 +0000 (08:20 +0000)]
Unresponsive Web processes sometimes throw ObjC exceptions under didPerformActionMenuHitTest:
https://bugs.webkit.org/show_bug.cgi?id=140859
<rdar://problem/19571057>

Reviewed by Darin Adler.

* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController didPerformActionMenuHitTest:userData:]):
If we've already given up on this gesture (either because it was canceled or the
willBeginAnimation timeout expired), we shouldn't build a new animationController for it.
This is true both because it wouldn't look good to swap animationControllers out
from under the gesture, but also because AppKit throws an exception when you do this
and that breaks a lot of things.

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

5 years agoLong spins under Frame::rangeForPoint when doing Lookup on feedly.com
timothy_horton@apple.com [Sun, 25 Jan 2015 08:17:39 +0000 (08:17 +0000)]
Long spins under Frame::rangeForPoint when doing Lookup on feedly.com
https://bugs.webkit.org/show_bug.cgi?id=140862
<rdar://problem/19566089>

Reviewed by Dan Bernstein.

* page/Frame.cpp:
(WebCore::Frame::rangeForPoint):
If there isn't a selectable text node at the given point, rangeForPoint
will eventually return null. However, we can make it fail much faster
by checking the initial position's text-ness and selectability.

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

5 years agoUnreviewed, gardening for EFL port.
gyuyoung.kim@samsung.com [Sun, 25 Jan 2015 08:02:46 +0000 (08:02 +0000)]
Unreviewed, gardening for EFL port.

* platform/efl/TestExpectations: media/media-fullscreen-inline.html has been passed since r19100.

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

5 years ago[Win] More rebaselines. (Tables)
bfulgham@apple.com [Sun, 25 Jan 2015 07:35:56 +0000 (07:35 +0000)]
[Win] More rebaselines. (Tables)

* platform/win/tables/mozilla/bugs/bug1188-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug1188-expected.txt:
* platform/win/tables/mozilla/bugs/bug18359-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug18359-expected.txt:
* platform/win/tables/mozilla/bugs/bug2479-3-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug2479-3-expected.txt:
* platform/win/tables/mozilla/bugs/bug2479-4-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug2479-4-expected.txt:
* platform/win/tables/mozilla/bugs/bug29326-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug29326-expected.txt:
* platform/win/tables/mozilla/bugs/bug33855-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug33855-expected.txt:
* platform/win/tables/mozilla/bugs/bug4382-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug4382-expected.txt:
* platform/win/tables/mozilla/bugs/bug4527-expected.txt:
* platform/win/tables/mozilla/bugs/bug96334-expected.png: Added.
* platform/win/tables/mozilla/bugs/bug96334-expected.txt:
* platform/win/tables/mozilla/core/margins-expected.png: Added.
* platform/win/tables/mozilla/core/margins-expected.txt:
* platform/win/tables/mozilla/dom/tableDom-expected.png: Added.
* platform/win/tables/mozilla/dom/tableDom-expected.txt:
* platform/win/tables/mozilla/other/move_row-expected.txt:
* platform/win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.png: Added.
* platform/win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
* platform/win/tables/mozilla_expected_failures/core/captions1-expected.png: Added.
* platform/win/tables/mozilla_expected_failures/core/captions1-expected.txt:
* platform/win/tables/mozilla_expected_failures/core/captions2-expected.png: Added.
* platform/win/tables/mozilla_expected_failures/core/captions2-expected.txt:

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

5 years ago[Win] Unreviewed rebaselining.
bfulgham@apple.com [Sun, 25 Jan 2015 07:14:14 +0000 (07:14 +0000)]
[Win] Unreviewed rebaselining.

Second batch: Fast

* platform/win/fast/block/float/float-avoidance-expected.png: Added.
* platform/win/fast/block/margin-collapse/103-expected.png: Added.
* platform/win/fast/canvas/fallback-content-expected.txt:
* platform/win/fast/css/non-standard-checkbox-size-expected.png: Added.
* platform/win/fast/css/non-standard-checkbox-size-expected.txt:
* platform/win/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
* platform/win/fast/forms/001-expected.png:
* platform/win/fast/forms/001-expected.txt:
* platform/win/fast/forms/003-expected.png: Added.
* platform/win/fast/forms/003-expected.txt:
* platform/win/fast/forms/004-expected.png: Added.
* platform/win/fast/forms/004-expected.txt:
* platform/win/fast/forms/HTMLOptionElement_label01-expected.png: Added.
* platform/win/fast/forms/HTMLOptionElement_label01-expected.txt:
* platform/win/fast/forms/HTMLOptionElement_label02-expected.png: Added.
* platform/win/fast/forms/HTMLOptionElement_label02-expected.txt:
* platform/win/fast/forms/HTMLOptionElement_label03-expected.png: Added.
* platform/win/fast/forms/HTMLOptionElement_label03-expected.txt:
* platform/win/fast/forms/HTMLOptionElement_label04-expected.png: Added.
* platform/win/fast/forms/HTMLOptionElement_label04-expected.txt:
* platform/win/fast/forms/HTMLOptionElement_label06-expected.txt:
* platform/win/fast/forms/HTMLOptionElement_label07-expected.txt:
* platform/win/fast/forms/basic-inputs-expected.png:
* platform/win/fast/forms/basic-inputs-expected.txt:
* platform/win/fast/forms/basic-selects-expected.png:
* platform/win/fast/forms/basic-selects-expected.txt:
* platform/win/fast/forms/basic-textareas-quirks-expected.png: Added.
* platform/win/fast/forms/box-shadow-override-expected.png:
* platform/win/fast/forms/box-shadow-override-expected.txt:
* platform/win/fast/forms/control-clip-overflow-expected.png: Added.
* platform/win/fast/forms/control-clip-overflow-expected.txt:
* platform/win/fast/forms/control-restrict-line-height-expected.png: Added.
* platform/win/fast/forms/control-restrict-line-height-expected.txt:
* platform/win/fast/forms/disabled-select-change-index-expected.png: Added.
* platform/win/fast/forms/disabled-select-change-index-expected.txt:
* platform/win/fast/forms/file/file-input-disabled-expected.png:
* platform/win/fast/forms/file/file-input-disabled-expected.txt:
* platform/win/fast/forms/form-element-geometry-expected.png: Added.
* platform/win/fast/forms/form-element-geometry-expected.txt:
* platform/win/fast/forms/formmove-expected.png: Added.
* platform/win/fast/forms/formmove-expected.txt:
* platform/win/fast/forms/indeterminate-expected.png: Added.
* platform/win/fast/forms/indeterminate-expected.txt:
* platform/win/fast/forms/input-appearance-height-expected.png: Added.
* platform/win/fast/forms/input-appearance-height-expected.txt:
* platform/win/fast/forms/input-appearance-selection-expected.png: Added.
* platform/win/fast/forms/input-appearance-selection-expected.txt: Added.
* platform/win/fast/forms/menulist-deselect-update-expected.txt:
* platform/win/fast/forms/menulist-no-overflow-expected.png: Added.
* platform/win/fast/forms/menulist-no-overflow-expected.txt:
* platform/win/fast/forms/menulist-restrict-line-height-expected.png: Added.
* platform/win/fast/forms/menulist-restrict-line-height-expected.txt:
* platform/win/fast/forms/menulist-separator-painting-expected.txt:
* platform/win/fast/forms/menulist-style-color-expected.png:
* platform/win/fast/forms/menulist-style-color-expected.txt:
* platform/win/fast/forms/menulist-width-change-expected.txt:
* platform/win/fast/forms/option-script-expected.txt:
* platform/win/fast/forms/option-strip-whitespace-expected.png: Added.
* platform/win/fast/forms/option-strip-whitespace-expected.txt:
* platform/win/fast/forms/option-text-clip-expected.png:
* platform/win/fast/forms/option-text-clip-expected.txt:
* platform/win/fast/forms/range/input-appearance-range-expected.png: Added.
* platform/win/fast/forms/range/input-appearance-range-expected.txt:
* platform/win/fast/forms/range/slider-delete-while-dragging-thumb-expected.txt: Added.
* platform/win/fast/forms/range/slider-mouse-events-expected.txt:
* platform/win/fast/forms/range/slider-onchange-event-expected.txt: Added.
* platform/win/fast/forms/range/slider-padding-expected.txt:
* platform/win/fast/forms/range/slider-thumb-shared-style-expected.png: Added.
* platform/win/fast/forms/range/slider-thumb-shared-style-expected.txt:
* platform/win/fast/forms/range/slider-zoomed-expected.txt: Added.
* platform/win/fast/forms/select-align-expected.png: Added.
* platform/win/fast/forms/select-align-expected.txt:
* platform/win/fast/forms/select-background-none-expected.txt:
* platform/win/fast/forms/select-baseline-expected.png: Added.
* platform/win/fast/forms/select-baseline-expected.txt:
* platform/win/fast/forms/select-change-listbox-to-popup-expected.png: Added.
* platform/win/fast/forms/select-change-listbox-to-popup-expected.txt:
* platform/win/fast/forms/select-change-popup-to-listbox-expected.png: Added.
* platform/win/fast/forms/select-change-popup-to-listbox-expected.txt: Added.
* platform/win/fast/forms/select-disabled-appearance-expected.png: Added.
* platform/win/fast/forms/select-disabled-appearance-expected.txt:
* platform/win/fast/forms/select-initial-position-expected.png: Added.
* platform/win/fast/forms/select-initial-position-expected.txt:
* platform/win/fast/forms/select-selected-expected.png: Added.
* platform/win/fast/forms/select-selected-expected.txt:
* platform/win/fast/forms/select-size-expected.txt:
* platform/win/fast/forms/select-style-expected.png: Added.
* platform/win/fast/forms/select-style-expected.txt:
* platform/win/fast/forms/select-visual-hebrew-expected.txt:
* platform/win/fast/forms/select-writing-direction-natural-expected.png:
* platform/win/fast/forms/select-writing-direction-natural-expected.txt:
* platform/win/fast/forms/select/optgroup-rendering-expected.png:
* platform/win/fast/forms/select/optgroup-rendering-expected.txt:
* platform/win/fast/forms/selectlist-minsize-expected.txt:
* platform/win/fast/forms/stuff-on-my-optgroup-expected.png: Added.
* platform/win/fast/forms/stuff-on-my-optgroup-expected.txt:
* platform/win/fast/invalid: Added.
* platform/win/fast/invalid/014-expected.txt: Added.
* platform/win/fast/multicol/pagination/RightToLeft-rl-hittest-expected.txt:
* platform/win/fast/parser: Added.
* platform/win/fast/parser/entity-comment-in-textarea-expected.txt: Added.
* platform/win/fast/parser/open-comment-in-textarea-expected.txt: Added.
* platform/win/fast/repaint/slider-thumb-drag-release-expected.txt:
* platform/win/fast/replaced/three-selects-break-expected.txt:
* platform/win/fast/text/international/bidi-menulist-expected.txt:
* platform/win/fast/text/international/pop-up-button-text-alignment-and-direction-expected.txt:
* platform/win/fast/text/textIteratorNilRenderer-expected.txt:

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

5 years ago[Win] Unreviewed baseline update.
bfulgham@apple.com [Sun, 25 Jan 2015 05:46:55 +0000 (05:46 +0000)]
[Win] Unreviewed baseline update.

First batch: CSS updates.

* platform/win/css2.1/t09-c5526c-display-00-e-expected.txt:
* platform/win/css3/selectors3/html/css3-modsel-161-expected.png:
* platform/win/css3/selectors3/html/css3-modsel-161-expected.txt:
* platform/win/css3/selectors3/html/css3-modsel-25-expected.png:
* platform/win/css3/selectors3/html/css3-modsel-25-expected.txt:
* platform/win/css3/selectors3/html/css3-modsel-70-expected.png:
* platform/win/css3/selectors3/html/css3-modsel-70-expected.txt:
* platform/win/css3/selectors3/xhtml/css3-modsel-161-expected.png:
* platform/win/css3/selectors3/xhtml/css3-modsel-161-expected.txt:
* platform/win/css3/selectors3/xhtml/css3-modsel-25-expected.png:
* platform/win/css3/selectors3/xhtml/css3-modsel-25-expected.txt:
* platform/win/css3/selectors3/xhtml/css3-modsel-70-expected.png:
* platform/win/css3/selectors3/xhtml/css3-modsel-70-expected.txt:
* platform/win/css3/selectors3/xml/css3-modsel-161-expected.png:
* platform/win/css3/selectors3/xml/css3-modsel-161-expected.txt:
* platform/win/css3/selectors3/xml/css3-modsel-25-expected.png:
* platform/win/css3/selectors3/xml/css3-modsel-25-expected.txt:
* platform/win/css3/selectors3/xml/css3-modsel-70-expected.png:
* platform/win/css3/selectors3/xml/css3-modsel-70-expected.txt:
* platform/win/fast/block/float/float-avoidance-expected.txt:
* platform/win/fast/block/margin-collapse/103-expected.txt:

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

5 years agoupdate-webkit’s --internal option is unused
mitz@apple.com [Sun, 25 Jan 2015 04:36:44 +0000 (04:36 +0000)]
update-webkit’s --internal option is unused
https://bugs.webkit.org/show_bug.cgi?id=140861

Reviewed by Anders Carlsson.

* Scripts/update-webkit: Removed the option.

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

5 years ago[WK2][Cocoa] Drop WKDiagnosticLoggingResultType defines
cdumez@apple.com [Sun, 25 Jan 2015 03:02:42 +0000 (03:02 +0000)]
[WK2][Cocoa] Drop WKDiagnosticLoggingResultType defines
https://bugs.webkit.org/show_bug.cgi?id=140838

Reviewed by Sam Weinig.

Drop WKDiagnosticLoggingResultType defines in _WKDiagnosticLoggingDelegate.h
header now that the client-side is correctly using
_WKDiagnosticLoggingResultType instead.

* UIProcess/API/Cocoa/_WKDiagnosticLoggingDelegate.h:

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

5 years ago[Win] Unreviewed gardening. Reactivating tests.
bfulgham@apple.com [Sun, 25 Jan 2015 02:55:39 +0000 (02:55 +0000)]
[Win] Unreviewed gardening. Reactivating tests.

Re-enable a series of tests that work properly on Windows. New baselines will be needed.

* platform/win/TestExpectations:
* platform/win/css1/box_properties/acid_test-expected.png: Added.
* platform/win/css1/box_properties/acid_test-expected.txt:
* platform/win/editing/input/caret-at-the-edge-of-input-expected.txt:
* platform/win/fast/block/float/float-avoidance-expected.txt:
* platform/win/fast/block/margin-collapse/103-expected.txt:
* platform/win/fast/css/box-shadow-and-border-radius-expected.png:
* platform/win/fast/dynamic/008-expected.txt: Added.
* platform/win/fast/forms/001-expected.png: Added.
* platform/win/fast/forms/001-expected.txt:
* platform/win/fast/forms/003-expected.txt:
* platform/win/fast/forms/004-expected.txt:
* platform/win/fast/forms/006-expected.png: Added.
* platform/win/fast/forms/007-expected.png: Added.
* platform/win/fast/forms/HTMLOptionElement_label01-expected.txt: Added.
* platform/win/fast/forms/HTMLOptionElement_label02-expected.txt: Added.
* platform/win/fast/forms/HTMLOptionElement_label03-expected.txt: Added.
* platform/win/fast/forms/HTMLOptionElement_label04-expected.txt: Added.
* platform/win/fast/forms/HTMLOptionElement_label05-expected.txt: Added.
* platform/win/fast/forms/HTMLOptionElement_label06-expected.txt: Removed property svn:executable.
* platform/win/fast/forms/HTMLOptionElement_label07-expected.txt: Added.
* platform/win/fast/forms/basic-buttons-expected.png: Added.
* platform/win/fast/forms/basic-buttons-expected.txt: Added.
* platform/win/fast/forms/basic-inputs-expected.png: Added.
* platform/win/fast/forms/basic-selects-expected.txt:
* platform/win/fast/forms/basic-textareas-expected.png: Added.
* platform/win/fast/forms/box-shadow-override-expected.png: Added.
* platform/win/fast/forms/box-shadow-override-expected.txt: Added.
* platform/win/fast/forms/button-positioned-expected.txt: Added.
* platform/win/fast/forms/button-sizes-expected.txt: Added.
* platform/win/fast/forms/button-style-color-expected.txt: Added.
* platform/win/fast/forms/button-text-transform-expected.txt: Added.
* platform/win/fast/forms/control-clip-overflow-expected.txt: Added.
* platform/win/fast/forms/control-restrict-line-height-expected.txt:
* platform/win/fast/forms/disabled-select-change-index-expected.txt: Added.
* platform/win/fast/forms/form-element-geometry-expected.txt: Added.
* platform/win/fast/forms/hidden-listbox-expected.txt: Added.
* platform/win/fast/forms/input-appearance-focus-expected.txt: Added.
* platform/win/fast/forms/input-double-click-selection-gap-bug-expected.txt: Added.
* platform/win/fast/forms/input-readonly-autoscroll-expected.txt: Added.
* platform/win/fast/forms/input-text-double-click-expected.txt: Added.
* platform/win/fast/forms/listbox-hit-test-zoomed-expected.txt: Added.
* platform/win/fast/forms/listbox-scrollbar-incremental-load-expected.txt: Added.
* platform/win/fast/forms/listbox-width-change-expected.txt: Added.
* platform/win/fast/forms/menulist-deselect-update-expected.txt:
* platform/win/fast/forms/menulist-no-overflow-expected.txt: Added.
* platform/win/fast/forms/number/number-appearance-rtl-expected.txt: Added.
* platform/win/fast/forms/number/number-appearance-spinbutton-disabled-readonly-expected.txt: Added.
* platform/win/fast/forms/number/number-appearance-spinbutton-layer-expected.txt: Added.
* platform/win/fast/forms/option-strip-whitespace-expected.txt: Added.
* platform/win/fast/forms/plaintext-mode-2-expected.txt: Added.
* platform/win/fast/forms/search: Added.
* platform/win/fast/forms/search/search-size-with-decorations-expected.txt: Added.
* platform/win/fast/forms/select-align-expected.txt: Added.
* platform/win/fast/forms/select-baseline-expected.txt: Added.
* platform/win/fast/forms/select-block-background-expected.txt: Added.
* platform/win/fast/forms/select-change-listbox-size-expected.txt: Added.
* platform/win/fast/forms/select-change-listbox-to-popup-expected.txt: Added.
* platform/win/fast/forms/select-dirty-parent-pref-widths-expected.txt: Added.
* platform/win/fast/forms/select-disabled-appearance-expected.txt: Added.
* platform/win/fast/forms/select-initial-position-expected.txt: Added.
* platform/win/fast/forms/select-item-background-clip-expected.txt: Added.
* platform/win/fast/forms/select-list-box-with-height-expected.txt: Added.
* platform/win/fast/forms/select-selected-expected.txt: Added.
* platform/win/fast/forms/select/optgroup-rendering-expected.txt:
* platform/win/fast/forms/tabbing-input-iframe-expected.txt: Added.
* platform/win/fast/frames: Added.
* platform/win/fast/frames/take-focus-from-iframe-expected.txt: Added.
* platform/win/fast/multicol/pagination: Added.
* platform/win/fast/multicol/pagination/LeftToRight-tb-hittest-expected.txt: Added.
* platform/win/fast/multicol/pagination/RightToLeft-rl-hittest-expected.txt: Added.
* platform/win/fast/overflow/entity-comment-in-textarea-expected.txt: Added.
* platform/win/fast/overflow/open-comment-in-textarea-expected.txt: Added.
* platform/win/fast/overflow/overflow-x-y-expected.txt: Added.
* platform/win/fast/table/003-expected.txt: Added.
* platform/win/fast/table/colspanMinWidth-expected.txt: Added.
* platform/win/fast/table/colspanMinWidth-vertical-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug103533-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug1188-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug12384-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug1318-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug18359-expected.txt:
* platform/win/tables/mozilla/bugs/bug2479-2-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug26178-expected.txt:
* platform/win/tables/mozilla/bugs/bug28928-expected.txt:
* platform/win/tables/mozilla/bugs/bug29326-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug30559-expected.txt:
* platform/win/tables/mozilla/bugs/bug30692-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug33855-expected.txt:
* platform/win/tables/mozilla/bugs/bug4382-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug4429-expected.txt:
* platform/win/tables/mozilla/bugs/bug44505-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug51037-expected.txt:
* platform/win/tables/mozilla/bugs/bug55545-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug92647-2-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug96334-expected.txt: Added.
* platform/win/tables/mozilla/bugs/bug99948-expected.txt: Added.
* platform/win/tables/mozilla/core: Added.
* platform/win/tables/mozilla/core/bloomberg-expected.txt: Added.
* platform/win/tables/mozilla/core/margins-expected.txt: Added.
* platform/win/tables/mozilla/dom/tableDom-expected.txt:
* platform/win/tables/mozilla/marvin/x_col_align_justify-expected.png: Added.
* platform/win/tables/mozilla_expected_failures/bugs/bug1725-expected.txt:
* platform/win/tables/mozilla_expected_failures/bugs/bug2479-5-expected.txt:
* platform/win/tables/mozilla_expected_failures/bugs/bug45621-expected.txt: Added.
* platform/win/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:

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

5 years agoDumpRenderTree needs to run with Windows native controls on Windows
bfulgham@apple.com [Sun, 25 Jan 2015 00:08:01 +0000 (00:08 +0000)]
DumpRenderTree needs to run with Windows native controls on Windows
https://bugs.webkit.org/show_bug.cgi?id=25592

Reviewed by Anders Carlsson.

* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebPreferencesToConsistentValues): Tell DRT to use native controls.
(prepareConsistentTestingEnvironment): Ditto.

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

5 years agoMove height/width implementation for use element from RenderSVGViewportContainer...
darin@apple.com [Sat, 24 Jan 2015 19:55:58 +0000 (19:55 +0000)]
Move height/width implementation for use element from RenderSVGViewportContainer to SVGUseElement
https://bugs.webkit.org/show_bug.cgi?id=140826

Reviewed by Anders Carlsson.

Source/WebCore:

Tests: svg/animations/use-animate-width-and-height.html
       svg/custom/use-attribute-invalidations.html
       svg/custom/use-dynamic-attribute-setting.html

This is an adaptation of work Rob Buis did in Blink:

    http://src.chromium.org/viewvc/blink?view=revision&revision=173258

The goal here is to reduce use of SVGElementInstance since we are going to
remove it. The tests Rob added to Blink (which I believe I improved a bit here)
meant we had to fix quite a few bugs in the implementation of the width/height
logic rather than just moving it. Even so, this could use even more test coverage
since there is separate logic for <symbol> and <svg>, three different code paths
(animation/attribute setting, initial creation, and one other), and also
distinct issues for attributes not set at all, attributes set to values that
can't be parsed, and attributes set with different units.

* rendering/svg/RenderSVGViewportContainer.cpp:
(WebCore::RenderSVGViewportContainer::calcViewport): Removed the old logic.

* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::SVGSVGElement): Use ASCIILiteral to more efficiently
create strings from ASCII literals here.
(WebCore::SVGSVGElement::parseAttribute): Default to 100%, not 0, when the
width or height property are either not set or not successfully parsed. Without
this change, one of the SVG tests starts failing.

* svg/SVGUseElement.cpp:
(WebCore::updateWidthAndHeight): Added. The tricky part here is that we have
to copy width and height attributes only if they were successfully parsed, and
also we need to copy the current animating values, not the original attribute
strings. Kind of messy, but I wanted to adapt Rob's solution for the time being,
rather than inventing something new.
(WebCore::SVGUseElement::svgAttributeChanged): Call updateWidthAndHeight.
This is used both when actual attribute changes occur and also when animation
changes the current value.
(WebCore::SVGUseElement::buildShadowAndInstanceTree): Call updateWidthAndHeight.
This is used when the shadow elements are first created.
(WebCore::SVGUseElement::expandUseElementsInShadowTree): Call updateWidthAndHeight.
This was in Rob's patch, but I am not sure we have sufficient test coverage.

LayoutTests:

* platform/mac/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.png: Old test
result was expecting failure. New one expects success.
* platform/mac/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Ditto.
* svg/animations/use-animate-width-and-height-expected.txt: Added.
* svg/animations/use-animate-width-and-height.html: Added.
* svg/custom/use-attribute-invalidations-expected.html: Added.
* svg/custom/use-attribute-invalidations.html: Added.
* svg/custom/use-dynamic-attribute-setting-expected.html: Added.
* svg/custom/use-dynamic-attribute-setting.html: Added.

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

5 years agoProvide implementation for WTF::DefaultHash<bool>
cdumez@apple.com [Sat, 24 Jan 2015 16:28:14 +0000 (16:28 +0000)]
Provide implementation for WTF::DefaultHash<bool>
https://bugs.webkit.org/show_bug.cgi?id=140848

Reviewed by Anders Carlsson.

Source/WebCore:

Use HashMap<std::pair<UChar32, bool>> type in Font.cpp for
CharacterFallbackMap instead of HashMap<std::pair<UChar32, unsigned>>.
It builds now that WTF::DefaultHash<bool> is defined in WTF.

* platform/graphics/Font.cpp:
(WebCore::Font::removeFromSystemFallbackCache):

Source/WTF:

Provide implementation for WTF::DefaultHash<bool> so that we can use
HashMap<std::pair<XXX, bool>> in the code base. Right now, we need to
use some integer type to work around the issue.

* wtf/HashFunctions.h:

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

5 years ago[Win] Unreviewed gardening. Add Windows baseline for
bfulgham@apple.com [Sat, 24 Jan 2015 07:05:45 +0000 (07:05 +0000)]
[Win] Unreviewed gardening. Add Windows baseline for
mouse-cursor-image-set.

* platform/win/fast/events/mouse-cursor-image-set-expected.txt: Added.

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

5 years ago[Win] Cursor assignment operator is skipping scale factor
bfulgham@apple.com [Sat, 24 Jan 2015 07:04:01 +0000 (07:04 +0000)]
[Win] Cursor assignment operator is skipping scale factor
https://bugs.webkit.org/show_bug.cgi?id=140852

Reviewed by Chris Dumez.

Found by fast/events/mouse-cursor-image-set.html

* platform/win/CursorWin.cpp:
(WebCore::Cursor::operator=): Make sure to also assign the
scale factor.

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

5 years ago[iOS] Attempt to fix the build after AVValueTiming.h moved
ddkilzer@apple.com [Sat, 24 Jan 2015 05:36:59 +0000 (05:36 +0000)]
[iOS] Attempt to fix the build after AVValueTiming.h moved

* platform/spi/ios/AVKitSPI.h: The AVValueTiming.h header moved
to an unexpected location, so work around it by using local SPI
declarations.

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

5 years agoTry to fix the build after r179056.
ap@apple.com [Sat, 24 Jan 2015 05:33:40 +0000 (05:33 +0000)]
Try to fix the build after r179056.

* platform/Cursor.h: (WebCore::Cursor::Cursor): Initialize dadat members in correct order.

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

5 years ago[Win] Cursor copy constructor does not initialize scale factor
bfulgham@apple.com [Sat, 24 Jan 2015 05:26:41 +0000 (05:26 +0000)]
[Win] Cursor copy constructor does not initialize scale factor
https://bugs.webkit.org/show_bug.cgi?id=140849

Reviewed by Antti Koivisto.

Found by fast/events/mouse-cursor-image-set.html

Make sure the scale factor is captured during copy construction. Also make sure
it is properly initialized in the default constructor, since it it used in the
Windows port for some default cursors.

* platform/CursorWin.h:
* platform/win/CursorWin.cpp:
(WebCore::Cursor::Cursor): Make sure copy constructor captures
the scale factor.

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

5 years agoAdd pointer/hover media queries
benjamin@webkit.org [Sat, 24 Jan 2015 04:15:56 +0000 (04:15 +0000)]
Add pointer/hover media queries
https://bugs.webkit.org/show_bug.cgi?id=134822

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-01-23
Reviewed by Antti Koivisto.

Source/WebCore:

Media Queries Level 4 introduces two types of Interaction Media Features:
"pointer" and "hover". Those media features are useful for adapting the design
to the type of input:
    http://dev.w3.org/csswg/mediaqueries-4/#mf-interaction

This implementation is trivial: just #ifdef the return value depending on
the support for touch events.
In the future we should move that to a client interface but let's start easy
for now.

Tests: fast/media/mq-any-hover-cssom.html
       fast/media/mq-any-hover-invalid.html
       fast/media/mq-any-hover-matchMedia.html
       fast/media/mq-any-hover-styling.html
       fast/media/mq-any-pointer-cssom.html
       fast/media/mq-any-pointer-invalid.html
       fast/media/mq-any-pointer-matchMedia.html
       fast/media/mq-any-pointer-styling.html
       fast/media/mq-hover-cssom.html
       fast/media/mq-hover-invalid.html
       fast/media/mq-hover-matchMedia.html
       fast/media/mq-hover-styling.html
       fast/media/mq-pointer-cssom.html
       fast/media/mq-pointer-invalid.html
       fast/media/mq-pointer-matchMedia.html
       fast/media/mq-pointer-styling.html

* css/CSSValueKeywords.in:
* css/MediaFeatureNames.h:
* css/MediaQueryEvaluator.cpp:
(WebCore::hoverMediaFeatureEval):
(WebCore::any_hoverMediaFeatureEval):
(WebCore::pointerMediaFeatureEval):
(WebCore::any_pointerMediaFeatureEval):
(WebCore::leastCapablePrimaryPointerDeviceType): Deleted.
* css/MediaQueryExp.cpp:
(WebCore::featureWithCSSValueID):
(WebCore::featureWithZeroOrOne):
(WebCore::featureWithoutValue):
* page/EventHandler.cpp:
(WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
(WebCore::EventHandler::fakeMouseMoveEventTimerFired):
* page/Settings.in:

LayoutTests:

* fast/media/mq-any-hover-cssom-expected.txt: Added.
* fast/media/mq-any-hover-cssom.html: Added.
* fast/media/mq-any-hover-invalid-expected.txt: Added.
* fast/media/mq-any-hover-invalid.html: Added.
* fast/media/mq-any-hover-matchMedia-expected.txt: Added.
* fast/media/mq-any-hover-matchMedia.html: Added.
* fast/media/mq-any-hover-styling-expected.txt: Added.
* fast/media/mq-any-hover-styling.html: Added.
* fast/media/mq-any-pointer-cssom-expected.txt: Added.
* fast/media/mq-any-pointer-cssom.html: Added.
* fast/media/mq-any-pointer-invalid-expected.txt: Added.
* fast/media/mq-any-pointer-invalid.html: Added.
* fast/media/mq-any-pointer-matchMedia-expected.txt: Added.
* fast/media/mq-any-pointer-matchMedia.html: Added.
* fast/media/mq-any-pointer-styling-expected.txt: Added.
* fast/media/mq-any-pointer-styling.html: Added.
* fast/media/mq-hover-cssom-expected.txt: Added.
* fast/media/mq-hover-cssom.html: Added.
* fast/media/mq-hover-invalid-expected.txt: Added.
* fast/media/mq-hover-invalid.html: Added.
* fast/media/mq-hover-matchMedia-expected.txt: Added.
* fast/media/mq-hover-matchMedia.html: Added.
* fast/media/mq-hover-styling-expected.txt: Added.
* fast/media/mq-hover-styling.html: Added.
* fast/media/mq-pointer-cssom-expected.txt: Added.
* fast/media/mq-pointer-cssom.html: Added.
* fast/media/mq-pointer-expected.txt:
* fast/media/mq-pointer-invalid-expected.txt: Added.
* fast/media/mq-pointer-invalid.html: Added.
* fast/media/mq-pointer-matchMedia-expected.txt: Added.
* fast/media/mq-pointer-matchMedia.html: Added.
* fast/media/mq-pointer-styling-expected.txt: Added.
* fast/media/mq-pointer-styling.html: Added.
* fast/media/mq-pointer.html:
* platform/ios-simulator/fast/media/mq-any-hover-matchMedia-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-any-hover-styling-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-any-pointer-matchMedia-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-any-pointer-styling-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-hover-matchMedia-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-hover-styling-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-pointer-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-pointer-matchMedia-expected.txt: Added.
* platform/ios-simulator/fast/media/mq-pointer-styling-expected.txt: Added.

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

5 years agoUnreviewed, rolling out r179051.
commit-queue@webkit.org [Sat, 24 Jan 2015 03:05:36 +0000 (03:05 +0000)]
Unreviewed, rolling out r179051.
https://bugs.webkit.org/show_bug.cgi?id=140850

broke the 32-bit build (Requested by thorton on #webkit).

Reverted changeset:

"[Mac][EME] Support ClearKey encryption with AES128-encrypted
HLS"
https://bugs.webkit.org/show_bug.cgi?id=140825
http://trac.webkit.org/changeset/179051

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

5 years agoWeb Inspector: Rename InjectedScriptHost::type to subtype
commit-queue@webkit.org [Sat, 24 Jan 2015 02:34:18 +0000 (02:34 +0000)]
Web Inspector: Rename InjectedScriptHost::type to subtype
https://bugs.webkit.org/show_bug.cgi?id=140841

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

Source/JavaScriptCore:

We were using this to set the subtype of an "object" type RemoteObject
so we should clean up the name and call it subtype.

* inspector/InjectedScriptHost.h:
* inspector/InjectedScriptSource.js:
* inspector/JSInjectedScriptHost.cpp:
(Inspector::JSInjectedScriptHost::subtype):
(Inspector::JSInjectedScriptHost::type): Deleted.
* inspector/JSInjectedScriptHost.h:
* inspector/JSInjectedScriptHostPrototype.cpp:
(Inspector::JSInjectedScriptHostPrototype::finishCreation):
(Inspector::jsInjectedScriptHostPrototypeFunctionSubtype):
(Inspector::jsInjectedScriptHostPrototypeFunctionType): Deleted.

Source/WebCore:

* inspector/WebInjectedScriptHost.cpp:
(WebCore::WebInjectedScriptHost::subtype):
(WebCore::WebInjectedScriptHost::type): Deleted.
* inspector/WebInjectedScriptHost.h:

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

5 years agoImplement cache size limit
antti@apple.com [Sat, 24 Jan 2015 02:27:31 +0000 (02:27 +0000)]
Implement cache size limit
https://bugs.webkit.org/show_bug.cgi?id=140844

Reviewed by Andreas Kling.

Prevent the cache from growing without bounds. The simple scheme implemented here
estimates the cache size from number of entries. When the estimated size exceeds
the maximum size we randomly clear 1/4 of the entries.

* NetworkProcess/cache/NetworkCacheStorage.h:
* NetworkProcess/cache/NetworkCacheStorageCocoa.mm:
(WebKit::NetworkCacheStorage::NetworkCacheStorage):
(WebKit::NetworkCacheStorage::initialize):
(WebKit::NetworkCacheStorage::removeEntry):
(WebKit::NetworkCacheStorage::store):
(WebKit::NetworkCacheStorage::setMaximumSize):
(WebKit::NetworkCacheStorage::clear):
(WebKit::NetworkCacheStorage::shrinkIfNeeded):
(WebKit::NetworkCacheStorage::initializeKeyFilter): Deleted.

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

5 years ago[Mac][EME] Support ClearKey encryption with AES128-encrypted HLS
jer.noble@apple.com [Sat, 24 Jan 2015 02:20:22 +0000 (02:20 +0000)]
[Mac][EME] Support ClearKey encryption with AES128-encrypted HLS
https://bugs.webkit.org/show_bug.cgi?id=140825

Reviewed by Eric Carlson.

Source/WebCore:

Test: http/tests/media/clearkey/clear-key-hls-aes128.html

Add support for ClearKey encryption when used with an AES-128 encrypted HLS stream.

* Modules/encryptedmedia/CDM.cpp:
(WebCore::installedCDMFactories): Add the CDMPrivateClearKey factory.
* Modules/encryptedmedia/CDMPrivateClearKey.cpp:
(WebCore::CDMPrivateClearKey::supportsKeySystem): Support the "org.w3c.clearkey" key system.
(WebCore::CDMPrivateClearKey::supportsKeySystemAndMimeType): Ditto.
(WebCore::CDMPrivateClearKey::supportsMIMEType): Ditto.
(WebCore::CDMPrivateClearKey::createSession): Create a CDMSessionClearKey.
* Modules/encryptedmedia/CDMPrivateClearKey.h:
(WebCore::CDMPrivateClearKey::create): Simple factory.
(WebCore::CDMPrivateClearKey::~CDMPrivateClearKey): Virtual destructor.
(WebCore::CDMPrivateClearKey::CDMPrivateClearKey): Simple destructor.
* Modules/encryptedmedia/CDMSessionClearKey.cpp: Added.
(WebCore::clearKeyVM): Static method returning the VM to be used by JSON parsing.
(WebCore::CDMSessionClearKey::CDMSessionClearKey): Simple constructor.
(WebCore::CDMSessionClearKey::~CDMSessionClearKey): Simple destructor.
(WebCore::CDMSessionClearKey::generateKeyRequest): Store the initData, ensure that it consists of a UTF8-encoded key
    URI, and return same.
(WebCore::CDMSessionClearKey::releaseKeys): Purged all cached keys.
(WebCore::CDMSessionClearKey::update): Parse raw JSON-encoded JWK keys, rejecting non-AES, non-oct keys.
(WebCore::CDMSessionClearKey::cachedKeyForKeyID): Return cached keys.
* Modules/encryptedmedia/CDMSessionClearKey.h:

Add support for the "org.w3c.clearkey" CDM to MediaPlayerPrivateAVFoundationObjC, and do so in a platform-agnostic
way by simply asking for raw key data from MediaPlayerClient when notified that a key has been added.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::keySystemIsSupported):
(WebCore::MediaPlayerPrivateAVFoundationObjC::supportsType):
(WebCore::MediaPlayerPrivateAVFoundationObjC::supportsKeySystem):
(WebCore::fulfillRequestWithKeyData): Added utility method.
(WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource):
(WebCore::MediaPlayerPrivateAVFoundationObjC::keyAdded):

Pipe a keyAdded() notification down to MediaPlayer and a cachedKeyForKeyId() request up to CDMSessionClearKey:

* Modules/encryptedmedia/MediaKeySession.cpp:
(WebCore::MediaKeySession::cachedKeyForKeyId):
(WebCore::MediaKeySession::addKeyTimerFired):
* Modules/encryptedmedia/MediaKeySession.h:
* Modules/encryptedmedia/MediaKeys.cpp:
(WebCore::MediaKeys::keyAdded):
(WebCore::MediaKeys::cachedKeyForKeyId):
* Modules/encryptedmedia/MediaKeys.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::keyAdded):
* html/HTMLMediaElement.h:
* platform/graphics/CDMSession.h:
(WebCore::CDMSession::cachedKeyForKeyID):
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::keyAdded):
(WebCore::MediaPlayer::cachedKeyForKeyId):
* platform/graphics/MediaPlayer.h:
(WebCore::MediaPlayerClient::mediaPlayerCachedKeyForKeyId):
* platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::keyAdded):

Add new files to project:

* WebCore.xcodeproj/project.pbxproj:
* CMakeLists.txt:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:

LayoutTests:

* http/tests/media/clearkey/clear-key-hls-aes128-expected.txt: Added.
* http/tests/media/clearkey/clear-key-hls-aes128.html: Added.
* http/tests/media/clearkey/support.js: Added.
(stringToUInt8Array):
(uInt8ArrayToString):
(base64EncodeUint8Array):
* http/tests/media/resources/hls/clearkey/crypt0.key: Added.
* http/tests/media/resources/hls/clearkey/iframe_index.m3u8: Added.
* http/tests/media/resources/hls/clearkey/main0.ts: Added.
* http/tests/media/resources/hls/clearkey/prog_index.m3u8: Added.
* media/video-test.js:
(waitForEventOnceOn):

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

5 years agoImplement system fonts FontDescription caching at RenderTheme level
cdumez@apple.com [Sat, 24 Jan 2015 01:41:30 +0000 (01:41 +0000)]
Implement system fonts FontDescription caching at RenderTheme level
https://bugs.webkit.org/show_bug.cgi?id=140840

Reviewed by Andreas Kling.

Implement system fonts FontDescription caching at RenderTheme level
instead of duplicating the logic in its subclasses for each platform.
This reduces code / logic duplication and reduces the amount of
platform-specific code. This will also make the refactoring at
Bug 140577 a lot easier.

The caching logic remains in RenderThemeIOS class for iOS because:
- It supports different system font values than all other platforms
- It requires cache invalidation in some cases while other platforms
  do not.

This patch is inspired by the following Blink revision:
https://src.chromium.org/viewvc/blink?view=rev&revision=184449

Test: fast/css/css2-system-fonts.html

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

5 years ago[Win] Unreviewed gardening: Correct some typos in Failure entries.
bfulgham@apple.com [Sat, 24 Jan 2015 01:38:10 +0000 (01:38 +0000)]
[Win] Unreviewed gardening: Correct some typos in Failure entries.

* platform/win/TestExpectations:

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

5 years agoSimple line layout: Refactor line wrapping logic.
zalan@apple.com [Sat, 24 Jan 2015 01:13:44 +0000 (01:13 +0000)]
Simple line layout: Refactor line wrapping logic.
https://bugs.webkit.org/show_bug.cgi?id=140834

Reviewed by Antti Koivisto.

Use a more readable structure to deal with wrapping logic.

No change in functionality.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::createLineRuns):

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

5 years agoSimple line layout: Use only FlowContents::nextTextFragment() to read fragments from...
zalan@apple.com [Sat, 24 Jan 2015 01:12:06 +0000 (01:12 +0000)]
Simple line layout: Use only FlowContents::nextTextFragment() to read fragments from the text flow.
https://bugs.webkit.org/show_bug.cgi?id=140842

Reviewed by Antti Koivisto.

This is in preparation to make FlowContents a content iterator class.

No change in functionality.

* rendering/SimpleLineLayout.cpp:
(WebCore::SimpleLineLayout::initializeNewLine):
* rendering/SimpleLineLayoutFlowContents.h:

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

5 years agotest-webkitpy: webkitpy.tool.commands.earlywarningsystem_unittest.EarlyWarningSystemT...
ddkilzer@apple.com [Sat, 24 Jan 2015 01:05:32 +0000 (01:05 +0000)]
test-webkitpy: webkitpy.tool.commands.earlywarningsystem_unittest.EarlyWarningSystemTest.test_ewses fails on EFL, GTK, Win ports
<http://webkit.org/b/140787>

Reviewed by Daniel Bates.

* Scripts/webkitpy/port/ios.py:
(IOSPort.determine_full_port_name): Instead of checking the type
of the current host, test if /usr/bin/xcrun exists before trying
to use it.

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

5 years ago[MSE] Implement Range Removal algorithm.
commit-queue@webkit.org [Sat, 24 Jan 2015 00:52:42 +0000 (00:52 +0000)]
[MSE] Implement Range Removal algorithm.
https://bugs.webkit.org/show_bug.cgi?id=140622.

Patch by Bartlomiej Gajda <b.gajda@samsung.com> on 2015-01-23
Reviewed by Jer Noble.

Source/WebCore:

This extract Range Removal algorithm (Editor's Draft version, bug:26316) from remove(),
to separate function to deal with old FIXME since bug in spec was resolved.
This should both guarantee good order of events, and prevent from switching to 'open' state
during end of stream.

Test: media/media-source/media-source-end-of-stream-readyState.html

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::setDurationInternal): update to use rangeRemoval(), not remove()
(WebCore::MediaSource::streamEndedWithError): remove FIXME, brigning back correct order of events.
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::remove): comments up to spec, extract rangeRemoval algorithm.
(WebCore::SourceBuffer::rangeRemoval):
(WebCore::SourceBuffer::removeTimerFired): comments up to spec.
* Modules/mediasource/SourceBuffer.h:

LayoutTests:

Added short test to check whether endOfStream incorrectly switches back
to 'open' state.

* media/media-source/media-source-end-of-stream-readyState.html: Added.
* media/media-source/media-source-end-of-stream-readyState-expected.txt: Added.

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

5 years agoFix the false positive build failures on the Windows buildbots
ossy@webkit.org [Sat, 24 Jan 2015 00:49:02 +0000 (00:49 +0000)]
Fix the false positive build failures on the Windows buildbots
https://bugs.webkit.org/show_bug.cgi?id=140819

Reviewed by Brent Fulgham.

Increase the build timeout (without producing output) to 2 hours for Windows bots,
the default 20 minutes is enough for others since they produce output during the build.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(BuildFactory.__init__):

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

5 years ago[Win] Test gardening. Mark a few failures after filing bugs.
bfulgham@apple.com [Sat, 24 Jan 2015 00:38:49 +0000 (00:38 +0000)]
[Win] Test gardening. Mark a few failures after filing bugs.

Also rebaseline a few tests.

* platform/win/TestExpectations:
* platform/win/accessibility/parent-element-expected.txt:
* platform/win/editing/input/caret-at-the-edge-of-input-expected.png: Added.
* platform/win/editing/input/caret-at-the-edge-of-input-expected.txt: Added.
* platform/win/js/dom/global-constructors-attributes-expected.txt:

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

5 years agoPerf dashboard always assigns the result of A/B testing with build request 1
rniwa@webkit.org [Sat, 24 Jan 2015 00:24:26 +0000 (00:24 +0000)]
Perf dashboard always assigns the result of A/B testing with build request 1
https://bugs.webkit.org/show_bug.cgi?id=140382

Reviewed by Darin Adler.

The bug was caused by the expression array_get($report, 'jobId') or array_get($report, 'buildRequest')
which always evaluated to 1 when the report contained jobId. Fixed the bug by cascading array_get instead.

Also fixed a typo as well as a bug that reports were never associated with builds.

* public/include/report-processor.php:
(ReportProcessor::process): Don't use "or" to find the non-null value since that always evaluates to 1
instead of the first non-null value.
(ReportProcessor::resolve_build_id): Fixed the typo by adding the missing "$this->".
(ReportProcessor::commit): Associate the report with the corresponding build as intended.

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

5 years agoUnreviewed typo fix. The prefix in triggerable_configurations is "trigconfig", not...
rniwa@webkit.org [Sat, 24 Jan 2015 00:21:15 +0000 (00:21 +0000)]
Unreviewed typo fix. The prefix in triggerable_configurations is "trigconfig", not "trigrepo".

* public/admin/tests.php:

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

5 years agoLayoutTests/js/script-tests/reentrant-caching.js crashing on 32 bit builds
msaboff@apple.com [Fri, 23 Jan 2015 23:48:14 +0000 (23:48 +0000)]
LayoutTests/js/script-tests/reentrant-caching.js crashing on 32 bit builds
https://bugs.webkit.org/show_bug.cgi?id=140843

Reviewed by Oliver Hunt.

When we are in vmEntryToJavaScript, we keep the stack pointer at an
alignment sutiable for pointing to a call frame header, which is the
alignment post making a call.  We adjust the sp when calling to JS code,
but don't adjust it before calling the out of stack handler.

* llint/LowLevelInterpreter32_64.asm:
Moved stack point down 8 bytes to get it aligned.

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

5 years agoSource/WebKit/win:
bfulgham@apple.com [Fri, 23 Jan 2015 23:34:08 +0000 (23:34 +0000)]
Source/WebKit/win:
[Win] Teach WebKit to provide IAccessible2 'get_language'
https://bugs.webkit.org/show_bug.cgi?id=140839

Reviewed by Dean Jackson.

* AccessibleBase.cpp:
(AccessibleBase::get_locale): Wrap the Webore::AccessibleObject::language
result in an IA2Locale structure to statisfy the IAccessible2 specification.

Tools:
[Win] Teach WebKit to provide IAccessible2 'get_language' and access AXLanguage
https://bugs.webkit.org/show_bug.cgi?id=140839

Reviewed by Dean Jackson.

* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::language): Retrieve the 'language' BSTR
from the IA2Locale structure and pass it to DRT.

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

5 years agoHit test returns incorrect results when performed in paginated content over the page...
enrica@apple.com [Fri, 23 Jan 2015 22:16:31 +0000 (22:16 +0000)]
Hit test returns incorrect results when performed in paginated content over the page gaps.
https://bugs.webkit.org/show_bug.cgi?id=140837
rdar://problem/17494390

Reviewed by Dave Hyatt.

Source/WebCore:

Tests: fast/multicol/pagination/LeftToRight-tb-hittest.html
       fast/multicol/pagination/RightToLeft-rl-hittest.html

When hittesting reaches the RenderView we need to check if we are
in paginated content and use the correct class to compute hittest results.

* rendering/RenderView.cpp:
(WebCore::RenderView::updateHitTestResult):

LayoutTests:

* fast/multicol/pagination/LeftToRight-tb-hittest-expected.txt: Added.
* fast/multicol/pagination/LeftToRight-tb-hittest.html: Added.
* fast/multicol/pagination/RightToLeft-rl-hittest-expected.txt: Added.
* fast/multicol/pagination/RightToLeft-rl-hittest.html: Added.

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

5 years ago[Win] Unreviewed gardening after landing r179024.
bfulgham@apple.com [Fri, 23 Jan 2015 21:57:23 +0000 (21:57 +0000)]
[Win] Unreviewed gardening after landing r179024.

Update Windows-specific accessibility tests and test expectations after making Windows AX output match Mac.
This allows us to share more Mac results.

* platform/win/TestExpectations:
* platform/win/accessibility/adjacent-continuations-cause-assertion-failure-expected.txt:
* platform/win/accessibility/aria-checkbox-text-expected.txt: Removed.
* platform/win/accessibility/aria-combobox-expected.txt:
* platform/win/accessibility/aria-fallback-roles-expected.txt: Removed.
* platform/win/accessibility/aria-hidden-expected.txt: Removed.
* platform/win/accessibility/aria-labelledby-on-input-expected.txt: Removed.
* platform/win/accessibility/aria-labelledby-overrides-aria-label-expected.txt:
* platform/win/accessibility/aria-labelledby-overrides-label-expected.txt: Removed.
* platform/win/accessibility/aria-list-and-listitem-expected.txt:
* platform/win/accessibility/aria-mappings-expected.txt: Added.
* platform/win/accessibility/aria-menubar-menuitems-expected.txt:
* platform/win/accessibility/aria-option-role-expected.txt:
* platform/win/accessibility/aria-presentational-role-expected.txt: Removed.
* platform/win/accessibility/aria-roles-expected.txt:
* platform/win/accessibility/aria-tab-role-on-buttons-expected.txt:
* platform/win/accessibility/aria-tab-roles-expected.txt:
* platform/win/accessibility/aria-toggle-button-with-title-expected.txt: Removed.
* platform/win/accessibility/canvas-description-and-role-expected.txt:
* platform/win/accessibility/canvas-fallback-content-expected.txt:
* platform/win/accessibility/css-content-attribute-expected.txt: Added.
* platform/win/accessibility/deleting-iframe-destroys-axcache-expected.txt:
* platform/win/accessibility/div-within-anchors-causes-crash-expected.txt:
* platform/win/accessibility/document-enabled-state-expected.txt:
* platform/win/accessibility/document-enabled-state.html:
* platform/win/accessibility/document-role-expected.txt:
* platform/win/accessibility/heading-elements-expected.txt:
* platform/win/accessibility/heading-elements.html:
* platform/win/accessibility/image-map1-expected.txt: Added.
* platform/win/accessibility/image-with-alt-and-map-expected.txt: Added.
* platform/win/accessibility/img-alt-attribute-expected.txt:
* platform/win/accessibility/img-alt-attribute.html:
* platform/win/accessibility/img-alt-tag-only-whitespace-expected.txt: Removed.
* platform/win/accessibility/img-aria-button-alt-tag-expected.txt: Removed.
* platform/win/accessibility/img-fallsback-to-title-expected.txt: Removed.
* platform/win/accessibility/input-image-alt-expected.txt: Removed.
* platform/win/accessibility/linked-elements-expected.txt:
* platform/win/accessibility/linked-elements.html:
* platform/win/accessibility/list-item-role-expected.txt:
* platform/win/accessibility/list-item-role.html:
* platform/win/accessibility/list-marker-role-expected.txt:
* platform/win/accessibility/list-marker-role.html:
* platform/win/accessibility/list-role-expected.txt:
* platform/win/accessibility/list-role.html:
* platform/win/accessibility/multiple-select-element-role-expected.txt:
* platform/win/accessibility/multiple-select-element-role.html:
* platform/win/accessibility/parent-element-expected.txt:
* platform/win/accessibility/parent-element.html:
* platform/win/accessibility/select-element-role-expected.txt:
* platform/win/accessibility/select-element-role.html:
* platform/win/accessibility/selection-and-focus-expected.txt:
* platform/win/accessibility/selection-and-focus.html:
* platform/win/accessibility/single-select-children.html:
* platform/win/accessibility/svg-image-expected.txt: Removed.
* platform/win/accessibility/text-role-expected.txt:
* platform/win/aria-labelledby-overrides-aria-label-actual.txt: Added.

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

5 years agoDocument should be a FontSelectorClient.
akling@apple.com [Fri, 23 Jan 2015 21:39:28 +0000 (21:39 +0000)]
Document should be a FontSelectorClient.
<https://webkit.org/b/140833>

Reviewed by Antti Koivisto.

Make Document a FontSelectorClient so it can listen to the invalidation
callbacks from FontSelector instead of having code in FontSelector that
calls out to Document on invalidation.

* css/CSSFontSelector.cpp:
(WebCore::CSSFontSelector::dispatchInvalidationCallbacks):
* dom/Document.cpp:
(WebCore::Document::fontsNeedUpdate):
(WebCore::Document::fontSelector):
(WebCore::Document::clearStyleResolver):
* dom/Document.h:

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