WebKit-https.git
6 years agoRe-ordering expectations.
mmaxfield@apple.com [Sat, 14 Feb 2015 16:05:34 +0000 (16:05 +0000)]
Re-ordering expectations.

Unreviewed.

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-02-14

* platform/mac/TestExpectations:

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

6 years ago[Mac] Cleanup after r177774
mmaxfield@apple.com [Sat, 14 Feb 2015 16:01:43 +0000 (16:01 +0000)]
[Mac] Cleanup after r177774
https://bugs.webkit.org/show_bug.cgi?id=141590

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2015-02-14
Reviewed by Zalan Bujtas.

Test expected results simply need to be updated.

* platform/mac/TestExpectations:
* platform/mac/accessibility/content-editable-as-textarea-expected.txt:
* platform/mac/accessibility/press-targets-center-point-expected.txt: Added.
* platform/mac/accessibility/table-attributes-expected.txt:
* platform/mac/accessibility/table-cell-spans-expected.txt:
* platform/mac/accessibility/table-detection-expected.txt:
* platform/mac/accessibility/table-one-cell-expected.txt:
* platform/mac/accessibility/table-sections-expected.txt:
* platform/mac/accessibility/table-with-rules-expected.txt:
* platform/mac/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt: Added.
* platform/mac/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt: Added.
* platform/mac/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt: Added.
* platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt:
* platform/mac/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt:
* platform/mac/css1/box_properties/acid_test-expected.txt:
* platform/mac/css2.1/t09-c5526c-display-00-e-expected.txt:
* platform/mac/editing/selection/5057506-2-expected.txt:
* platform/mac/editing/selection/5057506-expected.txt:
* platform/mac/editing/selection/5825350-2-expected.txt:
* platform/mac/editing/selection/mixed-editability-10-expected.txt:
* platform/mac/fast/block/basic/011-expected.txt:
* platform/mac/fast/block/basic/minheight-expected.txt:
* platform/mac/fast/css-grid-layout/grid-item-order-in-content-sized-columns-resolution-expected.txt: Added.
* platform/mac/fast/css/002-expected.txt:
* platform/mac/fast/forms/basic-textareas-expected.txt:
* platform/mac/fast/frames/frame-scrolling-attribute-expected.txt:
* platform/mac/fast/invalid/008-expected.txt:
* platform/mac/fast/overflow/003-expected.txt:
* platform/mac/fast/repaint/fixed-move-after-keyboard-scroll-expected.txt:
* platform/mac/fast/repaint/line-flow-with-floats-9-expected.txt:
* platform/mac/fast/repaint/selection-rl-expected.txt:
* platform/mac/fast/repaint/selection-ruby-rl-expected.txt: Added.
* platform/mac/fast/sub-pixel/inline-block-with-padding-expected.txt: Added.
* platform/mac/fast/table/col-and-colgroup-offsets-expected.txt: Added.
* platform/mac/fast/text/atsui-pointtooffset-calls-cg-expected.txt:
* platform/mac/fast/text/basic/generic-family-reset-expected.txt:
* platform/mac/fast/text/international/vertical-text-metrics-test-expected.txt:
* platform/mac/http/tests/navigation/javascriptlink-frames-expected.txt:
* platform/mac/js/dom/dom-static-property-for-in-iteration-expected.txt: Added.
* platform/mac/media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt: Added.
* platform/mac/platform/mac/accessibility/aria-columnrowheaders-expected.txt: Copied from LayoutTests/platform/mac/accessibility/table-cell-spans-expected.txt.
* platform/mac/platform/mac/accessibility/bounds-for-range-expected.txt: Added.
* platform/mac/platform/mac/accessibility/document-links-expected.txt: Added.
* platform/mac/platform/mac/accessibility/internal-link-anchors-expected.txt: Added.
* platform/mac/scrollbars/overflow-scrollbar-combinations-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
* platform/mac/svg/batik/text/textEffect2-expected.txt:
* platform/mac/svg/batik/text/textEffect3-expected.txt:
* platform/mac/svg/batik/text/textProperties-expected.txt:
* platform/mac/svg/custom/svg-fonts-in-html-expected.txt:
* platform/mac/svg/custom/text-filter-expected.txt:
* platform/mac/svg/filters/feColorMatrix-values-expected.txt: Added.
* platform/mac/svg/filters/filter-on-filter-for-text-expected.txt:
* platform/mac/svg/filters/filter-on-tspan-expected.txt:
* platform/mac/svg/filters/sourceAlpha-expected.txt:
* platform/mac/svg/repaint/text-mask-update-expected.txt: Added.
* platform/mac/tables/mozilla/bugs/bug131020-expected.txt:

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

6 years ago[buildbot] Enable run-api-tests on release Mac bots
ossy@webkit.org [Sat, 14 Feb 2015 08:56:28 +0000 (08:56 +0000)]
[buildbot] Enable run-api-tests on release Mac bots
https://bugs.webkit.org/show_bug.cgi?id=141518

Reviewed by Darin Adler.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunUnitTests):
(BuildFactory.__init__):
(TestFactory.__init__):
(BuildAndTestFactory.__init__):
(RunUnitTests.start): Deleted.
(unitTestsSupported): Deleted.

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

6 years agohttp/tests/xmlhttprequest/event-listener-gc.html is flaky
ap@apple.com [Sat, 14 Feb 2015 06:37:32 +0000 (06:37 +0000)]
http/tests/xmlhttprequest/event-listener-gc.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=33342

Reviewed by Darin Adler.

Instead of using a zero delay timer, which can be legitimately delayed for dozens
of milliseconds, perform the collection in a second load event handler. GC code
has changed so much that I cannot confirm that the test still verifies the fix,
however we collect after returning for the function and unwinding the stack, so it should.

Also, clear the JS variable for a good measure.

* http/tests/xmlhttprequest/event-listener-gc.html:

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

6 years agoUpdate fast/canvas/canvas-measureText-ideographicSpace.html after r177774
mmaxfield@apple.com [Sat, 14 Feb 2015 06:20:36 +0000 (06:20 +0000)]
Update fast/canvas/canvas-measureText-ideographicSpace.html after r177774
https://bugs.webkit.org/show_bug.cgi?id=141595

Reviewed by Zalan Bujtas.

* fast/canvas/canvas-measureText-ideographicSpace.html:
* platform/mac/TestExpectations:

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

6 years agoUnreviewed, EFL gardening. Mark font & text tests to failure.
gyuyoung.kim@samsung.com [Sat, 14 Feb 2015 05:16:19 +0000 (05:16 +0000)]
Unreviewed, EFL gardening. Mark font & text tests to failure.

* platform/efl/TestExpectations:

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

6 years agoAttempt to fix 32bits build after r180098
benjamin@webkit.org [Sat, 14 Feb 2015 05:16:02 +0000 (05:16 +0000)]
Attempt to fix 32bits build after r180098

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13

* jit/JITOperations.cpp:
* jit/JITOperations.h:
I copied the attribute from the MathObject version of that function when I moved
it over. DFG has no version of a function call taking those attributes.

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

6 years agoJSContext Inspector: Do not stash console messages for non-debuggable JSContext
commit-queue@webkit.org [Sat, 14 Feb 2015 04:59:56 +0000 (04:59 +0000)]
JSContext Inspector: Do not stash console messages for non-debuggable JSContext
https://bugs.webkit.org/show_bug.cgi?id=141589

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

Consider developer extras disabled for JSContext inspection if the
RemoteInspector server is not enabled (typically a non-debuggable
process rejected by webinspectord) or if remote debugging on the
JSContext was explicitly disabled via SPI.

When developer extras are disabled, console message will not be stashed.

* inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::developerExtrasEnabled):
* inspector/JSGlobalObjectInspectorController.h:

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

6 years agoUnreviewed, EFL gardening. 3 inspector tests are marked to failure.
gyuyoung.kim@samsung.com [Sat, 14 Feb 2015 04:53:25 +0000 (04:53 +0000)]
Unreviewed, EFL gardening. 3 inspector tests are marked to failure.

* platform/efl/TestExpectations:

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

6 years agoAdd a DFG node for the Pow Intrinsics
benjamin@webkit.org [Sat, 14 Feb 2015 04:20:21 +0000 (04:20 +0000)]
Add a DFG node for the Pow Intrinsics
https://bugs.webkit.org/show_bug.cgi?id=141540

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Filip Pizlo.

Add a DFG Node for PowIntrinsic. This patch covers the basic cases
need to avoid massive regression. I will iterate over the node to cover
the missing types.

With this patch I get the following progressions on benchmarks:
-LongSpider's math-partial-sums: +5%.
-Kraken's imaging-darkroom: +17%
-AsmBench's cray.c: +6.6%
-CompressionBench: +2.2% globally.

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
Cover a couple of trivial cases:
-If the exponent is zero, the result is always one, regardless of the base.
-If both arguments are constants, compute the result at compile time.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsic):
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):

* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
We only support 2 basic cases at this time:
-Math.pow(double, int)
-Math.pow(double, double).

I'll cover Math.pow(int, int) in a follow up.

* dfg/DFGNode.h:
(JSC::DFG::Node::convertToArithSqrt):
(JSC::DFG::Node::arithNodeFlags):
* dfg/DFGNodeType.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
(JSC::DFG::PredictionPropagationPhase::doDoubleVoting):
* dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::compileArithPowIntegerFastPath):
(JSC::DFG::SpeculativeJIT::compileArithPow):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
* dfg/DFGValidate.cpp:
(JSC::DFG::Validate::validate):
* ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileArithPow):
* ftl/FTLOutput.h:
(JSC::FTL::Output::doublePow):
(JSC::FTL::Output::doublePowi):
* jit/JITOperations.cpp:
* jit/JITOperations.h:
* runtime/MathObject.cpp:
(JSC::mathProtoFuncPow):
(JSC::isDenormal): Deleted.
(JSC::isEdgeCase): Deleted.
(JSC::mathPow): Deleted.

* tests/stress/math-pow-basics.js: Added.
* tests/stress/math-pow-integer-exponent-fastpath.js: Added.
* tests/stress/math-pow-nan-behaviors.js: Added.
* tests/stress/math-pow-with-constants.js: Added.
Start some basic testing of Math.pow().
Due to the various transform, the value change when the code tiers up,
I covered this by checking for approximate values.

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

6 years agoCrash closing a tab when a context or popup menu is open
simon.fraser@apple.com [Sat, 14 Feb 2015 01:25:07 +0000 (01:25 +0000)]
Crash closing a tab when a context or popup menu is open
https://bugs.webkit.org/show_bug.cgi?id=141582
rdar://problem/17700475

Reviewed by Anders Carlsson.

If a context menu or a popup menu is open when a tab is programmatically closed,
then we'd crash because both the WebContextMenuProxyMac/WebPopupMenuProxyMac
and the WebPageProxy would be deleted while still in use, via messages
handled via the nested event tracking runloop.

Fix by protecting those things while showing the popup. Also programmatically
dismiss the popup when closing the WebPageProxy.

* UIProcess/WebContextMenuProxy.h:
(WebKit::WebContextMenuProxy::cancelTracking):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::showPopupMenu): Clean up some EFL-related confusion that we don't need.
Retaining |this| will also retain m_activePopupMenu.
(WebKit::WebPageProxy::hidePopupMenu):
(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::resetState):
* UIProcess/WebPopupMenuProxy.h:
(WebKit::WebPopupMenuProxy::cancelTracking):
* UIProcess/mac/WebContextMenuProxyMac.h:
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::showContextMenu):
(WebKit::WebContextMenuProxyMac::cancelTracking):
* UIProcess/mac/WebPopupMenuProxyMac.h: For popups, we need to remember if we were
canceled to avoid trying to send events after closing.
* UIProcess/mac/WebPopupMenuProxyMac.mm:
(WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
(WebKit::WebPopupMenuProxyMac::showPopupMenu):
(WebKit::WebPopupMenuProxyMac::cancelTracking):

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

6 years ago[EFL] Enable bmalloc for EFL port
gyuyoung.kim@samsung.com [Sat, 14 Feb 2015 01:20:57 +0000 (01:20 +0000)]
[EFL] Enable bmalloc for EFL port
https://bugs.webkit.org/show_bug.cgi?id=141459

Reviewed by Csaba Osztrogon√°c.

* wtf/CMakeLists.txt: Remove TCSystemAlloc.cpp/h.
* wtf/FastMalloc.cpp: Enable BMALLOC for EFL port.

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

6 years agoUnreviewed build fix after r179591.
rniwa@webkit.org [Sat, 14 Feb 2015 01:09:16 +0000 (01:09 +0000)]
Unreviewed build fix after r179591.

* public/api/commits.php:

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

6 years agoThe status of a A/B testing request always eventually becomes "Failed"
rniwa@webkit.org [Sat, 14 Feb 2015 00:59:20 +0000 (00:59 +0000)]
The status of a A/B testing request always eventually becomes "Failed"
https://bugs.webkit.org/show_bug.cgi?id=141523

Reviewed by Andreas Kling.

The bug was caused by /api/build-requests always setting the status of a build request to 'failed' when
'failedIfNotCompleted' was sent by the buildbot sync'er.

Fixed the bug by only setting the status to 'failed' if it wasn't set to 'completed'.

* public/api/build-requests.php:
(main):

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

6 years agoRenderListItem resets its marker's style on style change even if the diff is StyleDif...
cdumez@apple.com [Sat, 14 Feb 2015 00:37:40 +0000 (00:37 +0000)]
RenderListItem resets its marker's style on style change even if the diff is StyleDifferenceEqual
https://bugs.webkit.org/show_bug.cgi?id=141572
<rdar://problem/19759818>

Reviewed by Simon Fraser.

Source/WebCore:

Do not unnecessarily update the marker's style in RenderListItem::styleDidChange()
if the RenderStyle diff is StyleDifferenceEqual. Doing so can cause unnecessary
layouts.

This was causing high cpu usage on
http://www.nokogiri.org/tutorials/searching_a_xml_html_document.html because there
is an animation that changes the style every second (but the diff is equal) and the
RenderListItem keeps resetting its marker's margin, which triggers a layout and the
RenderListMarker re-computes its margin during layout and updates its style again.

With this change, CPU usage on the page goes from 150% to 20%. There is only a style
recalc happening every second, no more relayouts and repaints.

Test: fast/repaint/list-item-equal-style-change-no-repaint.html

* rendering/RenderListItem.cpp:
(WebCore::RenderListItem::styleDidChange):

LayoutTests:

Add a layout test to make sure that an animation causing a style change
with StyleDifferenceEqual diff does not cause a repaint.

* fast/repaint/list-item-equal-style-change-no-repaint-expected.txt: Added.
* fast/repaint/list-item-equal-style-change-no-repaint.html: Added.

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

6 years agoFix the iOS build.
timothy_horton@apple.com [Sat, 14 Feb 2015 00:15:27 +0000 (00:15 +0000)]
Fix the iOS build.

* UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::removeSwipeSnapshot):
* UIProcess/mac/ViewGestureController.h:
This code is never used on iOS.

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

6 years agoMake WebCore::IOSurface have single ownership instead of refcounting
timothy_horton@apple.com [Sat, 14 Feb 2015 00:06:14 +0000 (00:06 +0000)]
Make WebCore::IOSurface have single ownership instead of refcounting
https://bugs.webkit.org/show_bug.cgi?id=141578

Reviewed by Anders Carlsson.

In the interests of making it harder to misuse and to make it more like
ImageBuffer, our IOSurface wrapper should have single ownership.

This will also allow future changes which depend on temporarily
consuming an IOSurface to more easily enforce correct usage.

