gyuyoung.kim@samsung.com [Fri, 18 Apr 2014 00:35:08 +0000 (00:35 +0000)]
Unreviewed, fix a test case path, which was moved to different folder.
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Fri, 18 Apr 2014 00:01:59 +0000 (00:01 +0000)]
[iOS WebKit2] support replacements for misspelled words.
https://bugs.webkit.org/show_bug.cgi?id=131827
<rdar://problem/
16319657>
Reviewed by Benjamin Poulain.
This is the first part of the work to add support for replacements.
It handles _promptForReplace in canPerformAction to decide
whether to show the Replace button in the menu and add the
implementation of the replace action.
* Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
* Shared/EditorState.h:
(WebKit::EditorState::EditorState):
* UIProcess/WebPageProxy.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView selectedText]):
(-[WKContentView replaceText:withText:]):
(-[WKContentView _promptForReplace:]):
(-[WKContentView replace:]):
(-[WKContentView canPerformAction:withSender:]):
(-[WKContentView selectWordForReplacement]): This is called
by UIKit when the user taps on a mispelled word to select it.
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::replaceSelectedText):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::editorState):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::selectWithGesture): Removed m_shouldReturnWordForSelection.
We now return always the word corresponding to the caret selection or
the selected text up to a maximum of 200 characters.
(WebKit::WebPage::extendSelection):
(WebKit::WebPage::replaceSelectedText):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 23:33:32 +0000 (23:33 +0000)]
InlineCallFrameSet should be refcounted
https://bugs.webkit.org/show_bug.cgi?id=131829
Reviewed by Geoffrey Garen.
And DFG::Plan should hold a ref to it. Previously it was owned by Graph until it
became owned by JITCode. Except that if we're "failing" to compile, JITCode may die.
Even as it dies, the GC may still want to scan the DFG::Plan, which leads to scanning
the DesiredWriteBarriers, which leads to scanning the InlineCallFrameSet.
So, just make the darn thing refcounted.
* bytecode/InlineCallFrameSet.h:
* dfg/DFGArgumentsSimplificationPhase.cpp:
(JSC::DFG::ArgumentsSimplificationPhase::run):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
* dfg/DFGCommonData.h:
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::requiredRegisterCountForExit):
* dfg/DFGGraph.h:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::Plan):
* dfg/DFGPlan.h:
* dfg/DFGStackLayoutPhase.cpp:
(JSC::DFG::StackLayoutPhase::run):
* ftl/FTLFail.cpp:
(JSC::FTL::fail):
* ftl/FTLLink.cpp:
(JSC::FTL::link):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Thu, 17 Apr 2014 23:32:09 +0000 (23:32 +0000)]
Rollout: Add a way to cache never-changing IDL attributes in the wrapper.
<https://webkit.org/b/131759>
This behavior may be observable from the web, so we can't do it this way.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/*:
* dom/Element.idl:
* dom/Node.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Thu, 17 Apr 2014 23:29:42 +0000 (23:29 +0000)]
[iOS] REGRESSION (r166975): WKPDFView is broken
https://bugs.webkit.org/show_bug.cgi?id=131828
Reviewed by Simon Fraser.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:WebKit::]):
Bail from updating the scroll view parameters from the layer tree update
while it's being managed by a custom content view.
We'll get any changes again in the next commit after removing the custom
content view (and painting the new page) anyway, so this should be OK.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Thu, 17 Apr 2014 23:21:41 +0000 (23:21 +0000)]
Cheesy Mountain Lion build fix.
* platform/MemoryPressureHandler.h:
(WebCore::MemoryPressureHandler::ReliefLogger::logString):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 17 Apr 2014 23:06:02 +0000 (23:06 +0000)]
[New Multicolumn] Column rules don't respect the specified stacking order.
https://bugs.webkit.org/show_bug.cgi?id=131804
Reviewed by Beth Dakin.
Source/WebCore:
Added fast/multicol/newmulticol/compare_with_old_impl/column-rules-stacking.html
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::paintBoxDecorations):
* rendering/RenderBlockFlow.h:
Override paintBoxDecorations for block flows so that we can iterate over our column sets
and paint their rules just after painting our background and border. We can't wait until
the child column sets paint their backgrounds, since that is specified as being above negative
z-index children. We have to pretend that the column sets don't exist as
far as column rule painting is concerned.
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::paintObject): Deleted.
* rendering/RenderMultiColumnSet.h:
Turn paintObject in RenderMultiColumnSet into an override that doesn't paint anything.
LayoutTests:
* fast/multicol/newmulticol/compare-with-old-impl/column-rules-stacking-expected.html: Added.
* fast/multicol/newmulticol/compare-with-old-impl/column-rules-stacking.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin@apple.com [Thu, 17 Apr 2014 22:58:56 +0000 (22:58 +0000)]
Hit-testing is incorrect for plugins inside iframes when there is a
topContentInset
https://bugs.webkit.org/show_bug.cgi?id=131826
-and corresponding-
<rdar://problem/
16649996>
Reviewed by Tim Horton.
I missed one coordinate-conversion spot when getting hit-testing to work. Like
headerHeight() which also manipulates the location of the root layer,
topContentInset() has to be factored into all of these conversions.
* page/FrameView.cpp:
(WebCore::FrameView::convertFromRenderer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
psolanki@apple.com [Thu, 17 Apr 2014 22:39:18 +0000 (22:39 +0000)]
_webProcessIdentifier should return 0 if the web process crashed
https://bugs.webkit.org/show_bug.cgi?id=131813
<rdar://problem/
16650605>
Reviewed by Anders Carlsson.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _hasWebProcess]):
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 22:30:46 +0000 (22:30 +0000)]
FTL::fail() should manage memory "correctly"
https://bugs.webkit.org/show_bug.cgi?id=131823
<rdar://problem/
16384297>
Reviewed by Oliver Hunt.
* ftl/FTLFail.cpp:
(JSC::FTL::fail):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 22:25:53 +0000 (22:25 +0000)]
Prediction propagator should correctly model Int52s flowing through arguments
https://bugs.webkit.org/show_bug.cgi?id=131822
<rdar://problem/
16641408>
Reviewed by Oliver Hunt.
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* tests/stress/int52-argument.js: Added.
(foo):
* tests/stress/int52-variable.js: Added.
(foo):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Thu, 17 Apr 2014 21:32:17 +0000 (21:32 +0000)]
Stub out MemoryPressureHandler::ReliefLogger on older OS X'es.
* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::ReliefLogger::platformLog):
(WebCore::MemoryPressureHandler::ReliefLogger::platformMemoryUsage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167454
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 21:10:29 +0000 (21:10 +0000)]
Don't include CompilationThread.h from StringImpl.h
https://bugs.webkit.org/show_bug.cgi?id=131817
Reviewed by Simon Fraser.
* wtf/CompilationThread.h:
* wtf/StdLibExtras.h:
* wtf/text/StringImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 21:05:43 +0000 (21:05 +0000)]
REGRESSION: ASSERT(!typeInfo().hasImpureGetOwnPropertySlot() || typeInfo().newImpurePropertyFiresWatchpoints()) on jquery tests
https://bugs.webkit.org/show_bug.cgi?id=131798
Reviewed by Alexey Proskuryakov.
Some day, we will fix https://bugs.webkit.org/show_bug.cgi?id=131810 and some version
of this assertion can return. For now, it's not clear that the assertion is guarding
any truly undesirable behavior - so it should just go away and be replaced with a
FIXME.
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeForStubInfo):
* runtime/Structure.h:
(JSC::Structure::takesSlowPathInDFGForImpureProperty):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167452
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
krit@webkit.org [Thu, 17 Apr 2014 20:32:19 +0000 (20:32 +0000)]
Remove CANVAS_PATH where possible
https://bugs.webkit.org/show_bug.cgi?id=131788
Reviewed by Dean Jackson.
Since Firefox and Chrome ship the same interoperable subset of Path2D soon,
it is time to remove CANVAS_PATH where possible.
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::clip):
(WebCore::CanvasRenderingContext2D::isPointInStroke):
* html/canvas/CanvasRenderingContext2D.h:
* html/canvas/CanvasRenderingContext2D.idl:
* html/canvas/DOMPath.h:
* html/canvas/DOMPath.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
b.long@cablelabs.com [Thu, 17 Apr 2014 20:31:13 +0000 (20:31 +0000)]
[GStreamer] Store TrackPrivateBaseGStreamer's label and language as AtomicStrings
https://bugs.webkit.org/show_bug.cgi?id=130404
Reviewed by Philippe Normand.
No new tests, this just makes things more efficient.
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::getLanguageCode):
(WebCore::TrackPrivateBaseGStreamer::getTag):
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167450
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Thu, 17 Apr 2014 20:25:53 +0000 (20:25 +0000)]
Fix Cocoa build.
* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::ReliefLogger::platformMemoryUsage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cabanier@adobe.com [Thu, 17 Apr 2014 20:24:43 +0000 (20:24 +0000)]
[CSS Blending] Remove the -webkit- prefix for mix-blend-mode and isolation CSS properties
https://bugs.webkit.org/show_bug.cgi?id=131355
Reviewed by Dean Jackson.
Source/WebCore:
Removed webkit prefix from mix-blend-mode and isolation. These properties
never shipped and their spec is now in CR.
Covered by existing tests.
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
* css/CSSPropertyNames.in:
* css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
LayoutTests:
Removed prefix from mix-blend-mode and isolation in layout tests.
* css3/compositing/blend-mode-accelerated-with-multiple-stacking-contexts.html:
* css3/compositing/blend-mode-ancestor-clipping-layer.html:
* css3/compositing/blend-mode-background.html:
* css3/compositing/blend-mode-blended-element-overlapping-composited-sibling-should-have-compositing-layer.html:
* css3/compositing/blend-mode-isolated-group-1.html:
* css3/compositing/blend-mode-isolated-group-2.html:
* css3/compositing/blend-mode-isolated-group-3.html:
* css3/compositing/blend-mode-layers.html:
* css3/compositing/blend-mode-parent-of-composited-blended-has-layer.html:
* css3/compositing/blend-mode-property-expected.txt:
* css3/compositing/blend-mode-property-parsing-expected.txt:
* css3/compositing/blend-mode-property-parsing-invalid-expected.txt:
* css3/compositing/blend-mode-reflection.html:
* css3/compositing/blend-mode-simple-composited.html:
* css3/compositing/blend-mode-simple.html:
* css3/compositing/blend-mode-transform-style-expected.txt:
* css3/compositing/blend-mode-transform-style.html:
* css3/compositing/blend-mode-with-accelerated-sibling.html:
* css3/compositing/blend-mode-with-composited-descendant-should-have-layer.html:
* css3/compositing/isolation-isolate-blended-child-expected.html:
* css3/compositing/isolation-isolate-blended-child.html:
* css3/compositing/isolation-parsing.html:
* css3/compositing/script-tests/blend-mode-property-parsing-invalid.js:
(testInvalidFilterRule):
* css3/compositing/script-tests/blend-mode-property-parsing.js:
(testBlendModeRule):
* css3/compositing/script-tests/blend-mode-property.js:
(testblendmode):
* css3/compositing/svg-blend-color-dodge.html:
* css3/compositing/svg-blend-color.html:
* css3/compositing/svg-blend-hard-light.html:
* css3/compositing/svg-blend-hue.html:
* css3/compositing/svg-blend-layer-blend.html:
* css3/compositing/svg-blend-layer-clip-path.html:
* css3/compositing/svg-blend-layer-filter.html:
* css3/compositing/svg-blend-layer-opacity.html:
* css3/compositing/svg-blend-layer-shadow.html:
* css3/compositing/svg-blend-luminosity.html:
* css3/compositing/svg-blend-multiply-alpha.html:
* css3/compositing/svg-blend-multiply.html:
* css3/compositing/svg-blend-saturation.html:
* css3/compositing/svg-blend-screen.html:
* css3/compositing/svg-blend-soft-light.html:
* css3/compositing/svg-isolation-default-expected.html:
* css3/compositing/svg-isolation-default.html:
* css3/compositing/svg-isolation-isolated-group-expected.html:
* css3/compositing/svg-isolation-isolated-group.html:
* fast/repaint/blend-mode-isolate-stacking-context.html:
* inspector-protocol/layers/layers-blending-compositing-reasons.html:
* transitions/blendmode-transitions-expected.txt:
* transitions/blendmode-transitions.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Thu, 17 Apr 2014 19:39:22 +0000 (19:39 +0000)]
Tidy up isIsolatedInline() and highestContainingIsolateWithinRoot()
<http://webkit.org/b/131117>
Reviewed by Daniel Bates.
Based on review feedback for r166650.
* rendering/InlineIterator.h:
(WebCore::isIsolatedInline):
- Switch argument to a reference since it is never called with a
nullptr.
(WebCore::highestContainingIsolateWithinRoot):
- Switch first argument to a reference since it's never a
nullptr.
- Use nullptr for pointer initialization.
- Switch while() loop to for() loop. Pass reference to
isIsolatedInline().
(WebCore::numberOfIsolateAncestors):
- Switch while() loop to for() loop. Pass reference to
isIsolatedInline().
* rendering/RenderBlockLineLayout.cpp:
(WebCore::constructBidiRunsForSegment):
- Rename startObj to startObject.
- No longer need to pass the address of startObject here.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 17 Apr 2014 19:27:28 +0000 (19:27 +0000)]
Fix build bustage.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167446
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Thu, 17 Apr 2014 19:19:58 +0000 (19:19 +0000)]
Log number of bytes reclaimed at each step of memory pressure relief.
<https://webkit.org/b/131751>
Reviewed by Antti Koivisto.
* platform/MemoryPressureHandler.h:
* platform/MemoryPressureHandler.cpp:
(WebCore::MemoryPressureHandler::ReliefLogger::platformLog):
(WebCore::MemoryPressureHandler::ReliefLogger::platformMemoryUsage):
(WebCore::MemoryPressureHandler::ReliefLogger::ReliefLogger):
(WebCore::MemoryPressureHandler::ReliefLogger::~ReliefLogger):
* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandlerCocoa::ReliefLogger::platformMemoryUsage):
(WebCore::MemoryPressureHandlerCocoa::ReliefLogger::platformLog):
Add a simple RAII helper to check memory usage before and after
a block of code, and then dump the delta to system log.
(WebCore::MemoryPressureHandler::releaseMemory):
* platform/cocoa/MemoryPressureHandlerCocoa.mm:
(WebCore::MemoryPressureHandler::platformReleaseMemory):
Use ReliefLogger to annotate the various attempts to reduce
our memory footprint. This will help us understand the efficiency
of our current strategy.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167445
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 17 Apr 2014 18:48:15 +0000 (18:48 +0000)]
[New Multicolumn] columnNumberForOffset is not patched for new multicolumn code yet.
https://bugs.webkit.org/show_bug.cgi?id=131740
Reviewed by Enrica Casucci.
I took the opportunity to clean this code up while adding support for the new columns.
columnNumberForOffset only applied for paginated RenderViews and was really about
pages and not columns. It also only returns an actual page number if the columns are
block progressed (e.g., right-to-left vertical Japanese books).
Therefore I renamed columnNumberForOffset to pageNumberForBlockProgressionOffset and
moved it to RenderView.
I also renamed the member variable of SelectionRect to be pageNumber instead of
columnNumber in order to make it more obvious that this isn't about columns per se
(since the fact that we implemented RenderView's pagination mode using columns is an
implementation detail).
* dom/Range.cpp:
(WebCore::coalesceSelectionRects):
(WebCore::Range::collectSelectionRects):
* platform/ios/SelectionRect.h:
(WebCore::SelectionRect::pageNumber):
(WebCore::SelectionRect::columnNumber): Deleted.
* rendering/RenderImage.cpp:
(WebCore::RenderImage::collectSelectionRects):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::collectSelectionRects):
(WebCore::RenderObject::columnNumberForOffset): Deleted.
* rendering/RenderObject.h:
* rendering/RenderText.cpp:
(WebCore::RenderText::collectSelectionRects):
* rendering/RenderView.cpp:
(WebCore::RenderView::pageNumberForBlockProgressionOffset):
* rendering/RenderView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167444
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Thu, 17 Apr 2014 18:26:58 +0000 (18:26 +0000)]
[Win] Unreviewed 64-bit build fix.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Do not
export 32-bit symbol in 64-bit build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167443
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Thu, 17 Apr 2014 18:14:12 +0000 (18:14 +0000)]
[Win] A few final cleanups to the DataObject classes.
https://bugs.webkit.org/show_bug.cgi?id=131784
Reviewed by Anders Carlsson.
Source/WebCore:
* platform/win/WCDataObject.cpp:
(WebCore::WCDataObject::clearData): Use 'last()' method.
Tools:
* DumpRenderTree/win/DRTDataObject.cpp:
(DRTDataObject::clearData): Use 'last()' method.
* DumpRenderTree/win/UIDelegate.cpp:
(DRTUndoStack::pop): Use 'takeLast()' method.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167442
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Thu, 17 Apr 2014 17:59:26 +0000 (17:59 +0000)]
Fullscreen media controls are unusable in pagination mode
https://bugs.webkit.org/show_bug.cgi?id=131705
Reviewed by Darin Adler.
Source/WebCore:
When pagination mode is enabled, the full screen media will (depending on the width of the
pagination columns) overflow its column, and hit testing will be clipped to the column. In extreme
cases, where the column width < 0.5 * media element width, the media controls will be entirely
unclickable.
Rather than making the RenderFullScreen a child of the full screen element's parent's renderer,
make it a child of the RenderView, putting it outside of the columns entirely. Always create and
insert the fullscreenRenderer's placeholder, using it as the remembered insertion point for the
fullscreen element's renderer when we exit full screen.
Drive-by fix: don't wrap the full screen element's renderer in webkitWillEnterFullScreenForElement();
it will just be re-wrapped in createRendererIfNeeded().
* dom/Document.cpp:
(WebCore::Document::webkitWillEnterFullScreenForElement): Don't wrap the full screen element's renderer.
(WebCore::Document::setFullScreenRenderer): Call setPlaceholderStyle.
* rendering/RenderFullScreen.cpp:
(WebCore::RenderFullScreenPlaceholder::willBeDestroyed): Call clearPlaceholder.
(WebCore::RenderFullScreen::wrapRenderer): Make fullscreenRenderer a child of the view().
(WebCore::RenderFullScreen::unwrapRenderer): Return the children to the parent of the placeholder().
(WebCore::RenderFullScreen::clearPlaceholder): Renamed from setPlaceholder().
(WebCore::RenderFullScreen::ensurePlaceholder): Added.
(WebCore::RenderFullScreen::setPlaceholderStyle): Renamed from createPlaceholder().
(WebCore::RenderFullScreen::setPlaceholder): Deleted.
(WebCore::RenderFullScreen::createPlaceholder): Deleted.
* rendering/RenderFullScreen.h:
LayoutTests:
* fullscreen/full-screen-no-style-sharing-expected.txt: Rebaselined.
* fullscreen/video-cursor-auto-hide.html: Corrected test to move cursor
to the middle of the video element.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167441
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jer.noble@apple.com [Thu, 17 Apr 2014 17:54:59 +0000 (17:54 +0000)]
[MSE] Multiple initialization segments with same codecs in tracks fail validation.
https://bugs.webkit.org/show_bug.cgi?id=131768
Source/WebCore:
Additional initialization segments added to the same SourceBuffer with the same
codec values will fail validation. Update the validation check to add the correct
codec information for the initial segment, and check against the correct codecs during
the validation step.
Additionally, after validation, if successful update the Audio, Video, and TextTracks
for the SourceBuffer with the updated initialization segment information.
Reviewed by Eric Carlson.
Test: media/media-source/media-source-multiple-initialization-segments.html
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::appendBufferTimerFired): m_source may have been cleared
as a result of the append, so check it before using.
(WebCore::SourceBuffer::sourceBufferPrivateDidEndStream): Call streamEndedWithError
instead of endOfStream as the latter is safe to call within an update.
(WebCore::SourceBuffer::sourceBufferPrivateDidReceiveInitializationSegment): Ditto.
Update the track lists if validation succeeds.
(WebCore::SourceBuffer::validateInitializationSegment): Switch the audio and video
codec checks.
Add the ability for Audio, Video, and InbandTextTracks to replace their private tracks:
* html/track/AudioTrack.cpp:
(WebCore::AudioTrack::AudioTrack): Call updateKindFromPrivate().
(WebCore::AudioTrack::setPrivate):
(WebCore::AudioTrack::updateKindFromPrivate): Split out from constructor.
* html/track/AudioTrack.h:
* html/track/InbandTextTrack.cpp:
(WebCore::InbandTextTrack::InbandTextTrack): Call updateKindFromPrivate().
(WebCore::InbandTextTrack::setPrivate):
(WebCore::InbandTextTrack::setMode): Split up into setModeInternal().
(WebCore::InbandTextTrack::setModeInternal): Broke out from setMode().
(WebCore::InbandTextTrack::updateKindFromPrivate): Split out from constructor.
* html/track/InbandTextTrack.h:
* html/track/TextTrack.h:
(WebCore::TextTrack::isInband): Added, returns false.
* html/track/VideoTrack.cpp:
(WebCore::VideoTrack::VideoTrack): Call updateKindFromPrivate().
(WebCore::VideoTrack::setPrivate):
(WebCore::VideoTrack::updateKindFromPrivate): Split out from constructor.
* html/track/VideoTrack.h:
LayoutTests:
Reviewed by Eric Carlson.
* media/media-source/media-source-multiple-initialization-segments-expected.txt: Added.
* media/media-source/media-source-multiple-initialization-segments.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167440
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 17 Apr 2014 17:53:40 +0000 (17:53 +0000)]
[New Multicolumn] Column sets below spanners don't repaint properly.
https://bugs.webkit.org/show_bug.cgi?id=131778
Reviewed by Beth Dakin.
Source/WebCore:
Added fast/repaint/spanner-with-margins.html.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeRectForRepaint):
Turn off some code that was running for in-flow RenderFlowThreads that made no sense.
I'm not convinced the code is right for other types of RenderFlowThreads either,
but will leave that to the named flow thread experts. :)
LayoutTests:
* fast/repaint/spanner-with-margin-expected.txt: Added.
* fast/repaint/spanner-with-margin.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167439
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrobinson@webkit.org [Thu, 17 Apr 2014 17:52:23 +0000 (17:52 +0000)]
[GTK] [Gardening] Updates GTK test expectations
Patch by Eduardo Lima Mitev <elima@igalia.com> on 2014-04-17
* platform/gtk/TestExpectations:
- Marked as flaky
- fast/frames/frame-programmatic-noresize.html
- fast/frames/frame-with-noresize-can-be-resized-after-removal-of-noresize.html
- fast/frames/frame-with-noresize-can-be-resized-after-setting-noResize-to-false.html
- Removed because are passing now
- fast/dom/gc-dom-tree-lifetime.html
- http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials.html
- editing/editability/ignored-content.html
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167438
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 17 Apr 2014 17:41:38 +0000 (17:41 +0000)]
Catch up ruby and its tag omission rule changes in HTML5 CR Feb 2014
https://bugs.webkit.org/show_bug.cgi?id=131175
Patch by Koji Ishii <kojishi@gmail.com> on 2014-04-17
Reviewed by Darin Adler.
Source/WebCore:
Tests: html5lib/resources/ruby.dat
html5lib/resources/tests19.dat
This patch makes WebKit HTML parser to match to the tag omission rules of HTML5 CR Feb 2014:
http://www.w3.org/TR/2014/CR-html5-
20140204/syntax.html#syntax-tag-omission
with the support for two new elements (rb, rtc) which were also defined in the spec:
http://www.w3.org/TR/2014/CR-html5-
20140204/text-level-semantics.html#the-rb-element
http://www.w3.org/TR/2014/CR-html5-
20140204/text-level-semantics.html#the-rtc-element
to better support use cases presented by W3C I18N WG:
http://www.w3.org/TR/ruby-use-cases/
* html/HTMLTagNames.in: rb and rtc added as HTMLElement interfaces.
* html/parser/HTMLConstructionSite.cpp:
(WebCore::hasImpliedEndTag): the spec says rb and rtc have implied end tags.
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processStartTagForInBody): rb and rtc added. rt excludes rtc from its implied end tags.
LayoutTests:
25 new test cases in 2 test files imported from pull requests to html5lib-tests,
with run- and expected-files generated.
All new tests pass with the changes included in this patch.
* html5lib/generated/run-ruby-data-expected.txt: Added.
* html5lib/generated/run-ruby-data.html: Added (generated by generate-test-wrappers.py)
* html5lib/generated/run-ruby-write-expected.txt: Added.
* html5lib/generated/run-ruby-write.html: Added (generated by generate-test-wrappers.py)
* html5lib/resources/ruby.dat: Added from https://github.com/darobin/html5lib-tests/pull/1
* html5lib/resources/tests19.dat: Updated from https://github.com/html5lib/html5lib-tests/pull/27
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167437
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 17 Apr 2014 17:37:40 +0000 (17:37 +0000)]
Try to fix EFL and GTK builds.
* Source/cmake/OptionsEfl.cmake: Add INDEXED_DATABASE_IN_WORKERS.
* Source/cmake/OptionsGTK.cmake: Ditto.
* Source/cmakeconfig.h.cmake: Ditto.
* Source/WebCore/workers/WorkerGlobalScope.idl: Touch file to make it rebuild,
assuming that module dependencies aren't working right with CMake. Tweaked
formatting quite a bit while I was in here.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167436
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Thu, 17 Apr 2014 17:34:52 +0000 (17:34 +0000)]
Blind attempt to fix Windows build after r166837
<http://webkit.org/b/131246>
Hoping to fix this build error:
warning MSB8027: Two or more files with the name of GCLogging.cpp will produce outputs to the same location. This can lead to an incorrect build result. The files involved are ..\heap\GCLogging.cpp, ..\heap\GCLogging.cpp.
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Fix copy-paste
boo-boo by changing the GCLogging.cpp ClCompile entry to a
GCLogging.h ClInclude entry.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167435
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Thu, 17 Apr 2014 17:04:29 +0000 (17:04 +0000)]
Don't skip inspector/dom/content-flow-list.html and inspector/dom/content-flow-content-removal.html.
First, they no longer crash/assert. They fail most of the time, but that's tracked as bug 129817.
Second, skipping was ineffective anyway, because we had a preceding [ Pass Failure ]
entry for the same files.
* TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167434
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 17:01:05 +0000 (17:01 +0000)]
AI for GetLocal should match the DFG backend, and in this case, the best way to do that is to get rid of the "exit if empty prediction" thing since it's a vestige of a time long gone
https://bugs.webkit.org/show_bug.cgi?id=131764
Reviewed by Geoffrey Garen.
The attached test case can be made to not crash by deleting old code. It used to be
the case that the DFG needed empty prediction guards, for shady reasons. We fixed that
long ago. At this point, these guards just make life difficult. So get rid of them.
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* tests/stress/bug-131764.js: Added.
(test1):
(test2):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167433
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 17 Apr 2014 17:00:21 +0000 (17:00 +0000)]
Use HashMap<unique_ptr> and Vector<unique_ptr> instead of deprecatedDeleteAllValues
https://bugs.webkit.org/show_bug.cgi?id=73757
Reviewed by Brent Fulgham.
* wtf/Vector.h:
(WTF::deprecatedDeleteAllValues): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167432
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 17 Apr 2014 16:58:33 +0000 (16:58 +0000)]
Remove use of deprecatedDeleteAllValues in NPRemoteObjectMap::pluginDestroyed
https://bugs.webkit.org/show_bug.cgi?id=122496
Reviewed by Brent Fulgham.
* Shared/Plugins/NPRemoteObjectMap.cpp:
(WebKit::NPRemoteObjectMap::pluginDestroyed): Use new-style code and write the
deprecatedDeleteAllValues function out using a loop. Might be nice to return here
and use unique_ptr instead some day, but I tried that before and got it wrong, so
lets do that another time.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167431
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
agomez@igalia.com [Thu, 17 Apr 2014 16:47:56 +0000 (16:47 +0000)]
[Win] cygwin to keep installing curl 7.33.0-1 and subversion 1.7.14-1
https://bugs.webkit.org/show_bug.cgi?id=131365
Reviewed by Brent Fulgham.
The cygwin installer is now downloading the wanted versions for
the local installation given to the setup wizard.
* CygwinDownloader/cygwin-downloader.py:
* CygwinDownloader/cygwin-downloader.zip:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167430
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 17 Apr 2014 16:45:29 +0000 (16:45 +0000)]
[New Multicolumn] REGRESSION: Column set styles don't update when zooming etc.
https://bugs.webkit.org/show_bug.cgi?id=131777
Reviewed by Enrica Casucci.
Source/WebCore:
Added fast/multicol/zoom-test.html
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::styleDidChange):
Put back in the code that propagates new styles to the flow thread and column sets
when styles change. This propagation was removed when the column span code landed.
This patch puts it back in but qualifies the types of objects that get styles
propagated to avoid accidentally propagating the wrong style to column spans.
LayoutTests:
* fast/multicol/zoom-test-expected.html: Added.
* fast/multicol/zoom-test.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167429
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 17 Apr 2014 14:53:31 +0000 (14:53 +0000)]
[EFL] Remove deprecated ewk_paint code.
https://bugs.webkit.org/show_bug.cgi?id=131266
Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-17
Reviewed by Gyuyoung Kim.
ewk_paint related code was deprecated since r166637.
Source/WebKit:
* PlatformEfl.cmake: Remove ewk_paint_context.cpp
Source/WebKit/efl:
* WebCoreSupport/AcceleratedCompositingContextEfl.cpp:
* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore::ChromeClientEfl::invalidateRootView): Deleted.
(WebCore::ChromeClientEfl::invalidateContentsAndRootView): Deleted.
(WebCore::ChromeClientEfl::invalidateContentsForSlowScroll): Deleted.
(WebCore::ChromeClientEfl::scroll): Deleted.
* WebCoreSupport/ChromeClientEfl.h:
* WebCoreSupport/InspectorClientEfl.cpp:
* ewk/ewk_paint_context.cpp: Removed.
* ewk/ewk_paint_context_private.h: Removed.
* ewk/ewk_view.cpp:
(_ewk_view_priv_del):
(_ewk_view_smart_calculate):
(ewk_view_smart_set):
(_ewk_view_repaints_resize): Deleted.
(_ewk_view_repaint_add): Deleted.
(_ewk_view_repaints_flush): Deleted.
(_ewk_view_smart_flush): Deleted.
(ewk_view_repaints_pop): Deleted.
(ewk_view_repaint_add): Deleted.
(ewk_view_paint): Deleted.
(ewk_view_paint_contents): Deleted.
(ewk_view_repaint): Deleted.
(ewk_view_scroll): Deleted.
(ewk_view_tiled_backing_store_invalidate): Deleted.
* ewk/ewk_view_private.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167428
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Thu, 17 Apr 2014 14:48:18 +0000 (14:48 +0000)]
Add separate flag for IndexedDatabase in workers since the current implementation is not threadsafe
https://bugs.webkit.org/show_bug.cgi?id=131785
rdar://problem/
16003108
Reviewed by Brady Eidson.
Source/JavaScriptCore:
* Configurations/FeatureDefines.xcconfig: Added INDEXED_DATABASE_IN_WORKERS.
Source/WebCore:
* Configurations/FeatureDefines.xcconfig: Added INDEXED_DATABASE_IN_WORKERS.
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp: Use the new conditional
instead of the old one.
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h: Ditto.
* Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl: Ditto.
Source/WebKit/mac:
* Configurations/FeatureDefines.xcconfig: Added INDEXED_DATABASE_IN_WORKERS.
Source/WebKit2:
* Configurations/FeatureDefines.xcconfig: Added INDEXED_DATABASE_IN_WORKERS.
Source/WTF:
* wtf/FeatureDefines.h: Added INDEXED_DATABASE_IN_WORKERS.
LayoutTests:
* js/dom/global-constructors-attributes-dedicated-worker-expected.txt:
* js/dom/global-constructors-attributes-shared-worker-expected.txt:
Updated results since indexed database features are not on by default any more.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167427
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 17 Apr 2014 14:41:42 +0000 (14:41 +0000)]
[GTK] Make run-webkit-tests always use WKTR
https://bugs.webkit.org/show_bug.cgi?id=131737
Patch by Adrian Perez de Castro <aperez@igalia.com> on 2014-04-17
Reviewed by Darin Adler.
Now that the GTK+ port only has support for WebKit2, instruct
run-webkit-tests to always use WKTR. This avoids needing to pass
flag "-2" every time.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options): Always set webkit_test_runner when
the platform is GTK+.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167426
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Thu, 17 Apr 2014 14:00:17 +0000 (14:00 +0000)]
Source/WebCore: WebCore part of <rdar://problem/
16601336> [Cocoa] _userInitiated is always NO in WKNavigationAction passed to -webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:
https://bugs.webkit.org/show_bug.cgi?id=131783
Reviewed by Tim Horton.
* loader/NavigationAction.cpp:
(WebCore::NavigationAction::NavigationAction): Initialize m_processingUserGesture to
ScriptController::processingUserGesture() at the time the NavigationAction is constructed.
* loader/NavigationAction.h:
Added boolean member variable m_processionUserGesture
(WebCore::NavigationAction::processingUserGesture): Added this getter.
Source/WebKit2: WebKit2 part of <rdar://problem/
16601336> [Cocoa] _userInitiated is always NO in WKNavigationAction passed to -webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:
https://bugs.webkit.org/show_bug.cgi?id=131783
Reviewed by Tim Horton.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createWindow): Set the isProcessingUserGesture field of
the NavigationActionData to the corresponding value in the NavigationAction.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Ditto.
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167425
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 17 Apr 2014 08:42:53 +0000 (08:42 +0000)]
[CSS Blending] Isolation descendant dependent flags are not updated correctly
https://bugs.webkit.org/show_bug.cgi?id=130892
Patch by Ion Rosca <rosca@adobe.com> on 2014-04-17
Reviewed by Dean Jackson.
Source/WebCore:
The isolation descendant dependent flag (m_hasUnisolatedBlendingDescendants)
will help us to determine if a layer should isolate blending descendants or not.
The m_hasUnisolatedBlendingDescendants flag should be set for layers that have blending descendant layers
not isolated by descendant stacking contexts.
An element isolatesBlending() if it has this flag set and creates stacking context.
Tests: css3/compositing/blend-mode-isolation-flags-append-non-stacking-context-blending.html
css3/compositing/blend-mode-isolation-flags-append-stacking-context-blending.html
css3/compositing/blend-mode-isolation-flags-remove-non-stacking-context-blending.html
css3/compositing/blend-mode-isolation-flags-remove-stacking-context-blending.html
css3/compositing/blend-mode-isolation-flags-turn-off-blending-no-isolation.html
css3/compositing/blend-mode-isolation-flags-turn-off-blending.html
css3/compositing/blend-mode-isolation-flags-turn-off-stacking-context.html
css3/compositing/blend-mode-isolation-flags-turn-on-blending.html
css3/compositing/blend-mode-isolation-flags-turn-on-stacking-context.html
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::updateBlendMode):
(WebCore::RenderLayer::updateAncestorChainHasBlendingDescendants):
When a layer has blending and it hasn't had it before, we set the isolation
flag for all its ancestors up to the first layer creating stacking context.
I removed the isComposited() check here. Isolation flags should be correct regardless
of compositing state. Moreover, if this method is called from styleChanged(),
the compositing state might not be accurate, it's going to be recalculated afterwards.
(WebCore::RenderLayer::dirtyAncestorChainHasBlendingDescendants):
When a layer doesn't have blending, but it used to have it before, we mark
the isolation flag as dirty for all its ancestors up to the first layer
creating stacking context. The isolation flags will be recalculated by
RenderLayer::updateDescendantDependentFlags.
(WebCore::RenderLayer::updateDescendantDependentFlags):
Evaluates if the layer has unisolated blending descendants by traversing
the layer subtree.
(WebCore::RenderLayer::addChild):
When adding a subtree that has blending or has some unisolated descendants,
we set the flag for all the ancestors, up to the stacking context layer.
(WebCore::RenderLayer::removeChild):
When removing a subtree that had blending or had some unisolated descendants,
we dirty the flag so that it could be reevaluated.
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::updateTransform):
* rendering/RenderLayer.h:
Rename m_hasBlendedElementInChildStackingContext => m_hasUnisolatedBlendingDescendants
and m_hasBlendedElementInChildStackingContextStatusDirty => m_hasUnisolatedBlendingDescendantsStatusDirty,
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
Add an assert to make sure that if m_hasUnisolatedCompositedBlendingDescendants is true,
then m_hasUnisolatedBlendingDescendants is true as well.
LayoutTests:
* css3/compositing/blend-mode-isolation-flags-append-non-stacking-context-blending.html: Added.
* css3/compositing/blend-mode-isolation-flags-append-stacking-context-blending.html: Added.
* css3/compositing/blend-mode-isolation-flags-remove-non-stacking-context-blending.html: Added.
* css3/compositing/blend-mode-isolation-flags-remove-stacking-context-blending.html: Added.
* css3/compositing/blend-mode-isolation-flags-turn-off-blending-no-isolation.html: Added.
* css3/compositing/blend-mode-isolation-flags-turn-off-blending.html: Added.
* css3/compositing/blend-mode-isolation-flags-turn-off-stacking-context.html: Added.
* css3/compositing/blend-mode-isolation-flags-turn-on-blending.html: Added.
* css3/compositing/blend-mode-isolation-flags-turn-on-stacking-context.html: Added.
* platform/mac/css3/compositing/blend-mode-background-expected.txt:
* platform/mac/css3/compositing/blend-mode-isolated-group-1-expected.txt:
* platform/mac/css3/compositing/blend-mode-isolated-group-2-expected.txt:
* platform/mac/css3/compositing/blend-mode-isolated-group-3-expected.txt:
* platform/mac/css3/compositing/blend-mode-isolation-flags-append-non-stacking-context-blending-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-append-stacking-context-blending-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-remove-non-stacking-context-blending-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-remove-stacking-context-blending-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-turn-off-blending-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-turn-off-blending-no-isolation-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-turn-off-stacking-context-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-turn-on-blending-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-isolation-flags-turn-on-stacking-context-expected.txt: Added.
* platform/mac/css3/compositing/blend-mode-layers-expected.txt:
* platform/mac/css3/compositing/blend-mode-reflection-expected.txt:
* platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt:
* platform/mac/css3/compositing/blend-mode-simple-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167424
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Thu, 17 Apr 2014 07:33:23 +0000 (07:33 +0000)]
Uninline blend(Color, Color) to get AnimationUtilities out of Color.h
https://bugs.webkit.org/show_bug.cgi?id=131781
Reviewed by Simon Fraser.
* platform/graphics/Color.cpp:
(WebCore::blend):
Un-inline.
* platform/graphics/Color.h:
No more AnimationUtilities.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
b.long@cablelabs.com [Thu, 17 Apr 2014 07:23:59 +0000 (07:23 +0000)]
[Gtk] Install ninja-build in Tools/gtk/install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=131760
Reviewed by Philippe Normand.
* gtk/install-dependencies: Install ninja-build when it's available.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Thu, 17 Apr 2014 05:31:33 +0000 (05:31 +0000)]
Build fix after trac.webkit.org/changeset/167416 (Sink NaN sanitization)
* dfg/DFGSpeculativeJIT.cpp: (JSC::DFG::SpeculativeJIT::speculate):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167418
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 05:02:28 +0000 (05:02 +0000)]
Extra error reporting for invalid value conversions
https://bugs.webkit.org/show_bug.cgi?id=131786
Rubber stamped by Ryosuke Niwa.
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::injectTypeConversionsForEdge):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Thu, 17 Apr 2014 04:57:29 +0000 (04:57 +0000)]
Sink NaN sanitization to uses and remove it when it's unnecessary
https://bugs.webkit.org/show_bug.cgi?id=131419
Reviewed by Oliver Hunt.
This moves NaN purification to stores that could see an impure NaN.
5% speed-up on AsmBench, 50% speed-up on AsmBench/n-body. It is a regression on FloatMM
though, because of the other bug that causes that benchmark to box doubles in a loop.
* bytecode/SpeculatedType.h:
(JSC::isInt32SpeculationForArithmetic):
(JSC::isMachineIntSpeculationForArithmetic):
(JSC::isDoubleSpeculation):
(JSC::isDoubleSpeculationForArithmetic):
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGAbstractValue.cpp:
(JSC::DFG::AbstractValue::fixTypeForRepresentation):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::injectTypeConversionsForEdge):
* dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::mergeStateAtTail):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileValueRep):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
* dfg/DFGUseKind.h:
(JSC::DFG::typeFilterFor):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileValueRep):
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
* runtime/PureNaN.h:
* tests/stress/float32-array-nan-inlined.js: Added.
(foo):
(test):
* tests/stress/float32-array-nan.js: Added.
(foo):
(test):
* tests/stress/float64-array-nan-inlined.js: Added.
(foo):
(isBigEndian):
(test):
* tests/stress/float64-array-nan.js: Added.
(foo):
(isBigEndian):
(test):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 17 Apr 2014 03:54:11 +0000 (03:54 +0000)]
Fix the build after r167412
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-16
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167415
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lforschler@apple.com [Thu, 17 Apr 2014 03:48:02 +0000 (03:48 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 17 Apr 2014 03:28:02 +0000 (03:28 +0000)]
[iOS][WK2] Fix the DidCommitLoad initial scrolling position
https://bugs.webkit.org/show_bug.cgi?id=131780
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-16
Reviewed by Jon Honeycutt.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:]):
That code is older than _obscuredInsets and used the contentInsets as a workaround.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 17 Apr 2014 03:26:53 +0000 (03:26 +0000)]
[iOS][WK2] Fix annoying scrolling bugs
https://bugs.webkit.org/show_bug.cgi?id=131722
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-16
Reviewed by Simon Fraser.
Source/WebCore:
* platform/ScrollView.cpp:
(WebCore::ScrollView::updateScrollbars):
Since ScrollingStateScrollingNode::setRequestedScrollPosition() was added, we see ScrollView::updateScrollbars()
keep changing the scroll position to incorrect values.
On iOS, the scrollbars are handled by the native UI, the code just compute incorrect scroll position. On WebKit1,
the code does not run because there is a platformWidget().
Just #ifdef the whole useless code.
Source/WebKit2:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _scrollToContentOffset:WebCore::]):
We are scrolling at the wrong position when we have the "small obscured insets".
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Thu, 17 Apr 2014 01:40:04 +0000 (01:40 +0000)]
On iOS keep network process running using a process assertion rather than a boost
https://bugs.webkit.org/show_bug.cgi?id=131779
Reviewed by Benjamin Poulain.
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService):
- No need to leak a boost onto the NetworkProcess on iOS.
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didFinishLaunching):
- Take a ProcessAssertion on the NetworkProcess.
* UIProcess/Shared/ChildProcessProxy.h:
- Added m_assertion.
* UIProcess/WebProcessProxy.h:
- Removed m_assertion.
* UIProcess/ios/ProcessAssertion.h: Added.
- Added - refactored from WebProcessProxy.h.
* UIProcess/ios/ProcessAssertion.mm: Added.
(WebKit::ProcessAssertion::ProcessAssertion):
(WebKit::ProcessAssertion::setState):
- Added - refactored from WebProcessProxyIOS.mm.
* UIProcess/ios/WebProcessProxyIOS.mm:
(WebKit::WebProcessProxy::updateProcessState):
- Code refactored out to ProcessAssertion.mm.
* WebKit2.xcodeproj/project.pbxproj:
- Added files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 17 Apr 2014 01:26:07 +0000 (01:26 +0000)]
[iOS][WK2] Improve the approximation of the scroll position of the dynamic viewport size updates
https://bugs.webkit.org/show_bug.cgi?id=131720
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-16
Reviewed by Tim Horton.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _scrollToContentOffset:]):
The scrolling tree was forcing scroll at the wrong scale during the transition.
(-[WKWebView _setMinimumLayoutSizeOverride:]):
This was left out by accident. The WebProcess was getting the new layout size twice, making
WebPage::dynamicViewportSizeUpdate() very confused when the content size changes.
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::dynamicViewportSizeUpdate):
Add scrolling adjustment for the dynamic relayout case:
-Sticky top and bottom like the UIProcess.
-Keep the same relative position of the unobscured rect's center.
Also fix a bug in the horizontal and vertical adjustments: the code was using the exposed rect
instead of the unobscured rect, which made the adjustments off by the size of the obscured insets.
The type is changed from double to float since ARMv7 has a grudge against double.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167409
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
benjamin@webkit.org [Thu, 17 Apr 2014 01:23:44 +0000 (01:23 +0000)]
[iOS][WK2] Do not update the visible content rects when setting the same obscured insets multiple times
https://bugs.webkit.org/show_bug.cgi?id=131633
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-16
Reviewed by Darin Adler.
We should avoid computing the visible content rects when not needed.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setObscuredInsets:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achicu@adobe.com [Thu, 17 Apr 2014 01:00:26 +0000 (01:00 +0000)]
Improve performance of the RenderLayerCompositor::OverlapMap
https://bugs.webkit.org/show_bug.cgi?id=115063
Reviewed by Simon Fraser.
PerformanceTests:
Testing the performance of computing the overlap of 5000 layers.
* Layout/layers_overlap_2d.html: Added. Using non-composited layers, to check
that the performance on the non-composited path is not changing with this patch.
* Layout/layers_overlap_3d.html: Added. Records the time to do the layout of 5000
non-overlapping 3D layers.
Source/WebCore:
No new tests, no new functionality or behavior.
Do not use the OverlapMap in RenderLayerCompositor::computeCompositingRequirements if the layer already
has a 3D transform. This way we can avoid a potential expensive lookups when we know for sure the layer
is already supposed to be composited.
Also, added a bounding box of the overlap map, so that it can catch cases when the new layer is not overlapping
any of the previous layers. This is pretty common when having composited layers laid out in a vertical/horizontal list.
* rendering/RenderLayerCompositor.cpp:
(OverlapMapContainer):
(WebCore::OverlapMapContainer::add):
(WebCore::OverlapMapContainer::overlapsLayers):
(WebCore::OverlapMapContainer::unite):
(WebCore):
(WebCore::RenderLayerCompositor::OverlapMap::add):
(WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
(WebCore::RenderLayerCompositor::OverlapMap::pushCompositingContainer):
(WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
(RenderLayerCompositor::OverlapMap):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
burg@cs.washington.edu [Thu, 17 Apr 2014 00:56:35 +0000 (00:56 +0000)]
Web Replay: memoize fallback time values for document.lastModified
https://bugs.webkit.org/show_bug.cgi?id=131318
Reviewed by Joseph Pecoraro.
Source/WebCore:
If a document's Last-Modified header can't be found or used, then
document.lastModified is derived from the current system time or
from filesystem data, which is obviously nondeterministic.
It's better to handle this inside Document::lastModified rather than using
MemoizedDOMResult, because only the fallback case is nondeterministic.
Test: http/tests/inspector/replay/document-last-modified-fallback-value.html
The test is skipped for now, as it will be very flaky without the
functionality introduced by bugs 130728 and 129391.
* dom/Document.cpp:
(WebCore::Document::lastModified): Save or reuse memoized fallback value.
* replay/WebInputs.json: Add input DocumentLastModifiedDate.
LayoutTests:
Mark the new test as skipped until dependent functionality is landed.
* http/tests/inspector/replay/document-last-modified-fallback-value.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Thu, 17 Apr 2014 00:40:36 +0000 (00:40 +0000)]
[Win] Unreviewed Windows gardening. Restrict our new 'isinf' check
to 32-bit builds, and revise the comment to explain what we are
doing.
* runtime/JSCJSValueInlines.h:
(JSC::JSValue::isMachineInt): Provide motivation for the new
'isinf' check for our 32-bit code path.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt@apple.com [Thu, 17 Apr 2014 00:27:34 +0000 (00:27 +0000)]
[New Multicolumn] Selection gets confused when the mouse is in the column gaps.
https://bugs.webkit.org/show_bug.cgi?id=131739
Reviewed by Enrica Casucci.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::selectionGaps):
Make sure not to paint selection gaps. This matches the old multi-column behavior. Even though
selection gaps *nearly* work with the new multi-column code, I am disabling them so that we
can turn them on without visual regressions.
(WebCore::isChildHitTestCandidate):
Don't allow in-flow RenderFlowThreads to be descended into from positionForPoint. We always want
to look only at the spanners and at the sets.
* rendering/RenderMultiColumnFlowThread.cpp:
(WebCore::RenderMultiColumnFlowThread::nodeAtPoint):
* rendering/RenderMultiColumnFlowThread.h:
Override nodeAtPoint to disallow the RenderMultiColumnFlowThread from being considered for hit
testing when no DOM node is found. It's better to just let RenderBlock's positionForPoint run
to drill back down into the appropriate column set.
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::positionForPoint):
Implement positionForPoint for RenderMultiColumnSets. This is a straight-up port of the
old multi-column code's adjustPointToColumnContents function.
* rendering/RenderMultiColumnSet.h:
Add override of positionForPoint.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Wed, 16 Apr 2014 23:59:13 +0000 (23:59 +0000)]
Images dragged from WebKit1 on 2x displays are too big
https://bugs.webkit.org/show_bug.cgi?id=131775
<rdar://problem/
15933525>
Reviewed by Simon Fraser.
* WebCoreSupport/WebDragClient.mm:
(WebDragClient::startDrag):
Scale the drag image's logical size down by the device scale factor
in WebKit1 just like we do in WebKit2.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167403
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Wed, 16 Apr 2014 23:55:36 +0000 (23:55 +0000)]
MediaDocument on iOS should be full page
https://bugs.webkit.org/show_bug.cgi?id=131774
Reviewed by Jer Noble.
Source/WebCore:
A MediaDocument on iOS has two problems. It can't rely
on intrinsic size, since it doesn't load the content until
a user gesture. Secondly, on a small screen you want the
media to fill the page.
Add width/height 100% for iOS documents.
Test: platform/iphone-simulator/media/media-document-controls-size.html
* html/MediaDocument.cpp:
(WebCore::MediaDocumentParser::createDocumentStructure):
LayoutTests:
* platform/iphone-simulator/media/media-document-controls-size-expected.txt: Added.
* platform/iphone-simulator/media/media-document-controls-size.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167402
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
roger_fong@apple.com [Wed, 16 Apr 2014 23:53:59 +0000 (23:53 +0000)]
Add a way for layout tests to determine whether or not a plugin is snapshotted.
https://bugs.webkit.org/show_bug.cgi?id=131650.
<rdar://problem/
16615528>
Reviewed by Dean Jackson.
* testing/Internals.cpp:
(WebCore::Internals::isPluginSnapshotted):
* testing/Internals.h:
* testing/Internals.idl:
Adjust simple.html accordingly, more snapshotting test changes to come.
* platform/mac-wk2/plugins/snapshotting/simple-expected.txt:
* plugins/snapshotting/simple.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167401
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 16 Apr 2014 23:50:25 +0000 (23:50 +0000)]
Don't include CryptographicallyRandomNumber.h in StringImpl.h
https://bugs.webkit.org/show_bug.cgi?id=131772
Reviewed by Sam Weinig.
* wtf/text/StringImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167400
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Wed, 16 Apr 2014 23:46:59 +0000 (23:46 +0000)]
Make IPC::Arguments a variadic template
https://bugs.webkit.org/show_bug.cgi?id=131684
Reviewed by Darin Adler.
Make IPC::Arguments a variadic template that uses the template parameter pack to further
define the std::tuple ValueType and is used to define the std::tuple container of the
values passed into the container.
* Platform/IPC/Arguments.h:
(IPC::Arguments::Arguments):
(IPC::Arguments::encode):
(IPC::Arguments::decode):
(IPC::Arguments0::encode): Deleted.
(IPC::Arguments0::decode): Deleted.
(IPC::Arguments1::Arguments1): Deleted.
(IPC::Arguments1::encode): Deleted.
(IPC::Arguments1::decode): Deleted.
(IPC::Arguments2::Arguments2): Deleted.
(IPC::Arguments2::encode): Deleted.
(IPC::Arguments2::decode): Deleted.
(IPC::Arguments3::Arguments3): Deleted.
(IPC::Arguments3::encode): Deleted.
(IPC::Arguments3::decode): Deleted.
(IPC::Arguments4::Arguments4): Deleted.
(IPC::Arguments4::encode): Deleted.
(IPC::Arguments4::decode): Deleted.
(IPC::Arguments5::Arguments5): Deleted.
(IPC::Arguments5::encode): Deleted.
(IPC::Arguments5::decode): Deleted.
(IPC::Arguments6::Arguments6): Deleted.
(IPC::Arguments6::encode): Deleted.
(IPC::Arguments6::decode): Deleted.
(IPC::Arguments7::Arguments7): Deleted.
(IPC::Arguments7::encode): Deleted.
(IPC::Arguments7::decode): Deleted.
(IPC::Arguments8::Arguments8): Deleted.
(IPC::Arguments8::encode): Deleted.
(IPC::Arguments8::decode): Deleted.
(IPC::Arguments10::Arguments10): Deleted.
(IPC::Arguments10::encode): Deleted.
(IPC::Arguments10::decode): Deleted.
* Scripts/webkit2/LegacyMessages-expected.h:
* Scripts/webkit2/Messages-expected.h:
* Scripts/webkit2/messages.py: Clean up the code a bit.
(reply_parameter_type):
(arguments_type):
(reply_type):
(decode_type):
(arguments_type_old): Deleted.
(base_class): Deleted.
(delayed_reply_type): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167399
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Wed, 16 Apr 2014 23:40:53 +0000 (23:40 +0000)]
Deduplicate LayerTreeContext
https://bugs.webkit.org/show_bug.cgi?id=131773
Reviewed by Simon Fraser.
There are three identical implementations, one for each platform, for no reason.
* CMakeLists.txt:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* Shared/LayerTreeContext.cpp: Renamed from Source/WebKit2/Shared/mac/LayerTreeContextMac.mm.
(WebKit::LayerTreeContext::LayerTreeContext):
(WebKit::LayerTreeContext::~LayerTreeContext):
(WebKit::LayerTreeContext::encode):
(WebKit::LayerTreeContext::decode):
(WebKit::LayerTreeContext::isEmpty):
(WebKit::operator==):
* Shared/LayerTreeContext.h:
(WebKit::operator!=): Deleted.
* Shared/efl/LayerTreeContextEfl.cpp: Removed.
* Shared/gtk/LayerTreeContextGtk.cpp: Removed.
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
* WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
(WebKit::LayerTreeHostGtk::initialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167398
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 16 Apr 2014 23:30:02 +0000 (23:30 +0000)]
Allocate the data section on the heap again for FTL on ARM64
https://bugs.webkit.org/show_bug.cgi?id=130156
Patch by Juergen Ributzka <juergen@apple.com> on 2014-04-16
Reviewed by Geoffrey Garen and Filip Pizlo.
* ftl/FTLCompile.cpp:
(JSC::FTL::mmAllocateDataSection):
* ftl/FTLDataSection.cpp:
(JSC::FTL::DataSection::DataSection):
(JSC::FTL::DataSection::~DataSection):
* ftl/FTLDataSection.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167397
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Wed, 16 Apr 2014 23:07:49 +0000 (23:07 +0000)]
Crash in CodeBlock::setOptimizationThresholdBasedOnCompilationResult() when the debugger activates.
<https://webkit.org/b/131747>
Reviewed by Filip Pizlo.
When the debugger is about to activate (e.g. enter stepping mode), it first
waits for all DFG compilations to complete. However, when the DFG completes,
if compilation is successful, it will install a new DFG codeBlock. The
CodeBlock installation process is required to register codeBlocks with the
debugger. Debugger::registerCodeBlock() will eventually call
CodeBlock::setSteppingMode() which may jettison the DFG codeBlock that we're
trying to install. Thereafter, chaos ensues.
This jettison'ing only happens because the debugger currently set its
m_steppingMode flag before waiting for compilation to complete. The fix is
simply to set that flag only after compilation is complete.
* debugger/Debugger.cpp:
(JSC::Debugger::setSteppingMode):
(JSC::Debugger::registerCodeBlock):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167396
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zoltan@webkit.org [Wed, 16 Apr 2014 22:54:23 +0000 (22:54 +0000)]
Vanish unnecessary includes from Shapes.{h|cpp}
https://bugs.webkit.org/show_bug.cgi?id=131762
Reviewed by Andreas Kling.
No new tests, no behavior change.
* rendering/shapes/BoxShape.h:
* rendering/shapes/Shape.cpp:
* rendering/shapes/Shape.h:
* rendering/shapes/ShapeOutsideInfo.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167395
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 16 Apr 2014 22:44:00 +0000 (22:44 +0000)]
Discern between NaNs that would be safe to tag and NaNs that need some purification before tagging
https://bugs.webkit.org/show_bug.cgi?id=131420
Reviewed by Oliver Hunt.
Rationalizes our handling of NaNs. We now have the notion of pureNaN(), or PNaN, which
replaces QNaN and represents a "safe" NaN for our tagging purposes. NaN purification now
goes through the purifyNaN() API.
SpeculatedType and its clients can now distinguish between a PureNaN and an ImpureNaN.
Prediction propagator is made slightly more cautious when dealing with NaNs. It doesn't
have to be too cautious since most prediction-based logic only cares about whether or not
a value could be an integer.
AI is made much more cautious when dealing with NaNs. We don't yet introduce ImpureNaN
anywhere in the compiler, but when we do, we ought to be able to trust AI to propagate it
soundly and precisely.
No performance change because this just unblocks
https://bugs.webkit.org/show_bug.cgi?id=131419.
* API/JSValueRef.cpp:
(JSValueMakeNumber):
(JSValueToNumber):
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/SpeculatedType.cpp:
(JSC::dumpSpeculation):
(JSC::speculationFromValue):
(JSC::typeOfDoubleSum):
(JSC::typeOfDoubleDifference):
(JSC::typeOfDoubleProduct):
(JSC::polluteDouble):
(JSC::typeOfDoubleQuotient):
(JSC::typeOfDoubleMinMax):
(JSC::typeOfDoubleNegation):
(JSC::typeOfDoubleAbs):
(JSC::typeOfDoubleFRound):
(JSC::typeOfDoubleBinaryOp):
(JSC::typeOfDoubleUnaryOp):
* bytecode/SpeculatedType.h:
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
* dfg/DFGCriticalEdgeBreakingPhase.cpp:
(JSC::DFG::CriticalEdgeBreakingPhase::breakCriticalEdge):
* dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::InPlaceAbstractState::mergeStateAtTail):
* dfg/DFGLoopPreHeaderCreationPhase.cpp:
(JSC::DFG::createPreHeader):
* dfg/DFGNode.h:
(JSC::DFG::BranchTarget::BranchTarget):
* dfg/DFGOSREntrypointCreationPhase.cpp:
(JSC::DFG::OSREntrypointCreationPhase::run):
* dfg/DFGOSRExitCompiler32_64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGOSRExitCompiler64.cpp:
(JSC::DFG::OSRExitCompiler::compileExit):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::speculatedDoubleTypeForPrediction):
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::emitAllocateJSArray):
(JSC::DFG::SpeculativeJIT::compileValueToInt32):
(JSC::DFG::SpeculativeJIT::compileGetByValOnFloatTypedArray):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::makePredictionForDoubleFormat):
* ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileGetByVal):
(JSC::FTL::LowerDFGToLLVM::compilePutByVal):
(JSC::FTL::LowerDFGToLLVM::compileArrayPush):
(JSC::FTL::LowerDFGToLLVM::compileArrayPop):
(JSC::FTL::LowerDFGToLLVM::compileNewArrayWithSize):
(JSC::FTL::LowerDFGToLLVM::numberOrNotCellToInt32):
(JSC::FTL::LowerDFGToLLVM::allocateJSArray):
* ftl/FTLValueFormat.cpp:
(JSC::FTL::reboxAccordingToFormat):
* jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::purifyNaN):
(JSC::AssemblyHelpers::sanitizeDouble): Deleted.
* jit/AssemblyHelpers.h:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emitFloatTypedArrayGetByVal):
* runtime/DateConstructor.cpp:
(JSC::constructDate):
* runtime/DateInstanceCache.h:
(JSC::DateInstanceData::DateInstanceData):
(JSC::DateInstanceCache::reset):
* runtime/ExceptionHelpers.cpp:
(JSC::TerminatedExecutionError::defaultValue):
* runtime/JSArray.cpp:
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::shiftCountWithAnyIndexingType):
(JSC::JSArray::sortVector):
(JSC::JSArray::compactForSorting):
* runtime/JSArray.h:
(JSC::JSArray::create):
(JSC::JSArray::tryCreateUninitialized):
* runtime/JSCJSValue.cpp:
(JSC::JSValue::toNumberSlowCase):
* runtime/JSCJSValue.h:
* runtime/JSCJSValueInlines.h:
(JSC::jsNaN):
(JSC::JSValue::JSValue):
(JSC::JSValue::getPrimitiveNumber):
* runtime/JSGlobalObjectFunctions.cpp:
(JSC::parseInt):
(JSC::jsStrDecimalLiteral):
(JSC::toDouble):
(JSC::jsToNumber):
(JSC::parseFloat):
* runtime/JSObject.cpp:
(JSC::JSObject::createInitialDouble):
(JSC::JSObject::convertUndecidedToDouble):
(JSC::JSObject::convertInt32ToDouble):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::ensureLengthSlow):
* runtime/MathObject.cpp:
(JSC::mathProtoFuncMax):
(JSC::mathProtoFuncMin):
* runtime/PureNaN.h: Added.
(JSC::pureNaN):
(JSC::isImpureNaN):
(JSC::purifyNaN):
* runtime/TypedArrayAdaptors.h:
(JSC::FloatTypedArrayAdaptor::toJSValue):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167394
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Wed, 16 Apr 2014 22:39:47 +0000 (22:39 +0000)]
Don't build LayerTreeHost on Mac (and clean it up)
https://bugs.webkit.org/show_bug.cgi?id=131769
Reviewed by Simon Fraser.
* WebKit2.xcodeproj/project.pbxproj:
Don't include it in the project.
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
(WebKit::CoordinatedDrawingArea::updatePreferences):
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::updatePreferences):
* WebProcess/WebPage/LayerTreeHost.h:
(WebKit::LayerTreeHost::setLayerHostingMode): Deleted.
(WebKit::LayerTreeHost::supportsAcceleratedCompositing): Deleted.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
* WebProcess/WebPage/ios/WebPageIOS.mm:
Get rid of LayerTreeHost::supportsAcceleratedCompositing, which always returns true everywhere.
Remove some LayerTreeHost.h includes.
Remove LayerTreeHost::setLayerHostingMode, which is PLATFORM(COCOA) and not needed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167393
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 16 Apr 2014 22:39:05 +0000 (22:39 +0000)]
Enable system library calls in FTL for ARM64
https://bugs.webkit.org/show_bug.cgi?id=130154
Patch by Juergen Ributzka <juergen@apple.com> on 2014-04-16
Reviewed by Geoffrey Garen and Filip Pizlo.
* ftl/FTLIntrinsicRepository.h:
* ftl/FTLOutput.h:
(JSC::FTL::Output::doubleRem):
(JSC::FTL::Output::doubleSin):
(JSC::FTL::Output::doubleCos):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167392
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Wed, 16 Apr 2014 22:21:43 +0000 (22:21 +0000)]
Revert direct caching of tagName and nodeName from r167383.
Ryosuke tells me this is not entirely safe, will need to rethink.
* dom/Element.idl:
* dom/Node.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167391
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 16 Apr 2014 22:04:17 +0000 (22:04 +0000)]
Failing to decode a layer tree commit message resulted in silent and mysterious failure
https://bugs.webkit.org/show_bug.cgi?id=131766
<rdar://problem/
16520894>
Reviewed by Sam Weinig.
If the message decode failed, we should have already marked the message as invalid.
Failing to do so indicates in a decode code coding error.
* Platform/IPC/HandleMessage.h:
(IPC::handleMessage):
(IPC::handleMessageVariadic):
(IPC::handleMessageDelayed):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167390
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 16 Apr 2014 21:58:23 +0000 (21:58 +0000)]
[Win] run-javascriptcore-tests fails to run.
https://bugs.webkit.org/show_bug.cgi?id=131761
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-04-16
Reviewed by Brent Fulgham.
* Scripts/build-jsc: For now, don't try to build bmalloc on Windows.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167389
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
timothy_horton@apple.com [Wed, 16 Apr 2014 21:53:51 +0000 (21:53 +0000)]
Minor include sanity in WebPage.h
https://bugs.webkit.org/show_bug.cgi?id=131752
Reviewed by Simon Fraser.
* WebProcess/WebPage/WebPage.h:
Remove a bunch of unnecessary includes.
Un-indent some stuff.
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
* WebProcess/WebPage/FindController.cpp:
* WebProcess/WebPage/WebPage.cpp:
* WebProcess/WebPage/mac/WebPageMac.mm:
Add back more specific includes, into implementation files.
* WebProcess/WebPage/WebUndoStep.cpp:
(WebKit::WebUndoStep::~WebUndoStep):
* WebProcess/WebPage/WebUndoStep.h:
Add an out-of-line destructor.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167388
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
pmolnar.u-szeged@partner.samsung.com [Wed, 16 Apr 2014 21:50:57 +0000 (21:50 +0000)]
Improve security mitigation added in webkit r94001.
We missed the case where attachLine was called when we already had an inline box wrapper.
https://bugs.webkit.org/show_bug.cgi?id=127285
Reviewed by Brent Fulgham.
Blink: https://src.chromium.org/viewvc/blink?revision=150697&view=revision
* rendering/RenderBox.cpp:
(WebCore::RenderBox::positionLineBox):
* rendering/RenderBox.h:
(WebCore::RenderBox::setInlineBoxWrapper):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167387
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Wed, 16 Apr 2014 21:34:35 +0000 (21:34 +0000)]
REGRESSION: PCE.js is 20x slower in WebKit2 because timers are throttled
https://bugs.webkit.org/show_bug.cgi?id=131189
Unreviewed rollout of r166754
This change is no longer necessary.
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::connectToService):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167386
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
b.long@cablelabs.com [Wed, 16 Apr 2014 21:24:02 +0000 (21:24 +0000)]
[GTK][CMAKE] build-webkit doesn't detect when the build fails
https://bugs.webkit.org/show_bug.cgi?id=130148
Reviewed by Martin Robinson.
* Source/cmake/OptionsGTK.cmake: Replace CMake's automatic make -i with make -k, which still continues after errors, but correctly reports tha the build failed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167385
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bjonesbe@adobe.com [Wed, 16 Apr 2014 21:14:22 +0000 (21:14 +0000)]
Fix CodeGenerator.pm to only write files if the generated content has changed
https://bugs.webkit.org/show_bug.cgi?id=131756
Reviewed by Sam Weinig.
To improve build speed, don't touch generated files unless the newly
generated content is actually different.
* bindings/scripts/CodeGenerator.pm:
(UpdateFile):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167384
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Wed, 16 Apr 2014 21:07:49 +0000 (21:07 +0000)]
Add a way to cache never-changing IDL attributes in the wrapper.
<https://webkit.org/b/131759>
Some IDL attributes will always return the same value when queried
on an object, so let's have a way to avoid calling into C++ code
every time they are queried.
This patch adds a custom IDL thingy called "ReturnsCacheableValue"
which causes the code generator to emit code to cache the returned
value directly in the JS wrapper object.
Reviewed by Oliver Hunt.
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
Add ReturnsCacheableValue custom attribute.
* dom/Element.idl:
* dom/Node.idl:
Annotate some attributes that return fully cacheable values.
* bindings/scripts/test/*:
Rebaseline.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167383
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 16 Apr 2014 20:54:43 +0000 (20:54 +0000)]
Fix JSC Debug Regressions on Windows
https://bugs.webkit.org/show_bug.cgi?id=131182
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-04-16
Reviewed by Brent Fulgham.
The cast static_cast<int64_t>(number) in JSValue::isMachineInt() can generate a floating point error,
and set the st floating point register tags, if the value of the number parameter is infinite.
If the st floating point register tags are not cleared, this can cause strange floating point behavior later on.
This can be avoided by checking for infinity first.
* runtime/JSCJSValueInlines.h:
(JSC::JSValue::isMachineInt): Avoid floating point error by checking for infinity first.
* runtime/Options.cpp:
(JSC::recomputeDependentOptions): Re-enable jit for Windows.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167382
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noel.gordon@gmail.com [Wed, 16 Apr 2014 20:43:12 +0000 (20:43 +0000)]
Progressive JPEG outputScanlines() calls should handle failure
https://bugs.webkit.org/show_bug.cgi?id=116701
Reviewed by Brent Fulgham.
outputScanlines() can fail and delete |this|. Copy the decoder pointer
member and use that copy to detect and handle the failure case.
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(WebCore::JPEGImageReader::decode):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167381
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Wed, 16 Apr 2014 20:10:41 +0000 (20:10 +0000)]
Simple ES6 feature:Array.prototype.fill
https://bugs.webkit.org/show_bug.cgi?id=131703
Reviewed by David Hyatt.
Source/JavaScriptCore:
Add support for Array.prototype.fill
* builtins/Array.prototype.js:
(fill):
* runtime/ArrayPrototype.cpp:
LayoutTests:
Add tests.
* js/Object-getOwnPropertyNames-expected.txt:
* js/array-fill-expected.txt: Added.
* js/array-fill.html: Added.
* js/script-tests/Object-getOwnPropertyNames.js:
* js/script-tests/array-fill.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167380
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Wed, 16 Apr 2014 20:02:48 +0000 (20:02 +0000)]
Updating tests after bug 131721, [GTK] Fix unused parameter warnings.
* Scripts/webkit2/LegacyMessageReceiver-expected.cpp:
(WebKit::WebPage::didReceiveWebPageMessage):
(WebKit::WebPage::didReceiveSyncWebPageMessage):
* Scripts/webkit2/MessageReceiver-expected.cpp:
(WebKit::WebPage::didReceiveMessage):
(WebKit::WebPage::didReceiveSyncMessage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167379
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Wed, 16 Apr 2014 19:57:02 +0000 (19:57 +0000)]
Update to pthread QoS SPI
https://bugs.webkit.org/show_bug.cgi?id=131753
Rubber stamped by Benjamin Poulain
* wtf/ThreadingPthreads.cpp:
(WTF::setCurrentThreadQOSUtility):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167378
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 16 Apr 2014 19:54:03 +0000 (19:54 +0000)]
[curl] Add WEB_TIMING support
https://bugs.webkit.org/show_bug.cgi?id=127555
Patch by Robert Sipka <sipka@inf.u-szeged.hu> on 2014-04-16
Reviewed by Brent Fulgham.
Access timing information related to navigation.
* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::milisecondsSinceRequest):
(WebCore::calculateWebTimingInformations):
(WebCore::sockoptfunction):
(WebCore::headerCallback):
(WebCore::ResourceHandleManager::downloadTimerCallback):
(WebCore::ResourceHandleManager::dispatchSynchronousJob):
(WebCore::ResourceHandleManager::initializeHandle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167377
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zoltan@webkit.org [Wed, 16 Apr 2014 19:37:34 +0000 (19:37 +0000)]
Cleanup header includes in ShapeOutsideInfo.h
https://bugs.webkit.org/show_bug.cgi?id=131750
Reviewed by Antti Koivisto.
Make the build faster by removing unnecessary header includes.
No new tests, no behavior change.
* rendering/shapes/ShapeOutsideInfo.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167376
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 16 Apr 2014 19:12:57 +0000 (19:12 +0000)]
Fix the iOS build.
* platform/graphics/cg/BitmapImageCG.cpp:
(WebCore::BitmapImage::draw):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167375
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 16 Apr 2014 19:01:00 +0000 (19:01 +0000)]
Remove test results that match platform/mac results
Found using this shell script:
$ for F in `find LayoutTests/platform/ios-sim -name \*-expected.txt`; do \
T=`echo $F | sed -e 's#platform/ios-sim/##'`; \
M=`echo $F | sed -e 's#platform/ios-sim/#platform/mac/#'`; \
ML=`echo $F | sed -e 's#platform/ios-sim/#platform/mac-mountainlion/#'`; \
if [ -f $M -a ! -f $ML -a -z "`diff -u $F $M 2> /dev/null`" ]; then echo $F; fi; \
done
* platform/ios-sim/fast/block/positioning/016-expected.txt: Removed.
* platform/ios-sim/fast/block/positioning/025-expected.txt: Removed.
* platform/ios-sim/fast/dom/icon-url-property-expected.txt: Removed.
* platform/ios-sim/fast/hidpi/focus-rings-expected.txt: Removed.
* platform/ios-sim/fast/multicol/shrink-to-column-height-for-pagination-expected.txt: Removed.
* platform/ios-sim/fast/preloader/document-write-2-expected.txt: Removed.
* platform/ios-sim/fast/preloader/script-expected.txt: Removed.
* platform/ios-sim/fast/writing-mode/broken-ideograph-small-caps-expected.txt: Removed.
* platform/ios-sim/fast/xsl/sort-locale-expected.txt: Removed.
* platform/ios-sim/http/tests/security/mixedContent/insecure-audio-video-in-main-frame-expected.txt: Removed.
* platform/ios-sim/sputnik/Unicode/Unicode_320/S7.6_A2.2_T2-expected.txt: Removed.
* platform/ios-sim/sputnik/Unicode/Unicode_320/S7.6_A5.2_T8-expected.txt: Removed.
* platform/ios-sim/webarchive/loading/mainresource-null-mimetype-crash-expected.txt: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167374
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 16 Apr 2014 19:00:55 +0000 (19:00 +0000)]
Remove test results that match top-level results
Found using this shell script:
$ for F in `find LayoutTests/platform/ios-sim -name \*-expected.txt`; do \
T=`echo $F | sed -e 's#platform/ios-sim/##'`; \
M=`echo $F | sed -e 's#platform/ios-sim/#platform/mac/#'`; \
ML=`echo $F | sed -e 's#platform/ios-sim/#platform/mac-mountainlion/#'`; \
if [ ! -f $M -a ! -f $ML -a -f $T -a -z "`diff -u $F $T 2> /dev/null`" ]; then echo $F; fi; \
done
* platform/ios-sim/compositing/layer-creation/no-compositing-for-sticky-expected.txt: Removed.
* platform/ios-sim/editing/inserting/insert-3786362-fix-expected.txt: Removed.
* platform/ios-sim/editing/inserting/insert-3907422-fix-expected.txt: Removed.
* platform/ios-sim/editing/unsupported-content/table-delete-001-expected.txt: Removed.
* platform/ios-sim/editing/unsupported-content/table-delete-003-expected.txt: Removed.
* platform/ios-sim/fast/block/positioning/move-with-auto-width-expected.txt: Removed.
* platform/ios-sim/fast/canvas/2d.backingStorePixelRatio-expected.txt: Removed.
* platform/ios-sim/fast/canvas/2d.imageDataHD-expected.txt: Removed.
* platform/ios-sim/fast/canvas/canvas-fillPath-shadow-expected.txt: Removed.
* platform/ios-sim/fast/canvas/webgl/texture-npot-expected.txt: Removed.
* platform/ios-sim/fast/css/MarqueeLayoutTest-expected.txt: Removed.
* platform/ios-sim/fast/css/color-leakage-expected.txt: Removed.
* platform/ios-sim/fast/css/font-face-multiple-remote-sources-expected.txt: Removed.
* platform/ios-sim/fast/css/font-face-remote-expected.txt: Removed.
* platform/ios-sim/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
* platform/ios-sim/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
* platform/ios-sim/fast/css/nested-layers-with-hover-expected.txt: Removed.
* platform/ios-sim/fast/dom/HTMLFormElement/associated-elements-after-index-assertion-fail1-expected.txt: Removed.
* platform/ios-sim/fast/dom/Window/window-postmessage-arrays-expected.txt: Removed.
* platform/ios-sim/fast/dom/constructed-objects-prototypes-expected.txt: Removed.
* platform/ios-sim/fast/dom/gc-10-expected.txt: Removed.
* platform/ios-sim/fast/dom/tabindex-clamp-expected.txt: Removed.
* platform/ios-sim/fast/dynamic/dirty-float-in-clean-line-expected.txt: Removed.
* platform/ios-sim/fast/events/pageshow-pagehide-on-back-cached-with-frames-expected.txt: Removed.
* platform/ios-sim/fast/forms/mailto/advanced-get-expected.txt: Removed.
* platform/ios-sim/fast/forms/mailto/advanced-put-expected.txt: Removed.
* platform/ios-sim/fast/forms/radio/indeterminate-radio-expected.txt: Removed.
* platform/ios-sim/fast/forms/select-script-onchange-expected.txt: Removed.
* platform/ios-sim/fast/forms/suggested-value-expected.txt: Removed.
* platform/ios-sim/fast/history/timed-refresh-in-cached-frame-expected.txt: Removed.
* platform/ios-sim/fast/lists/inline-before-content-after-list-marker-expected.txt: Removed.
* platform/ios-sim/fast/media/media-query-list-07-expected.txt: Removed.
* platform/ios-sim/fast/media/print-restores-previous-mediatype-expected.txt: Removed.
* platform/ios-sim/fast/multicol/span/before-child-anonymous-column-block-expected.txt: Removed.
* platform/ios-sim/fast/overflow/horizontal-scroll-after-back-expected.txt: Removed.
* platform/ios-sim/fast/overflow/scrollbar-restored-expected.txt: Removed.
* platform/ios-sim/fast/repaint/table-hover-on-link-expected.txt: Removed.
* platform/ios-sim/fast/repaint/table-section-repaint-expected.txt: Removed.
* platform/ios-sim/fast/ruby/floating-ruby-text-expected.txt: Removed.
* platform/ios-sim/fast/ruby/overhang-horizontal-expected.txt: Removed.
* platform/ios-sim/fast/ruby/overhang-horizontal-no-overlap1-expected.txt: Removed.
* platform/ios-sim/fast/ruby/overhang-horizontal-no-overlap2-expected.txt: Removed.
* platform/ios-sim/fast/ruby/positioned-ruby-text-expected.txt: Removed.
* platform/ios-sim/fast/ruby/ruby-text-before-child-split-expected.txt: Removed.
* platform/ios-sim/fast/table/empty-row-crash-expected.txt: Removed.
* platform/ios-sim/fast/table/empty-section-crash-expected.txt: Removed.
* platform/ios-sim/fast/table/inline-form-assert-expected.txt: Removed.
* platform/ios-sim/fast/table/max-width-integer-overflow-expected.txt: Removed.
* platform/ios-sim/fast/table/table-row-split2-expected.txt: Removed.
* platform/ios-sim/fast/table/table-section-split2-expected.txt: Removed.
* platform/ios-sim/fast/table/table-split-expected.txt: Removed.
* platform/ios-sim/fast/table/table-split2-expected.txt: Removed.
* platform/ios-sim/fast/text/apply-start-width-after-skipped-text-expected.txt: Removed.
* platform/ios-sim/fast/text/justify-padding-distribution-expected.txt: Removed.
* platform/ios-sim/fast/text/selection-painted-separately-expected.txt: Removed.
* platform/ios-sim/fast/text/setData-dirty-lines-expected.txt: Removed.
* platform/ios-sim/fast/text/soft-hyphen-2-expected.txt: Removed.
* platform/ios-sim/fast/text/splitText-dirty-lines-expected.txt: Removed.
* platform/ios-sim/fast/transforms/shadows-expected.txt: Removed.
* platform/ios-sim/fast/workers/worker-close-more-expected.txt: Removed.
* platform/ios-sim/fast/writing-mode/table-percent-width-quirk-expected.txt: Removed.
* platform/ios-sim/fast/xmlhttprequest/xmlhttprequest-recursive-sync-event-expected.txt: Removed.
* platform/ios-sim/http/tests/appcache/abort-cache-onchecking-manifest-404-expected.txt: Removed.
* platform/ios-sim/http/tests/cookies/simple-cookies-expired-expected.txt: Removed.
* platform/ios-sim/http/tests/cookies/simple-cookies-max-age-expected.txt: Removed.
* platform/ios-sim/http/tests/cookies/single-quoted-value-expected.txt: Removed.
* platform/ios-sim/http/tests/misc/empty-urls-expected.txt: Removed.
* platform/ios-sim/http/tests/multipart/load-last-non-html-frame-expected.txt: Removed.
* platform/ios-sim/http/tests/navigation/post-goback1-expected.txt: Removed.
* platform/ios-sim/http/tests/security/contentSecurityPolicy/connect-src-websocket-blocked-expected.txt: Removed.
* platform/ios-sim/http/tests/security/contentSecurityPolicy/media-src-blocked-expected.txt: Removed.
* platform/ios-sim/http/tests/security/local-video-poster-from-remote-expected.txt: Removed.
* platform/ios-sim/http/tests/security/sandboxed-iframe-modify-self-expected.txt: Removed.
* platform/ios-sim/http/tests/security/video-poster-cross-origin-crash-expected.txt: Removed.
* platform/ios-sim/http/tests/xmlhttprequest/chunked-progress-event-expectedLength-expected.txt: Removed.
* platform/ios-sim/http/tests/xmlhttprequest/request-encoding2-expected.txt: Removed.
* platform/ios-sim/http/tests/xmlhttprequest/upload-onloadend-event-after-load-expected.txt: Removed.
* platform/ios-sim/http/tests/xmlhttprequest/upload-onprogress-event-expected.txt: Removed.
* platform/ios-sim/http/tests/xmlhttprequest/upload-progress-events-expected.txt: Removed.
* platform/ios-sim/media/csp-blocks-video-expected.txt: Removed.
* platform/ios-sim/sputnik/Unicode/Unicode_510/S7.6_A3.1-expected.txt: Removed.
* platform/ios-sim/sputnik/Unicode/Unicode_510/S7.6_A3.2-expected.txt: Removed.
* platform/ios-sim/sputnik/Unicode/Unicode_510/S7.6_A5.3_T1-expected.txt: Removed.
* platform/ios-sim/sputnik/Unicode/Unicode_510/S7.6_A5.3_T2-expected.txt: Removed.
* platform/ios-sim/svg/as-image/image-respects-pageScaleFactor-change-expected.txt: Removed.
* platform/ios-sim/svg/css/getComputedStyle-basic-expected.txt: Removed.
* platform/ios-sim/svg/custom/baseval-animval-equality-expected.txt: Removed.
* platform/ios-sim/svg/custom/dasharrayOrigin-expected.txt: Removed.
* platform/ios-sim/svg/custom/getSubStringLength-expected.txt: Removed.
* platform/ios-sim/svg/custom/pattern-scaling-expected.txt: Removed.
* platform/ios-sim/svg/custom/svg-features-expected.txt: Removed.
* platform/ios-sim/svg/dom/altGlyph-dom-expected.txt: Removed.
* platform/ios-sim/svg/foreignObject/fO-parent-display-none-expected.txt: Removed.
* platform/ios-sim/svg/foreignObject/fO-parent-display-none-with-relative-pos-content-expected.txt: Removed.
* platform/ios-sim/svg/foreignObject/fO-parent-of-parent-display-none-expected.txt: Removed.
* platform/ios-sim/svg/foreignObject/fO-parent-of-parent-display-none-with-relative-pos-content-expected.txt: Removed.
* platform/ios-sim/svg/hittest/svg-ellipse-non-scale-stroke-expected.txt: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167373
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 16 Apr 2014 19:00:13 +0000 (19:00 +0000)]
<webkit.org/b/129171> Rebaseline LayoutTests for iOS
3206 files changed, 65535 insertions(+), 39972 deletions(-)
* platform/ios-sim/Skipped: Clean up old items. Skip tests that
time out due to notifyDone() not being called.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167372
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 16 Apr 2014 18:56:51 +0000 (18:56 +0000)]
Upstream iOS layout test results
7354 files changed, 367781 insertions(+)
* platform/ios-sim: Add.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167371
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
agomez@igalia.com [Wed, 16 Apr 2014 18:51:56 +0000 (18:51 +0000)]
[Win] Pass default parameters to cygwin setup wizard
https://bugs.webkit.org/show_bug.cgi?id=131361
Reviewed by Brent Fulgham.
Added some parameters to the cygwin setup wizard so the user
doesn't really have to do any interaction.
* CygwinDownloader/cygwin-downloader.py:
* CygwinDownloader/cygwin-downloader.zip:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167370
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ddkilzer@apple.com [Wed, 16 Apr 2014 18:51:49 +0000 (18:51 +0000)]
Rename LayoutTests/platformm/iphone-simulator => ios-sim
* platform/ios-sim: Renamed from LayoutTests/platform/iphone-simulator.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167369
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Wed, 16 Apr 2014 18:49:39 +0000 (18:49 +0000)]
DataTransfer should cache its FileList
https://bugs.webkit.org/show_bug.cgi?id=131694
Reviewed by Darin Adler.
Source/WebCore:
Test: fast/events/data-transfer-files-attribute-identity.html
* bindings/js/SerializedScriptValue.cpp: (WebCore::CloneDeserializer::readTerminal):
Switched to a new FileList constructor, CloneDeserializer doesn't really need to modify
the FileList with append().
* dom/DataTransfer.h:
* dom/DataTransfer.cpp:
(WebCore::DataTransfer::types): Added a FIXME.
(WebCore::DataTransfer::files): Changed to reuse a cached FileList. It's currently
easy, because we don't support DataTransferItemList. Once we do, making any changes
through it will also require updating the FileList in a way that doesn't replace
File objects for unchanged files.
* fileapi/FileList.h:
(WebCore::FileList::create):
(WebCore::FileList::isEmpty):
(WebCore::FileList::FileList):
(WebCore::FileList::append):
(WebCore::FileList::clear):
Made non-const functions private, because neither DataTransfer nor FileInputType
expect the list to be modified without their knowledge. Added a new Vector based
constructor so that a FileList could be created without the use of append().
* html/FileInputType.cpp: (WebCore::FileInputType::createFileList): Simplified
the code a little bit. FileInputType still needs to modify the list for clear(),
but doesn't need to add to it dynamically - unlike with DataTransfer, it's expected
to create a new FileList when it's modified.
LayoutTests:
* fast/events/data-transfer-files-attribute-identity-expected.txt: Added.
* fast/events/data-transfer-files-attribute-identity.html: Added.
* platform/wk2/TestExpectations: Skipped the test, because WKTR doesn't support
file dragging yet.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167368
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zoltan@webkit.org [Wed, 16 Apr 2014 18:32:18 +0000 (18:32 +0000)]
Remove fast/parser/parser-yield-timing.html from skipped list
https://bugs.webkit.org/show_bug.cgi?id=131749
Reviewed by Darin Adler.
The test was originally skipped in Bug 89812 due to flakiness on Chromium
debug bots. I run the tests with huge iterations and I don't see
flakiness on Mavericks release/debug. Let's remove from skipped for now.
* platform/mac/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167367
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bjonesbe@adobe.com [Wed, 16 Apr 2014 18:16:54 +0000 (18:16 +0000)]
Remove references to Leopard and Snow Leopard from Windows TestExpectations
Filed new bugs to track each of these tests, so someone with a windows
build can try and see if the tests still fail.
Unreviewed.
* platform/win/TestExpectations:
* platform/wincairo/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167366
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Wed, 16 Apr 2014 18:15:04 +0000 (18:15 +0000)]
[Win] Eliminate use of deleteAllValues in Windows Files
https://bugs.webkit.org/show_bug.cgi?id=131631
Reviewed by Darin Adler.
Source/WebCore:
Update to use std::unique_ptr for object lifetime. Get rid of
deleteAllValues now that it is no loner needed. Use ranged for
loops where possible.
* platform/win/WCDataObject.cpp:
(WebCore::WCEnumFormatEtc::WCEnumFormatEtc):
(WebCore::WCDataObject::~WCDataObject):
(WebCore::WCDataObject::GetData):
(WebCore::WCDataObject::QueryGetData):
(WebCore::WCDataObject::SetData):
(WebCore::WCDataObject::clearData):
* platform/win/WCDataObject.h:
Tools:
Switch to std::unique_ptr for memory lifetime. Get rid of
deleteAllValues now that it is no longer needed. Use ranged
for loops where possible.
* DumpRenderTree/win/DRTDataObject.cpp:
(WCEnumFormatEtc::WCEnumFormatEtc):
(DRTDataObject::~DRTDataObject):
(DRTDataObject::GetData):
(DRTDataObject::QueryGetData):
(DRTDataObject::SetData):
(DRTDataObject::clearData):
* DumpRenderTree/win/DRTDataObject.h:
* DumpRenderTree/win/UIDelegate.cpp:
(DRTUndoObject::DRTUndoObject):
(DRTUndoObject::~DRTUndoObject):
(DRTUndoStack::~DRTUndoStack):
(DRTUndoStack::clear):
(DRTUndoStack::pop):
(DRTUndoManager::DRTUndoManager):
(DRTUndoManager::redo):
(DRTUndoManager::undo):
(UIDelegate::UIDelegate):
(UIDelegate::resetUndoManager):
* DumpRenderTree/win/UIDelegate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167365
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mhahnenberg@apple.com [Wed, 16 Apr 2014 18:09:56 +0000 (18:09 +0000)]
[WebKit] Cleanup the build from uninitialized variable in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=131728
Reviewed by Darin Adler.
* runtime/JSObject.cpp:
(JSC::JSObject::genericConvertDoubleToContiguous): Add a RELEASE_ASSERT on the
path we expect to never take. Also shut up confused compilers about uninitialized things.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167364
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Wed, 16 Apr 2014 18:06:13 +0000 (18:06 +0000)]
Make Windows fail with a link error so I know what the new symbol is.
* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167363
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abucur@adobe.com [Wed, 16 Apr 2014 18:05:44 +0000 (18:05 +0000)]
[mac][wk2] REGRESSION (Tiled Drawing): fast/layers/no-clipping-overflow-hidden-added-after-transform.html fails with tiled drawing
https://bugs.webkit.org/show_bug.cgi?id=122238
Unreviewed. The test passes now.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@167362
268f45cc-cd09-0410-ab3c-
d52691b4dbfc