* WebCore.exp.in:
* platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::addSurface):
(WebCore::IOSurfacePool::insertSurfaceIntoPool):
(WebCore::IOSurfacePool::tryEvictInUseSurface):
(WebCore::IOSurfacePool::tryEvictOldestCachedSurface):
(WebCore::IOSurfacePool::collectInUseSurfaces):
* platform/graphics/cg/IOSurfacePool.h:
* platform/graphics/cocoa/IOSurface.h:
* platform/graphics/cocoa/IOSurface.mm:
(IOSurface::create):
(IOSurface::createFromSendRight):
(IOSurface::createFromSurface):
(IOSurface::createFromImage):
Make IOSurface::create()s return a unique_ptr, and adjust everywhere.

* Shared/mac/RemoteLayerBackingStore.h:
* Shared/mac/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::Buffer::discard):
* UIProcess/API/mac/WKView.mm:
(-[WKView _takeViewSnapshot]):
* UIProcess/mac/ViewGestureController.h:
* UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):
* UIProcess/mac/ViewSnapshotStore.h:
* UIProcess/mac/ViewSnapshotStore.mm:
(WebKit::ViewSnapshot::create):
(WebKit::ViewSnapshot::ViewSnapshot):
(WebKit::ViewSnapshot::hasImage):
Adjust to the single-ownership model.

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

6 years agoAdditional emoji group support.
enrica@apple.com [Fri, 13 Feb 2015 23:44:02 +0000 (23:44 +0000)]
Additional emoji group support.
https://bugs.webkit.org/show_bug.cgi?id=141539
rdar://problem/19727527

Reviewed by Sam Weinig.

Source/WebCore:

Adding some new emoji ligatures.
Updated existing test to include the new sequences.

* platform/text/TextBreakIterator.cpp:
(WebCore::cursorMovementIterator):
* rendering/RenderText.cpp:
(WebCore::isEmojiGroupCandidate):

LayoutTests:

Updating test to reflect the new emoji ligatures supported.

* editing/deleting/delete-emoji-expected.txt:
* editing/deleting/delete-emoji.html:

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

6 years ago[iOS] Unreviewed build fix after r180076.
bfulgham@apple.com [Fri, 13 Feb 2015 23:27:16 +0000 (23:27 +0000)]
[iOS] Unreviewed build fix after r180076.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters): We do not
want to do this on iOS.
* UIProcess/WebPageProxy.h: No need to expose function
on iOS (only Mac).

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

6 years agoArithSqrt should not be conditional on supportsFloatingPointSqrt
benjamin@webkit.org [Fri, 13 Feb 2015 23:08:18 +0000 (23:08 +0000)]
ArithSqrt should not be conditional on supportsFloatingPointSqrt
https://bugs.webkit.org/show_bug.cgi?id=141546

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Geoffrey Garen and Filip Pizlo.

Just fallback to the function call in the DFG codegen.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsic):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileArithSqrt):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* tests/stress/math-sqrt-basics.js: Added.
Basic coverage.

* tests/stress/math-sqrt-basics-disable-architecture-specific-optimizations.js: Added.
Same tests but forcing the function call.

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

6 years agoREGRESSION(r180060) New js/regress-141098 test crashes when LLInt is disabled.
msaboff@apple.com [Fri, 13 Feb 2015 22:46:50 +0000 (22:46 +0000)]
REGRESSION(r180060) New js/regress-141098 test crashes when LLInt is disabled.
https://bugs.webkit.org/show_bug.cgi?id=141577

Reviewed by Benjamin Poulain.

Changed the prologue of the baseline JIT to check for stack space for all
types of code blocks.  Previously, it was only checking Function.  Now
it checks Program and Eval as well.

* jit/JIT.cpp:
(JSC::JIT::privateCompile):

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

6 years agoReally stop using export files.
achristensen@apple.com [Fri, 13 Feb 2015 22:40:34 +0000 (22:40 +0000)]
Really stop using export files.
https://bugs.webkit.org/show_bug.cgi?id=141521

Reviewed by Mark Rowe.

* Configurations/WebCore.xcconfig:
Don't use exported symbols files.
* Configurations/WebCore.unexp:
Added list of symbols not to export (needed by Xcode 5.0.2).

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

6 years agoSimplify ASSERT in lastRubyRun().
zalan@apple.com [Fri, 13 Feb 2015 22:18:36 +0000 (22:18 +0000)]
Simplify ASSERT in lastRubyRun().
https://bugs.webkit.org/show_bug.cgi?id=141574

Reviewed by Daniel Bates.

r180064 made some of the conditions in the ASSERT redundant.

Covered by existing tests.

* rendering/RenderRuby.cpp:
(WebCore::lastRubyRun):

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

6 years ago [Win] Document some debug asserts in Accessibility (Windows) tests.
bfulgham@apple.com [Fri, 13 Feb 2015 22:11:58 +0000 (22:11 +0000)]
   [Win] Document some debug asserts in Accessibility (Windows) tests.

* platform/win/TestExpectations:

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

6 years ago[Mac, iOS] Adjust pagination behavior for Mail.app printing use
bfulgham@apple.com [Fri, 13 Feb 2015 21:56:01 +0000 (21:56 +0000)]
[Mac, iOS] Adjust pagination behavior for Mail.app printing use
https://bugs.webkit.org/show_bug.cgi?id=141569
<rdar://problem/14912763>

Reviewed by Anders Carlsson.

Source/WebCore:

* page/Settings.in: Add new pagination setting flag.
* rendering/RenderBlockFlow.cpp:
(WebCore::messageContainerName): Added.
(WebCore::needsPaginationQuirk): Added.
(WebCore::RenderBlockFlow::adjustLinePositionForPagination): Don't move the message content
div to a new page when using this special printing mode.

Source/WebKit2:

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode): Add new flag.
(WebKit::WebPageCreationParameters::decode): Ditto.
* Shared/WebPageCreationParameters.h: Ditto.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters): Set new page construction flag.
* UIProcess/WebPageProxy.h:
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::paginationQuirkEnabled): Ask for new pagination flag
when running as a Mail client.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Set up pagination based on desired settings.

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

6 years agoGenerate incq instead of addq when the immediate value is one
benjamin@webkit.org [Fri, 13 Feb 2015 21:54:41 +0000 (21:54 +0000)]
Generate incq instead of addq when the immediate value is one
https://bugs.webkit.org/show_bug.cgi?id=141548

Patch by Benjamin Poulain <bpoulain@apple.com> on 2015-02-13
Reviewed by Gavin Barraclough.

JSC emits "addq #1 (rXX)" *a lot*.
This patch replace that by incq, which is one byte shorter
and is the adviced form.

Sunspider: +0.47%
Octane: +0.28%
Kraken: +0.44%
AsmBench, CompressionBench: neutral.

* assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::add64):
* assembler/X86Assembler.h:
(JSC::X86Assembler::incq_m):

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

6 years agoLittle clean up of Bytecode Generator's Label
benjamin@webkit.org [Fri, 13 Feb 2015 21:48:03 +0000 (21:48 +0000)]
Little clean up of Bytecode Generator's Label
https://bugs.webkit.org/show_bug.cgi?id=141557

Reviewed by Michael Saboff.

* bytecompiler/BytecodeGenerator.h:
* bytecompiler/BytecodeGenerator.cpp:
Label was a friend of BytecodeGenerator in order to access
m_instructions. There is no need for that, BytecodeGenerator
has a public getter.

* bytecompiler/Label.h:
(JSC::Label::Label):
(JSC::Label::setLocation):
(JSC::BytecodeGenerator::newLabel):
Make it explicit that the generator must exist.

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

6 years ago[iOS] DumpRenderTree.app fails to link due to undefined classes
dbates@webkit.org [Fri, 13 Feb 2015 21:25:43 +0000 (21:25 +0000)]
[iOS] DumpRenderTree.app fails to link due to undefined classes
<rdar://problem/19831228>

Following r179945, DumpRenderTree.app fails to link due to undefined symbols:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_WebEvent", referenced from:
      objc-class-ref in libDumpRenderTree.a(EventSendingController.o)
  "_OBJC_CLASS_$_WebUndefined", referenced from:
      objc-class-ref in libDumpRenderTree.a(ObjCController.o)

We need to export the classes WebScriptObject and WebEvent.

* bindings/objc/WebScriptObject.h:
* platform/ios/WebEvent.h:

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

6 years agoCachedResource::clearLoader() should self-destruct if nothing else retains the Cached...
akling@apple.com [Fri, 13 Feb 2015 20:30:32 +0000 (20:30 +0000)]
CachedResource::clearLoader() should self-destruct if nothing else retains the CachedResource.
<https://webkit.org/b/141568>
<rdar://problem/19800310>

Reviewed by Antti Koivisto.

Anything that may cause CachedResource::canDelete() to return true must also make sure
to call CachedResource::deleteIfPossible(), or we risk leaking the CachedResource.
This is because CachedResource employs an extremely convoluted lifetime mechanism that
depends on its presence in a number of collections, as well as internal counters and
state.

This is a speculative fix for a potential CachedResource leak that I'm not sure exists
in practice, but let's be good citizens here.

* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::clearLoader):

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

6 years agoWeb Inspector: support better git diff of localizedStrings.js
timothy@apple.com [Fri, 13 Feb 2015 19:57:46 +0000 (19:57 +0000)]
Web Inspector: support better git diff of localizedStrings.js
https://bugs.webkit.org/show_bug.cgi?id=137237

Reviewed by Joseph Pecoraro.

* .gitattributes: Added.

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

6 years agoAdd a move constructor and move assignment operator to Deque
andersca@apple.com [Fri, 13 Feb 2015 19:52:56 +0000 (19:52 +0000)]
Add a move constructor and move assignment operator to Deque
https://bugs.webkit.org/show_bug.cgi?id=141571

Reviewed by Andreas Kling.

Source/WTF:

* wtf/Deque.h:
(WTF::inlineCapacity>::Deque):
(WTF::=): Deleted.

Tools:

* TestWebKitAPI/Tests/WTF/Deque.cpp:
(TestWebKitAPI::TEST):

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

6 years ago[MSE][Mac] Crash at WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset...
jer.noble@apple.com [Fri, 13 Feb 2015 19:50:03 +0000 (19:50 +0000)]
[MSE][Mac] Crash at WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset + 2357
https://bugs.webkit.org/show_bug.cgi?id=141566
rdar://problem/19826075

Reviewed by Andreas Kling.

Null check m_mediaSource before dereferencing.

* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):

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

6 years agoREGRESSION (r174761): Invalid cast in WebCore::lastRubyRun / WebCore::RenderRubyAsBlo...
zalan@apple.com [Fri, 13 Feb 2015 19:28:46 +0000 (19:28 +0000)]
REGRESSION (r174761): Invalid cast in WebCore::lastRubyRun / WebCore::RenderRubyAsBlock::addChild
https://bugs.webkit.org/show_bug.cgi?id=137929
rdar://problem/18723492

Reviewed by Chris Dumez.

Ensure that the child renderer is a RenderRubyRun.

Source/WebCore:

Test: fast/ruby/crash-with-before-after-on-ruby.html

* rendering/RenderRuby.cpp:
(WebCore::lastRubyRun):

LayoutTests:

* fast/ruby/crash-with-before-after-on-ruby-expected.txt: Added.
* fast/ruby/crash-with-before-after-on-ruby.html: Added.

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

6 years agoCrashes under RenderLayer::hitTestLayer under determinePrimarySnapshottedPlugIn()
simon.fraser@apple.com [Fri, 13 Feb 2015 19:04:12 +0000 (19:04 +0000)]
Crashes under RenderLayer::hitTestLayer under determinePrimarySnapshottedPlugIn()
https://bugs.webkit.org/show_bug.cgi?id=141551

Reviewed by Zalan Bujtas.

It's possible for a layout to dirty the parent frame's state, via the calls to
ownerElement()->scheduleSetNeedsStyleRecalc() that RenderLayerCompositor does when
iframes toggle their compositing mode.

That could cause FrameView::updateLayoutAndStyleIfNeededRecursive() to fail to
leave all the frames in a clean state. Later on, we could enter hit testing,
which calls document().updateLayout() on each frame's document. Document::updateLayout()
does layout on all ancestor documents, so in the middle of hit testing, we could
layout a subframe (dirtying an ancestor frame), then layout another frame, which
would forcing that ancestor to be laid out while we're hit testing it, thus
corrupting the RenderLayer tree while it's being iterated over.

Fix by having FrameView::updateLayoutAndStyleIfNeededRecursive() do a second
layout after laying out subframes, which most of the time will be a no-op.

Also add a stronger assertion, that this frame and all subframes are clean
at the end of FrameView::updateLayoutAndStyleIfNeededRecursive() for the
main frame.

Various existing frames tests hit the new assertion if the code change is removed,
so this is covered by existing tests.

* page/FrameView.cpp:
(WebCore::FrameView::needsStyleRecalcOrLayout):
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
* page/FrameView.h:
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::willBeDestroyed):

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

6 years agodeterminePrimarySnapshottedPlugIn() should only traverse visible Frames
simon.fraser@apple.com [Fri, 13 Feb 2015 19:04:09 +0000 (19:04 +0000)]
determinePrimarySnapshottedPlugIn() should only traverse visible Frames
https://bugs.webkit.org/show_bug.cgi?id=141547
Part of rdar://problem/18445733.

Reviewed by Anders Carlsson.
Source/WebCore:

There's an expectation from clients that FrameView::updateLayoutAndStyleIfNeededRecursive()
updates layout in all frames, but it uses the widget tree, so only hits frames
that are parented via renderers (i.e. not display:none frames or their descendants).

Moving towards a future where we remove Widgets, fix by adding a FrameTree
traversal function that only finds rendered frames (those with an ownerRenderer).

Not testable.

* page/FrameTree.cpp:
(WebCore::FrameTree::firstRenderedChild):
(WebCore::FrameTree::nextRenderedSibling):
(WebCore::FrameTree::traverseNextRendered):
(printFrames):
* page/FrameTree.h:
* page/FrameView.cpp:
(WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):

Source/WebKit2:

Use FrameTree::traverseNextRendered() to avoid doing things in unrendered frames
which are not guaranteed to have been laid out.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):

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

6 years agorun-jsc-stress-tests --remote should skip profiler tests
ossy@webkit.org [Fri, 13 Feb 2015 19:01:54 +0000 (19:01 +0000)]
run-jsc-stress-tests --remote should skip profiler tests
https://bugs.webkit.org/show_bug.cgi?id=141470

Reviewed by Filip Pizlo.

* Scripts/run-jsc-stress-tests:

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

6 years agoGoogle doc spreadsheet reproducibly crashes when sorting
msaboff@apple.com [Fri, 13 Feb 2015 18:57:57 +0000 (18:57 +0000)]
Google doc spreadsheet reproducibly crashes when sorting
https://bugs.webkit.org/show_bug.cgi?id=141098

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Moved the stack check to before the callee registers are allocated in the
prologue() by movving it from the functionInitialization() macro.  This
way we can check the stack before moving the stack pointer, avoiding a
crash during a "call" instruction.  Before this change, we weren't even
checking the stack for program and eval execution.

Made a couple of supporting changes.

* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::llint_stack_check): We can't just go up one frame as we
may be processing an exception to an entry frame.

* llint/LowLevelInterpreter.asm:

* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
(llint_throw_from_slow_path_trampoline): Changed method to get the vm
from the code block to not use the codeBlock, since we may need to
continue from an exception in a native function.

LayoutTests:

New test.

* js/regress-141098-expected.txt: Added.
* js/regress-141098.html: Added.
* js/script-tests/regress-141098.js: Added.
(probeAndRecurse):

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

6 years agoAdd an initializer list constructor to Deque
andersca@apple.com [Fri, 13 Feb 2015 18:46:04 +0000 (18:46 +0000)]
Add an initializer list constructor to Deque
https://bugs.webkit.org/show_bug.cgi?id=141565

Reviewed by Andreas Kling.

Source/WTF:

* wtf/Deque.h:
(WTF::inlineCapacity>::Deque):

Tools:

* TestWebKitAPI/Tests/WTF/Deque.cpp:
(TestWebKitAPI::TEST):

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

6 years agoTimerBase::m_heapInsertionOrder calculation is racy
ap@apple.com [Fri, 13 Feb 2015 18:28:15 +0000 (18:28 +0000)]
TimerBase::m_heapInsertionOrder calculation is racy
https://bugs.webkit.org/show_bug.cgi?id=141554

Reviewed by Anders Carlsson.

Use an atomic increment.

* platform/Timer.cpp: (WebCore::TimerBase::setNextFireTime):

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

6 years agoRe-indent Deque.h
andersca@apple.com [Fri, 13 Feb 2015 18:05:46 +0000 (18:05 +0000)]
Re-indent Deque.h

Rubber-stamped by Antti Koivisto.

* wtf/Deque.h:

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

6 years agoWorkQueue should support concurrent queues
antti@apple.com [Fri, 13 Feb 2015 17:50:15 +0000 (17:50 +0000)]
WorkQueue should support concurrent queues
https://bugs.webkit.org/show_bug.cgi?id=141559

Reviewed by Anders Carlsson.

* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::DatabaseProcess):
* Platform/IPC/Connection.h:
* Platform/IPC/mac/ConnectionMac.mm:
(IPC::Connection::open):
* Platform/WorkQueue.cpp:
(WorkQueue::create):

    Also make create return a Ref.

(WorkQueue::WorkQueue):
* Platform/WorkQueue.h:

    Add queue type enum.

* Platform/efl/WorkQueueEfl.cpp:
(WorkQueue::platformInitialize):
* Platform/gtk/WorkQueueGtk.cpp:
(WorkQueue::platformInitialize):
* Platform/mac/WorkQueueMac.cpp:
(WorkQueue::platformInitialize):
* Shared/mac/SecItemShim.cpp:
(WebKit::SecItemShim::initializeConnection):
* Shared/mac/SecItemShim.h:
* UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::processLauncherWorkQueue):
* UIProcess/mac/SecItemShimProxy.cpp:
(WebKit::SecItemShimProxy::initializeConnection):
* UIProcess/mac/SecItemShimProxy.h:
* WebProcess/Plugins/PluginProcessConnectionManager.cpp:
(WebKit::PluginProcessConnectionManager::initializeConnection):
* WebProcess/Plugins/PluginProcessConnectionManager.h:
* WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::EventDispatcher):
(WebKit::EventDispatcher::initializeConnection):
* WebProcess/WebPage/EventDispatcher.h:
* WebProcess/WebPage/ViewUpdateDispatcher.h:

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

6 years ago[iOS] Refine GC behavior in response to process suspension and memory pressure.
akling@apple.com [Fri, 13 Feb 2015 17:38:50 +0000 (17:38 +0000)]
[iOS] Refine GC behavior in response to process suspension and memory pressure.
<https://webkit.org/b/141543>
<rdar://problem/19738024>

Reviewed by Geoffrey Garen.

Do an immediate full garbage collection when the web process is about to
be suspended (when another tab is moving to the foreground on iOS.)
This ensures that we make a best effort to reduce the process footprint
before we lose the ability to execute code.

When receiving a memory pressure warning, tell the garbage collector to
accelerate its next collection (by calling garbageCollectSoon().)
This gives us some confidence that a collection will happen within a
reasonable timeframe, but doesn't risk dooming us to a loop of endless
garbage collections.

* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):

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

6 years agoClean up the framework postprocessing phase
andersca@apple.com [Fri, 13 Feb 2015 17:35:53 +0000 (17:35 +0000)]
Clean up the framework postprocessing phase
https://bugs.webkit.org/show_bug.cgi?id=141544

Reviewed by Dan Bernstein.

Rename WK_API_AVAILABILITY_ENABLED to WK_FRAMEWORK_HEADER_POSTPROCESSING_ENABLED to better match what
it is we're doing. Also, rename the associated script. Remove a couple of now unnecessary #defines, and
change everything we can to be feature-based instead of OS based.

* Configurations/WebKit.xcconfig:
* Shared/API/Cocoa/WKFoundation.h:
* WebKit2.xcodeproj/project.pbxproj:
* mac/postprocess-framework-headers.sh: Renamed from Source/WebKit2/mac/rewrite-availability-macros.sh.

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

6 years agoAdd some RELEASE_ASSERTs to try to catch crashes in StyleResolver::loadPendingImages
antti@apple.com [Fri, 13 Feb 2015 17:32:14 +0000 (17:32 +0000)]
Add some RELEASE_ASSERTs to try to catch crashes in StyleResolver::loadPendingImages
https://bugs.webkit.org/show_bug.cgi?id=141561

Reviewed by Simon Fraser.

One possibility is that loads triggered by loadPendingImages end up synchronously destroying or re-entering
style resolver. Try to catch these in release builds.

* css/StyleResolver.cpp:
(WebCore::StyleResolver::~StyleResolver):
(WebCore::StyleResolver::styleForElement):
(WebCore::StyleResolver::styleForKeyframe):
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::loadPendingImages):
* css/StyleResolver.h:

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

6 years agoDiv having contentEditable and display:grid cannot be edited if it is empty.
changseok.oh@collabora.com [Fri, 13 Feb 2015 17:15:50 +0000 (17:15 +0000)]
Div having contentEditable and display:grid cannot be edited if it is empty.
https://bugs.webkit.org/show_bug.cgi?id=141465

Reviewed by Ryosuke Niwa.

Source/WebCore:

This bug is quite similar to webkit.org/b/141218. RenderGrid should be also treated as a candidate
for visible position as like RenderFlexibleBox. The only different situation between them is
that RenderGrid has a bug setting "0px" for logicalHeight when it is empty. RenderGrid should also have
a minimum height of a single line if it is editable as well as RenderFlexibleBox does.

Test: fast/events/key-events-in-editable-gridbox.html

* dom/Position.cpp:
(WebCore::Position::isCandidate):
(WebCore::Position::isRenderedCharacter):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutGridItems):

LayoutTests:

This tests if an editable grid box can be reedited after erasing all texts in it.

* fast/events/key-events-in-editable-gridbox-expected.txt: Added.
* fast/events/key-events-in-editable-gridbox.html: Added.

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

6 years ago[Win] Skip accessibility tests failing due to debug assertions.
bfulgham@apple.com [Fri, 13 Feb 2015 17:10:35 +0000 (17:10 +0000)]
[Win] Skip accessibility tests failing due to debug assertions.

* platform/win/TestExpectations:

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

6 years ago[buildbot] Remove buildJSCTool cruft from master.cfg
ossy@webkit.org [Fri, 13 Feb 2015 14:37:08 +0000 (14:37 +0000)]
[buildbot] Remove buildJSCTool cruft from cfg
https://bugs.webkit.org/show_bug.cgi?id=141513

Reviewed by Alexey Proskuryakov.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(RunJavaScriptCoreTests):
(RunJavaScriptCoreTests.start):
(RunWebKitTests):
(RunWebKitTests.start):
(TestFactory.__init__):
(TestLeaksFactory.__init__):
(RunJavaScriptCoreTests.__init__): Deleted.
(RunWebKitTests.__init__): Deleted.

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

6 years agoREGRESSION (r176262): Invalid cast in WebCore`WebCore::RootInlineBox::selectionTop
zalan@apple.com [Fri, 13 Feb 2015 12:48:09 +0000 (12:48 +0000)]
REGRESSION (r176262): Invalid cast in WebCore`WebCore::RootInlineBox::selectionTop
https://bugs.webkit.org/show_bug.cgi?id=138992

Reviewed by Dave Hyatt.

RenderRubyText requires the ancestor chain to be (RenderRubyAsInline | RenderRubyAsBlock) -> RenderRubyRun -> RenderRubyText.
This patch ensures that we create RenderRubyText for an <rt> element only when
the expected ancestor chain is guaranteed.

Source/WebCore:

Test: fast/ruby/crash-when-ruby-is-set-to-inline-block.html

* rendering/RenderElement.cpp:
(WebCore::RenderElement::createFor): treat inline-block <ruby> as block.
* rendering/RenderObject.h:
(WebCore::RenderObject::isRubyInline):
(WebCore::RenderObject::isRubyBlock):
(WebCore::RenderObject::isRuby): Deleted.
* rendering/RenderRuby.cpp:
(WebCore::isAnonymousRubyInlineBlock):
* rendering/RenderRuby.h: add support for is<RenderRubyAsBlock>(renderer) and for is<RenderRubyAsInline>(renderer)
The isRuby() method does not follow the is*() -> maps to one class pattern.
(WebCore::isRuby):
* rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::addChild):
(WebCore::RenderRubyRun::staticCreateRubyRun):

LayoutTests:

* fast/ruby/crash-when-ruby-is-set-to-inline-block-expected.txt: Added.
* fast/ruby/crash-when-ruby-is-set-to-inline-block.html: Added.

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

6 years ago[BMalloc] Add a FIXME comment for memory alignas
gyuyoung.kim@samsung.com [Fri, 13 Feb 2015 09:43:26 +0000 (09:43 +0000)]
[BMalloc] Add a FIXME comment for memory alignas
https://bugs.webkit.org/show_bug.cgi?id=141556

Reviewed by Csaba Osztrogon√°c.

* bmalloc/Chunk.h: Add a FIXME comment.
* bmalloc/LargeChunk.h: ditto.

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

6 years agoFix the gperf related build issue on the WinCairo bot
ossy@webkit.org [Fri, 13 Feb 2015 09:19:04 +0000 (09:19 +0000)]
Fix the gperf related build issue on the WinCairo bot
https://bugs.webkit.org/show_bug.cgi?id=141507

Reviewed by Alex Christensen.

* platform/ColorData.gperf: Modified property svn:eol-style.

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

6 years agoUnreviewed, remove empty directories.
ossy@webkit.org [Fri, 13 Feb 2015 09:15:14 +0000 (09:15 +0000)]
Unreviewed, remove empty directories.

.:

* ManualTests/qt: Removed.

Source/WebCore:

* loader/icon/wince: Removed.
* platform/graphics/wince: Removed.
* storage/wince: Removed.

Tools:

* DumpRenderTree/gtk: Removed.
* DumpRenderTree/gtk/fonts: Removed.
* DumpRenderTree/unix: Removed.
* DumpRenderTree/unix/TestNetscapePlugin: Removed.
* GtkLauncher: Removed.
* TestWebKitAPI/Tests/WebKitGtk: Removed.
* TestWebKitAPI/Tests/WebKitGtk/resources: Removed.
* WebKitTestRunner/WebKitTestRunnerAppTests: Removed.
* WebKitTestRunner/WebKitTestRunnerAppTests/en.lproj: Removed.

Websites/perf.webkit.org:

* public/data: Removed.

Websites/webkit.org:

* blog/wp-includes/js/codepress: Removed.

LayoutTests:

* fast/forms/date-multiple-fields: Removed.
* fast/forms/datetimelocal-multiple-fields: Removed.
* fast/forms/month-multiple-fields: Removed.
* fast/forms/time-multiple-fields: Removed.
* fast/forms/week-multiple-fields: Removed.
* fast/js: Removed.
* http/tests/inspector-enabled: Removed.
* http/tests/inspector-enabled/resources: Removed.
* http/tests/inspector/appcache: Removed.
* http/tests/inspector/appcache/resources: Removed.
* http/tests/inspector/audits: Removed.
* http/tests/inspector/audits/resources: Removed.
* http/tests/inspector/indexeddb: Removed.
* http/tests/inspector/indexeddb/resources: Removed.
* http/tests/inspector/network: Removed.
* http/tests/inspector/network/resources: Removed.
* http/tests/inspector/resource-tree: Removed.
* http/tests/inspector/resource-tree/resources: Removed.
* http/tests/inspector/resources: Removed.
* http/tests/inspector/search: Removed.
* http/tests/inspector/search/resources: Removed.
* http/tests/inspector/stacktraces: Removed.
* http/tests/inspector/stacktraces/resources: Removed.
* http/tests/inspector/styles: Removed.
* http/tests/inspector/styles/resources: Removed.
* http/tests/inspector/websocket: Removed.
* http/tests/webgl/1.0.1: Removed.
* inspector-protocol/heap-profiler: Removed.
* inspector-protocol/heap-profiler/resources: Removed.
* inspector/console: Removed.
* inspector/console/resources: Removed.
* inspector/elements: Removed.
* inspector/elements/resources: Removed.
* inspector/profiler: Removed.
* inspector/runtime: Removed.
* inspector/styles: Removed.
* inspector/styles/resources: Removed.
* js/regress/resources: Removed.
* media/track/opera/track/webvtt/rendering/reftest/media: Removed.
* networkinformation: Removed.
* networkinformation/resources: Removed.
* networkinformation/script-tests: Removed.
* platform/efl-wk2/dom: Removed.
* platform/efl-wk2/dom/xhtml: Removed.
* platform/efl-wk2/inspector: Removed.
* platform/efl-wk2/tables: Removed.
* platform/efl-wk2/tables/mozilla: Removed.
* platform/gtk-wk1: Removed.
* platform/gtk-wk1/fast: Removed.
* platform/gtk-wk1/fast/css: Removed.
* platform/gtk-wk1/fast/loader: Removed.
* platform/gtk-wk1/fast/media: Removed.
* platform/gtk-wk1/fast/writing-mode: Removed.
* platform/gtk-wk1/http: Removed.
* platform/gtk-wk1/http/tests: Removed.
* platform/gtk-wk1/http/tests/cache: Removed.
* platform/gtk-wk1/http/tests/security: Removed.
* platform/gtk-wk1/http/tests/security/contentSecurityPolicy: Removed.
* platform/gtk-wk1/js: Removed.
* platform/gtk-wk1/js/dom: Removed.
* platform/gtk-wk1/loader: Removed.
* platform/gtk-wk1/scrollingcoordinator: Removed.
* platform/gtk-wk2/accessibility: Removed.
* platform/gtk-wk2/fast: Removed.
* platform/gtk-wk2/fast/events: Removed.
* platform/gtk-wk2/http: Removed.
* platform/gtk-wk2/http/tests: Removed.
* platform/gtk-wk2/http/tests/loading: Removed.
* platform/gtk-wk2/http/tests/misc: Removed.
* platform/gtk-wk2/http/tests/misc/authentication-redirect-1: Removed.
* platform/gtk-wk2/http/tests/misc/authentication-redirect-2: Removed.
* platform/gtk-wk2/http/tests/misc/authentication-redirect-4: Removed.
* platform/gtk-wk2/http/tests/security: Removed.
* platform/gtk-wk2/http/tests/security/401-logout: Removed.
* platform/gtk-wk2/http/tests/xmlhttprequest: Removed.
* platform/gtk-wk2/js: Removed.
* platform/gtk-wk2/js/dom: Removed.
* platform/gtk-wk2/plugins: Removed.
* platform/gtk-wk2/plugins/npruntime: Removed.
* platform/gtk/platform: Removed.
* platform/ios-simulator/editing/editability: Removed.
* platform/ios-simulator/editing/input: Removed.
* platform/ios-simulator/editing/secure-input: Removed.
* platform/ios-simulator/editing/shadow: Removed.
* platform/ios-simulator/editing/spelling: Removed.
* platform/ios-simulator/editing/text-iterator: Removed.
* platform/ios-simulator/editing/undo: Removed.
* platform/ios-simulator/editing/unsupported-content: Removed.
* platform/ios-simulator/fast/canvas/webgl: Removed.
* platform/ios-simulator/fast/css-grid-layout: Removed.
* platform/ios-simulator/fast/css/content: Removed.
* platform/ios-simulator/fast/css/image-orientation: Removed.
* platform/ios-simulator/fast/css/image-resolution: Removed.
* platform/ios-simulator/fast/css/style-scoped: Removed.
* platform/ios-simulator/fast/css3-text/css3-text-indent: Removed.
* platform/ios-simulator/fast/css3-text/css3-text-indent/getComputedStyle: Removed.
* platform/ios-simulator/fast/dom/Document: Removed.
* platform/ios-simulator/fast/dom/Document/CaretRangeFromPoint: Removed.
* platform/ios-simulator/fast/dom/Geolocation: Removed.
* platform/ios-simulator/fast/dom/HTMLAnchorElement: Removed.
* platform/ios-simulator/fast/dom/HTMLImageElement/sizes: Removed.
* platform/ios-simulator/fast/dom/MutationObserver: Removed.
* platform/ios-simulator/fast/dom/NavigatorContentUtils: Removed.
* platform/ios-simulator/fast/dom/Orientation: Removed.
* platform/ios-simulator/fast/dom/custom: Removed.
* platform/ios-simulator/fast/events/constructors: Removed.
* platform/ios-simulator/fast/events/scoped: Removed.
* platform/iphone-simulator: Removed.
* platform/iphone-simulator/fast: Removed.
* platform/iphone-simulator/fast/events: Removed.
* platform/mac-mavericks/fast/borders: Removed.
* platform/mac-wk2/fast/writing-mode: Removed.
* platform/mac-wk2/http/tests/plugins: Removed.
* platform/mac-wk2/js: Removed.
* platform/mac-wk2/js/dom: Removed.
* platform/mac-wk2/tiled-drawing/fixed: Removed.
* platform/mac-wk2/tiled-drawing/fixed-background: Removed.
* platform/mac-wk2/tiled-drawing/sticky: Removed.
* platform/mac/dom: Removed.
* platform/mac/dom/xhtml: Removed.
* platform/mac/fast/backgrounds/resources: Removed.
* platform/mac/media/W3C/audio: Removed.
* platform/mac/media/W3C/audio/canPlayType: Removed.
* platform/mac/platform/mac-wk2: Removed.
* platform/mac/platform/mac/editing/spelling: Removed.
* platform/mac/platform/mac/fast/forms: Removed.
* platform/win-wk2: Removed.
* platform/win-wk2/fast: Removed.
* platform/win-wk2/http: Removed.
* platform/win-wk2/platform: Removed.
* platform/win-wk2/svg: Removed.
* platform/win/canvas: Removed.
* platform/win/fast/xmlhttprequest: Removed.
* platform/win/loader: Removed.
* platform/wk2/tables: Removed.

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

6 years agoRemove Windows cruft from Tools/Scripts/build-webkittestrunner
ossy@webkit.org [Fri, 13 Feb 2015 08:48:54 +0000 (08:48 +0000)]
Remove Windows cruft from Tools/Scripts/build-webkittestrunner
https://bugs.webkit.org/show_bug.cgi?id=141519

Reviewed by Alexey Proskuryakov.

* Scripts/build-webkittestrunner:

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

6 years agoCrash removing RemoteLayerTreeDisplayRefreshMonitor from the drawing area's map
timothy_horton@apple.com [Fri, 13 Feb 2015 06:48:03 +0000 (06:48 +0000)]
Crash removing RemoteLayerTreeDisplayRefreshMonitor from the drawing area's map
https://bugs.webkit.org/show_bug.cgi?id=141545
<rdar://problem/17712200>

Reviewed by Simon Fraser.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::windowScreenDidChange):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
windowScreenDidChange should take uint32_t, since that's what PlatformDisplayID is.

* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
RemoteLayerTreeDisplayRefreshMonitor is driven by the page's
RemoteLayerTreeDrawingArea. Because of this, we cannot have the same
sharing of DisplayRefreshMonitors that other platforms use.
In order to ensure that we get a unique DisplayRefreshMonitor
per-DrawingArea, give each page a unique DisplayID derived
from WebPage's unique ID.

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

6 years ago[Win] Mark some debug assertions.
bfulgham@apple.com [Fri, 13 Feb 2015 06:03:00 +0000 (06:03 +0000)]
[Win] Mark some debug assertions.

* platform/win/TestExpectations: Mark several debug assertions so
we don't end testing early.

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

6 years ago[Win] More media rebaselining.
bfulgham@apple.com [Fri, 13 Feb 2015 05:53:27 +0000 (05:53 +0000)]
[Win] More media rebaselining.

* platform/win/TestExpectations:
* platform/win/fast/css/focus-ring-exists-for-search-field-expected.png: Added.
* platform/win/fast/css/focus-ring-exists-for-search-field-expected.txt: Added.

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

6 years agoCrashes under detectItemAroundHitTestResult when DataDetectors is not available
timothy_horton@apple.com [Fri, 13 Feb 2015 03:59:28 +0000 (03:59 +0000)]
Crashes under detectItemAroundHitTestResult when DataDetectors is not available
https://bugs.webkit.org/show_bug.cgi?id=141549
<rdar://problem/19180955>

Reviewed by Dan Bernstein.

* editing/mac/DataDetection.mm:
(WebCore::DataDetection::detectItemAroundHitTestResult):
Bail out from data detection if either of the relevant frameworks aren't loaded.

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

6 years ago[EFL] Need to have new baseline for some tests of fast/ruby since r172874
commit-queue@webkit.org [Fri, 13 Feb 2015 02:30:59 +0000 (02:30 +0000)]
[EFL] Need to have new baseline for some tests of fast/ruby since r172874
https://bugs.webkit.org/show_bug.cgi?id=141462

Unreviewed, EFL gardening. Rebaseline after r172874

Patch by Hunseop Jeong <hs85.jeong@samsung.com> on 2015-02-12

* platform/efl/TestExpectations:
* platform/efl/fast/ruby/bopomofo-expected.png: Added.
* platform/efl/fast/ruby/bopomofo-expected.txt:
* platform/efl/fast/ruby/bopomofo-letter-spacing-expected.png: Added.
* platform/efl/fast/ruby/bopomofo-letter-spacing-expected.txt:
* platform/efl/fast/ruby/bopomofo-rl-expected.png: Added.
* platform/efl/fast/ruby/bopomofo-rl-expected.txt:
* platform/efl/fast/ruby/ruby-beforeafter-expected.png:
* platform/efl/fast/ruby/ruby-beforeafter-expected.txt:
* platform/efl/fast/ruby/ruby-length-expected.png:
* platform/efl/fast/ruby/ruby-length-expected.txt:
* platform/efl/fast/ruby/ruby-run-break-expected.png:
* platform/efl/fast/ruby/ruby-run-break-expected.txt:
* platform/efl/fast/ruby/ruby-runs-expected.png:
* platform/efl/fast/ruby/ruby-runs-expected.txt:
* platform/efl/fast/ruby/ruby-runs-spans-expected.png:
* platform/efl/fast/ruby/ruby-runs-spans-expected.txt:
* platform/efl/fast/ruby/ruby-trailing-expected.png:
* platform/efl/fast/ruby/ruby-trailing-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-rt-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-rt-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-text1-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-text1-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-text2-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-text2-expected.txt:
* platform/efl/fast/ruby/rubyDOM-insert-text3-expected.png:
* platform/efl/fast/ruby/rubyDOM-insert-text3-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-rt1-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-rt1-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-rt2-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-rt2-expected.txt:
* platform/efl/fast/ruby/rubyDOM-remove-text1-expected.png:
* platform/efl/fast/ruby/rubyDOM-remove-text1-expected.txt:

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

6 years ago[iOS Media] Audio should hide timeline scrubber until playback starts
dino@apple.com [Fri, 13 Feb 2015 01:04:12 +0000 (01:04 +0000)]
[iOS Media] Audio should hide timeline scrubber until playback starts
https://bugs.webkit.org/show_bug.cgi?id=141542
<rdar://problem/19820685>

Reviewed by Eric Carlson.

We regressed from the system behaviour in iOS 7, where the timeline
scrubber for an audio element is not shown until the user starts
playback.

* Modules/mediacontrols/mediaControlsiOS.css:
(video::-webkit-media-controls-panel): Fix the alignment of the flexbox.
(audio::-webkit-media-controls-status-display): Add the style for the status display.
* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.configureInlineControls): Start hidden if we are an <audio>.
(ControllerIOS.prototype.configureFullScreenControls): Drive by comment change.
(ControllerIOS.prototype.setPlaying): Unhide the timeline.

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

6 years ago[Win] Unreviewed updates to test expectations to reduce failures on Windows bots.
bfulgham@apple.com [Fri, 13 Feb 2015 01:00:17 +0000 (01:00 +0000)]
[Win] Unreviewed updates to test expectations to reduce failures on Windows bots.

* platform/win/TestExpectations: Mark a number of time-outs for Media tests.

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

6 years agoCrash under RemoteLayerTreeDrawingArea::flushLayers() when closing a tab
timothy_horton@apple.com [Fri, 13 Feb 2015 00:49:59 +0000 (00:49 +0000)]
Crash under RemoteLayerTreeDrawingArea::flushLayers() when closing a tab
https://bugs.webkit.org/show_bug.cgi?id=141541

Reviewed by Benjamin Poulain.

* WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
The WebPage pointer can become stale between when it is retrieved
and dereferenced. Retrieve it by ID inside the dispatch_async block
instead of outside of it.

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

6 years agoRe-baselines after http://trac.webkit.org/changeset/180018
bdakin@apple.com [Fri, 13 Feb 2015 00:13:23 +0000 (00:13 +0000)]
Re-baselines after trac.webkit.org/changeset/180018

* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-div-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-div-latched-mainframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-iframe-latched-mainframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-mainframe-with-handler-expected.txt:
* platform/mac-wk2/tiled-drawing/scrolling/fast-scroll-select-latched-select-with-handler-expected.txt:

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

6 years agoDrop the quirks-mode exception for CSS MIME types
cdumez@apple.com [Thu, 12 Feb 2015 23:23:55 +0000 (23:23 +0000)]
Drop the quirks-mode exception for CSS MIME types
https://bugs.webkit.org/show_bug.cgi?id=141501

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Drop the quirks-mode exception for CSS MIME types.
This matches Firefox's behavior.

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

Tests:
- http/tests/misc/css-accept-any-type.html
- http/tests/security/cross-origin-css.html

* css/StyleSheetContents.cpp:
(WebCore::StyleSheetContents::parseAuthorStyleSheet):
* dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::setCSSStyleSheet):
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::cachedResourceContent):
* loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::sheetText):
(WebCore::CachedCSSStyleSheet::canUseSheet):
* loader/cache/CachedCSSStyleSheet.h:

LayoutTests:

Update a couple of layout tests now that we dropped the quirks-mode
exception for CSS MIME types.

* http/tests/misc/css-accept-any-type-expected.txt:
* http/tests/misc/css-accept-any-type.html:
* http/tests/security/cross-origin-css-expected.txt:
* http/tests/security/cross-origin-css.html:

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

6 years agoREGRESSION: Should not send wheel events with a delta of 0
bdakin@apple.com [Thu, 12 Feb 2015 23:09:05 +0000 (23:09 +0000)]
REGRESSION: Should not send wheel events with a delta of 0
https://bugs.webkit.org/show_bug.cgi?id=141537
-and corresponding-
rdar://problem/18903118

Reviewed by Simon Fraser.

Source/WebCore:

This code should not have been removed entirely to accommodate rubber-banding, it
just needs to return false instead of true in order to allow the MayBegin and
Ended phases to be handled by the ElasticityController.
* dom/Element.cpp:
(WebCore::Element::dispatchWheelEvent):

LayoutTests:

* platform/mac-wk2/tiled-drawing/scrolling/wheel-events-with-no-delta-expected.txt: Added.
* platform/mac-wk2/tiled-drawing/scrolling/wheel-events-with-no-delta.html: Added.

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

6 years ago[iOS Media] Implement 3-style media timeline (buffered, played, unavailable)
dino@apple.com [Thu, 12 Feb 2015 22:20:39 +0000 (22:20 +0000)]
[iOS Media] Implement 3-style media timeline (buffered, played, unavailable)
https://bugs.webkit.org/show_bug.cgi?id=141526
<rdar://problem/19603337>

Reviewed by Eric Carlson and Antoine Quint.

Implement a 3-style media scrubber for iOS. This draws white for
the region that has been played (before the playhead), black
for the region that is buffered, and is hollow for the rest.

* Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.updateProgress): Update progress is now completely
shared between OS X and iOS. This calls the implementation specific
drawTimelineBackground.
(Controller.prototype.drawTimelineBackground): Move the OS X code to here.
* Modules/mediacontrols/mediaControlsiOS.css:
(audio::-webkit-media-controls-timeline): New styles for the timeline. Updated thumb image, etc.
(video::-webkit-media-controls-timeline::-webkit-slider-runnable-track):
(audio::-webkit-media-controls-timeline::-webkit-slider-thumb):
(audio::-webkit-media-controls-timeline::-webkit-slider-thumb:active):
(video::-webkit-media-controls-time-remaining-display):
* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS): Create a globally unique canvas context name in the constructor.
(ControllerIOS.prototype.createControls): Set the background of the timeline to a canvas.
(ControllerIOS.prototype.addRoundedRect): Helper function.
(ControllerIOS.prototype.drawTimelineBackground): Draw the 3-style content.
(ControllerIOS.prototype.updateProgress): Deleted.

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

6 years agoSimplify the initialization of BytecodeGenerator a bit
benjamin@webkit.org [Thu, 12 Feb 2015 22:20:18 +0000 (22:20 +0000)]
Simplify the initialization of BytecodeGenerator a bit
https://bugs.webkit.org/show_bug.cgi?id=141505

Reviewed by Anders Carlsson.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
* bytecompiler/BytecodeGenerator.h:
Setup the default initialization at the declaration level
instead of the constructor.

Also made m_scopeNode and m_codeType const to make it explicit
that they are invariant after construction.

* parser/Nodes.cpp:
* runtime/Executable.cpp:
Remove 2 useless #includes.

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

6 years agoMove the generators for GetScope and SkipScope to the common core in DFGSpeculativeJIT
benjamin@webkit.org [Thu, 12 Feb 2015 22:18:26 +0000 (22:18 +0000)]
Move the generators for GetScope and SkipScope to the common core in DFGSpeculativeJIT
https://bugs.webkit.org/show_bug.cgi?id=141506

Reviewed by Michael Saboff.

The generators for the nodes GetScope and SkipScope were
completely identical between 32 and 64bits.

This patch moves the duplicated code to DFGSpeculativeJIT.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetScope):
(JSC::DFG::SpeculativeJIT::compileSkipScope):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

6 years agoWebKit persistent cache uses a lot of threads
antti@apple.com [Thu, 12 Feb 2015 21:31:21 +0000 (21:31 +0000)]
WebKit persistent cache uses a lot of threads
https://bugs.webkit.org/show_bug.cgi?id=141520

Reviewed by Andreas Kling.

Parallel retrieves are limited but stores are not. We may end up with lots of backround io
dispatch queue threads if they don't complete fast enough.

This patch adds pending state for write operations similar to what retrieves already have
and limits to number of active operations.

* NetworkProcess/cache/NetworkCacheStorage.h:

    Combine StoreOperation and UpdateOperation and rename to WriteOperation.
    Rename RetrieveOperation to ReadOperation.
    The idea is to emphasize that these are disk operations.

* NetworkProcess/cache/NetworkCacheStorageCocoa.mm:
(WebKit::NetworkCacheStorage::dispatchReadOperation):
(WebKit::NetworkCacheStorage::dispatchPendingReadOperations):
(WebKit::retrieveFromMemory):
(WebKit::NetworkCacheStorage::retrieve):
(WebKit::NetworkCacheStorage::store):
(WebKit::NetworkCacheStorage::update):
(WebKit::NetworkCacheStorage::dispatchPendingWriteOperations):

    Only allow 3 parallel writes.

(WebKit::NetworkCacheStorage::dispatchFullWriteOperation):
(WebKit::NetworkCacheStorage::dispatchHeaderWriteOperation):

    More informative names.

(WebKit::NetworkCacheStorage::dispatchRetrieveOperation): Deleted.
(WebKit::NetworkCacheStorage::dispatchPendingRetrieveOperations): Deleted.
(WebKit::retrieveActive): Deleted.

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

6 years agoFix some Mac linker warnings
commit-queue@webkit.org [Thu, 12 Feb 2015 21:18:41 +0000 (21:18 +0000)]
Fix some Mac linker warnings
https://bugs.webkit.org/show_bug.cgi?id=141522

Patch by Daniel Bates <dabates@apple.com> on 2015-02-12
Reviewed by Alex Christensen.

Following <https://trac.webkit.org/changeset/179945>, the linker warns about the following hidden WebCore symbols:

ld: warning: cannot export hidden symbol __ZN7WebCore20LogNotYetImplementedE from /.../OpenSource/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/Logging.o
ld: warning: cannot export hidden symbol _wkCreateURLPasteboardFlavorTypeName from /.../OpenSource/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/WebCoreSystemInterface.o
ld: warning: cannot export hidden symbol _wkCreateURLNPasteboardFlavorTypeName from /.../OpenSource/WebKitBuild/WebCore.build/Debug/WebCore.build/Objects-normal/x86_64/WebCoreSystemInterface.o

* WebCore.exp.in: Remove symbols for functions wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName.
* platform/Logging.h: Export WTFLogChannel for LogNotYetImplemented, which is referenced from
notImplementedLoggingChannel() in file NotImplemented.cpp. We make use of the associated
header, NotImplemented.h, in both WebKit and WebKit2.
* platform/mac/WebCoreSystemInterface.mm: Remove declarations for functions
wkCreateURLPasteboardFlavorTypeName and wkCreateURLNPasteboardFlavorTypeName that
were inadvertently not removed in r25494.

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

6 years agoWeb Inspector: Crash inspecting styles of element with mutated stylesheet
commit-queue@webkit.org [Thu, 12 Feb 2015 20:47:10 +0000 (20:47 +0000)]
Web Inspector: Crash inspecting styles of element with mutated stylesheet
https://bugs.webkit.org/show_bug.cgi?id=141451

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

Source/WebCore:

Test: inspector/css/stylesheet-with-mutations.html

* css/CSSStyleSheet.h:
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::CSSStyleSheet):
(WebCore::CSSStyleSheet::didMutateRules):
Keep a flag on the CSSStyleSheet to know when it has had a rule
mutation from the contents.

* inspector/InspectorStyleSheet.h:
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::reparseStyleSheet):
When completely replacing the stylesheet's contents, we will have
destroyed any previous rules, so clear the has mutations flag.

(WebCore::selectorsFromSource):
Previously there was a mismatch between the rules the parsed
SourceData had, and the actual CSSSelectors we were iterating.
We use the SourceData so we can get the exact user authored
text instead of generated longhands from actualy selector objects.
Add an ASSERT and bail to catch and more gracefully handle
any possible mismatches in the future.

(WebCore::InspectorStyleSheet::styleSheetMutated):
(WebCore::InspectorStyleSheet::ensureParsedDataReady):
When a CSSStyleSheet has been mutated beyond the inspector's
knowledge right now, fall back to readonly generated selectors.
We should better handle this in the future:
<https://webkit.org/b/141450> Web Inspector: Better support for CSSOM StyleSheet mutations (insertRule/deleteRule)

LayoutTests:

* inspector/css/stylesheet-with-mutations-expected.txt: Added.
* inspector/css/stylesheet-with-mutations.html: Added.
Previously this test would crash, or in debug builds show one
of the two selectors in the rule.

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

6 years agoWeb Inspector: add keyboard shortcut to enable/disable all breakpoints
burg@cs.washington.edu [Thu, 12 Feb 2015 20:30:48 +0000 (20:30 +0000)]
Web Inspector: add keyboard shortcut to enable/disable all breakpoints
https://bugs.webkit.org/show_bug.cgi?id=141527

Reviewed by Joseph Pecoraro.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/Views/DebuggerSidebarPanel.js:
(WebInspector.DebuggerSidebarPanel): Bind Command/Control + Y to toggle breakpoints button.

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

6 years agoUnreviewed, rolling out r179987.
commit-queue@webkit.org [Thu, 12 Feb 2015 20:00:50 +0000 (20:00 +0000)]
Unreviewed, rolling out r179987.
https://bugs.webkit.org/show_bug.cgi?id=141525

caused debug tests to fail (Requested by alexchristensen on
#webkit).

Reverted changeset:

"[CSS Grid Layout] Invalid initialization of track sizes with
non spanning grid items"
https://bugs.webkit.org/show_bug.cgi?id=140763
http://trac.webkit.org/changeset/179987

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

6 years agoRemoved empty directory.
achristensen@apple.com [Thu, 12 Feb 2015 19:57:03 +0000 (19:57 +0000)]
Removed empty directory.

* WinCELauncher: Removed.

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

6 years agoWeb Inspector: support adding and removing timelines to the timeline sidebar panel...
burg@cs.washington.edu [Thu, 12 Feb 2015 19:00:03 +0000 (19:00 +0000)]
Web Inspector: support adding and removing timelines to the timeline sidebar panel and overview
https://bugs.webkit.org/show_bug.cgi?id=138434

Reviewed by Timothy Hatcher.

A timeline recording's timelines should not be static. This patch adds relevant machinery to
dynamically add and remove timelines from the Timeline model object and its various views.

From the model side, this is a simple change that adds TimelineAdded and TimelineRemoved events.
The timeline views and timeline sidebar require more extensive changes to support this functionality.
Instead of keeping a fixed set of timeline tree elements, the sidebar view now adds and removes
tree elements to reflect the available timelines for the displayed timeline recording.

This change also includes several minor cleanups, such as appending 'Element' to view properties that
are DOM elements, and renaming TimelineContentView to TimelineRecordingContentView.

* UserInterface/Controllers/TimelineManager.js:
(WebInspector.TimelineManager.prototype._loadNewRecording):
Populate predefined network, layout, and script timelines here after constructing the recording.

* UserInterface/Main.html:
* UserInterface/Models/Timeline.js:
Move hardcoded class names and localized strings to these base class methods. This is not implemented
using overridden methods because not all timeline types have their own subclasses. Add a dummy
implementation of saveIdentityToCookie() to avoid warnings when saving sidebar panel selection state.

(WebInspector.Timeline.prototype.get type):
(WebInspector.Timeline.prototype.get displayName): Added.
(WebInspector.Timeline.prototype.get iconClassName): Added.
(WebInspector.Timeline.prototype.addRecord):
* UserInterface/Models/TimelineRecording.js:
(WebInspector.TimelineRecording):
(WebInspector.TimelineRecording.prototype.addTimeline.set timeline): Added.
(WebInspector.TimelineRecording.prototype.addTimeline): Added.
(WebInspector.TimelineRecording.prototype.removeTimeline.get this): Added.
(WebInspector.TimelineRecording.prototype.removeTimeline): Added.
* UserInterface/Views/ContentView.js:
(WebInspector.ContentView):
* UserInterface/Views/LayoutTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.layout .item .subtitle): Deleted.
* UserInterface/Views/LayoutTimelineView.js:
(WebInspector.LayoutTimelineView.prototype._treeElementSelected):
(WebInspector.LayoutTimelineView.prototype._closeStatusButtonClicked):
* UserInterface/Views/NavigationSidebarPanel.js:
(WebInspector.NavigationSidebarPanel.prototype.saveStateToCookie): Fix error message formatting.
(WebInspector.NavigationSidebarPanel.prototype._updateFilter):
* UserInterface/Views/NetworkTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.network .item .subtitle): Deleted.
* UserInterface/Views/NetworkTimelineView.js:
(WebInspector.NetworkTimelineView.prototype._closeStatusButtonClicked):
* UserInterface/Views/ScriptTimelineView.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing .navigation-sidebar-panel-content-tree-outline.script .item .subtitle): Deleted.
* UserInterface/Views/ScriptTimelineView.js:
(WebInspector.ScriptTimelineView.prototype._treeElementSelected):
(WebInspector.ScriptTimelineView.prototype._closeStatusButtonClicked):
* UserInterface/Views/TimelineOverview.js:
Convert this class to use the representedObject class pattern. It manages its own mapping from timelines
to overview graph views. Append 'Element' to some properties holding DOM elements.
(WebInspector.TimelineOverview):
(WebInspector.TimelineOverview.prototype.get visibleDuration):
(WebInspector.TimelineOverview.prototype.reset):
(WebInspector.TimelineOverview.prototype.updateLayout):
(WebInspector.TimelineOverview.prototype._handleScrollEvent):
(WebInspector.TimelineOverview.prototype._handleWheelEvent):
(WebInspector.TimelineOverview.prototype._timelineRemoved):
(WebInspector.TimelineOverview.prototype.updateLayoutIfNeeded):
(WebInspector.TimelineOverview.prototype._timeRangeSelectionChanged):
* UserInterface/Views/TimelineRecordingContentView.css: Renamed from Source/WebInspectorUI/UserInterface/Views/TimelineContentView.css.
Remove hard-coded top offsets and heights that need to be dynamically calculated.
(.content-view.timeline-recording > .timeline-overview):
(.content-view.timeline-recording > .view-container):
(.content-view.timeline-recording > .view-container > .timeline-view > .data-grid td):
(.content-view.timeline-recording > .view-container > .timeline-view > .data-grid table.data):
* UserInterface/Views/TimelineRecordingContentView.js: Renamed from Source/WebInspectorUI/UserInterface/Views/TimelineContentView.js.
Manage timeline views and path components dynamically. Adjust view heights as necessary. Append 'Element'
to some properties holding DOM elements.
(WebInspector.TimelineRecordingContentView):
(WebInspector.TimelineRecordingContentView.prototype.showOverviewTimelineView):
(WebInspector.TimelineRecordingContentView.prototype.showTimelineViewForTimeline):
(WebInspector.TimelineRecordingContentView.prototype.get allowedNavigationSidebarPanels):
(WebInspector.TimelineRecordingContentView.prototype.get supportsSplitContentBrowser):
(WebInspector.TimelineRecordingContentView.prototype.get navigationItems):
(WebInspector.TimelineRecordingContentView.prototype.get currentTimelineView):
(WebInspector.TimelineRecordingContentView.prototype.shown):
(WebInspector.TimelineRecordingContentView.prototype.hidden):
(WebInspector.TimelineRecordingContentView.prototype.filterDidChange):
(WebInspector.TimelineRecordingContentView.prototype.updateLayout):
(WebInspector.TimelineRecordingContentView.prototype.saveToCookie):
(WebInspector.TimelineRecordingContentView.prototype.restoreFromCookie):
(WebInspector.TimelineRecordingContentView.prototype.get matchTreeElementAgainstCustomFilters.checkTimeBounds):
(WebInspector.TimelineRecordingContentView.prototype.get matchTreeElementAgainstCustomFilters):
(WebInspector.TimelineRecordingContentView.prototype._pathComponentSelected):
(WebInspector.TimelineRecordingContentView.prototype._timelineViewSelectionPathComponentsDidChange):
(WebInspector.TimelineRecordingContentView.prototype._showTimelineView):
(WebInspector.TimelineRecordingContentView.prototype._update):
(WebInspector.TimelineRecordingContentView.prototype._updateTimes):
(WebInspector.TimelineRecordingContentView.prototype._startUpdatingCurrentTime):
(WebInspector.TimelineRecordingContentView.prototype._stopUpdatingCurrentTime):
(WebInspector.TimelineRecordingContentView.prototype._capturingStarted):
(WebInspector.TimelineRecordingContentView.prototype._capturingStopped):
(WebInspector.TimelineRecordingContentView.prototype._debuggerPaused):
(WebInspector.TimelineRecordingContentView.prototype._debuggerResumed):
Fix a minor regression where we make a useless call to stop updating the time.

(WebInspector.TimelineRecordingContentView.prototype._recordingTimesUpdated):
(WebInspector.TimelineRecordingContentView.prototype._clearTimeline):
(WebInspector.TimelineRecordingContentView.prototype._timelineRemoved):
(WebInspector.TimelineRecordingContentView.prototype._timelineCountChanged):
(WebInspector.TimelineRecordingContentView.prototype._recordingReset):
(WebInspector.TimelineRecordingContentView.prototype._recordingUnloaded):
(WebInspector.TimelineRecordingContentView.prototype._timeRangeSelectionChanged):
* UserInterface/Views/TimelineSidebarPanel.css:
(.sidebar > .panel.navigation.timeline.timeline-recording-content-view-showing > .content):
(.sidebar > .panel.navigation.timeline.timeline-content-view-showing > .content): Deleted.
* UserInterface/Views/TimelineSidebarPanel.js:
Manage timeline tree elements dynamically. Adjust view heights as necessary. Append 'Element'
to some properties holding DOM elements. Keep track of the displayed recording and view explicitly.
(WebInspector.TimelineSidebarPanel):
(WebInspector.TimelineSidebarPanel.prototype.shown):
(WebInspector.TimelineSidebarPanel.prototype.showDefaultContentView):
(WebInspector.TimelineSidebarPanel.prototype.treeElementForRepresentedObject.looselyCompareRepresentedObjects):
(WebInspector.TimelineSidebarPanel.prototype.showTimelineOverview):
(WebInspector.TimelineSidebarPanel.prototype.updateFilter):
(WebInspector.TimelineSidebarPanel.prototype.matchTreeElementAgainstCustomFilters):
(WebInspector.TimelineSidebarPanel.prototype.canShowDifferentContentView):
(WebInspector.TimelineSidebarPanel.prototype.saveStateToCookie):
(WebInspector.TimelineSidebarPanel.prototype.get if):
(WebInspector.TimelineSidebarPanel.prototype._contentBrowserCurrentContentViewDidChange):
(WebInspector.TimelineSidebarPanel.prototype._recordingCountChanged):
(WebInspector.TimelineSidebarPanel.prototype._recordingSelected):
(WebInspector.TimelineSidebarPanel.prototype._recordingLoaded):
(WebInspector.TimelineSidebarPanel.prototype._timelineRemoved):
(WebInspector.TimelineSidebarPanel.prototype._timelineCountChanged):
(WebInspector.TimelineSidebarPanel.createTimelineTreeElement): Deleted.
(WebInspector.TimelineSidebarPanel.prototype.restoreStateFromCookie):
* UserInterface/Views/TimelineView.css:
(.panel.navigation.timeline.timeline-recording-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline):
(.panel.navigation.timeline.timeline-content-view-showing > .content > .navigation-sidebar-panel-content-tree-outline): Deleted.

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

6 years agoPerf dashboard should show the results of A/B testing
rniwa@webkit.org [Thu, 12 Feb 2015 18:50:53 +0000 (18:50 +0000)]
Perf dashboard should show the results of A/B testing
https://bugs.webkit.org/show_bug.cgi?id=141500

Reviewed by Chris Dumez.

Added the support for fetching test_runs for a specific test group in /api/runs/, and used it in the
analysis task page to fetch results for each test group.

Merged App.createChartData into App.Manifest.fetchRunsWithPlatformAndMetric so that App.BuildRequest
can use the formatter.

* public/api/runs.php:
(fetch_runs_for_config_and_test_group): Added.
(fetch_runs_for_config): Just return the fetched rows since main will format them with RunsGenerator.
(main): Use fetch_runs_for_config_and_test_group to fetch rows when a test group id is specified. Also
use RunsGenerator to format results.
(RunsGenerator): Added.
(RunsGenerator::__construct): Added.
(RunsGenerator::add_runs): Added.
(RunsGenerator::format_run): Moved.
(RunsGenerator::parse_revisions_array): Moved.

* public/v2/analysis.js:
(App.TestGroup): Fixed a typo. The property on a test group that refers to an analysis task is "task".
(App.TestGroup._fetchChartData): Added. Fetches all A/B testing results for this group.
(App.BuildRequest.configLetter): Renamed from config since this returns a letter that identifies the
configuration associated with this build request such as "A" and "B".
(App.BuildRequest.statusLabel): Added the missing label for failed build requests.
(App.BuildRequest.url): Added. Returns the URL associated with this build request.
(App.BuildRequest._meanFetched): Added. Retrieve the mean and the build number for this request via
_fetchChartData.

* public/v2/app.js:
(App.Pane._fetch): Set chartData directly here.
(App.Pane._updateMovingAverageAndEnvelope): Renamed from _computeChartData. No longer sets chartData
now that it's done in App.Pane._fetch.
(App.AnalysisTaskController._fetchedRuns): Updated per createChartData merge.

* public/v2/data.js:
(Measurement.prototype.buildId): Added.
(TimeSeries.prototype.findPointByBuild): Added.

* public/v2/index.html: Fixed a bug that build status URL was broken. We can't use link-to helper since
url is not an Ember routed path.

* public/v2/manifest.js:
(App.Manifest.fetchRunsWithPlatformAndMetric): Takes testGroupId as the third argument. Merged
App.createChartData here so that App.BuildRequest can use the formatter

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

6 years agoWeb Inspector: Large background image fails to load in inspector
burg@cs.washington.edu [Thu, 12 Feb 2015 18:42:21 +0000 (18:42 +0000)]
Web Inspector: Large background image fails to load in inspector
https://bugs.webkit.org/show_bug.cgi?id=141405

Reviewed by Timothy Hatcher.

Convert base64-encoded resource data to binary data using Uint8Array and Blobs.
Use object URLs for blobs instead of data URLs when setting image 'src' attribute
and in @font-face urls. This conversion happens when the backend indicates that
resource content is base64-encoded.

Update image and font clients of resource-fetching functionality so that they use
object URLs correctly. Add some plumbing so that Blobs can be constructed with
the correct mime-type.

* UserInterface/Base/Utilities.js:
(decodeBase64ToBlob): Added.
* UserInterface/Models/CSSStyleSheet.js:
(WebInspector.CSSStyleSheet.prototype.get mimeType): Added.
* UserInterface/Models/Resource.js:
(WebInspector.Resource.prototype.createObjectURL): Added.
(WebInspector.Resource.prototype.getImageSize.imageDidLoad):
(WebInspector.Resource.prototype.getImageSize):
(WebInspector.Resource.prototype.get contentURL): Deleted.
* UserInterface/Models/Script.js:
(WebInspector.Script.prototype.get mimeType): Added.
* UserInterface/Models/SourceCode.js:
(WebInspector.SourceCode.prototype.get mimeType): Added.
(WebInspector.SourceCode.prototype._processContent):
(WebInspector.SourceCode.prototype.get contentIsBase64Encoded): Deleted.
* UserInterface/Models/SourceCodeRevision.js:
(WebInspector.SourceCodeRevision):
(WebInspector.SourceCodeRevision.prototype.copy):
(WebInspector.SourceCodeRevision.prototype.get contentIsBase64Encoded): Deleted.
(WebInspector.SourceCodeRevision.prototype.set contentIsBase64Encoded): Deleted.
* UserInterface/Views/FontResourceContentView.js:
(WebInspector.FontResourceContentView.prototype.hidden):
(WebInspector.FontResourceContentView.prototype.closed):
* UserInterface/Views/ImageResourceContentView.js:
(WebInspector.ImageResourceContentView.prototype.contentAvailable):

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

6 years agorun-jsc-stress-tests --remote should be able add the necessary libraries to the bundl...
ossy@webkit.org [Thu, 12 Feb 2015 18:35:12 +0000 (18:35 +0000)]
run-jsc-stress-tests --remote should be able add the necessary libraries to the bundle on Linux
https://bugs.webkit.org/show_bug.cgi?id=141202

Reviewed by Darin Adler.

* Scripts/run-jsc-stress-tests:

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

6 years agoREGRESSION(r178060): empty arguments are passed when logging to system console
burg@cs.washington.edu [Thu, 12 Feb 2015 18:21:00 +0000 (18:21 +0000)]
REGRESSION(r178060): empty arguments are passed when logging to system console
https://bugs.webkit.org/show_bug.cgi?id=141511

Reviewed by Timothy Hatcher.

* page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::messageWithTypeAndLevel): Change premature move to copyRef.

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

6 years ago[Win] Test bot infrastructure should not try to find/use old Safari DLLs
bfulgham@apple.com [Thu, 12 Feb 2015 17:48:00 +0000 (17:48 +0000)]
[Win] Test bot infrastructure should not try to find/use old Safari DLLs
https://bugs.webkit.org/show_bug.cgi?id=141517

Reviewed by Anders Carlsson.

We do not need to locate or use the DLL's that came with Safari, so stop
failing when we cannot find them. Also remove some old Qt cruft from this
script.

* BuildSlaveSupport/built-product-archive:
(archiveBuiltProduct):
(extractBuiltProduct):

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

6 years ago[Win] [64-bit] Work around MSVC2013 Runtime Bug
bfulgham@apple.com [Thu, 12 Feb 2015 17:20:07 +0000 (17:20 +0000)]
[Win] [64-bit] Work around MSVC2013 Runtime Bug
https://bugs.webkit.org/show_bug.cgi?id=141498
<rdar://problem/19803642>

Reviewed by Anders Carlsson.

Disable FMA3 instruction use in the MSVC math library to
work around a VS2013 runtime crash. We can remove this
workaround when we switch to VS2015.

Source/JavaScriptCore:

* API/tests/testapi.c: Call _set_FMA3_enable(0) to disable
FMA3 support.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Add new files.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.
* JavaScriptCore.vcxproj/JavaScriptCoreDLL.cpp: Added.
* JavaScriptCore.vcxproj/jsc/DLLLauncherMain.cpp: Call _set_FMA3_enable(0)
to disable FMA3 support.
* jsc.cpp: Ditto.
* testRegExp.cpp: Ditto.

Source/WebKit/win:

* WebKitDLL.cpp: Call _set_FMA3_enable(0) to disable FMA3 support.

Source/WTF:

* WTF.vcxproj/WTF.vcxproj: Add new files.
* WTF.vcxproj/WTF.vcxproj.filters: Ditto.
* wtf/win/WTFDLL.cpp: Added.

Tools:

* DumpRenderTree/cg/ImageDiffCG.cpp: Call _set_FMA3_enable(0) to
disable FMA3 support.
* DumpRenderTree/win/DumpRenderTree.cpp: Ditto.
* DumpRenderTree/win/ImageDiffCairo.cpp: Ditto.
* DumpRenderTree/win/TestRunnerWin.cpp: Ditto.
* Scripts/webkitperl/httpd.pm: Ditto.
* TestWebKitAPI/win/main.cpp: Ditto.
* WinLauncher/Common.cpp: Ditto.
* win/DLLLauncher/DLLLauncherMain.cpp: Ditto.

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

6 years ago[Win] Unreviewed debug build fix after r179980.
achristensen@apple.com [Thu, 12 Feb 2015 16:48:08 +0000 (16:48 +0000)]
[Win] Unreviewed debug build fix after r179980.

* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::currentViewportSize):
Explicitly call constructor.

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

6 years agoUnreviewed, EFL gardening. Two tests have been failing since r148090.
gyuyoung.kim@samsung.com [Thu, 12 Feb 2015 16:35:54 +0000 (16:35 +0000)]
Unreviewed, EFL gardening. Two tests have been failing since r148090.

* platform/efl/TestExpectations: Skip 2 failure tests.

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

6 years agov2 UI should adjust the number of ticks on dashboards based on screen size
rniwa@webkit.org [Thu, 12 Feb 2015 16:32:58 +0000 (16:32 +0000)]
v2 UI should adjust the number of ticks on dashboards based on screen size
https://bugs.webkit.org/show_bug.cgi?id=141502

Reviewed by Chris Dumez.

* public/v2/interactive-chart.js:
(App.InteractiveChartComponent._updateDimensionsIfNeeded): Compute the number of ticks based on the
content size.

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

6 years agoUnreviewed, EFL gardening.
gyuyoung.kim@samsung.com [Thu, 12 Feb 2015 16:25:34 +0000 (16:25 +0000)]
Unreviewed, EFL gardening.

* platform/efl/TestExpectations: Mark two tests failing since r177664.

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

6 years ago[CSS Grid Layout] Invalid initialization of track sizes with non spanning grid items
svillar@igalia.com [Thu, 12 Feb 2015 16:14:16 +0000 (16:14 +0000)]
[CSS Grid Layout] Invalid initialization of track sizes with non spanning grid items
https://bugs.webkit.org/show_bug.cgi?id=140763

Reviewed by Antti Koivisto.

Source/WebCore:

Content sized tracks with non-spanning grid items were not
properly sized because the growth limit was sometimes infinity
(-1) after calling resolveContentBasedTrackSizingFunctions() when
it should not. This patch adds an special initialization phase for
non-spanning grid items as the new track sizing algorithm
describes.

Granted, that was handled in the old algorithm in
distributeSpaceToTracks() as a special case. The problem is that
it regressed after the optimization added in r173868 because that
method is no longer called when the space to distribute is 0.

That's why we could fix this by allowing calls to
distributeSpaceToTracks() with spaceToDistribute>=0 but by fixing
it with an explicit initialization our implementation becomes
closer to the new algorithm and the initialization is now explicit
in the code instead of a side effect of calling
distributeSpaceToTracks() with no space to be distributed. It also
brings a slight performance improvement as we save sorts and hash
lookups.

I also took the change to add caching to several GridTrackSize
methods that were hot on the profiler (each one accounted for ~1%
of the total time, now they account for ~0.3% each).

Test: fast/css-grid-layout/grid-initialize-span-one-items.html

* rendering/RenderGrid.cpp:
(WebCore::GridItemWithSpan::span): New helper method for ASSERTs.
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
Exclude non spanning grid items from the calls to
resolveContentBasedTrackSizingFunctionsForItems().
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForNonSpanningItems):
New method to resolve track sizes only using non-spanning grid
items.
(WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
Ensure that it isn't called for non-spanning grid items.
* rendering/RenderGrid.h:
* rendering/style/GridTrackSize.h:
(WebCore::GridTrackSize::GridTrackSize): Cache return values.
(WebCore::GridTrackSize::setLength): Ditto.
(WebCore::GridTrackSize::setMinMax): Ditto.
(WebCore::GridTrackSize::cacheMinMaxTrackBreadthTypes): New method
that caches the return values for hasXXXTrackBreadth() methods.
(WebCore::GridTrackSize::hasMinOrMaxContentMinTrackBreadth): Use
the cached return value.
(WebCore::GridTrackSize::hasMaxContentMaxTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinContentMaxTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinOrMaxContentMaxTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMaxContentMinTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinContentMinTrackBreadth): Ditto.
(WebCore::GridTrackSize::hasMinContentMinTrackBreadthAndMinOrMaxContentMaxTrackBreadth):
Ditto.
(WebCore::GridTrackSize::hasMaxContentMinTrackBreadthAndMaxContentMaxTrackBreadth):
Ditto.

LayoutTests:

* fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt:
* fast/css-grid-layout/grid-content-sized-columns-resolution.html:
* fast/css-grid-layout/grid-initialize-span-one-items-expected.txt: Added.
* fast/css-grid-layout/grid-initialize-span-one-items.html: Added.

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

6 years agorun-jsc-stress-tests should accept remote host config from JSON file
ossy@webkit.org [Thu, 12 Feb 2015 16:08:04 +0000 (16:08 +0000)]
run-jsc-stress-tests should accept remote host config from JSON file
https://bugs.webkit.org/show_bug.cgi?id=141509

Reviewed by Michael Saboff.

* Scripts/run-javascriptcore-tests:
(runJSCStressTests):
* Scripts/run-jsc-stress-tests:

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

6 years agoRemove the USE(ACCELERATED_COMPOSITING) guard from the
zandobersek@gmail.com [Thu, 12 Feb 2015 14:25:30 +0000 (14:25 +0000)]
Remove the USE(ACCELERATED_COMPOSITING) guard from the
MediaPlayerPrivateGStreamerBase destructor.

The guard was removed in r163079. It was still defined through CMake
for the EFL and GTK ports when the guarded code was introduced in
r172828. In r171741 the macro was finally removed for the GTK and EFL
ports as well, but the guards for the affected code weren't updated
so TextureMapperPlatformLayer::Client::platformLayerWillBeDestroyed()
wasn't being called anymore.

Rubber-stamped by Philippe Normand.

* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):

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

6 years ago[GTK] Add API to allow overriding the default color chooser implementation
carlosgc@webkit.org [Thu, 12 Feb 2015 08:50:00 +0000 (08:50 +0000)]
[GTK] Add API to allow overriding the default color chooser implementation
https://bugs.webkit.org/show_bug.cgi?id=98935

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

Add API to allow the user to override the default UI of color
chooser. Similar to the file chooser API, a new run-color-chooser
signal is added to WebKitWebView that passes a WebKitColorChooserRequest
parameter to the signal.

Initial patch by Arnaud Renevier <a.renevier@sisa.samsung.com>.

* PlatformGTK.cmake: Add new files to compilation.
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::createColorPicker): Create a
WebKitColorChooser is the view widget is a WebKitWebView or a
WebColorPicker otherwise,
* UIProcess/API/gtk/WebKitColorChooser.cpp: Added.
(WebKit::WebKitColorChooser::create):
(WebKit::WebKitColorChooser::WebKitColorChooser):
(WebKit::WebKitColorChooser::~WebKitColorChooser):
(WebKit::WebKitColorChooser::endPicker): Chain up to parent class
when not having a request, or finish the request if we have one.
(WebKit::WebKitColorChooser::colorChooserRequestFinished):
(WebKit::WebKitColorChooser::colorChooserRequestRGBAChanged):
(WebKit::WebKitColorChooser::showColorPicker): Create a new
WebKitColorChooserRequest and emit WebKitWebView::run-color-chooser.
If the signal is not handled, fallback to the default color
chooser dialog implemented by the parent class.
* UIProcess/API/gtk/WebKitColorChooser.h: Added.
* UIProcess/API/gtk/WebKitColorChooserRequest.cpp: Added.
(webkitColorChooserRequestGetProperty):
(webkitColorChooserRequestSetProperty):
(webkit_color_chooser_request_class_init):
(webkit_color_chooser_request_set_rgba):
(webkit_color_chooser_request_get_rgba):
(webkit_color_chooser_request_get_element_rectangle):
(webkit_color_chooser_request_finish):
(webkit_color_chooser_request_cancel):
(webkitColorChooserRequestCreate):
* UIProcess/API/gtk/WebKitColorChooserRequest.h: Added.
* UIProcess/API/gtk/WebKitColorChooserRequestPrivate.h: Added.
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_class_init): Add run-color-chooser signal.
(webkitWebViewEmitRunColorChooser): Emit run-color-chooser signal.
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/WebKitWebViewPrivate.h:
* UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
* UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section for WebKitColorChooserRequest.
* UIProcess/API/gtk/webkit2.h: Include WebKitColorChooserRequest.h

Tools:

Add a color chooser implementation for MiniBrowser using
GtkPopover when the GTK+ version is recent enough.
And a test case to check the new color chooser API.

* MiniBrowser/gtk/BrowserWindow.c:
(colorChooserRGBAChanged):
(popoverColorClosed):
(colorChooserRequestFinished):
(runColorChooserCallback):
(browserWindowConstructed):
* TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
(testWebViewColorChooserRequest):
(beforeAll):

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

6 years agoAX: Undeprecate ios-simulator accessibility tests
cfleizach@apple.com [Thu, 12 Feb 2015 07:08:48 +0000 (07:08 +0000)]
AX: Undeprecate ios-simulator accessibility tests
https://bugs.webkit.org/show_bug.cgi?id=141407

Reviewed by Daniel Bates.

Undeprecate ios accessibility tests.
Modified one failing test (svg-group-element-with-title.html) slightly to get it to pass.

* platform/ios-sim-deprecated/accessibility: Removed.
* platform/ios-sim-deprecated/accessibility/accessibility-aria-table-children-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/accessibility-aria-table-children.html: Removed.
* platform/ios-sim-deprecated/accessibility/accessibility-crash-in-axcontainer-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/accessibility-crash-in-axcontainer.html: Removed.
* platform/ios-sim-deprecated/accessibility/accessibility-hint-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/accessibility-hint.html: Removed.
* platform/ios-sim-deprecated/accessibility/aria-label-with-internal-text-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/aria-label-with-internal-text.html: Removed.
* platform/ios-sim-deprecated/accessibility/aria-pressed-state-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/aria-pressed-state.html: Removed.
* platform/ios-sim-deprecated/accessibility/centerpoint-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/centerpoint.html: Removed.
* platform/ios-sim-deprecated/accessibility/disabled-states-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/disabled-states.html: Removed.
* platform/ios-sim-deprecated/accessibility/dom-focus-fires-on-correct-element-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/dom-focus-fires-on-correct-element.html: Removed.
* platform/ios-sim-deprecated/accessibility/element-paths-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/element-paths.html: Removed.
* platform/ios-sim-deprecated/accessibility/file-upload-button-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/file-upload-button.html: Removed.
* platform/ios-sim-deprecated/accessibility/focus-change-notifications-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/focus-change-notifications.html: Removed.
* platform/ios-sim-deprecated/accessibility/header-elements-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/header-elements.html: Removed.
* platform/ios-sim-deprecated/accessibility/identifier-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/identifier.html: Removed.
* platform/ios-sim-deprecated/accessibility/internal-link-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/internal-link.html: Removed.
* platform/ios-sim-deprecated/accessibility/landmark-type-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/landmark-type.html: Removed.
* platform/ios-sim-deprecated/accessibility/link-with-images-text-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/link-with-images-text.html: Removed.
* platform/ios-sim-deprecated/accessibility/link-with-only-image-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/link-with-only-image.html: Removed.
* platform/ios-sim-deprecated/accessibility/math-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/math.html: Removed.
* platform/ios-sim-deprecated/accessibility/mixed-checkboxes-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/mixed-checkboxes.html: Removed.
* platform/ios-sim-deprecated/accessibility/no-child-link-header-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/no-child-link-header.html: Removed.
* platform/ios-sim-deprecated/accessibility/non-contiguous-link-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/non-contiguous-link.html: Removed.
* platform/ios-sim-deprecated/accessibility/out-of-bounds-child-access-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/out-of-bounds-child-access.html: Removed.
* platform/ios-sim-deprecated/accessibility/password-value-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/password-value.html: Removed.
* platform/ios-sim-deprecated/accessibility/placeholder-value-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/placeholder-value.html: Removed.
* platform/ios-sim-deprecated/accessibility/popup-button-value-label-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/popup-button-value-label.html: Removed.
* platform/ios-sim-deprecated/accessibility/progressbar-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/progressbar.html: Removed.
* platform/ios-sim-deprecated/accessibility/radio-button-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/radio-button.html: Removed.
* platform/ios-sim-deprecated/accessibility/secure-text-field-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/secure-text-field.html: Removed.
* platform/ios-sim-deprecated/accessibility/selected-buttons-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/selected-buttons.html: Removed.
* platform/ios-sim-deprecated/accessibility/selected-text-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/selected-text.html: Removed.
* platform/ios-sim-deprecated/accessibility/svg-group-element-with-title-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/svg-group-element-with-title.html: Removed.
* platform/ios-sim-deprecated/accessibility/svg-path-crash-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/svg-path-crash.html: Removed.
* platform/ios-sim-deprecated/accessibility/tab-role-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/tab-role.html: Removed.
* platform/ios-sim-deprecated/accessibility/table-cell-for-row-col-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/table-cell-for-row-col.html: Removed.
* platform/ios-sim-deprecated/accessibility/table-cell-ranges-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/table-cell-ranges.html: Removed.
* platform/ios-sim-deprecated/accessibility/table-with-mismatch-column-count-in-initial-section-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/tables-lists-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/tables-lists.html: Removed.
* platform/ios-sim-deprecated/accessibility/text-line-no-ignored-elements-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/text-line-no-ignored-elements.html: Removed.
* platform/ios-sim-deprecated/accessibility/text-marker-list-item-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/text-marker-list-item.html: Removed.
* platform/ios-sim-deprecated/accessibility/text-marker-validation-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/text-marker-validation.html: Removed.
* platform/ios-sim-deprecated/accessibility/text-role-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/text-role.html: Removed.
* platform/ios-sim-deprecated/accessibility/textfield-in-axvalue-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/textfield-in-axvalue.html: Removed.
* platform/ios-sim-deprecated/accessibility/toggle-button-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/toggle-button.html: Removed.
* platform/ios-sim-deprecated/accessibility/url-test-expected.txt: Removed.
* platform/ios-sim-deprecated/accessibility/url-test.html: Removed.
* platform/ios-simulator/accessibility: Copied from LayoutTests/platform/ios-sim-deprecated/accessibility.
* platform/ios-simulator/accessibility/svg-group-element-with-title.html:

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

6 years agoStreamline and simplify SVGSVGElement and related classes
darin@apple.com [Thu, 12 Feb 2015 05:09:25 +0000 (05:09 +0000)]
Streamline and simplify SVGSVGElement and related classes
https://bugs.webkit.org/show_bug.cgi?id=141463

Reviewed by Antti Koivisto.

* dom/Document.cpp: Removed unneeded include of SVGSVGElement.h.
* loader/FrameLoader.cpp: Ditto.
* rendering/RenderBoxModelObject.cpp: Ditto.
* rendering/svg/RenderSVGForeignObject.cpp: Ditto.
* svg/SVGImageElement.cpp: Ditto.
* svg/SVGMarkerElement.cpp: Ditto.
* svg/SVGPathElement.cpp: Ditto.
* svg/SVGPatternElement.cpp: Ditto.
* svg/SVGTransform.cpp: Ditto.

* page/FrameView.cpp:
(WebCore::FrameView::scrollToAnchor): Updated to call the SVGSVGElement function
named scrollToAnchor (was setupInitialView). Also refactored to avoid repeating
the expression frame().document() so often.

* platform/graphics/FloatSize.h: Added operator/.

* svg/SVGDocument.cpp:
(WebCore::SVGDocument::rootElement): Rearranged to use early return.
(WebCore::SVGDocument::zoomAndPanEnabled): Ditto.
(WebCore::SVGDocument::startPan): Ditto. Also used FloatPoint math instead
of breaking things apart into x and y.
(WebCore::SVGDocument::updatePan): Ditto.

* svg/SVGDocument.h: Removed some unneeded includes and forward declarations.
Moved function bodies out of the class to make it more readable. Renamed
m_translate to m_panningOffset and made it a FloatSize instead of FloatPoint.

* svg/SVGDocumentExtensions.cpp:
(WebCore::SVGDocumentExtensions::startAnimations): Use a modern for loop
and update since timeContainer() now returns a reference.

* svg/SVGSVGElement.cpp: Removed many unneeded includes.
(WebCore::SVGSVGElement::SVGSVGElement): Moved initialization of scalars to
the class definition. Updated since m_timerContainer is a Ref (later should
change it to be a std::unique_ptr or just directly contained in SVGSVGElement).
(WebCore::SVGSVGElement::~SVGSVGElement): Removed comment that doesn't say much,
but is worded in a confusing way.
(WebCore::SVGSVGElement::contentScriptType): Use NeverDestroyed instead of
DEPRECATED_DEFINE_STATIC_LOCAL.
(WebCore::SVGSVGElement::contentStyleType): Ditto.
(WebCore::SVGSVGElement::viewport): Streamlined a bit.
(WebCore::SVGSVGElement::pixelUnitToMillimeterX): Ditto.
(WebCore::SVGSVGElement::pixelUnitToMillimeterY): Ditto.
(WebCore::SVGSVGElement::currentView): Changed to return a reference.
(WebCore::SVGSVGElement::frameForCurrentScale): Added. Helper for the two
functions below.
(WebCore::SVGSVGElement::currentScale): Updated to use frameForCurrentScale.
(WebCore::SVGSVGElement::setCurrentScale): Ditto.
(WebCore::SVGSVGElement::setCurrentTranslate): Optimized the case where there
is no change to the translation. Also changed the data member's name to
m_currentTranslate to more directly match the DOM API naming.
(WebCore::SVGSVGElement::parseAttribute): Simplified the parsing a bit, and
changed to pass a reference to SVGZoomAndPan::parseAttribute.
(WebCore::SVGSVGElement::svgAttributeChanged): Tweaked formatting and removed
code that converts the renderer pointer to a RenderObject* unnecessarily.
(WebCore::SVGSVGElement::suspendRedraw): Removed FIXME about implementing this,
since we don't really plan to do that.
(WebCore::SVGSVGElement::unsuspendRedraw): Ditto.
(WebCore::SVGSVGElement::unsuspendRedrawAll): Ditto.
(WebCore::SVGSVGElement::forceRedraw): Ditto.
(WebCore::SVGSVGElement::collectIntersectionOrEnclosureList): Changed return
type to Ref, and pass in a function instead of an enumeration value.
(WebCore::SVGSVGElement::getIntersectionList): Updated for above.
(WebCore::SVGSVGElement::getEnclosureList): Ditto.
(WebCore::SVGSVGElement::checkIntersection): Use && instead of early return
for the null check.
(WebCore::SVGSVGElement::checkEnclosure): Ditto.
(WebCore::SVGSVGElement::createSVGLength): Use initialization list syntax
for greater brevity.
(WebCore::SVGSVGElement::createSVGAngle): Ditto.
(WebCore::SVGSVGElement::createSVGPoint): Ditto.
(WebCore::SVGSVGElement::createSVGMatrix): Ditto.
(WebCore::SVGSVGElement::createSVGRect): Ditto.
(WebCore::SVGSVGElement::createSVGTransform): Removed unneeded explicit
constructor invocation.
(WebCore::SVGSVGElement::createSVGTransformFromMatrix): Removed unneeded cast.
(WebCore::SVGSVGElement::insertedInto): Updated since timeContainer() now
returns a reference.
(WebCore::SVGSVGElement::setCurrentTime): Use isfinite instead of isnan, so
we won't store infinity as the current time.
(WebCore::SVGSVGElement::currentViewBoxRect): Renamed locals and changed
to use initializer lists for brevity.
(WebCore::SVGSVGElement::currentViewportSize): Streamlined code by using
initializer lists, using local variables only for things used more than once,
and using the / operator defined above.
(WebCore::SVGSVGElement::viewBoxToViewTransform): Use the concatenate function
in a way that is more straightforward, rather than doing it with a temporary.
(WebCore::SVGSVGElement::scrollToAnchor): Renamed this from
setupInitialView.
(WebCore::SVGSVGElement::inheritViewAttributes): Changed this to work with
references rather than pointers.
(WebCore::SVGSVGElement::getElementById): Use getAllElementsById as the
FIXME comment suggested for better efficiency when there are a lot of descendants
of the <svg> element at the cost of making it less efficient if there are
a lot of elements all with the desired ID, but not inside the <svg> element.
(WebCore::SVGSVGElement::isValid): Moved here from the header.

* svg/SVGSVGElement.h: Removed unneeded forward declarations. Moved the
animated properties to the top of the file, then other DOM, the other
public members. Changed return types to references and Ref. Moved
function bodies out of the class definition. Made createSVGNumber inline.

* svg/SVGViewElement.cpp: Removed unneeded includes.
(WebCore::SVGViewElement::isSupportedAttribute): Deleted.
(WebCore::SVGViewElement::parseAttribute): Changed to not rely on
isSupportedAttribute. Eventually I will do this in all the SVG classes.

* svg/SVGViewSpec.cpp: Removed unneeded include of SVGSVGElement.h.
(WebCore::SVGViewSpec::parseViewSpec): Updated for change in the name
of the parse function in the SVGZoomAndPan class.

* svg/SVGZoomAndPan.cpp:
(WebCore::SVGZoomAndPan::isKnownAttribute): Deleted.
(WebCore::SVGZoomAndPan::addSupportedAttributes): Deleted.
(WebCore::SVGZoomAndPan::parse): Renamed from parseZoomAndPan since
this is a member of the SVGZoomAndPan class and also has an argument
of SVGZoomAndPanType.
(WebCore::SVGZoomAndPan::parseAttributeValue): Added. Helper so the
template function is not so big. Also write it in a simpler way.
(WebCore::SVGZoomAndPan::ref): Deleted.
(WebCore::SVGZoomAndPan::deref): Deleted.
(WebCore::SVGZoomAndPan::setZoomAndPan): Deleted.

* svg/SVGZoomAndPan.h: Removed unneeded includes. Reformatted the enum.
Moved function bodies out of the class definition. Removed many unneeded
functions.

* svg/animation/SVGSMILElement.cpp:
(WebCore::SVGSMILElement::insertedInto): Updated since timeContainer
now returns a reference rather than a pointer.

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

6 years agoUnreviewed, EFL gardenging. Need to mark pointer/hover media query tests as failure.
gyuyoung.kim@samsung.com [Thu, 12 Feb 2015 04:37:17 +0000 (04:37 +0000)]
Unreviewed, EFL gardenging. Need to mark pointer/hover media query tests as failure.
These tests have been failed since r179055.

* platform/efl/TestExpectations:

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

6 years agoSVGUseElement follow-up improvements
darin@apple.com [Thu, 12 Feb 2015 03:53:48 +0000 (03:53 +0000)]
SVGUseElement follow-up improvements
https://bugs.webkit.org/show_bug.cgi?id=141382

Reviewed by Antti Koivisto.

Source/WebCore:

* loader/cache/CachedSVGDocumentClient.h: Removed unneeded forward declaration.

* page/EventHandler.cpp: Removed unneeded include of SVGUseElement.h.
* rendering/svg/RenderSVGViewportContainer.cpp: Ditto.

* svg/SVGDocumentExtensions.cpp:
(WebCore::SVGDocumentExtensions::clearTargetDependencies): Removed too-specific
check that assumed that SVG elements in shadow trees are always for <use> elements.
This amounted to an unneeded optimization that could be removed with no bad effect.

* svg/SVGElement.cpp:
(WebCore::SVGElement::correspondingElement): Removed the assertions so this could
be used more freely outside of cases where the shadow tree state is fully consistent.
It's fine to have this just be a mechanical getter; there's nothing super-tricky
here that needs to be caught by the assertion.
(WebCore::SVGElement::title): Removed unneeded special handling for titles inside
the shadow tree.

* svg/SVGGElement.cpp:
(WebCore::SVGGElement::create): Added an overload that doesn't require explicitly
passing in the tag name.
* svg/SVGGElement.h: Ditto.
* svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::create): Ditto.
* svg/SVGSVGElement.h: Ditto.

* svg/SVGUseElement.cpp: Removed a lot of unneeded includes.
(WebCore::SVGUseElement::SVGUseElement): Removed code to initialize some booleans.
We do that in the class definition now.
(WebCore::SVGUseElement::create): Removed the code that calls the
ensureUserAgentShadowRoot function unconditionally. That's properly done when
needed; no need to do it here.
(WebCore::SVGUseElement::~SVGUseElement): Removed unneeded code to destroy the
shadow tree (that happens automatically) and simplified the code to stop loading
the external document.
(WebCore::SVGUseElement::isSupportedAttribute): Deleted.
(WebCore::SVGUseElement::parseAttribute): Simplified this. Removed assumptions
about the intersection of various sets of attributes, and also removed the
isSupportedAttribute function. This seems to serve no purpose here, or in any
other SVG element class. I plan to remove it everywhere over time.
(WebCore::isWellFormedDocument): Deleted.
(WebCore::SVGUseElement::insertedInto): Simplified code by removing all the
special cases during initial parsing, and did the invalidation here rather than
deferring it to didNotifySubtreeInsertions. Added a call to the new function,
updateExternalDocument, since that won't do anything when the element is not
in a document.
(WebCore::SVGUseElement::didNotifySubtreeInsertions): Deleted.
(WebCore::SVGUseElement::removedFrom): Added code to call clearShadowTree and
updateExternalDocument. Both are efficient when doing nothing, and both are
appropriate since the element is no longer in a document.
(WebCore::SVGUseElement::referencedDocument): Deleted. No longer needed.
(WebCore::SVGUseElement::externalDocument): Streamlined the logic here, removing
multiple unneeded checks.
(WebCore::SVGUseElement::transferSizeAttributesToTargetClone): Renamed since
"target clone" is clear enough within this class, without explicitly stating
"shadow tree". All the clones are in the shadow tree.
(WebCore::SVGUseElement::svgAttributeChanged): Removed unneeded code calling
isSupportedAttribute. Changed the code that detects changes in href to just
call updateExternalDocument (for the document URL) and invalidateShadowTree
(for the fragment). Also updated the transferSizeAttributesToTargetClone logic
to only trigger on width and height and updated names.
(WebCore::SVGUseElement::willAttachRenderers): Updated for the new name of
m_shouldRebuildShadowTree and added a call through to the base class.
(WebCore::createAllowedElementSet): Added. A more efficient way to implement
the initialization of the set for isDisallowedElement.
(WebCore::isDisallowedElement): Simplified this by using the function above,
and also overloaded for both SVGElement and Element for a tiny efficiency boost.
(WebCore::SVGUseElement::clearShadowTree): Renamed form clearResourceReferences.
This is a much more straightforward name. Also deleted the code that sets the
m_needsShadowTreeRecreation flag to false. That should be done by the build
function, not here.
(WebCore::SVGUseElement::buildPendingResource): Made this just invalidate the
shadow tree now instead of explicitly building it.
(WebCore::SVGUseElement::updateShadowTree): Moved the code to create a shadow
tree here from buildPendingResource. ALso changed the logic so that we
always blow away the old shadow tree. Moved the comment about rebuilding things
every time here. Updated the code to use the findTarget and cloneTarget functions,
eliminating the buildShadowTree function entirely. Moved the call to
transferSizeAttributesToShadowTreeTargetClone inside cloneTarget. Also updated
for the name change for m_shouldRebuildShadowTree.
(WebCore::SVGUseElement::targetClone): Renamed from shadowTreeTargetClone.
No need to emphasize "shadow tree" since that's where all clones are.
(WebCore::isDirectReference): Streamlined a bit using "using namespace".
(WebCore::SVGUseElement::toClipPath): Rewrote to use early return and updated
for name changes. Also used ASCIILiteral.
(WebCore::SVGUseElement::rendererClipChild): Changed local variable names.
(WebCore::removeDisallowedElementsFromSubtree): Wrote the iteration in a
slightly more idiomatic style.
(WebCore::SVGUseElement::findTarget): Added. This new function implements
the rule for finding a valid target for a use element. This replaces logic
that was duplicated in two different places and it also includes all the
rules that were formerly in the isValidTarget function. Also, this implements
a correct check for a cycle that handles cases the code in isValidTarget did not.
(WebCore::SVGUseElement::isValidTarget): Deleted.
(WebCore::SVGUseElement::cloneTarget): Added. Helper function used both when
cloning the target of the top level <use> elements and for other <use> elements
inside the shadow tree.
(WebCore::cloneDataAndChildren): Added. Helper function that allows both the
<use> and <symbol> element expanding functions to be shorter and share more code.
(WebCore::SVGUseElement::expandUseElementsInShadowTree): Removed unneeded checks
of cachedDocumentIsStillLoading. Used the new findTarget function, which handles
finding the target cross-document correctly. Removed the incorrect use of
referencedDocument when creating new elements and finding targets. Refactored
to use the new cloneDataAndChildren function and also moved the code that removes
the special attributes here, replacing the transferAttributesToShadowTreeReplacement
function. Made a few other simplifications.
(WebCore::SVGUseElement::expandSymbolElementsInShadowTree): Ditto, just like the
<use> changes only simpler.
(WebCore::SVGUseElement::transferEventListenersToShadowTree): Made this const.
Removed unneeded assertions.
(WebCore::SVGUseElement::invalidateShadowTree): Updated for name change.
(WebCore::SVGUseElement::invalidateDependentShadowTrees): Removed assertion.
(WebCore::SVGUseElement::transferAttributesToShadowTreeReplacement): Deleted.
(WebCore::SVGUseElement::selfHasRelativeLengths): Tweaked names.
(WebCore::SVGUseElement::notifyFinished): Removed the inDocument check, since
this function will only be called for elements that are in a document.
(WebCore::SVGUseElement::cachedDocumentIsStillLoading): Deleted.
(WebCore::SVGUseElement::finishParsingChildren): Removed the code that calls
buildPendingResource here. Shadow tree updating is driven solely by renderer
generation now.
(WebCore::SVGUseElement::updateExternalDocument): Replaced setCachedDocument
with this. This function knows how to load a different document if the URL
has changed, or leave it alone if not, and also stop the load if it should.
(WebCore::SVGUseElement::isValid): Moved this here from the header, since it's
always being called virtually.
(WebCore::SVGUseElement::haveLoadedRequiredResources): Ditto.
(WebCore::SVGUseElement::setHaveFiredLoadEvent): Ditto.
(WebCore::SVGUseElement::haveFiredLoadEvent): Ditto.
(WebCore::SVGUseElement::svgLoadEventTimer): Ditto.

* svg/SVGUseElement.h: Removed unneeded include. Moved the animated properties
to the top of the class because they are public DOM API and so are logical to
list first. I'd like to do that for other classes too over time. Changed to
derive privately from CachedSVGDocumentClient. Made the function
invalidateDependentShadowTrees private. Removed didNotifySubtreeInsertions,
isSupportedAttribute, clearResourceReferences, buildShadowTree,
transferAttributesToShadowTreeReplacement, isParserInserted, and
m_wasInsertedByParser. Added updateExternalDocument, cloneTarget, targetClone,
updateShadowTree, and clearShadowTree. Also did a couple other renames,
including renaming m_cachedDocument to m_externalDocument.

* svg/svgtags.in: Removed constructorNeedsCreatedByParser from the <use>
element since we don't have to handle constructing by the parser specially.

LayoutTests:

Modified some tests to be reference tests since the change in implementation slightly changed
the behavior, but not in a way that matters. Other similar updates.

* TestExpectations: Expect a progression in imported/mozilla/svg/dynamic-use-02.svg.

* platform/gtk/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.png: Removed.
* platform/gtk/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Removed.
* platform/gtk/svg/custom/use-property-synchronization-crash-expected.png: Removed.
* platform/ios-sim-deprecated/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Removed.
* platform/ios-simulator/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Removed.
* platform/mac-mountainlion/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Removed.
* platform/mac/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.png: Removed.
* platform/mac/svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.txt: Removed.
* platform/mac/svg/custom/use-property-synchronization-crash-expected.png: Removed.

* svg/animations/use-animate-width-and-height-expected.txt: Updated to expect the new expression
name from the modified test.
* svg/animations/use-animate-width-and-height.html: THe state of the shadow root now depends on
layout, so force layout before inspecting it.

* svg/custom/relative-sized-shadow-tree-content-with-symbol-expected.xhtml: Added.
* svg/custom/relative-sized-shadow-tree-content-with-symbol.xhtml: Made this no longer be a
repaint test. Not sure why we are using those in so many cases. Also made it be a reference test.

* svg/custom/use-property-synchronization-crash-expected.svg: Added.
* svg/custom/use-property-synchronization-crash-expected.txt: Removed.

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

6 years agoUnreviewed, EFL gardening. Mark multi-column failing tests to Failure.
gyuyoung.kim@samsung.com [Thu, 12 Feb 2015 03:46:18 +0000 (03:46 +0000)]
Unreviewed, EFL gardening. Mark multi-column failing tests to Failure.
Those tests have been failing since r167808.

* platform/efl/TestExpectations:

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

6 years agoCSS selector JIT compilation support for :lang()
diorahman@rockybars.com [Thu, 12 Feb 2015 02:33:54 +0000 (02:33 +0000)]
CSS selector JIT compilation support for :lang()
https://bugs.webkit.org/show_bug.cgi?id=140818

Reviewed by Benjamin Poulain.

Source/WebCore:

Add the JIT support for :lang(), to ensure :lang() no longer force the engine to
the slow path.

Test: fast/selectors/lang-chained-multiple.html

* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addPseudoClassType):
Get rid of the FunctionType::CannotCompile
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementMatching):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsInLanguage):

LayoutTests:

* fast/selectors/lang-chained-multiple-expected.txt: Added.
* fast/selectors/lang-chained-multiple.html: Added.

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

6 years agoFix more weak external symbol errors.
achristensen@apple.com [Thu, 12 Feb 2015 02:25:42 +0000 (02:25 +0000)]
Fix more weak external symbol errors.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
* page/make_settings.pl:
(printGetterAndSetter):
Remove some WEBCORE_EXPORT macros.

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

6 years agoiOS build fix.
enrica@apple.com [Thu, 12 Feb 2015 01:25:20 +0000 (01:25 +0000)]
iOS build fix.

Unreviewed.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView inputAssistantItem]):
(-[WKContentView _inputAssistantItem]):

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

6 years agoDo not export functions defined in headers.
achristensen@apple.com [Thu, 12 Feb 2015 01:09:50 +0000 (01:09 +0000)]
Do not export functions defined in headers.
This prevents weak external symbol errors in some configurations.

* dom/Range.h:
(WebCore::Range::startContainer):
(WebCore::Range::startOffset):
(WebCore::Range::endContainer):
(WebCore::Range::endOffset):
* inspector/InspectorController.h:
* page/Settings.h:
(WebCore::Settings::setMediaKeysStorageDirectory):
* page/make_settings.pl:
(printGetterAndSetter):
* platform/network/cocoa/ProtectionSpaceCocoa.h:
(WebCore::ProtectionSpace::encodingRequiresPlatformData):
* platform/text/TextEncoding.h:
(WebCore::TextEncoding::decode):
Removed WEBCORE_EXPORT macros.

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

6 years agoWeb Inspector: REGRESSION: Clicking selected item in the sidebar second time should...
commit-queue@webkit.org [Thu, 12 Feb 2015 00:46:21 +0000 (00:46 +0000)]
Web Inspector: REGRESSION: Clicking selected item in the sidebar second time should scroll to the corresponding line
https://bugs.webkit.org/show_bug.cgi?id=140280

Patch by Nikita Vasilyev <nvasilyev@apple.com> on 2015-02-11
Reviewed by Brian Burg.

* UserInterface/Views/ContentViewContainer.js:
(WebInspector.ContentViewContainer.prototype.showContentView):
Perform scolling regardless of the navigation history. Since scrolling source code doesn't introduce a BackForwardEntry,
it's possible that the actual content view has a different scroll position.

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

6 years ago[WK2] Add logging to validate the network cache efficacy (Part 2)
cdumez@apple.com [Wed, 11 Feb 2015 23:57:31 +0000 (23:57 +0000)]
[WK2] Add logging to validate the network cache efficacy (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=141345
<rdar://problem/19632080>

Reviewed by Sam Weinig.

Source/WebCore:

Add a few more diagnostic logging keys for the network cache efficacy
logging.

Source/WebKit2:

Add diagnostic logging messages to validate the network cache efficacy.
The following 4 messages are added:
- networkCache / retrieval / success
- networkCache / retrieval / unhandledRequestFailure
- networkCache / retrieval / noLongerInCacheFailure
- networkCache / retrieval / unusableCachedEntryFailure

The messages are sent via IPC from the NetworkProcess to the UIProcess,
where the WebPageProxy code already handles diagnostic messages sent by
the WebProcess.

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

6 years agoREGRESSION(r179166): Crash when accessing document.dir on a document with no elements
weinig@apple.com [Wed, 11 Feb 2015 23:40:13 +0000 (23:40 +0000)]
REGRESSION(r179166): Crash when accessing document.dir on a document with no elements
<rdar://problem/19804351>
https://bugs.webkit.org/show_bug.cgi?id=141480

Reviewed by Chris Dumez.

Source/WebCore:

Test: fast/dom/document-dir-empty-document-crash.html

* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::dir):
Don't unnecessarily dereference the documentElement. is<HTMLHtmlElement>() will handle null just fine.

LayoutTests:

* fast/dom/document-dir-empty-document-crash-expected.txt: Added.
* fast/dom/document-dir-empty-document-crash.html: Added.

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

6 years ago<https://webkit.org/b/141492> extract-localizable-strings.pl shouldn't update the...
mrowe@apple.com [Wed, 11 Feb 2015 23:14:30 +0000 (23:14 +0000)]
<https://webkit.org/b/141492> extract-localizable-strings.pl shouldn't update the target file if the contents haven't changed

Avoid updating the target file if the contents haven't changed. This prevents Xcode from copying the identical
file into the framework and resigning it, which avoids the resulting relinking of all targets that depend on
the framework.

Reviewed by Dan Bernstein.

* extract-localizable-strings.pl: Write our output to a temporary file. If the output differs from the
existing contents of the target file, move the temporary file over the target file. Otherwise, delete
the temporary file.

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