Timeline



May 17, 2013:

9:50 PM Changeset in webkit [150324] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Don't run hg.

  • Scripts/webkitpy/w3c/test_importer_unittest.py:

(TestImporterTest):

9:24 PM Changeset in webkit [150323] by fpizlo@apple.com
  • 19 edits
    2 adds in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Executable and CodeBlock should be aware of DFG::Plans that complete asynchronously
https://bugs.webkit.org/show_bug.cgi?id=116350

Reviewed by Oliver Hunt.

This refactors compilation so that:

  • JITStubs knows exactly what the result of compilation was. For example, if compilation was deferred, it will now know this.


  • The set of things that has to happen to install compiled code is now factored out into JSC::installOptimizedCode().


  • A bunch of the code in Executable.cpp is now made more common to reduce code duplication. For example, the heap heuristics stuff is now in one place.

(JSC::ProgramCodeBlock::compileOptimized):
(JSC::ProgramCodeBlock::replaceWithDeferredOptimizedCode):
(JSC):
(JSC::EvalCodeBlock::compileOptimized):
(JSC::EvalCodeBlock::replaceWithDeferredOptimizedCode):
(JSC::FunctionCodeBlock::compileOptimized):
(JSC::FunctionCodeBlock::replaceWithDeferredOptimizedCode):
(JSC::ProgramCodeBlock::jitCompileImpl):
(JSC::EvalCodeBlock::jitCompileImpl):
(JSC::FunctionCodeBlock::jitCompileImpl):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::jitCompile):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):

  • dfg/DFGDesiredIdentifiers.cpp:

(JSC::DFG::DesiredIdentifiers::numberOfIdentifiers):
(DFG):
(JSC::DFG::DesiredIdentifiers::at):

  • dfg/DFGDesiredIdentifiers.h:

(JSC):
(DesiredIdentifiers):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):
(JSC::DFG::tryFinalizePlan):
(DFG):

  • dfg/DFGDriver.h:

(DFG):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):
(JSC::DFG::tryFinalizePlan):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):

  • dfg/DFGJITFinalizer.cpp:

(JSC::DFG::JITFinalizer::finalizeCommon):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::Plan):
(JSC::DFG::Plan::compileInThread):
(JSC::DFG::Plan::reallyAdd):

  • dfg/DFGPlan.h:

(JSC):
(Plan):
(DFG):

  • ftl/FTLJITFinalizer.cpp:

(JSC::FTL::JITFinalizer::finalizeFunction):

  • jit/JITDriver.h:

(JSC::jitCompileIfAppropriateImpl):
(JSC::jitCompileFunctionIfAppropriateImpl):
(JSC):
(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):

  • runtime/CompilationResult.cpp: Added.

(WTF):
(WTF::printInternal):

  • runtime/CompilationResult.h: Added.

(JSC):
(WTF):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::compileOptimized):
(JSC::EvalExecutable::jitCompile):
(JSC::EvalExecutable::compileInternal):
(JSC::EvalExecutable::replaceWithDeferredOptimizedCode):
(JSC):
(JSC::ProgramExecutable::compileOptimized):
(JSC::ProgramExecutable::jitCompile):
(JSC::ProgramExecutable::compileInternal):
(JSC::ProgramExecutable::replaceWithDeferredOptimizedCode):
(JSC::FunctionExecutable::compileOptimizedForCall):
(JSC::FunctionExecutable::compileOptimizedForConstruct):
(JSC::FunctionExecutable::jitCompileForCall):
(JSC::FunctionExecutable::jitCompileForConstruct):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::replaceWithDeferredOptimizedCodeForCall):
(JSC::FunctionExecutable::compileForConstructInternal):
(JSC::FunctionExecutable::replaceWithDeferredOptimizedCodeForConstruct):

  • runtime/Executable.h:

(ScriptExecutable):
(EvalExecutable):
(ProgramExecutable):
(FunctionExecutable):
(JSC::FunctionExecutable::compileOptimizedFor):
(JSC::FunctionExecutable::replaceWithDeferredOptimizedCodeFor):
(JSC::FunctionExecutable::jitCompileFor):

  • runtime/ExecutionHarness.h:

(JSC::prepareForExecutionImpl):
(JSC::prepareFunctionForExecutionImpl):
(JSC):
(JSC::installOptimizedCode):
(JSC::prepareForExecution):
(JSC::prepareFunctionForExecution):
(JSC::replaceWithDeferredOptimizedCode):

9:23 PM Changeset in webkit [150322] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13819878> Disable SharedWorker when in multiple web process model
https://bugs.webkit.org/show_bug.cgi?id=116359

The condition was accidentally negated, fixing.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: (WebKit::WebPlatformStrategies::isAvailable):
9:11 PM Changeset in webkit [150321] by Michelangelo De Simone
  • 2 edits in trunk/Source/WebCore

CSSParser parsing of CSSPropertyFontStretch falls into CSSPropertyGeometry
https://bugs.webkit.org/show_bug.cgi?id=116370

CSSPropertyFontStretch mistakenly fell through the shader parsing logic.

Reviewed by Alexandru Chiculita.

No new test possible, the feature is not implemented nor exposed.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

8:12 PM Changeset in webkit [150320] by timothy@apple.com
  • 2 edits in trunk/Source/WebCore

Force the script debug server to continue when disabling the debugger.

There might be some cases where the debugger will stay in the nested run loop
which cause weird issues.

Speculative fix for: https://webkit.org/b/111438

Reviewed by Joseph Pecoraro.

  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::disable):

7:58 PM Changeset in webkit [150319] by Darin Adler
  • 6 edits
    2 deletes in trunk/Source/WebCore

[BlackBerry] Get BlackBerry port off legacy clipboard
https://bugs.webkit.org/show_bug.cgi?id=116287

Reviewed by Rob Buis.

  • PlatformBlackBerry.cmake: Removed ClipboardBlackBerry.cpp.
  • dom/Clipboard.h: Removed BLACKBERRY from the list of platforms that

use the legacy clipboard.

  • editing/blackberry/EditorBlackBerry.cpp:

(WebCore::Editor::newGeneralClipboard): Changed to just create a copy
and paste clipboard.

  • page/blackberry/EventHandlerBlackBerry.cpp: Removed a drag-related

function that wasn't doing any good.

  • platform/blackberry/ClipboardBlackBerry.cpp: Removed.
  • platform/blackberry/ClipboardBlackBerry.h: Removed.
  • platform/blackberry/PasteboardBlackBerry.cpp:

(WebCore::Pasteboard::createForCopyAndPaste): Added.
(WebCore::Pasteboard::createPrivate): Added.
(WebCore::Pasteboard::hasData): Added. Moved code here from ClipboardBlackBerry.cpp.
(WebCore::Pasteboard::clear): Ditto.
(WebCore::Pasteboard::readString): Ditto.
(WebCore::Pasteboard::writeString): Ditto.
(WebCore::Pasteboard::types): Ditto.
(WebCore::Pasteboard::readFilenames): Ditto.

7:56 PM Changeset in webkit [150318] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Ads on theverge.com cause repaints when hovered, even though content doesn't visibly change.
<http://webkit.org/b/116344>

Reviewed by Darin Adler.

Teach RenderStyle::diff() to ignore differences in the outline value if both styles have non-visible outlines.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):

  • rendering/style/StyleBackgroundData.cpp:

(WebCore::StyleBackgroundData::isEquivalentForPainting):

  • rendering/style/StyleBackgroundData.h:

(StyleBackgroundData):

7:40 PM Changeset in webkit [150317] by dpranke@chromium.org
  • 1 edit
    8 adds in trunk/Tools

Create a script to import W3C tests
https://bugs.webkit.org/show_bug.cgi?id=111513

Reviewed by Ryosuke Niwa.

This patch attempts to re-land the 'import-w3c-tests'
script and accompanying modules. The tests and code have
been cleaned up so that we do not log anything to stdout/stderr
while running the tests (thanks to outputcapture) and do not
write into the source tree while running the tests, and much
but not all of the code has been converted over to using the webkitpy

  • Scripts/import-w3c-tests: Added.
  • Scripts/webkitpy/w3c/init.py: Added.
  • Scripts/webkitpy/w3c/test_converter.py: Added.

(W3CTestConverter):
(W3CTestConverter.init):
(W3CTestConverter.path_from_webkit_root):
(W3CTestConverter.read_webkit_prefixed_css_property_list):
(W3CTestConverter.convert_for_webkit):
(W3CTestConverter.convert_css):
(W3CTestConverter.convert_html):
(W3CTestConverter.convert_testharness_paths):
(W3CTestConverter.convert_prefixed_properties):
(W3CTestConverter.add_webkit_prefix_to_unprefixed_properties):
(W3CTestConverter.replace_tag):

  • Scripts/webkitpy/w3c/test_converter_unittest.py: Added.

(W3CTestConverterTest):
(W3CTestConverterTest.fake_dir_path):
(W3CTestConverterTest.test_read_prefixed_property_list):
(W3CTestConverterTest.test_convert_for_webkit_nothing_to_convert):
(test_convert_for_webkit_harness_only):
(test_convert_for_webkit_properties_only):
(test_convert_for_webkit_harness_and_properties):
(test_convert_test_harness_paths):
(test_convert_prefixed_properties):
(verify_conversion_happened):
(verify_no_conversion_happened):
(verify_test_harness_paths):
(verify_prefixed_properties):
(generate_test_content):

  • Scripts/webkitpy/w3c/test_importer.py: Added.

(main):
(parse_args):
(validate_import_directory):
(TestImporter):
(TestImporter.init):
(TestImporter.path_from_webkit_root):
(TestImporter.do_import):
(TestImporter.load_changeset):
(TestImporter.find_importable_tests):
(TestImporter.import_tests):
(TestImporter.setup_destination_directory):
(TestImporter.update_test_status):
(TestImporter.remove_deleted_files):
(TestImporter.write_import_log):

  • Scripts/webkitpy/w3c/test_importer_unittest.py: Added.

(TestImporterTest):
(TestImporterTest.test_import_dir_with_no_tests):

  • Scripts/webkitpy/w3c/test_parser.py: Added.

(TestParser):
(TestParser.init):
(TestParser.load_file):
(TestParser.analyze_test):
(TestParser.reference_links_of_type):
(TestParser.is_jstest):
(TestParser.support_files):

  • Scripts/webkitpy/w3c/test_parser_unittest.py: Added.

(TestParserTest):
(TestParserTest.test_analyze_test_reftest_one_match):
(test_analyze_test_reftest_multiple_matches):
(test_analyze_test_reftest_match_and_mismatch):
(test_analyze_test_reftest_with_ref_support_Files):
(test_analyze_jstest):
(test_analyze_pixel_test_all_true):
(test_analyze_pixel_test_all_false):
(test_analyze_non_html_file):

7:28 PM Changeset in webkit [150316] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Plug leak in CSSSelectorList::deleteSelectors().
<http://webkit.org/b/116371>
<rdar://problem/13930698>

Reviewed by Ryosuke Niwa.

Don't forget to destroy the very last selector in the list.

  • css/CSSSelectorList.cpp:

(WebCore::CSSSelectorList::deleteSelectors):

7:21 PM Changeset in webkit [150315] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

One more Mac rebaseline.

  • platform/mac/fast/dom/HTMLInputElement/input-image-alt-text-expected.png:
  • platform/mac/fast/dom/HTMLInputElement/input-image-alt-text-expected.txt:
6:13 PM Changeset in webkit [150314] by barraclough@apple.com
  • 12 edits in trunk/Source/WebKit2

Only allow 1 WebProcess to hold a PageCache
https://bugs.webkit.org/show_bug.cgi?id=116368
<rdar://problem/13392600>

Reviewed by Geoff Garen & Anders Carlson.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext):
(WebKit::WebContext::processDidSaveToPageCache):
(WebKit):
(WebKit::WebContext::disconnectProcess):

  • UIProcess/WebContext.h:
    • Added m_processWithPageCache, only allow one process to keep a PageCache.

(WebContext):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didSaveToPageCache):
(WebKit):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
    • Forward didSaveToPageCache to the WebProcessProxy.
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::addBackForwardItem):
(WebKit::WebProcessProxy::didSaveToPageCache):
(WebKit):
(WebKit::WebProcessProxy::releasePageCache):

  • Forward releasePageCache to the WebProcess.
  • Forward didSaveToPageCache to the WebContext.
  • UIProcess/WebProcessProxy.h:

(WebProcessProxy):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::didSaveToPageCache):

  • Forward didSaveToPageCache to the WebPageProxy.
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::releasePageCache):
(WebKit):

  • WebProcess/WebProcess.h:

(WebProcess):

  • WebProcess/WebProcess.messages.in:
    • Added 'ReleasePageCache' to instruct a web process to drop any cached pages.
6:04 PM Changeset in webkit [150313] by andersca@apple.com
  • 13 edits in trunk/Source

Share code between WebKit1 and WebKit2 StorageArea subclasses
https://bugs.webkit.org/show_bug.cgi?id=116367

Reviewed by Andreas Kling.

Source/WebCore:

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
Remove ec parameter.

  • inspector/InspectorDOMStorageAgent.h:

Add forward declaration.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::sessionStorage):
(WebCore::DOMWindow::localStorage):
Storage::StorageArea returns a reference now.

  • storage/Storage.cpp:

(WebCore::Storage::length):
Check that the storage area can be accessed by the frame, and that it's not disabled by private browsing.
Then call down to the (now simplified) StorageArea::length().

(WebCore::Storage::isDisabledByPrivateBrowsing):
New helper function that's based on StorageAreaImpl::disabledByPrivateBrowsingInFrame, but reordered
to make it easier to follow.

  • storage/Storage.h:

(WebCore::Storage::area):
Return a reference.

  • storage/StorageAreaImpl.cpp:

(WebCore::StorageAreaImpl::storageType):
Add this new virtual member funciton that's needed by Storage::isDisabledByPrivateBrowsing.

(WebCore::StorageAreaImpl::length):
Remove unneeded code.

Source/WebKit2:

  • WebProcess/Storage/StorageAreaImpl.cpp:

(WebKit::StorageAreaImpl::length):
Remove code that's now in Storage::length.

(WebKit::StorageAreaImpl::storageType):
Make this a virtual member function.

  • WebProcess/Storage/StorageAreaImpl.h:
5:51 PM Changeset in webkit [150312] by commit-queue@webkit.org
  • 101 edits in trunk/Source/WebCore

Unreviewed, rolling out r150294.
http://trac.webkit.org/changeset/150294
https://bugs.webkit.org/show_bug.cgi?id=116369

Caused 31 tests to fail (Requested by rniwa on #webkit).

  • WebCore.exp.in:
  • rendering/InlineFlowBox.h:
  • rendering/InlineTextBox.h:

(InlineTextBox):

  • rendering/RenderApplet.h:
  • rendering/RenderBR.h:
  • rendering/RenderBlock.h:

(RenderBlock):
(WebCore::RenderBlock::virtualContinuation):

  • rendering/RenderBox.h:

(WebCore::RenderBox::borderBoundingBox):
(RenderBox):
(WebCore::RenderBox::marginLogicalLeft):
(WebCore::RenderBox::marginLogicalRight):

  • rendering/RenderBoxModelObject.h:

(WebCore::RenderBoxModelObject::isBoxModelObject):

  • rendering/RenderButton.h:
  • rendering/RenderCombineText.h:
  • rendering/RenderCounter.h:
  • rendering/RenderDeprecatedFlexibleBox.h:
  • rendering/RenderDetailsMarker.h:
  • rendering/RenderEmbeddedObject.h:

(RenderEmbeddedObject):
(WebCore::RenderEmbeddedObject::isEmbeddedObject):
(WebCore::RenderEmbeddedObject::virtualChildren):

  • rendering/RenderFieldset.h:
  • rendering/RenderFileUploadControl.h:
  • rendering/RenderFlexibleBox.h:
  • rendering/RenderFlowThread.h:
  • rendering/RenderFrame.h:
  • rendering/RenderFrameSet.h:
  • rendering/RenderFullScreen.cpp:
  • rendering/RenderFullScreen.h:
  • rendering/RenderGrid.h:
  • rendering/RenderHTMLCanvas.h:
  • rendering/RenderIFrame.h:
  • rendering/RenderImage.h:

(RenderImage):
(WebCore::RenderImage::isRenderImage):

  • rendering/RenderInline.h:

(RenderInline):
(WebCore::RenderInline::virtualContinuation):
(WebCore::RenderInline::virtualChildren):
(WebCore::RenderInline::isRenderInline):
(WebCore::RenderInline::layout):
(WebCore::RenderInline::requiresLayer):
(WebCore::RenderInline::offsetWidth):
(WebCore::RenderInline::offsetHeight):
(WebCore::RenderInline::borderBoundingBox):
(WebCore::RenderInline::dirtyLinesFromChangedChild):

  • rendering/RenderLayerModelObject.h:
  • rendering/RenderListBox.h:
  • rendering/RenderListItem.h:
  • rendering/RenderListMarker.h:
  • rendering/RenderMedia.h:

(WebCore::RenderMedia::virtualChildren):
(WebCore::RenderMedia::canHaveChildren):
(WebCore::RenderMedia::isMedia):
(WebCore::RenderMedia::isImage):
(WebCore::RenderMedia::requiresForcedStyleRecalcPropagation):

  • rendering/RenderMediaControlElements.h:
  • rendering/RenderMenuList.h:
  • rendering/RenderMeter.h:
  • rendering/RenderMultiColumnBlock.h:
  • rendering/RenderMultiColumnFlowThread.h:
  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderNamedFlowThread.h:
  • rendering/RenderPart.h:

(RenderPart):
(WebCore::RenderPart::isRenderPart):
(WebCore::RenderPart::renderName):

  • rendering/RenderProgress.h:
  • rendering/RenderRegion.h:

(WebCore::RenderRegion::isRenderRegion):

  • rendering/RenderRegionSet.h:
  • rendering/RenderReplaced.h:

(RenderReplaced):
(WebCore::RenderReplaced::renderName):

  • rendering/RenderReplica.h:
  • rendering/RenderRuby.h:
  • rendering/RenderRubyBase.h:
  • rendering/RenderRubyRun.h:
  • rendering/RenderRubyText.h:
  • rendering/RenderScrollbarPart.h:
  • rendering/RenderSearchField.h:
  • rendering/RenderSlider.h:
  • rendering/RenderSnapshottedPlugIn.h:

(RenderSnapshottedPlugIn):

  • rendering/RenderTable.h:

(RenderTable):
(WebCore::RenderTable::renderName):
(WebCore::RenderTable::isTable):
(WebCore::RenderTable::avoidsFloats):

  • rendering/RenderTableCaption.h:
  • rendering/RenderTableCell.h:
  • rendering/RenderTableCol.h:
  • rendering/RenderTableRow.h:
  • rendering/RenderTableSection.h:
  • rendering/RenderText.h:

(RenderText):
(WebCore::RenderText::marginLeft):
(WebCore::RenderText::marginRight):
(WebCore::RenderText::styleWillChange):
(WebCore::RenderText::length):
(WebCore::RenderText::paint):
(WebCore::RenderText::layout):

  • rendering/RenderTextControl.h:

(RenderTextControl):
(WebCore::RenderTextControl::renderName):
(WebCore::RenderTextControl::isTextControl):
(WebCore::RenderTextControl::avoidsFloats):

  • rendering/RenderTextControlMultiLine.h:
  • rendering/RenderTextControlSingleLine.h:

(RenderTextControlSingleLine):
(WebCore::RenderTextControlSingleLine::isTextField):

  • rendering/RenderTextFragment.h:
  • rendering/RenderTextTrackCue.h:
  • rendering/RenderVideo.h:
  • rendering/RenderView.h:
  • rendering/RenderWidget.h:

(RenderWidget):
(WebCore::RenderWidget::isWidget):

  • rendering/RenderWordBreak.h:
  • rendering/RootInlineBox.h:

(RootInlineBox):

  • rendering/mathml/RenderMathMLBlock.h:
  • rendering/svg/RenderSVGBlock.h:

(RenderSVGBlock):

  • rendering/svg/RenderSVGContainer.h:

(WebCore::RenderSVGContainer::setNeedsBoundariesUpdate):
(WebCore::RenderSVGContainer::virtualChildren):
(WebCore::RenderSVGContainer::isSVGContainer):
(WebCore::RenderSVGContainer::renderName):
(RenderSVGContainer):
(WebCore::RenderSVGContainer::objectBoundingBox):
(WebCore::RenderSVGContainer::strokeBoundingBox):
(WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):

  • rendering/svg/RenderSVGEllipse.h:
  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGGradientStop.h:
  • rendering/svg/RenderSVGHiddenContainer.h:

(WebCore::RenderSVGHiddenContainer::renderName):
(RenderSVGHiddenContainer):
(WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer):

  • rendering/svg/RenderSVGImage.h:
  • rendering/svg/RenderSVGInline.h:

(WebCore::RenderSVGInline::renderName):
(WebCore::RenderSVGInline::requiresLayer):
(WebCore::RenderSVGInline::isSVGInline):
(RenderSVGInline):

  • rendering/svg/RenderSVGInlineText.h:
  • rendering/svg/RenderSVGModelObject.h:

(WebCore::RenderSVGModelObject::requiresLayer):
(RenderSVGModelObject):

  • rendering/svg/RenderSVGPath.h:
  • rendering/svg/RenderSVGRect.h:
  • rendering/svg/RenderSVGResourceClipper.h:
  • rendering/svg/RenderSVGResourceContainer.h:

(RenderSVGResourceContainer):
(WebCore::RenderSVGResourceContainer::isSVGResourceContainer):
(WebCore::RenderSVGResourceContainer::toRenderSVGResourceContainer):

  • rendering/svg/RenderSVGResourceFilter.h:
  • rendering/svg/RenderSVGResourceFilterPrimitive.h:
  • rendering/svg/RenderSVGResourceGradient.h:

(RenderSVGResourceGradient):
(WebCore::RenderSVGResourceGradient::resourceBoundingBox):

  • rendering/svg/RenderSVGResourceLinearGradient.h:
  • rendering/svg/RenderSVGResourceMarker.h:
  • rendering/svg/RenderSVGResourceMasker.h:
  • rendering/svg/RenderSVGResourcePattern.h:
  • rendering/svg/RenderSVGResourceRadialGradient.h:
  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGShape.h:

(WebCore::RenderSVGShape::setNeedsBoundariesUpdate):
(WebCore::RenderSVGShape::setNeedsTransformUpdate):
(WebCore::RenderSVGShape::repaintRectInLocalCoordinates):
(WebCore::RenderSVGShape::localToParentTransform):
(WebCore::RenderSVGShape::localTransform):
(WebCore::RenderSVGShape::isSVGShape):
(RenderSVGShape):
(WebCore::RenderSVGShape::objectBoundingBox):
(WebCore::RenderSVGShape::strokeBoundingBox):

  • rendering/svg/RenderSVGTSpan.h:
  • rendering/svg/RenderSVGText.h:
  • rendering/svg/RenderSVGTextPath.h:
  • rendering/svg/RenderSVGTransformableContainer.h:
  • rendering/svg/RenderSVGViewportContainer.h:
5:16 PM Changeset in webkit [150311] by Christophe Dumez
  • 4 edits in trunk/Source/WebCore

Get rid of Custom code for Audio global constructor
https://bugs.webkit.org/show_bug.cgi?id=116343

Reviewed by Geoffrey Garen.

Remove custom code for Audio global constructor. It is no longer needed
now that the the bindings generator no longer require custom code for
named constructors and now that [EnabledAtRuntime] extended attribute is
supported for global constructors.

HTMLAudioElement global constructors are now automatically generated.

No new tests, no behavior change for layout tests.

  • bindings/js/JSDOMWindowCustom.cpp:
  • html/HTMLAudioElement.idl:
  • page/DOMWindow.idl:
5:05 PM Changeset in webkit [150310] by ap@apple.com
  • 8 edits in trunk/Source

<rdar://problem/13819878> Disable SharedWorker when in multiple web process model
https://bugs.webkit.org/show_bug.cgi?id=116359

Reviewed by Anders Carlsson.

This feature was already RuntimeEnabled. Call through layers to get the answer from
a platform strategy.

  • workers/DefaultSharedWorkerRepository.cpp: (WebCore::DefaultSharedWorkerRepository::isAvailable):
  • workers/DefaultSharedWorkerRepository.h:
  • workers/SharedWorkerRepository.cpp: (WebCore::SharedWorkerRepository::isAvailable):
  • workers/SharedWorkerStrategy.h: (WebCore::SharedWorkerStrategy::isAvailable):
4:45 PM Changeset in webkit [150309] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Move Storage member functions out of line
https://bugs.webkit.org/show_bug.cgi?id=116364

Reviewed by Andreas Kling.

This is preparation for sharing more code between the WebKit1 and WebKit2 storage area subclasses.
Also remove unnecessary null checks and make m_storageArea const.

  • storage/Storage.cpp:

(WebCore::Storage::length):
(WebCore::Storage::key):
(WebCore::Storage::getItem):
(WebCore::Storage::setItem):
(WebCore::Storage::removeItem):
(WebCore::Storage::clear):
(WebCore::Storage::contains):

  • storage/Storage.h:

(WebCore::Storage::area):

4:35 PM Changeset in webkit [150308] by akling@apple.com
  • 2 edits in trunk/Source/WTF

Re-align the OS(AIX) macro...
...in the hopes that the resulting world rebuild will fix failures after r150294.

  • wtf/Platform.h:
4:13 PM Changeset in webkit [150307] by Beth Dakin
  • 14 edits in trunk/Source

Headers and footers will sometimes disappear and re-appear during page loads
https://bugs.webkit.org/show_bug.cgi?id=116336
-and corresponding-
<rdar://problem/13886753>

Reviewed by Simon Fraser.

This patch changes the WebCore-level API that WebKit uses to create a banner.
Specifically this patch removes FrameView::setWantsLayerForHeader(), which created
and returned a layer. Instead, WK2 will call Page::addHeaderWithHeight(). When the
layer has been created, it will call back into WK2 via ChromeClient. This will
allow WebCore to re-create the header/footer layers as needed whenever the
FrameView/RenderLayerCompositor have been destroyed and recreated.

Source/WebCore:

Remove references to old FrameView functions. Add references to new Page
functions.

  • WebCore.exp.in:

New ChromeClient functions will pass the new layers up to WK2.

  • page/ChromeClient.h:

(WebCore::ChromeClient::didAddHeaderLayer):
(WebCore::ChromeClient::didAddFooterLayer):
(ChromeClient):

Remove setWantsLayerForHeader/Footer.

  • page/FrameView.cpp:
  • page/FrameView.h:

(FrameView):

Page now caches the header and footer height. When the FrameView/RLC have been
destroyed, and the cached layer/height information on those classes has been lost,
this data on Page will persist so that we can build the layers back up.

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::addHeaderWithHeight):
(WebCore::Page::addFooterWithHeight):

  • page/Page.h:

(WebCore::Page::headerHeight):
(WebCore::Page::footerHeight):

As soon as the root gets a backing, recreate the header and footer layers if
needed.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateBacking):

Call into ChromeClient.
(WebCore::RenderLayerCompositor::updateLayerForHeader):
(WebCore::RenderLayerCompositor::updateLayerForFooter):

Source/WebKit2:

Send the layers over to PageBanner.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::didAddHeaderLayer):
(WebKit::WebChromeClient::didAddFooterLayer):

  • WebProcess/WebCoreSupport/WebChromeClient.h:

(WebChromeClient):

PageBanner::addToPage() now does much less work since it can’t get the parent
layer right away. The work that is used to do once it had the parent layer is now
performed in didAddParentLayer()

  • WebProcess/WebPage/PageBanner.cpp:

(WebKit::PageBanner::didAddParentLayer):

  • WebProcess/WebPage/PageBanner.h:
  • WebProcess/WebPage/mac/PageBannerMac.mm:

(WebKit::PageBanner::addToPage):
(WebKit::PageBanner::didAddParentLayer):

4:13 PM Changeset in webkit [150306] by andersca@apple.com
  • 6 edits
    2 moves in trunk/Source/WebKit2

Rename WebKeyValueStorageManagerProxy to WebKeyValueStorageManager
https://bugs.webkit.org/show_bug.cgi?id=116361

Reviewed by Andreas Kling.

There's nothing proxy about this class anymore!

  • UIProcess/API/C/WKAPICast.h:
  • UIProcess/API/C/WKContext.cpp:
  • UIProcess/API/C/WKKeyValueStorageManager.cpp:
  • UIProcess/WebKeyValueStorageManager.cpp: Renamed from Source/WebKit2/UIProcess/WebKeyValueStorageManagerProxy.cpp.
  • UIProcess/WebKeyValueStorageManager.h: Renamed from Source/WebKit2/UIProcess/WebKeyValueStorageManagerProxy.h.
  • WebKit2.xcodeproj/project.pbxproj:
4:06 PM Changeset in webkit [150305] by andersca@apple.com
  • 7 edits
    4 deletes in trunk/Source/WebKit2

Remove dead local storage code
https://bugs.webkit.org/show_bug.cgi?id=116360

Reviewed by Beth Dakin.

Storage is all handled in the UI process now so we no longer need a WebKeyValueStorageManager in the web process.

  • DerivedSources.make:
  • UIProcess/WebKeyValueStorageManagerProxy.cpp:

(WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
(WebKit):
(WebKit::didGetKeyValueStorageOrigins):
(WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins):

  • UIProcess/WebKeyValueStorageManagerProxy.h:

(WebKeyValueStorageManagerProxy):

  • UIProcess/WebKeyValueStorageManagerProxy.messages.in: Removed.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Storage/WebKeyValueStorageManager.cpp: Removed.
  • WebProcess/Storage/WebKeyValueStorageManager.h: Removed.
  • WebProcess/Storage/WebKeyValueStorageManager.messages.in: Removed.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

3:59 PM Changeset in webkit [150304] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Use the UI process storage manager for deleting local storage data
https://bugs.webkit.org/show_bug.cgi?id=116358
<rdar://problem/13852829>

Reviewed by Andreas Kling.

  • Shared/WebSecurityOrigin.h:

(WebKit::WebSecurityOrigin::protocol):
(WebKit::WebSecurityOrigin::host):
(WebKit::WebSecurityOrigin::databaseIdentifier):
(WebKit::WebSecurityOrigin::toString):
Remove unneeded consts.

(WebKit::WebSecurityOrigin::securityOrigin):
Add getter.

  • UIProcess/Storage/LocalStorageDatabase.cpp:

(WebKit::LocalStorageDatabase::close):
deleteEmptyDatabaseWithOrigin has been renamed to deleteDatabaseWithOrigin.

  • UIProcess/Storage/LocalStorageDatabaseTracker.cpp:

(WebKit::LocalStorageDatabaseTracker::deleteDatabaseWithOrigin):
Rename since this is no longer used only for empty databases.

(WebKit::LocalStorageDatabaseTracker::deleteAllDatabases):
Loop over the tracker database and delete all database files.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::StorageArea::clear):
Clear the map, close the database and tell all event listeners to reset their caches.

(WebKit::StorageManager::LocalStorageNamespace::clearStorageAreasMatchingOrigin):
Loop over all storage areas and call clear on those matching the security origin.

(WebKit::StorageManager::LocalStorageNamespace::clearAllStorageAreas):
Loop over all storage areas and call clear on them.

(WebKit::StorageManager::deleteEntriesForOrigin):
Dispatch deleteEntriesForOriginInternal on the work queue.

(WebKit::StorageManager::deleteAllEntries):
Dispatch deleteAllEntriesInternal on the work queue.

(WebKit::StorageManager::deleteEntriesForOriginInternal):
Call clearStorageAreasMatchingOrigin on all local storage namespaces and then delete the database.

(WebKit::StorageManager::deleteAllEntriesInternal):
Call clearAllStorageAreas on all local storage namespaces and then delete all databases.

  • UIProcess/WebKeyValueStorageManagerProxy.cpp:

(WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin):
Call out to the storage manager.

(WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries):
Ditto.

  • WebProcess/Storage/StorageAreaMap.cpp:

(WebKit::StorageAreaMap::clearCache):
Call resetValues which will null out the storage map.

  • WebProcess/Storage/StorageAreaMap.messages.in:

Add ClearCache message.

3:06 PM Changeset in webkit [150303] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Leaks builders exit early frequently
https://bugs.webkit.org/show_bug.cgi?id=116355

Reviewed by Stephanie Lewis.

Throttle the number of processes to use, and also bump up the number of crashes/timeouts
we tolerate from 20 to 50.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunWebKitTests.start):

  • Scripts/webkitpy/port/mac.py:

(MacPort.default_child_processes):

3:02 PM WebKitIDL edited by Christophe Dumez
Add link to RuntimeEnabledFeatures header. (diff)
2:54 PM WebKitIDL edited by Christophe Dumez
Add documentation for [EnabledAtRuntime] introduced in r150276 (diff)
2:53 PM Changeset in webkit [150302] by Claudio Saavedra
  • 2 edits in trunk/Source/WebCore

[CSS] Minor cleanups in CSS variables handling
https://bugs.webkit.org/show_bug.cgi?id=116318

Reviewed by Ryosuke Niwa.

No new tests, only a cleanup.

  • css/CSSParser.cpp:

(WebCore::CSSParserString::substring): Optimize.
(WebCore::CSSParser::createPrimitiveVariableNameValue):
Remove intermediate variable.

2:51 PM Changeset in webkit [150301] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Only import local storage items from the database once
https://bugs.webkit.org/show_bug.cgi?id=116354

Reviewed by Andreas Kling.

We import items from the database over and over, when we only want to do it once. Use a
boolean flag to guard against doing it more than once.

Also, rename importItemsFromDatabase to openDatabaseAndImportItemsIfNeeded since it now
also opens the database (even if it doesn't need to import anything). This is preparation for an
upcoming patch where the database will be closed when it's cleared.

  • UIProcess/Storage/StorageManager.cpp:

(StorageManager::StorageArea):
(WebKit::StorageManager::StorageArea::StorageArea):
(WebKit::StorageManager::StorageArea::setItem):
(WebKit::StorageManager::StorageArea::removeItem):
(WebKit::StorageManager::StorageArea::clear):
(WebKit::StorageManager::StorageArea::items):
(WebKit::StorageManager::StorageArea::openDatabaseAndImportItemsIfNeeded):

2:41 PM WebKitIDL edited by Christophe Dumez
Remove [ConstructorParameters] due to r150292 (diff)
2:41 PM Changeset in webkit [150300] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Add DOMWindowConstructors.idl to Xcode project file
https://bugs.webkit.org/show_bug.cgi?id=116351

Reviewed by Anders Carlsson.

  • WebCore.xcodeproj/project.pbxproj: Added the file, so that Xcode includes it in searches.
2:26 PM Changeset in webkit [150299] by Lucas Forschler
  • 4 edits in tags/Safari-537.42.1/Source

Versioning.

2:23 PM Changeset in webkit [150298] by Lucas Forschler
  • 1 copy in tags/Safari-537.42.1

New Tag.

2:17 PM Changeset in webkit [150297] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove the declaration of Element::detachAttrNodeAtIndex erroneously added in r150072.

  • dom/Element.h:

(Element):

1:51 PM Changeset in webkit [150296] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13869765> Lion: Crashes in islcCanLoadInputMethodFromBundleID.

Reviewed by Anders Carlsson.

  • WebProcess/com.apple.WebProcess.sb.in: Allow text input directories.
1:41 PM Changeset in webkit [150295] by andersca@apple.com
  • 10 edits in trunk/Source

WKKeyValueStorageManagerGetKeyValueStorageOrigins should get origins from the UI process
https://bugs.webkit.org/show_bug.cgi?id=116346
<rdar://problem/13852829>

Reviewed by Andreas Kling.

Source/WebCore:

Export the UTF8Encoding symbol.

  • WebCore.exp.in:

Source/WebKit2:

  • UIProcess/Storage/LocalStorageDatabaseTracker.cpp:

(WebKit::LocalStorageDatabaseTracker::origins):
New helper function to return all the tracked origins.

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::StorageManager):
Initialize the UTF-8 encoding.

(WebKit::StorageManager::getOrigins):
Call getOriginsInternal on our queue.

(WebKit::callCallbackFunction):
Helper function for calling the callback function.

(WebKit::StorageManager::getOriginsInternal):
Get the origins and make sure we call the callback with the given function dispatcher.

  • UIProcess/WebKeyValueStorageManagerProxy.cpp:

(WebKit::didGetKeyValueStorageOriginsCallback):
Construct the array of WebSecurityOrigin objects and call the callback.

(WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins):
Call StorageManager::getOrigins.

Source/WTF:

Add forward declaration for Function.

  • wtf/Forward.h:
1:32 PM Changeset in webkit [150294] by akling@apple.com
  • 101 edits in trunk/Source/WebCore

Apply FINAL to the RenderObject hierarchy.
<http://webkit.org/b/115977>

Mostly from Blink r148795 by <cevans@chromium.org>
<http://src.chromium.org/viewvc/blink?view=revision&revision=148795>

Re-landing without devirtualization tweaks.

  • rendering/: Beat things with the FINAL stick.
  • WebCore.exp.in: Export a now-needed symbol.
1:17 PM Changeset in webkit [150293] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::willTransitionToCommitted): Frame:editor() now returns a reference.
1:05 PM Changeset in webkit [150292] by Christophe Dumez
  • 17 edits in trunk/Source/WebCore

Get rid of [ConstructorParameters] extended attributes
https://bugs.webkit.org/show_bug.cgi?id=116308

Reviewed by Kentaro Hara.

Get rid of WebKit-specific [ConstructorParameters] IDL extended attribute. Instead,
[CustomConstructor] arguments are now explicitly specified, similarly to [Constructor]
arguments and the constructor object's "length" property is now automatically
computed for custom constructors as well.

This is less error-prone as the value is not hardcoded, more consistent with
[Constructor] extended attribute and gives more information about the custom constructor
in the IDL file. We also get rid of a WebKit-specific IDL attribute which is always
nice.

No new tests, already covered by fast/js/constructor-length.html.

  • Modules/mediastream/MediaStream.idl:
  • Modules/webaudio/AudioContext.idl:
  • Modules/websockets/WebSocket.idl:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorHelperMethods):

  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/IDLParser.pm:

(applyTypedefs):
(parseAttributeRest):
(copyExtendedAttributes):
(parseExtendedAttributeRest):
(applyExtendedAttributeList):

  • bindings/scripts/test/JS/JSFloat64Array.cpp:

(WebCore::JSFloat64ArrayConstructor::finishCreation):

  • bindings/scripts/test/TestTypedArray.idl:
  • dom/MutationObserver.idl:
  • fileapi/Blob.idl:
  • html/DOMFormData.idl:
  • html/canvas/ArrayBuffer.idl:
  • html/canvas/DataView.idl:
  • page/WebKitPoint.idl:
  • workers/SharedWorker.idl:
  • workers/Worker.idl:
1:04 PM Changeset in webkit [150291] by ap@apple.com
  • 13 edits
    5 adds in trunk

Text input is largely broken when there are subframes loading
http://bugs.webkit.org/show_bug.cgi?id=59121
<rdar://problem/9320468>

Reviewed by Darin Adler.

  • UIProcess/PageClient.h:
  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::updateSecureInputState): Separated secure input state updating into a separate function. Removed updateTextInputState, we don't need to go through PageClient to implement its behavior at all. (WebKit::PageClientImpl::dismissDictionaryLookupPanel): Added a FIXME.
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/API/mac/WKViewInternal.h: Removed _updateTextInputStateIncludingSecureInputState.
  • UIProcess/WebPageProxy.h: Added m_temporarilyClosedComposition, which helps to figure out that WebCore decided to close a composition. The issue is that WebCore would first send an EditorState with hasComposition set to false, and with shouldIgnoreCompositionSelectionChange set to true, at which time we forget the previous m_editorState, but can't make any decisions based on this transient state. We should find a way to simplify this (maybe not send these updates with shouldIgnoreCompositionSelectionChange at all?)
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::WebPageProxy): Initialize m_temporarilyClosedComposition. (WebKit::WebPageProxy::didCommitLoadForFrame): Removed the code to kill a composition when any frame commits a load, which made no sense (along with surrounding code, which will unfortunately survive longer). (WebKit::WebPageProxy::editorStateChanged): Implemented state updating here, we don't need to go to WKView.mm to implement this logic. Figure out when WebCore discards a composition, and notify input methods about this. (WebKit::WebPageProxy::resetStateAfterProcessExited): Reset m_temporarilyClosedComposition. Added some FIXMEs.
12:54 PM Changeset in webkit [150290] by rniwa@webkit.org
  • 15 edits in trunk/LayoutTests

Mac rebaselines; also remove some entries.

Seriously, I've had it enough. Why are people adding these entires never to rebaseline them later?

  • platform/mac/TestExpectations:
  • platform/mac/fast/css-generated-content/table-row-group-to-inline-expected.txt:
  • platform/mac/fast/dom/HTMLImageElement/image-alt-text-expected.png:
  • platform/mac/fast/dom/HTMLImageElement/image-alt-text-expected.txt:
  • platform/mac/fast/encoding/utf-16-big-endian-expected.png:
  • platform/mac/fast/encoding/utf-16-big-endian-expected.txt:
  • platform/mac/fast/encoding/utf-16-little-endian-expected.png:
  • platform/mac/fast/encoding/utf-16-little-endian-expected.txt:
  • platform/mac/fast/forms/input-value-expected.png:
  • platform/mac/fast/forms/input-value-expected.txt:
  • platform/mac/fast/lists/inlineBoxWrapperNullCheck-expected.png:
  • platform/mac/fast/lists/inlineBoxWrapperNullCheck-expected.txt:
  • platform/mac/tables/mozilla/collapsing_borders/bug41262-3-expected.png:
  • platform/mac/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
12:50 PM Changeset in webkit [150289] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

[WK2] Add support for selectTrailingWhitespaceEnabled setting
https://bugs.webkit.org/show_bug.cgi?id=112426

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-05-17
Reviewed by Ryosuke Niwa.

  • Shared/WebPreferencesStore.h:

(WebKit): Add macro for selectTrailingWhitespaceEnabled.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetSelectTrailingWhitespaceEnabled):
(WKPreferencesGetSelectTrailingWhitespaceEnabled): Implement methods
using the new setting.

  • UIProcess/API/C/WKPreferencesPrivate.h: Add new methods headers.
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::isSelectTrailingWhitespaceEnabled): Implement
method delegating in WebPage.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Set
selectTrailingWhitespaceEnabled setting.
(WebKit::WebPage::setSmartInsertDeleteEnabled): Set
selectTrailingWhitespaceEnabled as they are mutually exclusive.
(WebKit):
(WebKit::WebPage::isSelectTrailingWhitespaceEnabled): Implement method
using settings.
(WebKit::WebPage::setSelectTrailingWhitespaceEnabled): Implement method
using settings and set smartInsertDeleteEnabled as they are mutually
exclusive.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Add new methods headers.

12:49 PM Changeset in webkit [150288] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix crash introduced by http://trac.webkit.org/changeset/150282
Followup to https://bugs.webkit.org/show_bug.cgi?id=116253

Reviewed by Andreas Kling.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::focusedFrameChanged): Frame might be null.

12:47 PM Changeset in webkit [150287] by commit-queue@webkit.org
  • 3 edits
    4 deletes in trunk/Tools

Remove chrome-channels command from the webkit-patch
https://bugs.webkit.org/show_bug.cgi?id=116303

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-05-17
Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/common/config/urls.py: Removed omahaproxy url.
  • Scripts/webkitpy/common/net/omahaproxy.py: Removed.
  • Scripts/webkitpy/common/net/omahaproxy_unittest.py: Removed.
  • Scripts/webkitpy/tool/commands/init.py: Removed chromechannels import.
  • Scripts/webkitpy/tool/commands/chromechannels.py: Removed.
  • Scripts/webkitpy/tool/commands/chromechannels_unittest.py: Removed.
12:33 PM Changeset in webkit [150286] by ddkilzer@apple.com
  • 3 edits in trunk/Tools

filter-build-webkit: Don't filter out the location of the missing symbol when linking fails
Part 3 of 3: <http://webkit.org/b/116247>

Reviewed by Benjamin Poulain.

  • Scripts/filter-build-webkit: Change while() loop to for() loop

to track $previousLine, then pass $previousLine into
shouldIgnoreLine().
(shouldIgnoreLine): Add $previousLine argument. Do not skip a
line that begins with four spaces if the previous line is a
linker error message.

  • Scripts/webkitperl/filter-build-webkit_unittest/shouldIgnoreLine_unittests.pl:
  • Add "Ignored: " to test descriptions to document expected behavior.
  • Add comment blocks for various groups of tests.
  • Expand "Build settings" tests since we're changing the code in shouldIgnoreLine() that ignores those lines.
  • Add tests for undefined symbols error message.

(description): Add. Extract from global code.

12:33 PM Changeset in webkit [150285] by ddkilzer@apple.com
  • 2 edits
    2 adds in trunk/Tools

Add tests for shouldIgnoreLine() in filter-build-webkit
Part 2 of 3: <http://webkit.org/b/116247>

Reviewed by Benjamin Poulain.

  • Scripts/filter-build-webkit:

(shouldIgnoreLine): Add. Extract code from global scope into
subroutine to make it testable.

  • Scripts/webkitperl/filter-build-webkit_unittest/shouldIgnoreLine_unittests.pl: Add.

Tests shouldIgnoreLine() using output from a real build
transcript.

12:24 PM Changeset in webkit [150284] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Rename "WebKit Queues" to explicitly call out for EWS and CQ on build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=116341

Reviewed by Brady Eidson.

  • BuildSlaveSupport/build.webkit.org-config/templates/root.html:
12:17 PM Changeset in webkit [150283] by Christophe Dumez
  • 8 edits in trunk/Source/WebCore

Get rid of [CustomGetter] for global named constructors
https://bugs.webkit.org/show_bug.cgi?id=116116

Reviewed by Geoffrey Garen.

Improve the JSC bindings generator so that global named constructors no longer
require a [CustomGetter] IDL extended attribute. As a consequence, attributes
on the global window object can now be automatically generated for interfaces
that have a [NamedConstructor], namely HTMLOptionElement.

The HTMLAudioElement global constructors are still manually defined because it
requires custom code at the moment to check if the media player is available.

No new tests, no behavior change.

  • bindings/js/JSDOMWindowCustom.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/preprocess-idls.pl:
  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
  • bindings/scripts/test/JS/JSTestNamedConstructor.h:
  • html/HTMLOptionElement.idl:
  • page/DOMWindow.idl:
12:15 PM Changeset in webkit [150282] by beidson@apple.com
  • 14 edits in trunk/Source/WebKit2

Replace WebFrameLoaderClient static_casts with a function that might return null.
https://bugs.webkit.org/show_bug.cgi?id=116253

The general approach here is:
1 - Introduce a toWebFrameLoaderClient() function to convert FrameLoaderClients, and that may return null.
2 - Adopt toWebFrameLoaderClient() everywhere we used to do a direct static_cast<WebFrameLoaderClient*>
3 - In functions that already support a "return 0" scenario, a failed cast results in a return 0.
4 - In other functions that assume no failure to get the WebFrameLoaderClient, add an ASSERT.

Reviewed by Alexey Proskuryakov.

Add the utility function to cast:

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

(WebKit::toWebFrameLoaderClient):

Adopt it everywhere:

  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:

(WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::documentFrame):
(WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
(WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:

(WebKit::InjectedBundleDOMWindowExtension::frame):

  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:

(WebKit::InjectedBundleHitTestResult::frame):
(WebKit::InjectedBundleHitTestResult::targetFrame):

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::webPage):
(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::focusedNodeChanged):
(WebKit::WebChromeClient::focusedFrameChanged):
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::print):
(WebKit::WebChromeClient::exceededDatabaseQuota):
(WebKit::WebChromeClient::runOpenPanel):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::textFieldDidBeginEditing):
(WebKit::WebEditorClient::textFieldDidEndEditing):
(WebKit::WebEditorClient::textDidChangeInTextField):
(WebKit::WebEditorClient::textDidChangeInTextArea):
(WebKit::WebEditorClient::doTextFieldCommandFromEvent):
(WebKit::WebEditorClient::textWillBeDeletedInTextField):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::contentsAsString):
(WebKit::WebFrame::parentFrame):
(WebKit::WebFrame::childFrames):
(WebKit::WebFrame::frameForContext):
(WebKit::WebFrameFilter::shouldIncludeSubframe):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::mainFrameHasCustomRepresentation):

12:06 PM Changeset in webkit [150281] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Don't use pdevenv when building with VS2010.
https://bugs.webkit.org/show_bug.cgi?id=116338.

Reviewed by Adam Roben.

  • Scripts/webkitdirs.pm:

(setupCygwinEnv): Check if we are using VS2005, and only use
the 'pdevenv' hack if we are. Otherwise, just build with
our standard project since it uses VS2010+'s native
parallel building features.

11:49 AM Changeset in webkit [150280] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: SyntaxError evaluating "1+1; @ sourceURL=test" in console
https://bugs.webkit.org/show_bug.cgi?id=116292

Source/WebCore:

Add a newline after the expression so a single line comment doesn't
erroneously comment out the closing brace of the with block.

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-05-17
Reviewed by Timothy Hatcher.

Test: inspector/console/console-eval-comment.html

  • inspector/InjectedScriptSource.js:

LayoutTests:

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-05-17
Reviewed by Timothy Hatcher.

  • inspector/console/console-eval-comment-expected.txt: Added.
  • inspector/console/console-eval-comment.html: Added.
11:42 AM Changeset in webkit [150279] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/TestExpectations
11:41 AM Changeset in webkit [150278] by hyatt@apple.com
  • 2 edits in trunk/Source/WebCore

fast/flexbox/auto-height-with-flex.html failing only on release builds.
https://bugs.webkit.org/show_bug.cgi?id=116240

Reviewed by Darin Adler.

Fix the mainAxisContentExtent method so no overflow occurs, since it
doesn't work right on release builds.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::mainAxisContentExtent):

11:28 AM Changeset in webkit [150277] by weinig@apple.com
  • 6 edits
    3 adds in trunk/Source/WebKit2

Expose new load-with-userData API to Objective-C
https://bugs.webkit.org/show_bug.cgi?id=116335

Reviewed by Anders Carlsson.

  • Adds loadRequest:userData:, loadFileURL:restrictToFilesWithin:userData:, loadHTMLString:baseURL:userData: loadData:MIMEType:textEncodingName:baseURL:, and loadData:MIMEType:textEncodingName:baseURL:userData.
  • Adds a WKObjCTypeWrapperRef (which is a ObjCObjectGraph under the covers) to allow the userData to be unwrapped in the injected bundles willLoadURLRequest and willLoadDataRequest C-SPI callbacks.
  • Shared/API/c/WKBase.h:
  • Shared/API/c/WKSharedAPICast.h:
  • Shared/API/c/mac/WKBaseMac.h: Added.
  • Shared/API/c/mac/WKObjCTypeWrapperRef.h: Added.
  • Shared/API/c/mac/WKObjCTypeWrapperRef.mm: Added.

(WKObjCTypeWrapperGetTypeID):
(WKObjCTypeWrapperCreate):
(WKObjCTypeWrapperGetObject):

  • UIProcess/API/mac/WKBrowsingContextController.h:
  • UIProcess/API/mac/WKBrowsingContextController.mm:

(+[WKBrowsingContextController registerSchemeForCustomProtocol:]):
(+[WKBrowsingContextController unregisterSchemeForCustomProtocol:]):
(-[WKBrowsingContextController loadRequest:]):
(-[WKBrowsingContextController loadRequest:userData:]):
(-[WKBrowsingContextController loadFileURL:restrictToFilesWithin:]):
(-[WKBrowsingContextController loadFileURL:restrictToFilesWithin:userData:]):
(-[WKBrowsingContextController loadHTMLString:baseURL:]):
(-[WKBrowsingContextController loadHTMLString:baseURL:userData:]):
(-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:]):
(-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]):

  • WebKit2.xcodeproj/project.pbxproj:
11:16 AM Changeset in webkit [150276] by Christophe Dumez
  • 16 edits
    1 delete in trunk/Source/WebCore

Add [EnabledAtRuntime] extended attribute support for global constructors
https://bugs.webkit.org/show_bug.cgi?id=116147

Reviewed by Geoffrey Garen.

Add [EnabledAtRuntime] extended attribute support for global constructors.
This patch adds [EnabledAtRuntime] extended attribute to SharedWorker and
WebSocket IDL interfaces so that their global constructors on the global
Window object can now be automatically generated.

The behavior on JavaScript side is unchanged. We simply leverage
RuntimeEnabledFeatures class and the new [EnabledAtRuntime] IDL extended
attribute to generate the code for global constructors getters instead
of using custom code.

No new tests, no behavior change for layout tests.

  • GNUmakefile.list.am:
  • Modules/websockets/WebSocket.cpp: Enable WebSockets at runtime by default.
  • Modules/websockets/WebSocket.idl:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore):

  • bindings/js/JSDOMWindowWebSocketCustom.cpp: Removed.
  • bindings/scripts/CodeGeneratorJS.pm:

(ToMethodName):
(GetRuntimeEnableFunctionName):
(GenerateImplementation):

  • bindings/scripts/IDLAttributes.txt:
  • page/DOMWindow.idl:
  • workers/SharedWorker.idl:
11:02 AM Changeset in webkit [150275] by kov@webkit.org
  • 4 edits in trunk

Unreviewed. Skip webgl and transforms/3d tests again, until we find out why they do
not run in the release bot.

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-05-17

  • platform/gtk/TestExpectations:

Tools

  • Tools/DumpRenderTree/gtk/DumpRenderTree.cpp: Disable accelerated compositing until we figure

out why it does not work properly in the 64 bits release bot.

10:43 AM Changeset in webkit [150274] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] REGRESSION(r150060): Crash in LayerWebKitThread::updateTextureContents
https://bugs.webkit.org/show_bug.cgi?id=116305

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-17
Reviewed by Rob Buis.

PR 340537.
Internally reviewed by Arvid Nilsson.

Use updateLayoutAndStyleIfNeededRecursive() instead of
layoutIfNeeded() since we are about to draw in
rootLayerCommitTimerFired().

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):

10:40 AM Changeset in webkit [150273] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Accessing null function pointers is bad.

  • WebCoreSupport/WebFrameLoaderClient.mm:
10:34 AM Changeset in webkit [150272] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

Make filter-build-webkit testable using LoadAsModule
Part 1 of 3: <http://webkit.org/b/116247>

Reviewed by Benjamin Poulain.

  • Scripts/filter-build-webkit: Change global variables that are

used in subroutines from 'my' to 'our' to make it possible to
evaluate the script in a package context in LoadAsModule.pm.

10:30 AM Changeset in webkit [150271] by weinig@apple.com
  • 8 edits in trunk/Source/WebKit2

Add WKPageLoadData and WKPageLoadDataWithUserData SPI to support loading arbitrary data blobs
https://bugs.webkit.org/show_bug.cgi?id=116325

Reviewed by Simon Fraser.

  • UIProcess/API/C/WKPage.cpp:

(WKPageLoadData):
(WKPageLoadDataWithUserData):
Add new SPI.

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadData):

  • UIProcess/WebPageProxy.h:

Pipe through to the WebProcess.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadDataImpl):
(WebKit::WebPage::loadData):
(WebKit::WebPage::loadHTMLString):
(WebKit::WebPage::loadAlternateHTMLString):
(WebKit::WebPage::loadPlainTextString):
(WebKit::WebPage::loadWebArchiveData):
Rename existing loadData function to loadDataImpl (I hate it) to avoid overload conflict
from IPC magic.

10:25 AM Changeset in webkit [150270] by timothy@apple.com
  • 1 edit in trunk/Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm

Fix Release builds.

9:57 AM Changeset in webkit [150269] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Make kit(Frame*) more robust
https://bugs.webkit.org/show_bug.cgi?id=116324

Reviewed by Darin Adler.

Check that the frame loader's client isn't the EmptyFrameLoaderClient (or a subclass thereof)
before casting to WebFrameLoaderClient.

  • WebView/WebFrame.mm:

(kit):

9:57 AM Changeset in webkit [150268] by Darin Adler
  • 5 edits
    1 delete in trunk/Source/WebCore

[EFL] Move EFL port off legacy clipboard
https://bugs.webkit.org/show_bug.cgi?id=116181

Reviewed by Anders Carlsson.

  • dom/Clipboard.h: Switched EFL away from "legacy" mode for Clipboard.
  • page/efl/EventHandlerEfl.cpp:

(WebCore::EventHandler::createDraggingClipboard): Changed to call Clipboard member function.

  • platform/efl/ClipboardEfl.cpp: Deleted most of the functions.

(WebCore::Editor::newGeneralClipboard): Changed to call Clipboard member function.
(WebCore::Clipboard::createDragImage): Moved from ClipboardEfl to Clipboard.
(WebCore::Clipboard::declareAndWriteDragImage): Moved from ClipboardEfl to Clipboard.
(WebCore::Clipboard::items): Ditto.

  • platform/efl/PasteboardEfl.cpp: A lot of copyright notices for a file that

has no code in it other than notImplemented lines! I didn't add a new one.
(WebCore::Pasteboard::createForCopyAndPaste): Added.
(WebCore::Pasteboard::createPrivate): Added.
(WebCore::Pasteboard::createForDragAndDrop): Added.
(WebCore::Pasteboard::hasData): Added.
(WebCore::Pasteboard::readString): Added.
(WebCore::Pasteboard::writeString): Added.
(WebCore::Pasteboard::types): Added.
(WebCore::Pasteboard::readFilenames): Added.
(WebCore::Pasteboard::setDragImage): Added.
(WebCore::Pasteboard::writePasteboard): Added.

9:53 AM Changeset in webkit [150267] by Christophe Dumez
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Fix sub menu initialization in ewk_context_menu_item
https://bugs.webkit.org/show_bug.cgi?id=116321

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-05-17
Reviewed by Christophe Dumez.

During sub menu creation, after initializing m_parentMenu, parentMenu
pointer became null which may cause segfaults. This patch fixes it by
using m_parentMenu.

  • UIProcess/API/efl/ewk_context_menu_item.cpp:

(EwkContextMenuItem::EwkContextMenuItem):

9:47 AM Changeset in webkit [150266] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Move the policy function to WebFramePolicyListener
https://bugs.webkit.org/show_bug.cgi?id=116323

Reviewed by Darin Adler.

There's no need for the WebFrameLoaaderClient to hold on to the policy function,
so move it to WebFramePolicyListener. This gets rid of another WebFrameLoaderClient cast.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::setUpPolicyListener):
Pass the policy function when creating the WebFramePolicyListener object.

9:34 AM Changeset in webkit [150265] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit/mac

WebFramePolicyListener should keep its Frame in a RefPtr
https://bugs.webkit.org/show_bug.cgi?id=116322

Reviewed by Darin Adler.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(-[WebFramePolicyListener initWithWebCoreFrame:]):
No need to ref the frame, the RefPtr does that for us.

(-[WebFramePolicyListener invalidate]):
Just set the frame to null.

(-[WebFramePolicyListener dealloc]):
Remove call to deref, that's done automatically now.

(-[WebFramePolicyListener finalize]):
Remove this method. (We could have kept it just for the assertion but I didn't think that was necessary).

(-[WebFramePolicyListener receivedPolicyDecision:):
Use release() to transfer ownership.

9:26 AM Changeset in webkit [150264] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Bad spacing inside MathML formulas when text-indent is specified
https://bugs.webkit.org/show_bug.cgi?id=106600

Patch by Frédéric Wang <fred.wang@free.fr> on 2013-05-17
Reviewed by Martin Robinson.

Source/WebCore:

When MathML is used in a HTML page that modifies the CSS text-indent,
large gaps appear inside the mathematical expressions. Resetting it to
0 on the math root (as Gecko does) fixes the issue.

Tests: mathml/presentation/text-indent.html

mathml/presentation/text-indent-expected.html

  • css/mathml.css:

(math): reset text-indent to its default value.

LayoutTests:

New test to verify that the text-indent property is reset to 0 on
the MathML root.

  • mathml/presentation/text-indent-expected.html: Added.
  • mathml/presentation/text-indent.html: Added.
9:07 AM Changeset in webkit [150263] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Fix code that expects Page::chrome() to return a pointer
https://bugs.webkit.org/show_bug.cgi?id=116313

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-17
Reviewed by Darin Adler.

Page::chrome() returns a reference after r150214.

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::NetworkManager::startJob):

  • platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:

(WebCore::SocketStreamHandle::SocketStreamHandle):

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::setEnableMockPagePopup):

9:00 AM Changeset in webkit [150262] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] ImageBlackBerry: add missing BlendMode parameter
https://bugs.webkit.org/show_bug.cgi?id=116316

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-17
Reviewed by Carlos Garcia Campos.

When the new BitmapImage::draw() method was added in r147110 it
didn't include the BlendMode parameter, which has been there since
r137011.

  • platform/graphics/blackberry/ImageBlackBerry.cpp:

(WebCore::BitmapImage::draw):

8:55 AM Changeset in webkit [150261] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit/mac

Reduce number of WebFrameLoaderClient static casts in WebKit
https://bugs.webkit.org/show_bug.cgi?id=116320

Reviewed by Antti Koivisto.

We already have a function to return a WebFrame from a WebCore::Frame, use it.

  • DOM/WebDOMOperations.mm:

(WebFrameFilter::shouldIncludeSubframe):

  • WebView/WebDataSource.mm:

(-[WebDataSource webFrame]):

8:29 AM Changeset in webkit [150260] by jer.noble@apple.com
  • 17 edits in trunk

Some media/track tests fail or assert on Mac
https://bugs.webkit.org/show_bug.cgi?id=97132

Reviewed by Simon Fraser.

Source/WebCore:

Rationalize the font and padding behavior of cues and cue boxes; ::cue pseudo elements cannot have padding
values applied via CSS (due to padding not being included in the whitelist of applicable CSS properties).
Also, the font values were being applied to the box at one level and the cue at another, leading to incorrect
layout in the snapToLines case. Padding has been removed from the cue, and the font settings are now applied
to the box exclusively.

Additionally, a few drive-by changes were made in TextTrackCue to the return values of displayTreeInternal() &
element(), which previously returned a PassRefPtr<> instead of a plain pointer.

  • css/mediaControls.css:

(video::-webkit-media-text-track-container): Move the font size to the display selector.
(video::cue): Remove the display:inline and padding:2px declarations.
(video::-webkit-media-text-track-display): Remove the -webkit-line-content now that the ::cue has no padding.

  • html/track/TextTrackCue.cpp:

(WebCore::TextTrackCue::TextTrackCue): The background box is now a span, rather than a forced-inline div.
(WebCore::TextTrackCue::displayTreeInternal): Return a plain pointer.
(WebCore::TextTrackCue::getDisplayTree): Ditto.
(WebCore::TextTrackCue::setFontSize): Set the font on the box, not the cue.

  • html/track/TextTrackCue.h:

(WebCore::TextTrackCue::element): Return a plain pointer.

  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): The cue element is now a span, not a div.

  • page/CaptionUserPreferencesMac.mm:

(WebCore::CaptionUserPreferencesMac::captionsWindowCSS): Whitespace.
(WebCore::CaptionUserPreferencesMac::captionsBackgroundCSS): Do not set padding on the cue.

LayoutTests:

  • media/track/captions-webvtt/captions-snap-to-lines-not-set.vtt:
  • media/track/track-cue-rendering-horizontal.html:
  • media/track/track-cue-rendering-snap-to-lines-not-set-expected.txt:
  • media/track/track-cue-rendering-snap-to-lines-not-set.html:
  • media/track/track-cue-rendering-vertical.html:
  • platform/mac/TestExpectations:
  • platform/mac/media/track/track-cue-rendering-horizontal-expected.png:
  • platform/mac/media/track/track-cue-rendering-horizontal-expected.txt:
  • platform/mac/media/track/track-cue-rendering-vertical-expected.png:
  • platform/mac/media/track/track-cue-rendering-vertical-expected.txt:
8:26 AM Changeset in webkit [150259] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Changes in text-only properties shouldn't cause repaints unless there is actually text.
<http://webkit.org/b/116250>

Reviewed by Antti Koivisto.

Add a new StyleDifferenceRepaintIfText value to the repertoire of RenderStyle::diff().
This result means that the renderer only needs to repaint if one of its immediate children contains text.

This lets us avoid repainting the same pixels when hovering over constructs like:

<style>

a { text-decoration: none; }
a:hover { text-decoration: underline; }

</style>
<a href="http://is.gd/andersca">

<img src="cool-hat.jpg">

</a>

Since the change in text-decoration has no effect on the rendering of the <img> element,
we'll now be smart enough to avoid repainting it.

  • rendering/style/RenderStyleConstants.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):

Move checking of text-only properties until the very end, and return StyleDifferenceRepaintIfText
in case a difference is found, giving precedence to StyleDifferenceRepaint.

  • rendering/RenderObject.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::hasImmediateNonWhitespaceTextChild):

Helper to check if a RenderObject has at least one RenderText child containing more than just
collapsible whitespace.

(WebCore::RenderObject::shouldRepaintForStyleDifference):

Helper to check if a StyleDifference is either ...Repaint or ...RepaintIfText and the renderer
has an immediate text child.

(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::setStyle):

Don't repaint for StyleDifferenceRepaintIfText unless hasImmediateNonWhitespaceTextChild().

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::styleDidChange):

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::clientStyleChanged):

Tweak for new StyleDifference enum value.

  • rendering/RenderText.h:
  • rendering/RenderText.cpp:

(WebCore::RenderText::isAllCollapsibleWhitespace):

Made this const.

8:11 AM Changeset in webkit [150258] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Improve -webkit-text-underline-position memory usage.
https://bugs.webkit.org/show_bug.cgi?id=116108

Patch by Lamarque V. Souza <Lamarque.Souza@basyskom.com> on 2013-05-17
Reviewed by Benjamin Poulain.

Remove m_maxLogicalTop private variable from RootInlineBox to reduce
the overall memory used to render RootInlineBoxes (eight bytes per RootInlineBox
instance in a 64-bit machine). RootInline::maxLogicalTop() now computes
the maxLogicalTop value everytime it is called. In a typical page
computeMaxLogicalTop is called less than 10 times for each
InlineTextBox that uses -webkit-text-underline-position. That is a small
price users of -webkit-text-underline-position will pay so that
everybody can benefit from the memory reduction in RootInlineBox.

No new tests, no change in behavior.

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::computeMaxLogicalTop): Make it const.

  • rendering/InlineFlowBox.h:
  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::RootInlineBox): Remove m_maxLogicalTop.
(WebCore::RootInlineBox::alignBoxesInBlockDirection): Remove
computeMaxLogicalTop call and obsolete comment.
(WebCore):
(WebCore::RootInlineBox::maxLogicalTop): Compute maxLogicalTop before
returning its value.

  • rendering/RootInlineBox.h:

(RootInlineBox):

8:08 AM Changeset in webkit [150257] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove stale comment for select mouse handling.
https://bugs.webkit.org/show_bug.cgi?id=116309

Reviewed by Rob Buis.

PR 135935.

Remove a FIXME that has been invalidated by a change
to our touch -> mouse model.

Internally Rubberstamped by Genevieve Mak.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):

7:33 AM Changeset in webkit [150256] by kov@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

Unreviewed build fix. Remove assertion that doesn't make sense anymore since the
page does not give us access to the Chrome pointer directly anymore.

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-05-17

  • webkit/webkitwebview.cpp:

(WebKit::kit):

7:05 AM Changeset in webkit [150255] by alexis@webkit.org
  • 4 edits in trunk/Source/WebCore

Make sure to call release() on our smart pointers when we should.
https://bugs.webkit.org/show_bug.cgi?id=116307

Reviewed by Andreas Kling.

Call release() when we should call it. There is probably more occurence
of this problem on the codebase but this is a first bunch of fixes.

No new tests : existing ones should cover.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForNinePieceImage):
(WebCore::getBorderRadiusShorthandValue):
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForSidesShorthand):
(WebCore::CSSComputedStyleDeclaration::getCSSPropertyValuesForGridShorthand):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBorderImage):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::collectStyleForPresentationAttribute):

6:46 AM Changeset in webkit [150254] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

[EFL][WK2] Support sub menu in ewk context menus
https://bugs.webkit.org/show_bug.cgi?id=114729

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-05-17
Reviewed by Christophe Dumez.

Added submenu support in EwkContextMenu and an API function to receive
Ewk_Context_Menu from submenu context menu item. A test case was added
for new API function.
EwkContextMenu is now an EwkObject allowing multiple instances of submenu
to be used in different submenu type context menu items.

  • UIProcess/API/efl/ewk_context_menu_item.cpp:

(EwkContextMenuItem::EwkContextMenuItem):
(ewk_context_menu_item_new):
(ewk_context_menu_item_parent_menu_get):
(ewk_context_menu_item_submenu_get):

  • UIProcess/API/efl/ewk_context_menu_item.h:
  • UIProcess/API/efl/ewk_context_menu_item_private.h:

(EwkContextMenuItem::create):
(EwkContextMenuItem::parentMenu):
(EwkContextMenuItem::subMenu):
(EwkContextMenuItem):

  • UIProcess/API/efl/ewk_context_menu_private.h:

(EwkContextMenu::ewkView):
(EwkContextMenu):

  • UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:

(showContextMenu):

6:00 AM Changeset in webkit [150253] by Patrick Gansterer
  • 4 edits
    2 deletes in trunk/Source

[CMake] Remove invalid include paths
https://bugs.webkit.org/show_bug.cgi?id=116213

Reviewed by Gyuyoung Kim.

Since "${JAVASCRIPTCORE_DIR}/wtf" does not exist, it is safe
to remove them from the list of include directories.

Source/JavaScriptCore:

  • PlatformEfl.cmake: Removed.
  • PlatformGTK.cmake: Removed.

Source/WTF:

  • wtf/PlatformEfl.cmake:
  • wtf/PlatformGTK.cmake:
5:41 AM Changeset in webkit [150252] by allan.jensen@digia.com
  • 5 edits in trunk/Source/WebCore

Make PNGImageDecoder::rowAvailable auto-vectorizable
https://bugs.webkit.org/show_bug.cgi?id=116151

Reviewed by Benjamin Poulain.

Changed the main loops under PNGImageDecoder::rowAvailable so that they
avoid branches and non-sequential table look ups.

Together with automatic vectorization by the compiler this provides around
4x speed-up with AVX or 2x speed-up on generic x64. Shaving off 12-40% on
PNG decoding in general.

  • platform/graphics/Color.cpp:

(WebCore::premultipliedARGBFromColor):

  • platform/graphics/Color.h:

(WebCore::fastDivideBy255):

  • platform/graphics/filters/FEBlend.cpp:
  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::setPixelRGB):
(WebCore::setPixelRGBA):
(WebCore::setPixelRGBA_Premultiplied):
(WebCore::PNGImageDecoder::rowAvailable):

5:30 AM Changeset in webkit [150251] by commit-queue@webkit.org
  • 8 edits in trunk

Web Inspector: Allow "# sourceMappingURL" syntax alongside "@"
https://bugs.webkit.org/show_bug.cgi?id=116290

Source/WebCore:

Follow an update to the spec and support the new and old syntax.

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-05-17
Reviewed by Timothy Hatcher.

  • inspector/ContentSearchUtils.cpp:

(WebCore::ContentSearchUtils::scriptCommentPattern):
(WebCore::ContentSearchUtils::stylesheetCommentPattern):

  • inspector/front-end/SASSSourceMapping.js:

(WebInspector.SASSSourceMapping.prototype._loadAndProcessSourceMap):

LayoutTests:

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2013-05-17
Reviewed by Timothy Hatcher.

  • http/tests/inspector/network/resources/source-map-test-style.css:
  • http/tests/inspector/stylesheet-source-mapping.html:
  • inspector/debugger/source-url-comment-expected.txt:
  • inspector/debugger/source-url-comment.html:
5:30 AM Changeset in webkit [150250] by allan.jensen@digia.com
  • 6 edits in trunk/LayoutTests

2 math sputnik test fail on 32 bit
https://bugs.webkit.org/show_bug.cgi?id=88519

Reviewed by Jocelyn Turcotte.

Update the expected values to match recent changes in test262.
The old tested values are considered outside the validation range.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
  • sputnik/Conformance/15_Native_Objects/15.8_Math/15.8.2/15.8.2.16_sin/S15.8.2.16_A7.html:
  • sputnik/Conformance/15_Native_Objects/15.8_Math/15.8.2/15.8.2.18_tan/S15.8.2.18_A7.html:
5:24 AM Changeset in webkit [150249] by Christophe Dumez
  • 5 edits in trunk/Source/WebCore

Remove custom code for MessageEvent.ports getter
https://bugs.webkit.org/show_bug.cgi?id=116304

Reviewed by Kentaro Hara.

Remove Custom code for the "ports" attribute getter in MessageEvent
IDL interface. The JSC bindings generator already supports attributes
of type MessagePortArray.

No new tests, already covered by existing layout tests and bindings
tests.

  • bindings/js/JSMessageEventCustom.cpp: Remove Custom code for ports getter.
  • bindings/scripts/CodeGeneratorJS.pm:

(NativeToJSValue): Small tweak to correctly handle the case where impl->ports()
returns NULL and avoid crashing in this case.

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp: Rebaseline due

to bindings generator tweak.

  • dom/MessageEvent.idl: Remove [CustomGetter] extended attribute for 'ports' attribute

and switch to MessagePortArray type.

5:22 AM Changeset in webkit [150248] by zarvai@inf.u-szeged.hu
  • 2 edits
    8 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Added platform specific expected after r143389.

Patch by Gabor Abraham <abrhm@inf.u-szeged.hu> on 2013-05-17

  • platform/qt/svg/as-image/image-preserveAspectRatio-all-expected.png: Added.
  • platform/qt/svg/as-image/image-preserveAspectRatio-all-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.txt: Added.
  • platform/qt/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png: Added.
  • platform/qt/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.txt: Added.
  • platform/qt/svg/filters/feImage-preserveAspectRatio-all-expected.png: Added.
  • platform/qt/svg/filters/feImage-preserveAspectRatio-all-expected.txt: Added.
4:09 AM WebKitGTK/TrackingMemoryErrors edited by Manuel Rego Casasnovas
(diff)
3:42 AM Changeset in webkit [150247] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] DumpRenderTreeSupport: fix build in setMockDeviceOrientation()
https://bugs.webkit.org/show_bug.cgi?id=116298

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-17
Reviewed by Carlos Garcia Campos.

Pass the correct parameter to toDeviceOrientationClientMock()

  • WebKitSupport/DumpRenderTreeSupport.cpp:

(DumpRenderTreeSupport::setMockDeviceOrientation):

3:18 AM Changeset in webkit [150246] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Rebaseline after r150169
https://bugs.webkit.org/show_bug.cgi?id=116256

Unreviewed GTK gardening.

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-17

  • platform/gtk/TestExpectations: Renamed from fast/loader/willsendrequest-returns-null-for-memory-cache-load.html.
3:00 AM Changeset in webkit [150245] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/Source/WebKit2

[Qt] Unreviewed build fix.

Add missing Qt specific initializer for willLoadURLRequest and willLoadDataRequest.

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu>, Ádám Kallai <kadam@inf.u-szeged.hu> on 2013-05-17

  • WebProcess/qt/QtBuiltinBundlePage.cpp:

(WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):

12:07 AM Changeset in webkit [150244] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

media/video-seek-after-end.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=116293

Add a flaky test expectation on all platforms.

May 16, 2013:

10:22 PM Changeset in webkit [150243] by Beth Dakin
  • 4 edits
    2 deletes in trunk/Source/WebKit2

Remove WKBundlePageGetHeaderLayer/Footer SPI
https://bugs.webkit.org/show_bug.cgi?id=116254

Reviewed by Benjamin Poulain.

We should remove the Remove WKBundlePageGetHeaderLayer/Footer SPI. It was only
recently added and have been replaced by WKBundlePageSetHeaderBanner/Footer.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/mac/WKBundlePagePrivateMac.h: Removed.
  • WebProcess/InjectedBundle/API/c/mac/WKBundlePagePrivateMac.mm: Removed.
  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit):
(WebKit::WebPage::updateHeaderAndFooterLayersForDeviceScaleChange):

9:34 PM Changeset in webkit [150242] by weinig@apple.com
  • 15 edits
    2 adds in trunk

Add variants of the loading APIs that take user data and a way for the injected bundle to find out about them
https://bugs.webkit.org/show_bug.cgi?id=116132

Reviewed by Anders Carlsson.

Adds "WithUserData" versions of all the load APIs and two new WKBundlePageLoaderClient functions,
willLoadURLRequest and willLoadDataRequest to let the bundle access them.

Source/WebKit2:

Adds WebKit2WillLoadTest.* API tests.

  • UIProcess/API/C/WKPage.cpp:

(WKPageLoadURLWithUserData):
(WKPageLoadURLRequestWithUserData):
(WKPageLoadFile):
(WKPageLoadFileWithUserData):
(WKPageLoadHTMLStringWithUserData):
(WKPageLoadAlternateHTMLStringWithUserData):
(WKPageLoadPlainTextStringWithUserData):
(WKPageLoadWebArchiveDataWithUserData):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:

(WebKit::InjectedBundlePageLoaderClient::willLoadURLRequest):
(WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):

  • WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:

(WebCore):
(InjectedBundlePageLoaderClient):

  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit2/WillLoad.cpp: Added.
  • TestWebKitAPI/Tests/WebKit2/WillLoad_Bundle.cpp: Added.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
8:39 PM Changeset in webkit [150241] by commit-queue@webkit.org
  • 9 edits in trunk

[EFL] inspector-protocol/page/javascriptDialogEvents.html is failing
https://bugs.webkit.org/show_bug.cgi?id=114781

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-16
Reviewed by Christophe Dumez.

Source/WebKit/efl:

We need to make a distinction between runBeforeUnloadConfirmPanel and confirm.

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::runBeforeUnloadConfirmPanel):

  • ewk/ewk_view.cpp: Add ewk_view_run_before_unload_confirm API.

(_ewk_view_smart_run_before_unload_confirm):
(ewk_view_base_smart_set):
(ewk_view_run_before_unload_confirm):

  • ewk/ewk_view.h: Add smart class member function for runBeforeUnloadConfirmPanel.
  • ewk/ewk_view_private.h:

Tools:

Add run_before_unload_confirm and
Print the log message with "CONFIRM NAVIGATION: " in console.

  • DumpRenderTree/efl/DumpRenderTreeView.cpp:

(onBeforeUnloadConfirm):
(drtViewAdd):

LayoutTests:

Unskip fast/loader/form-submission-after-beforeunload-cancel.html as well.

  • platform/efl-wk1/TestExpectations:
8:28 PM Changeset in webkit [150240] by commit-queue@webkit.org
  • 3 edits
    2 moves
    2 deletes in trunk/Source/WebCore

Add stubs for ContextMenu and ContextMenuItem
https://bugs.webkit.org/show_bug.cgi?id=116235

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2013-05-16
Reviewed by Antonio Gomes.

No new tests needed, only a refactor.

Add ContextMenuNone.cpp and ContextMenuItemNone.cpp
so ports using ENABLE(CROSS_PLATFORM_CONTEXT_MENU) don't
need to replicate these stubs.

  • PlatformEfl.cmake:
  • Target.pri:
  • platform/ContextMenuNone.cpp: Added.

(WebCore):
(WebCore::ContextMenu::ContextMenu):
(WebCore::ContextMenu::getContextMenuItems):
(WebCore::ContextMenu::createPlatformContextMenuFromItems):
(WebCore::ContextMenu::platformContextMenu):

  • platform/ContextMenuItemNone.cpp: Added.

(WebCore):
(WebCore::ContextMenuItem::platformContextMenuItem):

  • platform/efl/ContextMenuEfl.cpp: Removed.
  • platform/efl/ContextMenuItemEfl.cpp: Removed.
  • platform/qt/ContextMenuQt.cpp: Removed.
  • platform/qt/ContextMenuItemQt.cpp: Removed.
8:26 PM Changeset in webkit [150239] by alexis@webkit.org
  • 4 edits
    6 adds in trunk

Regression: Event#stopPropagation() does not halt bubbling for webkitTransitionEnd
https://bugs.webkit.org/show_bug.cgi?id=115656

Reviewed by Darin Adler.

Source/WebCore:

If we create a prefixed event to dispatch it (in the case we have only
prefixed event listeners in client's code) then we need to make sure to
keep it in sync with the original unprefixed event after it has been
dispatched. While being dispatched the event can be modified by
client's code and when propagated back to outer elements, attributes were
not updated. This patch changes the old design of creating a separate event
for the prefixed case and now change the type of the event (so the name) before
dispatching it, keeping the attributes if changed and then rename it
back to unprefixed when the dispatching is finished.

Tests: transitions/transition-end-event-prefixed-01.html

transitions/transition-end-event-prefixed-02.html
transitions/transition-end-event-prefixed-03.html

  • dom/Event.h:

(WebCore::Event::setType):

  • dom/EventTarget.cpp:

(WebCore::EventTarget::fireEventListeners):

LayoutTests:

Added new tests to cover the bug.

  • transitions/transition-end-event-prefixed-03-expected.txt: Added.
  • transitions/transition-end-event-prefixed-03.html: Added.
  • transitions/transition-end-event-prefixed-02-expected.txt: Added.
  • transitions/transition-end-event-prefixed-02.html: Added.
  • transitions/transition-end-event-prefixed-01-expected.txt: Added.
  • transitions/transition-end-event-prefixed-01.html: Added.
8:20 PM Changeset in webkit [150238] by mifenton@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Strip invoke URLs when writing to the clipboard.
https://bugs.webkit.org/show_bug.cgi?id=116226

Reviewed by Rob Buis.

PR 333516.

Invoke URLs should not be included in the paste data.

Internally Reviewed by Gen Mak.

  • platform/blackberry/PasteboardBlackBerry.cpp:

(WebCore::Pasteboard::writeSelection):

8:18 PM Changeset in webkit [150237] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix Analyze ChangeLog's entry processing
https://bugs.webkit.org/show_bug.cgi?id=116219

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-05-16
Reviewed by Ryosuke Niwa.

  • Scripts/webkitpy/tool/commands/analyzechangelog.py:

(ChangeLogAnalyzer._analyze_entries): Fix the counter initialization.

8:17 PM Changeset in webkit [150236] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Missing UNUSED_PARAM macro for textPosition argument in WebKitAccessibleInterfaceText
https://bugs.webkit.org/show_bug.cgi?id=116230

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2013-05-16
Reviewed by Chris Fleizach.

No new functionality, no new tests.

  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:

(webkitAccessibleTextGetTextForOffset): List textPosition argument as
unused parameter for all platforms except GTK.

8:15 PM Changeset in webkit [150235] by rniwa@webkit.org
  • 5 edits in trunk/LayoutTests

Add failing test expectations to http/tests/cache/willsendrequest-returns-null-for-memory-cache-load.html per bug 116259.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/qt/TestExpectations:
8:14 PM Changeset in webkit [150234] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Source/WebCore: Frame flattening prevents <HTML> in <OBJECT> from having scrollbars
https://bugs.webkit.org/show_bug.cgi?id=115884

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-05-16
Reviewed by Antonio Gomes.

Frame flattening should be applied when the frame owner is frame or iframe. But when
the frame owner is object element, frame flattening prevents it from having scrollbars.
In this situation, we can't scroll the html document in object element.

This patch adds two helper functions to verify flattening conditions.

Test: fast/frames/flattening/scrolling-in-object.html

  • page/FrameView.cpp:

(WebCore::frameFlatteningEnabled): Added. Helper to check whether flattening is enabled or not.
(WebCore::supportsFrameFlattening): Added. Helper to check whether the frame owner is <frame> or <iframe>.
(WebCore::FrameView::avoidScrollbarCreation):
(WebCore::FrameView::calculateScrollbarModesForLayout): Use frameFlatteningEnabled().
(WebCore::FrameView::layout): Use frameFlatteningEnabled().
(WebCore::FrameView::isInChildFrameWithFrameFlattening): Use frameFlatteningEnabled().

LayoutTests: Frame flattening prevents <HTML> in <OBJECT> from having scrollbars
https://bugs.webkit.org/show_bug.cgi?id=115884

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-05-16
Reviewed by Antonio Gomes.

Frame flattening should be applied when the frame owner is frame or iframe. But when
the frame owner is object element, frame flattening prevents it from having scrollbars.
In this situation, we can't scroll the html document in object element.

This patch adds two helper functions to verify flattening conditions.

  • fast/frames/flattening/scrolling-in-object-expected.html: Added.
  • fast/frames/flattening/scrolling-in-object.html: Added.
7:53 PM Changeset in webkit [150233] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Optimize caret bounds calculation when leaving an input field.
https://bugs.webkit.org/show_bug.cgi?id=116224

Reviewed by Rob Buis.

PR 340132.

If the caret is no longer active in the field, do not allow it
to go into the single line input logic and calculate the node
bounding box.

Internally Reviewed By Gen Mak

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::caretPositionChanged):

7:50 PM Changeset in webkit [150232] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Fix memory leak in WebKitBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=116222

Patch by Manuel Rego Casasnovas <Manuel Rego Casasnovas> on 2013-05-16
Reviewed by Carlos Garcia Campos.

Due to the use of leakRef() the ImmutableArray is not being released
automatically. Adding a local variable in the methods to make sure that
the ImmutableArray is freed.

  • UIProcess/API/gtk/WebKitBackForwardList.cpp:

(webkit_back_forward_list_get_back_list_with_limit): Add local variable
RefPtr and pass the ImmutableArray to
WebKitBackForwardList::webkitBackForwardListCreateList() using
RefPtr::get().
(webkit_back_forward_list_get_forward_list_with_limit): Ditto.

7:47 PM Changeset in webkit [150231] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Port functions for pathhandling to Windows CE in FileSystemWin
https://bugs.webkit.org/show_bug.cgi?id=116208

Reviewed by Darin Adler.

This will allow us to remove FileSystemWinCE in a next step.

  • platform/win/FileSystemWin.cpp:

(WebCore::pathByAppendingComponent):
(WebCore::pathGetFileName):

7:46 PM Changeset in webkit [150230] by rniwa@webkit.org
  • 4 edits in trunk/Source

Unreviewed, rolling out r150034.
http://trac.webkit.org/changeset/150034
https://bugs.webkit.org/show_bug.cgi?id=116257

This work around doesn't work due to another bug NSUndoManager
has (Requested by rniwa on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2013-05-16

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::registerUndoOrRedoStep):

Source/WebKit2:

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::registerEditCommand):

7:44 PM Changeset in webkit [150229] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[Qt] UrlLoader::loadNext is broken in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=116099

Patch by Hyungchan Kim <hyungchan2.kim@lge.com> on 2013-05-16
Reviewed by Jocelyn Turcotte.

QQuickWebView's 3 signals(loadStarted, loadSucceeded, loadFailed)
are not available any more. So, UrlLoader::loadNext was broken
because it failed to connect to those signals.

  • MiniBrowser/qt/UrlLoader.cpp:

(UrlLoader::UrlLoader):
(UrlLoader::loadingChanged):

  • MiniBrowser/qt/UrlLoader.h:

(UrlLoader):

6:10 PM Changeset in webkit [150228] by benjamin@webkit.org
  • 3 edits in trunk/Source/WTF

Add the symbol WTFInvokeCrashHook back for binary compatibility.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-16
Reviewed by Ryosuke Niwa.

  • wtf/Assertions.cpp:
  • wtf/Assertions.h:
5:42 PM Changeset in webkit [150227] by timothy_horton@apple.com
  • 29 edits in trunk/Source

PDFPlugins don't load when plugins are disabled, but they should
https://bugs.webkit.org/show_bug.cgi?id=75790
<rdar://problem/11650197>

Reviewed by Anders Carlsson.

Make it possible to load "application" plug-ins even if settings or the FrameLoaderClient
say that plug-ins should be disabled, providing a mechanism for WebKit* to offer built-in
functionality which happens to use the plug-in infrastructure, and which also doesn't
unexpectedly disappear for users with plug-ins off.

  • WebCore.exp.in:

Export SubframeLoader::allowPlugins().
Update signature for PluginData::supportsMimeType to include the AllowedPluginTypes argument.

  • dom/DOMImplementation.cpp:

(WebCore::DOMImplementation::createDocument):
Load PluginData even if plug-ins are disabled, but if that is the case, only
create a PluginDocument for application plug-ins.

  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::appendBytes):
Don't bail if plug-ins are disabled, because we could still be a PluginDocument
for an application plug-in.

  • page/Page.cpp:

(WebCore::Page::pluginData):
Allow PluginData to be constructed even if plug-ins are disabled, as there might
be application plug-ins that we want to load anyway.

  • platform/mac/MIMETypeRegistryMac.mm:

(WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
On Mac, if we have PDFPlugin, we can support PDF and PostScript with a native application plug-in.

  • plugins/PluginData.cpp:

(WebCore::PluginData::supportsMimeType):
Add an AllowedPluginTypes argument to supportsMimeType, allowing callers to specify
whether they are looking for any plug-in, or are looking only for application plug-ins.

  • plugins/PluginData.h:

(PluginInfo): Added an isApplicationPlugin field, to specify whether this is a "built-in" plug-in.
(PluginData): Add the aforementioned AllowedPluginTypes enum and the argument to supportsMimeType.

Support loading "application" plug-ins even if plug-ins are explicitly disabled.

Make PDFPlugin and SimplePDFPlugin "application" plug-ins, so they can
be loaded even if plug-ins are disabled.

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC::callMemberFunction):
Add a 5-argument, 3-reply version of callMemberFunction.

  • Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:

(WebKit::NetscapePluginModule::getPluginInfo):
NPAPI plug-ins are not application plug-ins.

  • Shared/WebCoreArgumentCoders.cpp:

(CoreIPC::::encode):
(CoreIPC::::decode):
Encode/decode the new isApplicationPlugin field on PluginInfo.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::findPluginForMIMEType):
(WebKit::PluginInfoStore::findPluginForExtension):
(WebKit::PluginInfoStore::findPlugin):

  • UIProcess/Plugins/PluginInfoStore.h:

(PluginInfoStore):
Give PluginInfoStore's findPlugin method and its private helper
methods an argument allowing them to only match application plug-ins.

(WebKit::WebPageProxy::findPlugin):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:

Add an argument allowing findPlugin to restrict its search to only application plug-ins.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::objectContentType):
Previously, this caller depended on pluginData() returning null if
plug-ins were disabled. Since that is no longer the case, we have to
check if we can use plug-ins, and otherwise ignore non-application-plug-ins.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin):
When going to search for a plug-in, ask subframeLoader whether or not
it's OK to use ordinary non-application plug-ins, and pass that information
on to the UIProcess when performing the search.

(WebKit::WebPage::canPluginHandleResponse): Ditto.
(WebKit::WebPage::canShowMIMEType):
Ensure that canShowMIMEType returns true if we have an application plug-in
that can display a particular MIME type, even if we're not allowed to load plug-ins.

  • Plugins/WebBasePluginPackage.mm:

(-[WebBasePluginPackage getPluginInfoFromPLists]):

  • Plugins/WebNetscapePluginPackage.mm:

(-[WebNetscapePluginPackage getPluginInfoFromResources]):
Nothing loaded via WebBasePluginPackage or WebNetscapePluginPackage
is an application plugin.

  • WebView/WebFrame.mm:

(-[WebFrame _canProvideDocumentSource]):
Previously, this caller depended on pluginData() returning null if
plug-ins were disabled. Since that is no longer the case, we have to
check if we can use plug-ins, and otherwise ignore non-application-plug-ins.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::objectContentType):
Previously, this caller depended on pluginData() returning null if
plug-ins were disabled. Since that is no longer the case, we have to
check if we can use plug-ins, and otherwise ignore non-application-plug-ins.

  • WebView.cpp:

(WebView::canShowMIMEType):
Previously, this caller depended on pluginData() returning null if
plug-ins were disabled. Since that is no longer the case, we have to
check if we can use plug-ins, and otherwise ignore non-application-plug-ins.

5:36 PM Changeset in webkit [150226] by commit-queue@webkit.org
  • 8 edits in trunk/Source/WebKit2

[EFL][WK2] Make Ewk_Context_Menu Ewk_Object
https://bugs.webkit.org/show_bug.cgi?id=116097

Patch by Michał Pakuła vel Rutka <Michał Pakuła vel Rutka> on 2013-05-16
Reviewed by Gyuyoung Kim.

Changed Ewk_Context_Menu to be an Ewk_Object so pointer to menu
object can be shared between different modules.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::showContextMenu):

  • UIProcess/API/efl/EwkView.h:

(EwkView):

  • UIProcess/API/efl/ewk_context_menu.cpp:

(EwkContextMenu::appendItem):
(EwkContextMenu::removeItem):
(ewk_context_menu_new):
(ewk_context_menu_new_with_items):
(ewk_context_menu_item_append):
(ewk_context_menu_item_remove):
(ewk_context_menu_hide):
(ewk_context_menu_items_get):
(ewk_context_menu_item_select):

  • UIProcess/API/efl/ewk_context_menu_item.cpp:

(EwkContextMenuItem::EwkContextMenuItem):
(ewk_context_menu_item_new_with_submenu):

  • UIProcess/API/efl/ewk_context_menu_item_private.h:

(EwkContextMenuItem):

  • UIProcess/API/efl/ewk_context_menu_private.h:

(EwkContextMenu):
(EwkContextMenu::create):

  • UIProcess/API/efl/ewk_defines.h:
5:33 PM Changeset in webkit [150225] by commit-queue@webkit.org
  • 23 edits
    1 copy
    1 move in trunk

[WebSocket] Update pywebsocket to r760
https://bugs.webkit.org/show_bug.cgi?id=115863

Patch by Lamarque V. Souza <Lamarque.Souza@basyskom.com> on 2013-05-16
Reviewed by Alexey Proskuryakov.

Tools:

Version r760 supports a newer draft of message compression.
We need this update to finish the permessage compression patch in
bug 98840. This patch also fixes failing unit tests after the update.

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/_stream_base.py:

(StreamBase._read):
(StreamBase._read.of):
(StreamBase._write):
(StreamBase.receive_bytes):
(StreamBase._read_until):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/_stream_hybi.py:

(parse_frame):
(StreamOptions.init):
(Stream.init):
(Stream._receive_frame_as_frame_object):
(Stream._get_message_from_frame):
(Stream._process_close_message):
(Stream.close_connection):
(Stream.get_last_received_opcode):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/common.py:
  • Scripts/webkitpy/thirdparty/mod_pywebsocket/dispatch.py:

(Dispatcher.do_extra_handshake):
(Dispatcher.transfer_data):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/extensions.py:

(ExtensionProcessorInterface.init):
(ExtensionProcessorInterface.request):
(ExtensionProcessorInterface):
(ExtensionProcessorInterface.name):
(ExtensionProcessorInterface.check_consistency_with_other_processors):
(ExtensionProcessorInterface.set_active):
(ExtensionProcessorInterface.is_active):
(ExtensionProcessorInterface._get_extension_response_internal):
(ExtensionProcessorInterface.get_extension_response):
(ExtensionProcessorInterface._setup_stream_options_internal):
(ExtensionProcessorInterface.setup_stream_options):
(_log_outgoing_compression_ratio):
(_log_incoming_compression_ratio):
(_parse_window_bits):
(_AverageRatioCalculator):
(_AverageRatioCalculator.init):
(_AverageRatioCalculator.add_original_bytes):
(_AverageRatioCalculator.add_result_bytes):
(_AverageRatioCalculator.get_average_ratio):
(DeflateFrameExtensionProcessor):
(DeflateFrameExtensionProcessor.init):
(DeflateFrameExtensionProcessor._get_extension_response_internal):
(DeflateFrameExtensionProcessor._setup_stream_options_internal):
(DeflateFrameExtensionProcessor._outgoing_filter):
(DeflateFrameExtensionProcessor._incoming_filter):
(CompressionExtensionProcessorBase.for):
(CompressionExtensionProcessorBase.init):
(CompressionExtensionProcessorBase._get_extension_response_internal):
(CompressionExtensionProcessorBase._setup_stream_options_internal):
(PerFrameCompressExtensionProcessor):
(PerMessageDeflateExtensionProcessor):
(PerMessageDeflateExtensionProcessor.init):
(PerMessageDeflateExtensionProcessor._get_extension_response_internal):
(PerMessageDeflateExtensionProcessor._setup_stream_options_internal):
(PerMessageDeflateExtensionProcessor.set_c2s_max_window_bits):
(PerMessageDeflateExtensionProcessor.set_c2s_max_window_bits.adds):
(PerMessageDeflateExtensionProcessor.set_c2s_no_context_takeover):
(PerMessageDeflateExtensionProcessor.set_c2s_no_context_takeover.adds):
(PerMessageDeflateExtensionProcessor.set_bfinal):
(PerMessageDeflateExtensionProcessor.enable_outgoing_compression):
(PerMessageDeflateExtensionProcessor.disable_outgoing_compression):
(_PerMessageDeflateFramer):
(_PerMessageDeflateFramer.init):
(_PerMessageDeflateFramer.set_compress_outgoing_enabled):
(_PerMessageDeflateFramer._process_incoming_message):
(_PerMessageDeflateFramer._process_outgoing_message):
(_PerMessageDeflateFramer.setup_stream_options):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingMessageFilter):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingMessageFilter.init):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingMessageFilter.filter):
(_PerMessageDeflateFramer.setup_stream_options._IncomingMessageFilter):
(_PerMessageDeflateFramer.setup_stream_options._IncomingMessageFilter.init):
(_PerMessageDeflateFramer.setup_stream_options._IncomingMessageFilter.decompress_next_message):
(_PerMessageDeflateFramer.setup_stream_options._IncomingMessageFilter.filter):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingFrameFilter):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingFrameFilter.init):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingFrameFilter.set_compression_bit):
(_PerMessageDeflateFramer.setup_stream_options._OutgoingFrameFilter.filter):
(_PerMessageDeflateFramer.setup_stream_options._IncomingFrameFilter):
(_PerMessageDeflateFramer.setup_stream_options._IncomingFrameFilter.init):
(_PerMessageDeflateFramer.setup_stream_options._IncomingFrameFilter.filter):
(PerMessageCompressExtensionProcessor):
(PerMessageCompressExtensionProcessor._lookup_compression_processor):
(MuxExtensionProcessor.init):
(MuxExtensionProcessor.check_consistency_with_other_processors):
(MuxExtensionProcessor):
(MuxExtensionProcessor._get_extension_response_internal):
(MuxExtensionProcessor._setup_stream_options_internal):
(MuxExtensionProcessor.set_quota):
(MuxExtensionProcessor.quota):
(MuxExtensionProcessor.set_extensions):
(MuxExtensionProcessor.extensions):
(is_compression_extension):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/_base.py:

(validate_subprotocol):
(parse_host_header):
(format_header):
(check_request_line):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/hybi.py:

(Handshaker.do_handshake):
(Handshaker._create_handshake_response):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/handshake/hybi00.py:

(_validate_subprotocol):
(_check_header_lines):
(_build_location):
(Handshaker.do_handshake):
(Handshaker._set_subprotocol):
(Handshaker._set_location):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/headerparserhandler.py:

(_create_dispatcher):
(headerparserhandler):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/mux.py:

(_create_add_channel_response):
(_create_drop_channel):
(_create_flow_control):
(_create_new_channel_slot):
(_create_fallback_new_channel_slot):
(_MuxFramePayloadParser._read_number):
(_MuxFramePayloadParser._read_size_and_contents):
(_MuxFramePayloadParser._read_flow_control):
(_MuxFramePayloadParser._read_new_channel_slot):
(_LogicalConnection.init):
(_LogicalConnection.write):
(_LogicalConnection.on_write_data_done):
(_LogicalConnection):
(_LogicalConnection.on_writer_done):
(_InnerMessage):
(_InnerMessage.init):
(_InnerMessageBuilder):
(_InnerMessageBuilder.that):
(_InnerMessageBuilder.init):
(_InnerMessageBuilder._handle_first):
(_InnerMessageBuilder._process_first_fragmented_control):
(_InnerMessageBuilder._process_first_fragmented_message):
(_InnerMessageBuilder._handle_fragmented_control):
(_InnerMessageBuilder._reassemble_fragmented_control):
(_InnerMessageBuilder._handle_fragmented_message):
(_InnerMessageBuilder._reassemble_fragmented_message):
(_InnerMessageBuilder.build):
(_LogicalStream.init):
(_LogicalStream._create_inner_frame):
(_LogicalStream._write_inner_frame):
(_LogicalStream.replenish_send_quota):
(_LogicalStream.send_message):
(_LogicalStream._receive_frame):
(_LogicalStream._get_message_from_frame):
(_LogicalStream.stop_sending):
(_PhysicalConnectionWriter.init):
(_PhysicalConnectionWriter._write_data):
(_PhysicalConnectionWriter.run):
(_PhysicalConnectionWriter.stop):
(_Worker.run):
(_MuxHandshaker.init):
(_MuxHandshaker._create_stream):
(_MuxHandshaker._create_handshake_response):
(_HandshakeDeltaBase.create_headers):
(_MuxHandler.start):
(_MuxHandler.wait_until_done):
(_MuxHandler.notify_write_data_done):
(_MuxHandler._process_drop_channel):
(_MuxHandler._process_logical_frame):
(_MuxHandler.notify_reader_done):
(_MuxHandler):
(_MuxHandler.notify_writer_done):
(_MuxHandler.fail_physical_connection):
(_MuxHandler.fail_logical_channel):
(use_mux):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/standalone.py:

(_StandaloneRequest.get_uri):
(_StandaloneRequest.get_unparsed_uri):
(_StandaloneRequest):
(_StandaloneRequest.is_https):
(_import_ssl):
(_import_pyopenssl):
(_StandaloneSSLConnection.for):
(_StandaloneSSLConnection):
(_StandaloneSSLConnection.getattribute):
(_StandaloneSSLConnection.setattr):
(_StandaloneSSLConnection.makefile):
(_StandaloneSSLConnection.shutdown):
(_StandaloneSSLConnection.recv):
(WebSocketServer.init):
(WebSocketServer._create_sockets):
(WebSocketServer.handle_error):
(WebSocketServer.get_request):
(WebSocketServer.get_request.default_callback):
(WebSocketRequestHandler.parse_request):
(_build_option_parser):
(_main):
(_main.if):

  • Scripts/webkitpy/thirdparty/mod_pywebsocket/util.py:

(RepeatedXorMasker.init):
(RepeatedXorMasker._mask_using_swig):
(RepeatedXorMasker):
(RepeatedXorMasker._mask_using_array):
(_Deflater.compress_and_finish):
(_RFC1979Deflater.filter):
(DeflateSocket.send):

LayoutTests:

Fix failing tests.

  • http/tests/websocket/tests/handler_map.txt:
  • http/tests/websocket/tests/hybi/echo-host_wsh.py: Copied from LayoutTests/http/tests/websocket/tests/hybi/echo-location_wsh.py.

(web_socket_do_extra_handshake):
(web_socket_transfer_data):

  • http/tests/websocket/tests/hybi/echo-path_wsh.py: Renamed from LayoutTests/http/tests/websocket/tests/hybi/echo-location_wsh.py.

(web_socket_do_extra_handshake):
(web_socket_transfer_data):

  • http/tests/websocket/tests/hybi/url-no-trailing-slash-expected.txt:
  • http/tests/websocket/tests/hybi/url-no-trailing-slash.html:
  • http/tests/websocket/tests/hybi/url-with-credential-expected.txt:
  • http/tests/websocket/tests/hybi/url-with-credential.html:
  • http/tests/websocket/tests/hybi/url-with-empty-query-expected.txt:
  • http/tests/websocket/tests/hybi/url-with-empty-query.html:
  • http/tests/websocket/tests/hybi/url-with-query-expected.txt:
  • http/tests/websocket/tests/hybi/url-with-query.html:
5:30 PM Changeset in webkit [150224] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Crash due to an assert running test editing/execCommand/indent-paragraphs.html
https://bugs.webkit.org/show_bug.cgi?id=114944

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-16
Reviewed by Rob Buis.

It crashes in network platform code when trying to save an
invalid URL in the disk cache. That test contains references to
empty URLs like http://. Those empty URLs, are parsed as http:/ by
KURL and considered valid. BlackBerry network platform uses GURL
which considers those URLs invalid. We needed to check that the
URLs are valid for our platform before starting the network
operation.

Fixes a crash running test
editing/execCommand/indent-paragraphs.html.

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::NetworkManager::startJob): Check if the request URL is
valid from the platform point of view right after creating the
platform network request and return early if the URL is invalid
with StatusErrorInvalidUrl error.

5:20 PM Changeset in webkit [150223] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix testing if program exists in PATH
https://bugs.webkit.org/show_bug.cgi?id=116216

Patch by Jonathan Liu <net147@gmail.com> on 2013-05-16
Reviewed by Jocelyn Turcotte.

functions.prf incorrectly uses win_cmd_shell to test whether to
add .exe to the executable name when checking if it exists in
the PATH environment variable. This works correctly when
building using Windows Command Prompt but not under MSYS shell.

To resolve this, check the win32 platform scope instead of
win_cmd_shell so that it correctly adds .exe to the executable
name on Windows regardless of the shell used when testing if
it exists in PATH.

  • qmake/mkspecs/features/functions.prf:
5:19 PM Changeset in webkit [150222] by Patrick Gansterer
  • 3 edits in trunk/Source/WebCore

Remove unused function safeCreateFile() from WebCore
https://bugs.webkit.org/show_bug.cgi?id=116211

Reviewed by Anders Carlsson.

  • platform/FileSystem.h:
  • platform/win/FileSystemWin.cpp:
5:17 PM Changeset in webkit [150221] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[curl] MIME type should be in lowercase
https://bugs.webkit.org/show_bug.cgi?id=116218

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-05-16
Reviewed by Benjamin Poulain.

Existing testcase: http/tests/mime/uppercase-mime-type.html

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::headerCallback): Convert the MIME type to lowercase.

5:14 PM Changeset in webkit [150220] by Patrick Gansterer
  • 7 edits in trunk/Source/JavaScriptCore

Consolidate lists in JavaScriptCore CMake files
https://bugs.webkit.org/show_bug.cgi?id=115992

Reviewed by Gyuyoung Kim.

Move common files into the CMakeLists.txt to avoid duplicating the list of files.
Also rebase the recently added GTK files to match the other CMake ports, since
the submitted patch was based on an older version of the source tree.

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • shell/CMakeLists.txt:
  • shell/PlatformEfl.cmake:
  • shell/PlatformGTK.cmake:
5:14 PM Changeset in webkit [150219] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[CMAKE] Need to set WTF_LIBRARIES in wtf/CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=116209

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-16
Reviewed by Gyuyoung Kim.

  • wtf/CMakeLists.txt: Replace list with set.
5:12 PM Changeset in webkit [150218] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Fix optional value of promptText in Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=116203

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-16
Reviewed by Joseph Pecoraro.

Merge from https://chromiumcodereview.appspot.com/14672031.

No new tests needed.

  • inspector/Inspector.json:
5:11 PM Changeset in webkit [150217] by mary.wu@torchmobile.com.cn
  • 4 edits
    2 adds in trunk/Source

[BlackBerry] Unable to download blob resource
https://bugs.webkit.org/show_bug.cgi?id=115888

Reviewed by Benjamin Poulain.

Source/WebCore:

Add BlobStream to handle over blob data from BlobResourceHandle to download stream.
RIM bug 331086, internally reviewed by Charles Wei and Leo Yang.

  • PlatformBlackBerry.cmake:
  • platform/network/blackberry/BlobStream.cpp: Added.

(WebCore):
(WebCore::BlobStream::BlobStream):
(WebCore::BlobStream::~BlobStream):
(WebCore::BlobStream::didReceiveData):
(WebCore::BlobStream::didFinishLoading):
(WebCore::BlobStream::didFail):
(WebCore::BlobStream::url):
(WebCore::BlobStream::mimeType):

  • platform/network/blackberry/BlobStream.h: Added.

(WebCore):
(BlobStream):

Source/WebKit/blackberry:

For blob resource (blob:http....), it's not suitable to go to NetworkStream
which don't handle "blob" protocol at all. since blob data already handled
in BlobResourceHandle, simply get the data out to download stream.

RIM bug 331086, internally reviewed by Charles Wei and Leo Yang.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::convertMainResourceLoadToDownload):

5:06 PM Changeset in webkit [150216] by andersca@apple.com
  • 13 edits
    5 deletes in trunk/Source/WebCore

Remove SystemTime header and implementations
https://bugs.webkit.org/show_bug.cgi?id=116200

Reviewed by Alexey Proskuryakov.

SystemTim just had a single function that's not called anymore. Remove it.

  • GNUmakefile.list.am:
  • PlatformBlackBerry.cmake:
  • PlatformEfl.cmake:
  • PlatformWinCE.cmake:
  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • history/PageCache.cpp:
  • platform/SystemTime.h: Removed.
  • platform/blackberry/SystemTimeBlackBerry.cpp: Removed.
  • platform/efl/SystemTimeEfl.cpp: Removed.
  • platform/graphics/ca/GraphicsLayerCA.cpp:
  • platform/mac/SystemTimeMac.cpp: Removed.
  • platform/qt/TemporaryLinkStubsQt.cpp:
  • platform/win/SystemTimeWin.cpp: Removed.
5:04 PM Changeset in webkit [150215] by glenn@skynav.com
  • 2 edits in trunk/Source/WebCore

[Inspector] Don't filter syntax error caused by asterisk in CSS Property name.
https://bugs.webkit.org/show_bug.cgi?id=116196

Reviewed by Benjamin Poulain.

  • inspector/InspectorConsoleAgent.cpp:

(WebCore::InspectorConsoleAgent::addMessageToConsole):

  • Remove questionable IE7 related error filtering
5:03 PM Changeset in webkit [150214] by akling@apple.com
  • 90 edits in trunk/Source

Page::chrome() should return a reference.
<http://webkit.org/b/116185>

Source/WebCore:

Reviewed by Anders Carlsson.

A Page's chrome() can never be null. Change Page::chrome() to return a reference to reflect this.
Also, make Page::m_chrome a const member variable so nobody will accidentally set it to null.

Source/WebKit/blackberry:

Reviewed by Anders Carlsson.

Source/WebKit/efl:

Reviewed by Anders Carlsson.

Source/WebKit/gtk:

Reviewed by Anders Carlsson.

Source/WebKit/mac:

Reviewed by Anders Carlsson.

Source/WebKit/qt:

Reviewed by Anders Carlsson.

Source/WebKit/win:

Reviewed by Anders Carlsson.

Source/WebKit2:

Reviewed by Anders Carlsson.

4:57 PM Changeset in webkit [150213] by Simon Fraser
  • 3 edits
    2 adds in trunk

Source/WebCore: Content disappears when scrolling http://www.childrenscancer.org/zach/
https://bugs.webkit.org/show_bug.cgi?id=116206

Reviewed by Darin Adler.

When a RenderLayerBacking gains or loses a foregroundLayer or backgroundLayer,
we need to repaint the primary layer, since what paints into that primary
layer will change.

On the page in question, we gained/lost a foreground layer when scrolling because
the page popped an element into position:fixed.

Test: compositing/repaint/foreground-layer-change.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateForegroundLayer):
(WebCore::RenderLayerBacking::updateBackgroundLayer):

LayoutTests: Content disappears when scrolling http://www.childrenscancer.org/zach/
https://bugs.webkit.org/show_bug.cgi?id=116206

Reviewed by Darin Adler.

Ref test for foreground layer removal.

  • compositing/repaint/foreground-layer-change-expected.html: Added.
  • compositing/repaint/foreground-layer-change.html: Added.
4:48 PM Changeset in webkit [150212] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[wk2] didGetImageForFindMatch can return a null image
https://bugs.webkit.org/show_bug.cgi?id=116251
<rdar://problem/13277246>

Reviewed by Simon Fraser.

Don't send didGetImageForFindMatch if we didn't get an image for
the find match, which can happen if the selection is not visible.

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::getImageForFindMatch):

4:38 PM Changeset in webkit [150211] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Fix the hard-coded names of EWS bots that run tests.

  • Scripts/webkitpy/tool/commands/queues.py:

(CommitQueue.did_pass_testing_ews):

2:32 PM Changeset in webkit [150210] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

Do not indefinitely cache resources from blob URLs.

Reviewed by Alexey Proskuryakov.

Alexey pointed out after I landed r150169 that blob URLs backed by
files should return an error if the file changed after the URL was
created. By indefinitely caching them in memory, we don't give the
loader a chance to check for modification. Remove "blob" from the list
of schemes that should be indefinitely cached.

  • platform/SchemeRegistry.cpp:

(WebCore::SchemeRegistry::shouldCacheResponsesFromURLSchemeIndefinitely):

2:23 PM Changeset in webkit [150209] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

REGRESSION: canvas/philip/tests/2d.text.draw.fontface.notinpage.html fails
https://bugs.webkit.org/show_bug.cgi?id=116245

Add a passing/failing test expectation.

  • platform/mac/TestExpectations:
2:18 PM Changeset in webkit [150208] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

[Mac] fast/events/mouse-cursor-image-set.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=116244

Add a flaky test expectation on Mac.

  • platform/mac/TestExpectations:
2:04 PM Changeset in webkit [150207] by Claudio Saavedra
  • 4 edits
    1 move
    1 add
    1 delete in trunk

[CSS] CSS Variables are case-sensitive
https://bugs.webkit.org/show_bug.cgi?id=116239

Reviewed by Ryosuke Niwa.

Source/WebCore:

The CSS Variables specification states that variables are
case-sensitive, unlike other CSS properties.

Test: fast/css/variables/case-sensitive.html

  • css/CSSParser.cpp:

(WebCore::CSSParserString::substring): Replace
the now unnecessary lowerSubstring() with this method.
Also, since the method is only used by the CSS variables
implementation, #ifdef it.
(WebCore::CSSParser::createPrimitiveVariableNameValue):
(WebCore::CSSParser::storeVariableDeclaration):
Do not normalize variable declarations to lowercase.

  • css/CSSParserValues.h:

(CSSParserString): Replace the lowerSubstring() declaration
and wrap with #if/#endif.

LayoutTests:

  • fast/css/variables/case-sensitive-expected.html: Renamed from

fast/css/variables/case-insensitive-expected.html.

  • fast/css/variables/case-sensitive.html: Renamed from

LayoutTests/fast/css/variables/case-insensitive.html.

2:02 PM Changeset in webkit [150206] by beidson@apple.com
  • 6 edits in trunk/Source

svg/as-image/img-zoom-svg-stylesheet.html crashes with NetworkProcess enabled.
<rdar://problem/13837408> and https://bugs.webkit.org/show_bug.cgi?id=115917

Reviewed by Sam Weinig.

Source/WebCore:

Give WebKit2 the ability to not mis-cast.

  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::isEmptyFrameLoaderClient): Defaults to false, and include a FIXME

to remove it once https://bugs.webkit.org/show_bug.cgi?id=116233 is resolved.

  • loader/EmptyClients.h: Make isEmptyFrameLoaderClient() return true, and add a FIXME to remove it.

Source/WebKit2:

  • NetworkProcess/SchedulableLoader.cpp:

(WebKit::SchedulableLoader::SchedulableLoader): ASSERT that either there’s a frame and page ID, or

that the client cannot be asked for credentials.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad): Only cast the FrameLoaderClient and get WebFrame/WebPage

if that is actually possible. Set the clientCredentialPolicy based on whether or not WebFrame/WebPage are
available since they are needed to ask the UIProcess for credentials. ASSERT that either there’s both
a frame and page ID or that the client won’t be asked for credentials.

1:50 PM Changeset in webkit [150205] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit/mac

-webView:updateHistoryTitle:forURL: does not pass a frame to the delegate
https://bugs.webkit.org/show_bug.cgi?id=116243

Reviewed by Anders Carlsson.

Added a WebFrame parameter to the delegate method.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::setTitle): Pass the frame to the delegate. Maintain
compatibility with clients that implement the old delegate method that
doesn’t take a frame.

  • WebView/WebDelegateImplementationCaching.h:

(WebHistoryDelegateImplementationCache): Added a field to cache the
implementation of the old delegate method.

  • WebView/WebHistoryDelegate.h: Changed the signature of the delegate method.
  • WebView/WebView.mm:

(-[WebView _cacheHistoryDelegateImplementations]): Cache the implementation
of the new delegate method, but also check for the old one.

1:23 PM Changeset in webkit [150204] by kov@webkit.org
  • 6 edits
    18 adds in trunk

[GTK] Build Xvfb with jhbuild
https://bugs.webkit.org/show_bug.cgi?id=115907

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-05-16
Reviewed by Martin Robinson.

Tools:

Build our own Xvfb so that we can avoid problems with the system Xvfb
relying on symbols not present in our jhbuilt libraries such as pixman,
and also to ensure we have the fix for a GLX module crasher.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(resetDefaultsToConsistentValues): enable accelerated compositing.

  • gtk/install-dependencies: list packages required for building Xvfb.
  • gtk/jhbuild.modules: add xserver as a jhbuild module.
  • gtk/patches/xserver-remove-bogus-dependencies.patch: Added.
  • gtk/patches/xserver-fix-glx-init.patch: Added. Fixes a crash while

initializing the GLX module for Xvfb.

LayoutTests:

Unskip and create baselines for transforms/3d and some webgl tests. We can unskip
more, but I prefer to only dip the toe in the waters first, to see how the bots
react.

  • platform/gtk/TestExpectations:
  • platform/gtk/transforms/3d/general/perspective-non-layer-expected.txt: Added.
  • platform/gtk/transforms/3d/general/perspective-units-expected.txt: Added.
  • platform/gtk/transforms/3d/hit-testing/backface-hit-test-expected.txt: Added.
  • platform/gtk/transforms/3d/hit-testing/backface-no-transform-hit-test-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-2-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-3-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-coplanar-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-deep-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-origins-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-overlapping-expected.txt: Added.
  • platform/gtk/transforms/3d/point-mapping/3d-point-mapping-preserve-3d-expected.txt: Added.
12:37 PM Changeset in webkit [150203] by Lucas Forschler
  • 2 edits in tags/Safari-537.42/Source/WebKit/mac

Merged r150194.

12:33 PM Changeset in webkit [150202] by Lucas Forschler
  • 2 edits in tags/Safari-537.42/Source/WebKit/mac

Merge r150180.

12:19 PM Changeset in webkit [150201] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add more Mac test expectations.

  • platform/mac/TestExpectations:
12:13 PM Changeset in webkit [150200] by timothy@apple.com
  • 2 edits in trunk/Source/WebKit2

Make the Find Banner in Safari work again with the docked Web Inspector.

https://webkit.org/b/116182
rdar://problem/13857423

Reviewed by Benjamin Poulain.

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::inspectedViewFrameDidChange):
(WebKit::WebInspectorProxy::platformDetach):
Preserve the top position of the inspected view so banners in Safari still work.

12:11 PM Changeset in webkit [150199] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

JSValue shouldn't protect/unprotect its context
https://bugs.webkit.org/show_bug.cgi?id=116234

Reviewed by Mark Hahnenberg.

Our retain on _context is sufficient.

  • API/JSValue.mm:

(-[JSValue initWithValue:inContext:]):
(-[JSValue dealloc]):

12:09 PM Changeset in webkit [150198] by kov@webkit.org
  • 2 edits in trunk/Tools

[jhbuild] Should remove the sources directory as well when cleaning
https://bugs.webkit.org/show_bug.cgi?id=116229

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-05-16
Reviewed by Martin Robinson.

  • Scripts/update-webkit-libs-jhbuild:

(cleanJhbuild): remove the Source directory as well when cleaning.

12:08 PM Changeset in webkit [150197] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

[wk2] Minimum layout width is lost if the WebProcess crashes
https://bugs.webkit.org/show_bug.cgi?id=116202
<rdar://problem/13202320>

Reviewed by Darin Adler.

Send the minimum layout width to the WebProcess upon initialization,
so that crashed-and-restarted WebProcesses have the correct width.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters):
Add minimumLayoutWidth WebPage creation parameter.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):
Send the current minimumLayoutWidth to the WebPage when it's created.

(WebKit::WebPageProxy::setMinimumLayoutWidth):
Store minimumLayoutWidth changes that come in while the WebProcess is
not valid, so that the correct width is sent once it is restarted.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
Set minimumLayoutWidth to the value provided by our creation parameters.

12:03 PM Changeset in webkit [150196] by benjamin@webkit.org
  • 5 edits in trunk/Source

Crash properly on iOS
https://bugs.webkit.org/show_bug.cgi?id=115782

Reviewed by Darin Adler.

Improve crash handling. <rdar://problem/13842771>

  • wtf/Assertions.cpp:
  • wtf/Assertions.h:
12:00 PM Changeset in webkit [150195] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a test expectation per bug 116238 and remove lines erroneously added in r150090.

  • platform/mac/TestExpectations:
11:40 AM Changeset in webkit [150194] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

Re-land r150168 with some OS version guards.

  • WebView/WebFrameView.mm:

(-[WebFrameView drawRect:]):
(-[WebFrameView wantsUpdateLayer]):
(-[WebFrameView updateLayer]):

11:30 AM Changeset in webkit [150193] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Mac rebaseline. The flakiness dashboard tells us that it started at r150101
but reverting the change locally didn't fix the problem as far as Beth and I checked.

  • platform/mac/platform/mac/fast/text/thai-combining-mark-positioning-expected.txt: Added.
  • platform/mac/platform/mac/fast/text/webfont-after-tiny-monospace-text-expected.txt: Added.
11:30 AM Changeset in webkit [150192] by Martin Robinson
  • 2 edits in trunk

[GTK] [CMake] Disable the shadow DOM
https://bugs.webkit.org/show_bug.cgi?id=116237

Reviewed by Gustavo Noronha Silva.

  • Source/cmake/OptionsGTK.cmake: Disable shadow DOM by default.
11:22 AM Changeset in webkit [150191] by Martin Robinson
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] Documentation for WEBKIT_DEBUG logging channels is out of date
https://bugs.webkit.org/show_bug.cgi?id=114764

Reviewed by Gustavo Noronha Silva.

  • docs/webkitenvironment.xml: Update documentation to reflect current list of

logging channels.

11:19 AM Changeset in webkit [150190] by mhahnenberg@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

observeUseKindOnNode doesn't contain a case for KnownCellUse
https://bugs.webkit.org/show_bug.cgi?id=116130

This would just lead to us being overly conservative when deciding
whether we should unbox GetLocals with KnownCellUse UseKinds.

Reviewed by Filip Pizlo.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::observeUseKindOnNode):

11:16 AM Changeset in webkit [150189] by Martin Robinson
  • 5 edits
    2 adds in trunk

[GTK] Add support for building WebCore to the cmake build
https://bugs.webkit.org/show_bug.cgi?id=116128

Reviewed by Gustavo Noronha Silva.

.:

  • Source/PlatformGTK.cmake: Added.
  • Source/cmake/OptionsGTK.cmake: Added more logic and variables to support WebCore and properly

defined some existing variables.

Source/WebCore:

  • PlatformGTK.cmake: Added.
  • platform/gtk/GtkVersioning.c: Include "config.h" because we removed

the autotoolsconfig.h include from the header.

  • platform/gtk/GtkVersioning.h: Remove autotoolsconfig.h include to support for

non-autotools build systems.

11:12 AM Changeset in webkit [150188] by mhahnenberg@apple.com
  • 3 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: infrequent segfault in DFGCodeBlocks::deleteUnmarkedJettisonedCodeBlocks()
https://bugs.webkit.org/show_bug.cgi?id=116134

CodeBlock and JITCode should be ThreadSafeRefCounted. We're going to
start using them on more threads very soon (with concurrent
compilation). This patch also fixes the specific place where we were
superfluously creating a RefPtr.

Reviewed by Oliver Hunt.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::getJITType):

  • jit/JITCode.h:
11:04 AM Changeset in webkit [150187] by rniwa@webkit.org
  • 9 edits in trunk/Source/WebCore

DocumentOrderedMap doesn't need to have two HashMaps
https://bugs.webkit.org/show_bug.cgi?id=116167

Reviewed by Geoffrey Garen.

Previously, we had two hash maps: m_map and m_duplicateCounts in DocumentOrderedMap to keep track
of the first element and the number of duplicates for a given name. This patch simplifies this structure
by having a single hash map that contains both the pointer and the number of duplicates.

In addition, this patch fixes a regression introduced in r149652 that window and document name maps
were not updated for some elements inside a SVG use element, and makes use of the newly added list of
the matching elements in SelectorQuery.

  • dom/DocumentOrderedMap.cpp:

(WebCore::DocumentOrderedMap::clear): Updated to use the new hash map.
(WebCore::DocumentOrderedMap::add): Ditto.
(WebCore::DocumentOrderedMap::remove): Ditto.
(WebCore::DocumentOrderedMap::get): Ditto.
(WebCore::DocumentOrderedMap::getAllElementsById): Added.

  • dom/DocumentOrderedMap.h:

(WebCore::DocumentOrderedMap::MapEntry::MapEntry): Added.
(WebCore::DocumentOrderedMap::containsSingle): Updated to use new hash map.
(WebCore::DocumentOrderedMap::contains): Ditto.
(WebCore::DocumentOrderedMap::containsMultiple): Ditto.

  • dom/Element.cpp:

(WebCore::Element::insertedInto): This function didn't add this element to window and document's name maps
if the element had already been inserted into a tree scope, and the current call was inserting an ancestor
of the tree scope into the document. We were exiting early per scope != treeScope().

Fixed the bug by splitting updateId into two functions updateIdForTreeScope and updateIdForDocument.
The former is called when this element is inserted into a new tree scope, and the latter is called when
this element is inserted into a HTML document even if it had already been inside some tree scope.

(WebCore::Element::removedFrom): This function didn't remove this element from tree scope's id maps if
the tree scope wasn't a document. Fixed the bug by simply checking that the removal happens beneath the
current tree scope.
(WebCore::Element::updateName):
(WebCore::Element::updateNameForTreeScope): Renamed from updateName.
(WebCore::Element::updateNameForDocument): Extracted from updateName.
(WebCore::Element::updateId):
(WebCore::Element::updateIdForTreeScope): Renamed from updateId.
(WebCore::Element::updateIdForDocument): Extracted from updateId.

  • dom/Element.h:
  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::canUseIdLookup): Refactored to return the id subselector instead of checking if
the first subselector happens to be matching an id.
(WebCore::SelectorDataList::execute): Use the subselector canUseIdLookup returned. Also make use of newly
added getAllElementsById when there are multiple matching elements for a given id.

  • dom/SelectorQuery.h:
  • dom/TreeScope.cpp:

(WebCore::TreeScope::getAllElementsById): Added.

  • dom/TreeScope.h:
10:54 AM Changeset in webkit [150186] by mark.lam@apple.com
  • 18 edits
    2 adds in branches/dfgFourthTier/Source/JavaScriptCore

Implement a probe mechanism for JIT generated code.
https://bugs.webkit.org/show_bug.cgi?id=115705.

Reviewed by Geoffrey Garen.

The probe is in the form of a MacroAssembler pseudo instruction.
It takes 3 arguments: a ProbeFunction, and 2 void* args.

When inserted into the JIT at some code generation site, the probe
pseudo "instruction" will emit a minimal amount of code to save the
stack pointer, 1 (or more) scratch register(s), and the probe
arguments into a ProbeContext record on the stack. The emitted code
will then call a probe trampoline to do the rest of the work, which
consists of:

  1. saving the remaining registers into the ProbeContext.
  2. calling the ProbeFunction, and passing it the ProbeContext pointer.
  3. restoring the registers from the ProbeContext after the ProbeFunction returns, and then returning to the JIT generated code.

The ProbeContext is stack allocated and is only valid for the duration
that the ProbeFunction is executing.

If the user supplied ProbeFunction alters the register values in the
ProbeContext, the new values will be installed into the registers upon
returning from the probe. This can be useful for some debugging or
testing purposes.

The probe mechanism is built conditional on USE(MASM_PROBE) which is
defined in config.h. USE(MASM_PROBE) will off by default.

This changeset only implements the probe mechanism for X86 and X86_64.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • assembler/MacroAssembler.h:

(MacroAssembler):
(JSC::MacroAssembler::shouldBlind):
(JSC::MacroAssembler::store32):

  • assembler/MacroAssemblerX86.h:

(MacroAssemblerX86):
(JSC::MacroAssemblerX86::trustedImm32FromPtr):
(JSC::MacroAssemblerX86::probe):

  • assembler/MacroAssemblerX86Common.cpp: Added.

(JSC::MacroAssemblerX86Common::ProbeContext::dumpCPURegisters):

  • CPU specific register dumper called by ProbeContext::dump().

(JSC::MacroAssemblerX86Common::ProbeContext::dump):

  • Prints the ProbeContext to the DataLog.
  • assembler/MacroAssemblerX86Common.h:

(MacroAssemblerX86Common):
(CPUState): Added.
(ProbeContext): Added.

  • assembler/MacroAssemblerX86_64.h:

(MacroAssemblerX86_64):
(JSC::MacroAssemblerX86_64::trustedImm64FromPtr):
(JSC::MacroAssemblerX86_64::probe):

  • assembler/X86Assembler.h:
  • config.h: Added WTF_USE_MASM_PROBE flag.
  • jit/JITStubs.cpp:
  • jit/JITStubs.h:
  • jit/JITStubsX86.h:
  • jit/JITStubsX86Common.h: Added.
  • jit/JITStubsX86_64.h:
10:23 AM Changeset in webkit [150185] by kov@webkit.org
  • 2 edits in releases/WebKitGTK/webkit-2.0

[GTK] WebAudio doesn't build in WebKitGTK+ 2.0.2
https://bugs.webkit.org/show_bug.cgi?id=116154

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-16
Reviewed by Gustavo Noronha Silva.

Don't override the value of ENABLE_WEB_AUDIO selected in the
configure script.

  • Source/autotools/SetupWebKitFeatures.m4:
10:06 AM Changeset in webkit [150184] by sergio@webkit.org
  • 3 edits in trunk/LayoutTests

Enable the CSSVariables setting in css-variable-definition.html test
https://bugs.webkit.org/show_bug.cgi?id=116231

Reviewed by Andreas Kling.

CSSVariablesEnabled setting must be set to true to allow
CSSVariables at runtime.

Modified also the indent size to 4 spaces.

  • css3/css-variable-definition-expected.html:
  • css3/css-variable-definition.html:
8:44 AM Changeset in webkit [150183] by Darin Adler
  • 6 edits in trunk/Source/WebCore

[Mac] Make Clipboard::create functions for Mac platform independent by moving Pasteboard creation to Pasteboard functions
https://bugs.webkit.org/show_bug.cgi?id=116179

Reviewed by Andreas Kling.

  • dom/Clipboard.cpp:

(WebCore::Clipboard::createForCopyAndPaste): Moved the function here from
ClipboardMac, and have it use Pasteboard functions that are not Mac-specific.
(WebCore::Clipboard::create): Ditto.
(WebCore::Clipboard::createForDragAndDrop): Ditto.

  • platform/DragData.h:

(WebCore::DragData::pasteboardName): Made this const.

  • platform/Pasteboard.h: Added new create functions, used by the clipboard

create functions above.

  • platform/mac/ClipboardMac.mm: Removed the functions that were moved to the

Clipboard.cpp file.

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::createForCopyAndPaste): Added.
(WebCore::Pasteboard::createPrivate): Added.
(WebCore::Pasteboard::createForDragAndDrop): Added.

8:19 AM Changeset in webkit [150182] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] TargetFrame and innerNodeFrame confused
https://bugs.webkit.org/show_bug.cgi?id=102907

Reviewed by Martin Robinson.

  • webkit/webkithittestresult.cpp:

(WebKit::kit):

7:38 AM WebKitGTK/TrackingMemoryErrors edited by Manuel Rego Casasnovas
(diff)
5:49 AM Changeset in webkit [150181] by dominik.rottsches@intel.com
  • 2 edits in trunk/Tools

[EFL] Remove Intel Wk2 Buildbots from Master
https://bugs.webkit.org/show_bug.cgi?id=116149

Removing Intel maintained EFL Wk2 bots except the handle for efl-linux-slave-2
since Gyuyoung Kim from Samsung plans to take over and maintain it.

Reviewed by Benjamin Poulain.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
3:07 AM Changeset in webkit [150180] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

Unreviewed, rolling out r150168.
http://trac.webkit.org/changeset/150168
https://bugs.webkit.org/show_bug.cgi?id=116214

broke the world on Mountain Lion (Requested by thorton on
#webkit).

  • WebView/WebFrameView.mm:

(-[WebFrameView drawRect:]):

2:47 AM Changeset in webkit [150179] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/Source/WebKit2

[Win] Unreviewed buildfix after r150161.

'Unknown' in HTTPRequest.cpp is ambiguous symbol with MSVC,
because it is also defined in MS SDK 7.1 winioctl.h.

  • UIProcess/InspectorServer/HTTPRequest.cpp:

(WebKit::HTTPRequest::HTTPRequest):

1:46 AM Changeset in webkit [150178] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] PluginInformation.cpp fails to build because of missing ENABLE(NETSCAPE_PLUGIN_API) guard
https://bugs.webkit.org/show_bug.cgi?id=116018

Rubber-stamped by Jocelyn Turcotte.

  • Shared/Plugins/Netscape/PluginInformation.cpp:

(WebKit::getPluginModuleInformation):

May 15, 2013:

10:56 PM Changeset in webkit [150177] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Fix a thinko.

We want to invalidate the file icon loader if it exists, not create it!

  • html/FileInputType.cpp:

(WebCore::FileInputType::requestIcon):

9:37 PM Changeset in webkit [150176] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Move drag-specific Clipboard functions inside ENABLE(DRAG_SUPPORT)
https://bugs.webkit.org/show_bug.cgi?id=116176

Reviewed by Andreas Kling.

  • dom/Clipboard.cpp:

(WebCore::Clipboard::writeRange):
(WebCore::Clipboard::writePlainText):
(WebCore::Clipboard::writeURL):
Move these three functions inside ENABLE(DRAG_SUPPORT). Even though their names do
not make it obvious, these are here only for use by dragging code. Later we may
refactor them away entirely, but for now it's good not to compile them in on any
platform that does not support dragging.

9:34 PM Changeset in webkit [150175] by ap@apple.com
  • 6 edits in trunk/Source/WebKit2

Enable printing in plugins
https://bugs.webkit.org/show_bug.cgi?id=116201
<rdar://problem/12347902>

Reviewed by Alexey Proskuryakov.

Add the printing entitlement so that legacy printing drivers can
customize the print panel. Update the printing rules and enable them
for the plugins.

  • Configurations/PluginService.entitlements:
  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
  • Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
  • Resources/PlugInSandboxProfiles/com.microsoft.SilverlightPlugin.sb:
  • Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
9:20 PM Changeset in webkit [150174] by Lucas Forschler
  • 4 edits in trunk/Source

Versioning.

9:18 PM Changeset in webkit [150173] by Lucas Forschler
  • 1 copy in tags/Safari-537.42

New Tag.

8:21 PM Changeset in webkit [150172] by rniwa@webkit.org
  • 7 edits in trunk/Source

Source/JavaScriptCore: Another Windows build fix attempt after r150160.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:

Source/WebKit: Revert the previous commit.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/win: Revert the previous commit.

  • WebKit.vcproj/WebKitExports.def.in:
8:15 PM Changeset in webkit [150171] by rniwa@webkit.org
  • 4 edits in trunk/Source/WebKit

Windows build fix attempt after r150160.

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/win:

  • WebKit.vcproj/WebKitExports.def.in:
8:10 PM Changeset in webkit [150170] by rniwa@webkit.org
  • 4 edits in trunk/Source/WebKit

Windows build fix attempt after r150156.

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/win:

  • WebKit.vcproj/WebKitExports.def.in:
7:54 PM Changeset in webkit [150169] by aestes@apple.com
  • 5 edits
    4 moves
    3 adds
    4 deletes in trunk

Resources from non-HTTP schemes should not be cached indefinitely
https://bugs.webkit.org/show_bug.cgi?id=113626

Reviewed by Ryosuke Niwa.

Source/WebCore:

With the exception of schemes that we know will always return the same
result for a given URL, we should not indefinitely cache non-HTTP
resources when their freshness cannot be verified.

Writing a test for this is blocked on https://webkit.org/b/116199.

The following two existing tests of memory cache behavior were
converted to HTTP tests so that they continue to function as expected:

Tests: http/tests/cache/display-image-unset-allows-cached-image-load.html

http/tests/cache/willsendrequest-returns-null-for-memory-cache-load.html

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::freshnessLifetime): Returned a freshness
lifetime of 0 for non-HTTP schemes that can't be indefinitely cached.

  • platform/SchemeRegistry.cpp:

(WebCore::SchemeRegistry::shouldCacheResponsesFromURLSchemeIndefinitely):
Checked whether the scheme is blob:, data:, or applewebdata:.

  • platform/SchemeRegistry.h:

LayoutTests:

Convert existing memory cache tests to HTTP tests.

  • fast/loader/resources/compass.jpg: Removed.
  • fast/loader/resources/image1.html: Removed.
  • fast/loader/resources/image2.html: Removed.
  • fast/loader/willsendrequest-returns-null-for-memory-cache-load-expected.txt: Removed.
  • http/tests/cache/display-image-unset-allows-cached-image-load-expected.txt: Renamed from LayoutTests/fast/loader/display-image-unset-allows-cached-image-load-expected.txt.
  • http/tests/cache/display-image-unset-allows-cached-image-load.html: Renamed from LayoutTests/fast/loader/display-image-unset-allows-cached-image-load.html.
  • http/tests/cache/resources/cached-image.html: Renamed from LayoutTests/fast/loader/resources/cached-image.html.
  • http/tests/cache/resources/image1.html: Added.
  • http/tests/cache/resources/image2.html: Added.
  • http/tests/cache/willsendrequest-returns-null-for-memory-cache-load-expected.txt: Added.
  • http/tests/cache/willsendrequest-returns-null-for-memory-cache-load.html: Renamed from LayoutTests/fast/loader/willsendrequest-returns-null-for-memory-cache-load.html.
7:05 PM Changeset in webkit [150168] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

Avoid backing store for the WebFrameView's layer when the WebView is layer-backed
https://bugs.webkit.org/show_bug.cgi?id=116172

Reviewed by Tim Horton.

When the WebView is layer-backed, AppKit will create a layer with backing store for
the WebFrameView because it implements drawRect:. However, this method only paints
when there is no documentView, so this layer’s backing store is wasteful.

We can avoid allocation of this backing store by implementing -wantsUpdateLayer
and -updateLayer, and setting the view’s backgroundColor.

  • WebView/WebFrameView.mm:

(-[WebFrameView wantsUpdateLayer]):
(-[WebFrameView updateLayer]):

6:35 PM Changeset in webkit [150167] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

makeRGBAFromNSColor throws an exception if given a color in a greyscale colorspace
https://bugs.webkit.org/show_bug.cgi?id=116198
<rdar://problem/13904395>

Reviewed by Simon Fraser.

Block Objective-C exceptions in makeRGBAFromNSColor.
Remove a comment saying that they're impossible.

Convert the incoming color to the DeviceRGB colorspace to match
existing color sources. Some rare cases (attributed strings that come
from PDFKit) can have DeviceGrayscale color spaces, which would
previously throw an exception here.

  • platform/graphics/mac/ColorMac.mm:

(WebCore::makeRGBAFromNSColor):

6:24 PM Changeset in webkit [150166] by ddkilzer@apple.com
  • 3 edits in trunk/Source/WebCore

BUILD FIX (r150140): Frame::editor() should return a reference for iOS, too

  • platform/ios/ClipboardIOS.mm:

(WebCore::ClipboardIOS::ClipboardIOS):
(WebCore::ClipboardIOS::hasData):
(WebCore::ClipboardIOS::clearData):
(WebCore::ClipboardIOS::clearAllData):
(WebCore::ClipboardIOS::getData):
(WebCore::ClipboardIOS::setData):
(WebCore::ClipboardIOS::types):
(WebCore::ClipboardIOS::writeRange):

  • platform/ios/PasteboardIOS.mm:

(WebCore::Pasteboard::getStringSelection):
(WebCore::Pasteboard::writeSelection):
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::writeImage):
(WebCore::Pasteboard::plainText):
(WebCore::documentFragmentWithRTF):
(WebCore::Pasteboard::documentFragmentForPasteboardItemAtIndex):
(WebCore::Pasteboard::documentFragment):

6:17 PM Changeset in webkit [150165] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Stop using the factory pattern in FileIconLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=116197

Reviewed by Andreas Kling.

Move the FileIconLoader member out of FileIconLoaderClient and into FileInputType and remove the factory gunk.

  • html/FileInputType.cpp:

(WebCore::FileInputType::~FileInputType):
(WebCore::FileInputType::requestIcon):

  • html/FileInputType.h:

(FileInputType):

  • platform/FileIconLoader.cpp:

(WebCore::FileIconLoader::invalidate):

  • platform/FileIconLoader.h:

(WebCore::FileIconLoaderClient::~FileIconLoaderClient):
(FileIconLoader):

6:06 PM Changeset in webkit [150164] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WTF

Unreviewed build fix after r150123

  • wtf/CMakeLists.txt:
5:48 PM Changeset in webkit [150163] by andersca@apple.com
  • 5 edits in trunk/Source/WebCore

Fix FileChooserClient design
https://bugs.webkit.org/show_bug.cgi?id=116195

Reviewed by Andreas Kling.

FileChooserClient doesn't match the standard WebCore client idiom of only having virtual member functions.
Instead it holds on to its FileChooser and it's even a factory for creating new file choosers(!).

Fix this by making it an abstract class, and moving FileChooser into FileInputType.

  • html/FileInputType.cpp:

(WebCore::FileInputType::~FileInputType):
Invalidate the file chooser.

(WebCore::FileInputType::handleDOMActivateEvent):
Apply the file chooser settings.

(WebCore::FileInputType::applyFileChooserSettings):
Recreate the file chooser with new settings.

(WebCore::FileInputType::receiveDropForDirectoryUpload):
Apply the settings.

  • platform/FileChooser.cpp:

(WebCore::FileChooser::invalidate):
Set m_client to null.

(WebCore::FileChooser::chooseFiles):
Early return.

  • platform/FileChooser.h:
5:42 PM Changeset in webkit [150162] by barraclough@apple.com
  • 3 edits in trunk/Source/WebCore

ScriptedAnimationController::setThrottled should extend MinimumAnimationInterval
https://bugs.webkit.org/show_bug.cgi?id=116193

Reviewed by Darin Adler

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::ScriptedAnimationController):
(WebCore::ScriptedAnimationController::setThrottled):
(WebCore::ScriptedAnimationController::scheduleAnimation):

  • dom/ScriptedAnimationController.h:

(ScriptedAnimationController):

  • Fixes for review comments.
5:36 PM Changeset in webkit [150161] by andersca@apple.com
  • 17 edits
    2 moves in trunk/Source

Move HTTPRequest class to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=116192

Reviewed by Darin Adler.

Source/WebCore:

HTTPRequest is only used by the "remote inspector" feature in WebKit2,
so there's no need to have it in WebCore.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Move HTTPRequest to WebKit2 and put it in the WebKit namespace.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • UIProcess/InspectorServer/HTTPRequest.cpp: Renamed from Source/WebCore/platform/network/HTTPRequest.cpp.
  • UIProcess/InspectorServer/HTTPRequest.h: Renamed from Source/WebCore/platform/network/HTTPRequest.h.
  • UIProcess/InspectorServer/WebInspectorServer.cpp:
  • UIProcess/InspectorServer/WebInspectorServer.h:

(WebInspectorServer):

  • UIProcess/InspectorServer/WebSocketServerClient.h:

(WebKit::WebSocketServerClient::didReceiveUnrecognizedHTTPRequest):
(WebKit::WebSocketServerClient::didReceiveWebSocketUpgradeHTTPRequest):
(WebKit::WebSocketServerClient::didEstablishWebSocketConnection):

  • UIProcess/InspectorServer/WebSocketServerConnection.cpp:
  • UIProcess/InspectorServer/WebSocketServerConnection.h:

(WebKit):
(WebSocketServerConnection):

5:29 PM Changeset in webkit [150160] by oliver@apple.com
  • 11 edits in trunk/Source

RefCountedArray needs to use vector initialisers for its backing store
https://bugs.webkit.org/show_bug.cgi?id=116194

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Use an out of line function to clear the exception stack to avoid
needing to include otherwise unnecessary headers all over the place.

Everything else is just being updated to use that.

  • bytecompiler/BytecodeGenerator.cpp:
  • interpreter/CallFrame.h:

(JSC::ExecState::clearSupplementaryExceptionInfo):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::addStackTraceIfNecessary):
(JSC::Interpreter::throwException):

  • runtime/JSGlobalObject.cpp:

(JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope):

  • runtime/VM.cpp:

(JSC):
(JSC::VM::clearExceptionStack):

  • runtime/VM.h:

(VM):
(JSC::VM::exceptionStack):

Source/WebCore:

Update to use new functions for operating on the exception stack.

  • bindings/js/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStackFromException):

Source/WTF:

Use VectorOperations to operate on the backing store

  • wtf/RefCountedArray.h:

(WTF::RefCountedArray::RefCountedArray):
(WTF::RefCountedArray::operator=):
(WTF::RefCountedArray::~RefCountedArray):

5:28 PM Changeset in webkit [150159] by barraclough@apple.com
  • 3 edits in trunk/Source/WebCore

ScriptedAnimationController::setThrottled should extend MinimumAnimationInterval
https://bugs.webkit.org/show_bug.cgi?id=116193

Reviewed by Simon Fraser.

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::ScriptedAnimationController):

  • initialize m_throttled

(WebCore::ScriptedAnimationController::setThrottled):

  • sets m_throttled, reschedule when this changes.

(WebCore::ScriptedAnimationController::scheduleAnimation):

  • if throtled don't use a display link, and extend the timeout.
  • dom/ScriptedAnimationController.h:

(ScriptedAnimationController):

  • Added m_throttled
5:12 PM Changeset in webkit [150158] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[GTK] [WebKit2] enable displaying console.log messages to system console
https://bugs.webkit.org/show_bug.cgi?id=115578

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2013-05-15
Reviewed by Martin Robinson.

Add a setting to enable/disable displaying of page messages to system
console. Property is called enable-write-console-messages-to-stdout.
Getter API function is
webkit_settings_get_enable_write_console_messages_to_stdout
Setter API function is
webkit_settings_set_enable_write_console_messages_to_stdout

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
(webkit_settings_get_enable_write_console_messages_to_stdout):
(webkit_settings_set_enable_write_console_messages_to_stdout):

  • UIProcess/API/gtk/WebKitSettings.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettings):

4:43 PM Changeset in webkit [150157] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit/gtk

Fix build.

  • webkit/webkitwebview.cpp:

(webkitWebViewDirectionChanged):

4:00 PM Changeset in webkit [150156] by barraclough@apple.com
  • 13 edits in trunk/Source

Process suppression should throttle scripted animations
https://bugs.webkit.org/show_bug.cgi?id=115812

Reviewed by Simon Fraser.

<rdar://problem/13799726>

Source/WebCore:

  • WebCore.exp.in:
    • Expose Page::setThrottled
  • dom/Document.cpp:

(WebCore::Document::scriptedAnimationControllerSetThrottled):
(WebCore):

  • dom/Document.h:

(Document):

  • Forwards to ScriptedAnimationController::setThrottled
  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::setThrottled):
(WebCore):

  • dom/ScriptedAnimationController.h:
    • Force use of a timer.

(ScriptedAnimationController):

  • page/Page.cpp:

(WebCore::Page::setThrottled):
(WebCore):

  • page/Page.h:

(Page):

  • When under throttling force the ScriptedAnimationController to use a timer.

Source/WebKit2:

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setThrottled):
(WebKit):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • Added setThrottled, forwards to WebCore::Page.
  • WebProcess/WebProcess.cpp:

(WebKit):
(WebKit::WebProcess::setProcessSuppressionEnabled):

  • WebProcess/WebProcess.h:

(WebProcess):

  • Intercept calls to setProcessSuppressionEnabled, also mark all pages as being throttled.
3:59 PM Changeset in webkit [150155] by igor.o@sisa.samsung.com
  • 3 edits
    4 adds in trunk

Implement run-in remove child cases.
https://bugs.webkit.org/show_bug.cgi?id=86520

Move runin to original position when sibling element is destroyed.

Reviewed by David Hyatt.

Source/WebCore:

Tests: fast/runin/runin-remove-child-simple.html

fast/runin/runin-sibling-inline.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::willBeDestroyed):
(WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):

If moveRunInUnderSiblingBlockIfNeeded is called when the sibling run-in block
is being destroyed, it means that the run-in is moving to original position and
we do not need to do nothing.

LayoutTests:

  • fast/runin/runin-remove-child-simple-expected.txt: Added.
  • fast/runin/runin-remove-child-simple.html: Added.
  • fast/runin/runin-sibling-inline-expected.txt: Added.
  • fast/runin/runin-sibling-inline.html: Added.
3:43 PM Changeset in webkit [150154] by andersca@apple.com
  • 14 edits
    2 deletes in trunk/Source/WebCore

Remove WebSocketHandshakeResponse class
https://bugs.webkit.org/show_bug.cgi?id=116190

Reviewed by Andreas Kling.

Just use ResourceResponse instead of WebSocketHandshakeResponse.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::readServerHandshake):
(WebCore::WebSocketHandshake::serverWebSocketProtocol):
(WebCore::WebSocketHandshake::serverSetCookie):
(WebCore::WebSocketHandshake::serverSetCookie2):
(WebCore::WebSocketHandshake::serverUpgrade):
(WebCore::WebSocketHandshake::serverConnection):
(WebCore::WebSocketHandshake::serverWebSocketAccept):
(WebCore::WebSocketHandshake::serverHandshakeResponse):
(WebCore::WebSocketHandshake::readHTTPHeaders):

  • Modules/websockets/WebSocketHandshake.h:
  • Modules/websockets/WebSocketHandshakeResponse.cpp: Removed.
  • Modules/websockets/WebSocketHandshakeResponse.h: Removed.
  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didReceiveWebSocketHandshakeResponse):

  • inspector/InspectorResourceAgent.h:

(WebCore):
(InspectorResourceAgent):

3:38 PM Changeset in webkit [150153] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] media engine may deliver NULL in-band "cue"
https://bugs.webkit.org/show_bug.cgi?id=116180

Reviewed by Jer Noble.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processCue): NULL check before logging cue count.

3:01 PM Changeset in webkit [150152] by Darin Adler
  • 2 edits in trunk/Source/WebCore

List platforms that still use the legacy clipboard instead of just saying "not Mac"
https://bugs.webkit.org/show_bug.cgi?id=116177

Reviewed by Andreas Kling.

dom/Clipboard.h: Replaced the "!MAC
IOS" with a list of platforms still on the

legacy model.

2:53 PM Changeset in webkit [150151] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

WKPageGetPluginInformationDisplayNameKey doesn't return the right key
https://bugs.webkit.org/show_bug.cgi?id=116188

Reviewed by Andreas Kling.

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetPluginInformationDisplayNameKey):

2:51 PM Changeset in webkit [150150] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

We should clear mainResource in DocumentLoader::cancelMainResourceLoad.
https://bugs.webkit.org/show_bug.cgi?id=116119

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2013-05-15
Reviewed by Oliver Hunt.

MainResourceLoader::clearResource() was left out in r146239 when moving MainResourceLoader::cancel()
to DocumentLoader::cancelMainResourceLoad(), we need to add it back to make sure m_mainResource is
cleared when we cancel the loader.

No new tests needed.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::~DocumentLoader):
(WebCore::DocumentLoader::continueAfterNavigationPolicy):
(WebCore::DocumentLoader::cancelMainResourceLoad):
(WebCore::DocumentLoader::clearMainResource):
(WebCore):

  • loader/DocumentLoader.h: add helper method clearMainResource()

(DocumentLoader):

2:42 PM Changeset in webkit [150149] by ap@apple.com
  • 4 edits in trunk

More fixing after WebProcessShim renaming in r149074.

  • Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm: (WebContentServiceInitializer): Updated a comment to mention the shim by its new name.
  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source (target WebProcess).xcscheme: Updated to insert the right shim.
2:25 PM Changeset in webkit [150148] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r150051.
http://trac.webkit.org/changeset/150051
https://bugs.webkit.org/show_bug.cgi?id=116186

Broke all JSC tests on Mac and the author is unresponsive
(Requested by rniwa on #webkit).

2:23 PM Changeset in webkit [150147] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] When HTTP auth fails, only purge credentials that match the failed credentials
https://bugs.webkit.org/show_bug.cgi?id=116164

Patch by Joe Mason <jmason@blackberry.com> on 2013-05-15
Reviewed by Rob Buis.

Internal PR: 338490
Internally Reviewed By: Lyon Chen

When there are multiple HTTP requests in flight with the same bad credentials (common with
proxy auth if the user mistyped their password), the first 407 that's received will cause
the credentials to be purged and the password dialog to open for new credentials. This means
that all 407's received after this should only purge the credentials if they have not
already been updated from the dialog; otherwise they will be wiping out credentials that
haven't failed yet.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::sendRequestWithCredentials):
(WebCore::NetworkJob::purgeCredentials):

2:17 PM Changeset in webkit [150146] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Remove savedTimeoutReg from JITStackFrame for sh4 base JIT.
https://bugs.webkit.org/show_bug.cgi?id=116143

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-15
Reviewed by Geoffrey Garen.

Since r148119, timeoutCheckRegister is removed from baseline JIT.
So we don't need to save r8 register in JITStackFrame anymore for sh4.

  • jit/JITStubs.cpp:
  • jit/JITStubs.h:

(JITStackFrame):

1:51 PM Changeset in webkit [150145] by Chris Fleizach
  • 4 edits in trunk/Source/WebCore

AX: Use caching when requesting children object on iOS
https://bugs.webkit.org/show_bug.cgi?id=116112

Reviewed by David Kilzer.

Building up the children list in the AX hierarchy can be time consuming. On iOS, this
is now much more noticeable (I believe due to the way tables calculate their AX ignored flag).

We can speed everything up if we just cache the isIgnored() attribute while building up children.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXAttributeCacheEnabler::AXAttributeCacheEnabler):
(WebCore):
(WebCore::AXAttributeCacheEnabler::~AXAttributeCacheEnabler):

  • accessibility/AXObjectCache.h:

(AXAttributeCacheEnabler):
(WebCore):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityHitTest:]):
(-[WebAccessibilityObjectWrapper accessibilityElementCount]):
(-[WebAccessibilityObjectWrapper accessibilityElementAtIndex:]):
(-[WebAccessibilityObjectWrapper indexOfAccessibilityElement:]):
(-[WebAccessibilityObjectWrapper accessibilityContainer]):

1:43 PM Changeset in webkit [150144] by mark.lam@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

Fix for broken 32-bit build in SpeculativeJIT::checkArray().
https://bugs.webkit.org/show_bug.cgi?id=116184.

Rubber stamped by Mark Hahnenberg.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):

1:30 PM Changeset in webkit [150143] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13902706> Lion: com.apple.tsm.uiserver sandbox error in Console when
launching Safari

Reviewed by Anders Carlsson.

  • WebProcess/com.apple.WebProcess.sb.in: Silence the violation.
1:22 PM Changeset in webkit [150142] by andersca@apple.com
  • 15 edits
    2 deletes in trunk/Source/WebCore

Remove WebSocketHandshakeRequest class
https://bugs.webkit.org/show_bug.cgi?id=116178

Reviewed by Andreas Kling.

Turns out WebSocketHandshakeRequest is just used by the web inspector, and there's no reason
why we can't just use a ResourceRequest instead.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::didOpenSocketStream):

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::clientHandshakeRequest):

  • Modules/websockets/WebSocketHandshake.h:

(WebCore):

  • Modules/websockets/WebSocketHandshakeRequest.cpp: Removed.
  • Modules/websockets/WebSocketHandshakeRequest.h: Removed.
  • Target.pri:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorInstrumentation.cpp:

(WebCore):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::willSendWebSocketHandshakeRequest):

  • inspector/InspectorResourceAgent.h:

(WebCore):
(InspectorResourceAgent):

  • platform/network/HTTPRequest.cpp:

(WebCore):

1:20 PM Changeset in webkit [150141] by Darin Adler
  • 2 edits in trunk/Source/WebCore

Try to fix iOS build.

  • platform/Pasteboard.h: Fix #if so that we don't try to compile pasteboard name code on iOS.
12:47 PM Changeset in webkit [150140] by andersca@apple.com
  • 93 edits in trunk/Source

Frame::editor() should return a reference
https://bugs.webkit.org/show_bug.cgi?id=116037

Reviewed by Darin Adler.

Source/WebCore:

A frame's editor can never be null. Change Frame::editor() to return a reference to reflect this.
Also, make Frame::m_editor a const member variable so nobody will accidentally set it to null.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::hasMisspelling):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(AXAttributeStringSetSpelling):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::cloneChildNodes):

  • dom/Document.cpp:

(WebCore::acceptsEditingFocus):
(WebCore::Document::setFocusedNode):
(WebCore::command):

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::timerFired):
(WebCore::AlternativeTextController::applyDictationAlternative):

  • editing/CompositeEditCommand.cpp:

(WebCore::EditCommandComposition::unapply):
(WebCore::EditCommandComposition::reapply):
(WebCore::CompositeEditCommand::apply):
(WebCore::CompositeEditCommand::moveParagraphs):

  • editing/DeleteButton.cpp:

(WebCore::DeleteButton::defaultEventHandler):

  • editing/DeleteButtonController.cpp:

(WebCore::DeleteButtonController::show):

  • editing/DeleteButtonController.h:

(WebCore::DeleteButtonControllerDisableScope::DeleteButtonControllerDisableScope):
(WebCore::DeleteButtonControllerDisableScope::~DeleteButtonControllerDisableScope):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::mergeParagraphs):
(WebCore::DeleteSelectionCommand::doApply):

  • editing/EditCommand.cpp:

(WebCore::EditCommand::EditCommand):

  • editing/EditingStyle.cpp:

(WebCore::StyleChange::StyleChange):

  • editing/Editor.cpp:

(WebCore::Editor::markMisspellingsAfterTypingToWord):

  • editing/EditorCommand.cpp:

(WebCore::applyCommandToFrame):
(WebCore::executeToggleStyle):
(WebCore::executeApplyParagraphStyle):
(WebCore::expandSelectionToGranularity):
(WebCore::stateStyle):
(WebCore::valueStyle):
(WebCore::executeCopy):
(WebCore::executeCut):
(WebCore::executeDefaultParagraphSeparator):
(WebCore::executeDelete):
(WebCore::executeDeleteBackward):
(WebCore::executeDeleteBackwardByDecomposingPreviousCharacter):
(WebCore::executeDeleteForward):
(WebCore::executeDeleteToBeginningOfLine):
(WebCore::executeDeleteToBeginningOfParagraph):
(WebCore::executeDeleteToEndOfLine):
(WebCore::executeDeleteToEndOfParagraph):
(WebCore::executeDeleteToMark):
(WebCore::executeDeleteWordBackward):
(WebCore::executeDeleteWordForward):
(WebCore::executeFindString):
(WebCore::executeForwardDelete):
(WebCore::executeIgnoreSpelling):
(WebCore::executeInsertNewline):
(WebCore::executeMakeTextWritingDirectionLeftToRight):
(WebCore::executeMakeTextWritingDirectionNatural):
(WebCore::executeMakeTextWritingDirectionRightToLeft):
(WebCore::executeToggleOverwrite):
(WebCore::executePaste):
(WebCore::executePasteGlobalSelection):
(WebCore::executePasteAndMatchStyle):
(WebCore::executePasteAsPlainText):
(WebCore::executeRedo):
(WebCore::executeRemoveFormat):
(WebCore::executeSelectToMark):
(WebCore::executeSetMark):
(WebCore::executeStyleWithCSS):
(WebCore::executeUseCSS):
(WebCore::executeSwapWithMark):
(WebCore::executeTakeFindStringFromSelection):
(WebCore::executeTranspose):
(WebCore::executeUndo):
(WebCore::executeYank):
(WebCore::executeYankAndSelect):
(WebCore::supportedCopyCut):
(WebCore::supportedPaste):
(WebCore::enabledVisibleSelection):
(WebCore::enabledVisibleSelectionAndMark):
(WebCore::enableCaretInEditableText):
(WebCore::enabledCopy):
(WebCore::enabledCut):
(WebCore::enabledInEditableText):
(WebCore::enabledDelete):
(WebCore::enabledPaste):
(WebCore::enabledRedo):
(WebCore::enabledTakeFindStringFromSelection):
(WebCore::enabledUndo):
(WebCore::stateOrderedList):
(WebCore::stateStyleWithCSS):
(WebCore::stateUnorderedList):
(WebCore::valueDefaultParagraphSeparator):

  • editing/FrameSelection.cpp:

(WebCore::shouldAlwaysUseDirectionalSelection):
(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::nextWordPositionForPlatform):
(WebCore::FrameSelection::modifyMovingRight):
(WebCore::FrameSelection::modifyMovingLeft):
(WebCore::FrameSelection::modify):
(WebCore::shouldStopBlinkingDueToTypingCommand):
(WebCore::FrameSelection::shouldDeleteSelection):
(WebCore::FrameSelection::shouldChangeSelection):

  • editing/InsertTextCommand.cpp:

(WebCore::InsertTextCommand::doApply):

  • editing/SpellChecker.cpp:

(WebCore::SpellChecker::didCheck):

  • editing/SpellingCorrectionCommand.cpp:
  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::insertText):
(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):
(WebCore::TypingCommand::markMisspellingsAfterTyping):
(WebCore::TypingCommand::typingAddedToOpenCommand):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):

  • editing/htmlediting.cpp:

(WebCore::createDefaultParagraphElement):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::pasteWithPasteboard):

  • editing/markup.cpp:

(WebCore::createMarkup):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::endEditing):

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::subtreeHasChanged):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::handleKeydownEvent):
(WebCore::TextFieldInputType::didSetValueByUserEdit):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::closeURL):
(WebCore::FrameLoader::didOpenURL):
(WebCore::FrameLoader::clear):

  • page/ContextMenuController.cpp:

(WebCore::insertUnicodeCharacter):
(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::find):

  • page/DragController.cpp:

(WebCore::DragController::dispatchTextInputEventFor):
(WebCore::DragController::concludeEditDrag):
(WebCore::DragController::startDrag):

  • page/EventHandler.cpp:

(WebCore::EventHandler::selectClosestWordFromMouseEvent):
(WebCore::EventHandler::handleMousePressEventSingleClick):
(WebCore::EventHandler::handlePasteGlobalSelection):
(WebCore::EventHandler::sendContextMenuEvent):
(WebCore::EventHandler::sendContextMenuEventForKey):
(WebCore::EventHandler::keyEvent):
(WebCore::EventHandler::defaultKeyboardEventHandler):
(WebCore::EventHandler::defaultTextInputEventHandler):
(WebCore::EventHandler::defaultBackspaceEventHandler):

  • page/FocusController.cpp:

(WebCore::relinquishesEditingFocus):

  • page/Frame.cpp:

(WebCore::Frame::rangeForPoint):

  • page/Frame.h:

(Frame):
(WebCore::Frame::editor):

  • page/Page.cpp:

(WebCore::Page::findString):
(WebCore::Page::findStringMatchingRanges):
(WebCore::Page::rangeOfString):
(WebCore::Page::markAllMatchesForText):
(WebCore::Page::setDeviceScaleFactor):

  • platform/mac/ClipboardMac.mm:

(WebCore::ClipboardMac::writeRange):

  • platform/mac/DragDataMac.mm:

(WebCore::DragData::asURL):

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::getStringSelection):
(WebCore::Pasteboard::getDataSelection):
(WebCore::Pasteboard::writeSelectionForTypes):
(WebCore::writeURLForTypes):
(WebCore::Pasteboard::plainText):
(WebCore::documentFragmentWithRTF):
(WebCore::Pasteboard::documentFragment):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::dictationAlternatives):

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paint):
(WebCore::InlineTextBox::paintTextMatchMarker):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::positionForPointWithInlineChildren):

  • testing/Internals.cpp:

(WebCore::spellchecker):
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::hasSpellingMarker):
(WebCore::Internals::hasAutocorrectedMarker):
(WebCore::Internals::setContinuousSpellCheckingEnabled):
(WebCore::Internals::setAutomaticQuoteSubstitutionEnabled):
(WebCore::Internals::setAutomaticLinkDetectionEnabled):
(WebCore::Internals::setAutomaticDashSubstitutionEnabled):
(WebCore::Internals::setAutomaticTextReplacementEnabled):
(WebCore::Internals::setAutomaticSpellingCorrectionEnabled):
(WebCore::Internals::isOverwriteModeEnabled):
(WebCore::Internals::toggleOverwriteModeEnabled):
(WebCore::Internals::hasGrammarMarker):

Source/WebKit/blackberry:

  • WebCoreSupport/EditorClientBlackBerry.cpp:

(WebCore::EditorClientBlackBerry::shouldSpellCheckFocusedField):
(WebCore::EditorClientBlackBerry::handleKeyboardEvent):

  • WebKitSupport/DOMSupport.cpp:

(BlackBerry::WebKit::DOMSupport::elementHasContinuousSpellCheckingEnabled):

  • WebKitSupport/InPageSearchManager.cpp:

(BlackBerry::WebKit::InPageSearchManager::findAndMarkText):
(BlackBerry::WebKit::InPageSearchManager::scopeStringMatches):

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::selectedText):

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::executeCoreCommandByName):
(DumpRenderTreeSupportEfl::isCommandEnabled):

  • WebCoreSupport/EditorClientEfl.cpp:

(WebCore::EditorClientEfl::respondToChangedSelection):
(WebCore::EditorClientEfl::handleEditingKeyboardEvent):

  • ewk/ewk_frame.cpp:

(ewk_frame_editable_set):
(ewk_frame_selection_get):
(ewk_frame_text_search):
(ewk_frame_text_matches_mark):
(ewk_frame_text_matches_highlight_set):
(ewk_frame_text_matches_highlight_get):

  • ewk/ewk_view.cpp:

(ewk_view_selection_get):
(ewk_view_editor_command_execute):

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::paint):

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::executeCoreCommandByName):
(DumpRenderTreeSupportGtk::isCommandEnabled):

  • WebCoreSupport/EditorClientGtk.cpp:

(WebKit::EditorClient::respondToChangedSelection):
(WebKit::EditorClient::executePendingEditorCommands):
(WebKit::EditorClient::handleKeyboardEvent):

  • WebCoreSupport/WebViewInputMethodFilter.cpp:

(WebKit::WebViewInputMethodFilter::canEdit):
(WebKit::WebViewInputMethodFilter::confirmCompositionText):
(WebKit::WebViewInputMethodFilter::confirmCurrentComposition):
(WebKit::WebViewInputMethodFilter::cancelCurrentComposition):
(WebKit::WebViewInputMethodFilter::setPreedit):

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_replace_selection):

  • webkit/webkitwebview.cpp:

(getLocationForKeyboardGeneratedContextMenu):
(webkit_web_view_focus_in_event):
(webkit_web_view_real_select_all):
(webkit_web_view_real_cut_clipboard):
(webkit_web_view_real_copy_clipboard):
(webkit_web_view_real_undo):
(webkit_web_view_real_redo):
(webkit_web_view_real_paste_clipboard):
(webkit_web_view_set_highlight_text_matches):
(webkit_web_view_can_cut_clipboard):
(webkit_web_view_can_copy_clipboard):
(webkit_web_view_can_paste_clipboard):
(webkit_web_view_delete_selection):
(webkit_web_view_set_editable):
(webkit_web_view_can_undo):
(webkit_web_view_can_redo):

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _selectedString]):
(-[WebFrame _firstRectForDOMRange:]):
(-[WebFrame _markDOMRange]):
(-[WebFrame _insertParagraphSeparatorInQuotedContent]):
(-[WebFrame _setTypingStyle:withUndoAction:]):
(-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):

  • WebView/WebHTMLRepresentation.mm:

(-[WebHTMLRepresentation finishedLoadingWithDataSource:]):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
(-[WebHTMLView _shouldDeleteRange:]):
(-[WebHTMLView _canEdit]):
(-[WebHTMLView _canEditRichly]):
(-[WebHTMLView _insertOrderedList]):
(-[WebHTMLView _insertUnorderedList]):
(-[WebHTMLView _canIncreaseSelectionListLevel]):
(-[WebHTMLView _canDecreaseSelectionListLevel]):
(-[WebHTMLView _increaseSelectionListLevel]):
(-[WebHTMLView _increaseSelectionListLevelOrdered]):
(-[WebHTMLView _increaseSelectionListLevelUnordered]):
(-[WebHTMLView _decreaseSelectionListLevel]):
(-[WebHTMLView Editor::coreCommandBySelector:]):
(-[WebHTMLView Editor::coreCommandByName:]):
(-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
(-[WebHTMLView becomeFirstResponder]):
(-[WebHTMLView _selectionStartFontAttributesAsRTF]):
(-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
(-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
(-[WebHTMLView checkSpelling:]):
(-[WebHTMLView showGuessPanel:]):
(-[WebHTMLView toggleBaseWritingDirection:]):
(-[WebHTMLView changeBaseWritingDirection:]):
(-[WebHTMLView _changeBaseWritingDirectionTo:]):
(-[WebHTMLView _updateFontPanel]):
(-[WebHTMLView markedRange]):
(-[WebHTMLView hasMarkedText]):
(-[WebHTMLView unmarkText]):
(-[WebHTMLView setMarkedText:selectedRange:]):
(-[WebHTMLView doCommandBySelector:]):
(-[WebHTMLView insertText:]):
(-[WebHTMLView _updateSelectionForInputManager]):
(-[WebHTMLView countMatchesForText:inDOMRange:options:limit:markMatches:]):
(-[WebHTMLView setMarkedTextMatchesAreHighlighted:]):
(-[WebHTMLView markedTextMatchesAreHighlighted]):
(-[WebHTMLView _findString:options:]):

  • WebView/WebView.mm:

(-[WebView _executeCoreCommandByName:value:]):
(-[WebView editableDOMRangeForPoint:]):
(-[WebView setEditable:]):
(-[WebView deleteSelection]):
(-[WebView applyStyle:]):
(-[WebView typingAttributes]):
(-[WebView _simplifyMarkup:endNode:]):
(-[WebView handleAcceptedAlternativeText:]):

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::executeCoreCommandByName):
(DumpRenderTreeSupportQt::isCommandEnabled):
(DumpRenderTreeSupportQt::firstRectForCharacterRange):

  • WebCoreSupport/EditorClientQt.cpp:

(WebCore::EditorClientQt::respondToChangedSelection):
(WebCore::EditorClientQt::registerUndoStep):
(WebCore::EditorClientQt::handleKeyboardEvent):

  • WebCoreSupport/QWebPageAdapter.cpp:

(QWebPageAdapter::selectedText):
(QWebPageAdapter::selectedHtml):
(QWebPageAdapter::setContentEditable):

Source/WebKit/win:

  • WebCoreSupport/WebContextMenuClient.cpp:

(WebContextMenuClient::searchWithGoogle):

  • WebFrame.cpp:

(WebFrame::hasSpellingMarker):
(WebFrame::setTextDirection):
(WebFrame::selectedString):
(WebFrame::selectAll):

  • WebView.cpp:

(WebView::execCommand):
(WebView::handleEditingKeyboardEvent):
(WebView::executeCoreCommandByName):
(WebView::selectedText):
(WebView::deleteEnabled):
(WebView::editingEnabled):
(WebView::replaceSelectionWithText):
(WebView::copy):
(WebView::cut):
(WebView::paste):
(WebView::copyURL):
(WebView::delete_):
(WebView::checkSpelling):
(WebView::showGuessPanel):
(WebView::clearUndoRedoOperations):
(WebView::prepareCandidateWindow):
(WebView::resetIME):
(WebView::updateSelectionForIME):
(WebView::onIMEComposition):
(WebView::onIMEEndComposition):
(WebView::onIMERequestCharPosition):
(WebView::onIMERequest):
(WebView::setCompositionForTesting):
(WebView::hasCompositionForTesting):
(WebView::confirmCompositionForTesting):
(WebView::compositionRangeForTesting):
(WebView::firstRectForCharacterRangeForTesting):
(WebView::selectedRangeForTesting):

Source/WebKit/wince:

  • WebCoreSupport/EditorClientWinCE.cpp:

(WebKit::EditorClientWinCE::handleEditingKeyboardEvent):

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebContextMenuClient.cpp:

(WebKit::WebContextMenuClient::searchWithGoogle):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::updateGlobalSelection):

  • WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:

(WebKit::WebEditorClient::handleInputMethodKeydown):

  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:

(WebKit::WebEditorClient::executePendingEditorCommands):
(WebKit::WebEditorClient::handleKeyboardEvent):

  • WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:

(WebKit::WebContextMenuClient::searchWithGoogle):
(WebKit::WebContextMenuClient::searchWithSpotlight):

  • WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:

(WebKit::changeWordCase):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::selectionAsString):
(WebKit::WebFrame::setTextDirection):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::editorState):
(WebKit::WebPage::executeEditingCommand):
(WebKit::WebPage::isEditingCommandEnabled):
(WebKit::WebPage::validateCommand):
(WebKit::WebPage::handleEditingKeyboardEvent):
(WebKit::WebPage::advanceToNextMisspelling):
(WebKit::WebPage::uppercaseWord):
(WebKit::WebPage::lowercaseWord):
(WebKit::WebPage::capitalizeWord):
(WebKit::WebPage::replaceSelectionWithText):
(WebKit::WebPage::handleAlternativeTextUIResult):
(WebKit::WebPage::setCompositionForTesting):
(WebKit::WebPage::hasCompositionForTesting):
(WebKit::WebPage::confirmCompositionForTesting):
(WebKit::WebPage::setComposition):
(WebKit::WebPage::cancelComposition):

  • WebProcess/WebPage/efl/WebPageEfl.cpp:

(WebKit::WebPage::confirmComposition):
(WebKit::WebPage::setComposition):
(WebKit::WebPage::cancelComposition):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::executeKeypressCommandsInternal):
(WebKit::WebPage::handleEditingKeyboardEvent):
(WebKit::WebPage::setComposition):
(WebKit::WebPage::confirmComposition):
(WebKit::WebPage::cancelComposition):
(WebKit::WebPage::insertText):
(WebKit::WebPage::insertDictatedText):
(WebKit::WebPage::getMarkedRange):
(WebKit::WebPage::firstRectForCharacterRange):
(WebKit::WebPage::readSelectionFromPasteboard):
(WebKit::WebPage::getStringSelectionForPasteboard):
(WebKit::WebPage::getDataSelectionForPasteboard):

12:39 PM Changeset in webkit [150139] by fpizlo@apple.com
  • 22 edits
    11 adds in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: DFG should separate link phase into things that must be done concurrently and things that must be done synchronously, and have a way of passing data from one to the other
https://bugs.webkit.org/show_bug.cgi?id=116060

Reviewed by Gavin Barraclough.

This introduces the concept of a DFG::Plan, which corresponds to:

  • The data that the concurrent DFG or FTL need to start compiling a CodeBlock. This mostly includes basic things like CodeBlock*, but also a list of must-handle values for OSR entry.


  • The data that the synchronous linker need to link in code compiled by a concurrent compilation thread. This is further encapsulated by DFG::Finalizer, since the data, and the actions that need to be taken, are different in DFG versus FTL. This patch also institutes the policy that the concurrent compilation thread shall not use LinkBuffer::performFinalization(), since that code assumes that it's running on the same thread that will actually run the code.


  • The actions that need to be taken to compile code. In other words, most of the code that previously lived in DFGDriver.cpp now lives in DFG::Plan::compileInThread().


  • The actions that need to be taken when synchronously linking the code. This includes "really" adding watchpoints and identifiers, checking watchpoint and chain validity, and running the DFG::Finalizer.


Currently, DFGDriver just creates a Plan and runs it synchronously. But in the
future, we will be able to malloc some Plans and enqueue them, and have the
concurrent thread dequeue them and call Plan::compileInThread().

For now, this has no behavior or performance change.

(JSC::LinkBuffer::performFinalization):

  • assembler/LinkBuffer.h:

(LinkBuffer):
(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::~LinkBuffer):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::setFuturePossibleStructure):
(JSC::DFG::AbstractValue::filterFuturePossibleStructure):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::addStructureTransitionCheck):
(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseResolveOperations):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
(JSC::DFG::ByteCodeParser::parseCodeBlock):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):

  • dfg/DFGDriver.cpp:

(DFG):
(JSC::DFG::compile):

  • dfg/DFGFailedFinalizer.cpp: Added.

(DFG):
(JSC::DFG::FailedFinalizer::FailedFinalizer):
(JSC::DFG::FailedFinalizer::~FailedFinalizer):
(JSC::DFG::FailedFinalizer::finalize):
(JSC::DFG::FailedFinalizer::finalizeFunction):

  • dfg/DFGFailedFinalizer.h: Added.

(DFG):
(FailedFinalizer):

  • dfg/DFGFinalizer.cpp: Added.

(DFG):
(JSC::DFG::Finalizer::Finalizer):
(JSC::DFG::Finalizer::~Finalizer):

  • dfg/DFGFinalizer.h: Added.

(DFG):
(Finalizer):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::canOptimizeStringObjectAccess):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::dump):
(DFG):

  • dfg/DFGGraph.h:

(Graph):
(JSC::DFG::Graph::masqueradesAsUndefinedWatchpointIsStillValid):
(JSC::DFG::Graph::compilation):
(JSC::DFG::Graph::identifiers):
(JSC::DFG::Graph::watchpoints):
(JSC::DFG::Graph::chains):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):
(JSC::DFG::JITCompiler::linkFunction):
(DFG):
(JSC::DFG::JITCompiler::disassemble):

  • dfg/DFGJITCompiler.h:

(JITCompiler):
(JSC::DFG::JITCompiler::addLazily):

  • dfg/DFGJITFinalizer.cpp: Added.

(DFG):
(JSC::DFG::JITFinalizer::JITFinalizer):
(JSC::DFG::JITFinalizer::~JITFinalizer):
(JSC::DFG::JITFinalizer::finalize):
(JSC::DFG::JITFinalizer::finalizeFunction):
(JSC::DFG::JITFinalizer::finalizeCommon):

  • dfg/DFGJITFinalizer.h: Added.

(DFG):
(JITFinalizer):

  • dfg/DFGPlan.cpp: Added.

(DFG):
(JSC::DFG::dumpAndVerifyGraph):
(JSC::DFG::Plan::Plan):
(JSC::DFG::Plan::~Plan):
(JSC::DFG::Plan::compileInThread):
(JSC::DFG::Plan::isStillValid):
(JSC::DFG::Plan::reallyAdd):
(JSC::DFG::Plan::finalize):

  • dfg/DFGPlan.h: Added.

(DFG):
(Plan):
(JSC::DFG::Plan::vm):

  • dfg/DFGPredictionInjectionPhase.cpp:

(JSC::DFG::PredictionInjectionPhase::run):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::identifierUID):
(JSC::DFG::SpeculativeJIT::speculateStringObjectForStructure):

  • dfg/DFGTypeCheckHoistingPhase.cpp:

(JSC::DFG::TypeCheckHoistingPhase::run):

  • ftl/FTLGeneratedFunction.h: Added.

(FTL):

  • ftl/FTLJITFinalizer.cpp: Added.

(FTL):
(JSC::FTL::JITFinalizer::JITFinalizer):
(JSC::FTL::JITFinalizer::~JITFinalizer):
(JSC::FTL::JITFinalizer::finalize):
(JSC::FTL::JITFinalizer::finalizeFunction):

  • ftl/FTLJITFinalizer.h: Added.

(FTL):
(JITFinalizer):
(JSC::FTL::JITFinalizer::initializeExitThunksLinkBuffer):
(JSC::FTL::JITFinalizer::initializeEntrypointLinkBuffer):
(JSC::FTL::JITFinalizer::initializeCode):
(JSC::FTL::JITFinalizer::initializeFunction):
(JSC::FTL::JITFinalizer::initializeArityCheck):
(JSC::FTL::JITFinalizer::initializeJITCode):

  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLLink.h:

(FTL):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::linkOSRExitsAndCompleteInitializationBlocks):

  • ftl/FTLState.cpp:

(JSC::FTL::State::State):

  • ftl/FTLState.h:

(FTL):
(State):

12:37 PM Changeset in webkit [150138] by Darin Adler
  • 3 edits in trunk/Source/WebCore

[Mac] Make Clipboard class no longer polymorphic by removing the last virtual functions
https://bugs.webkit.org/show_bug.cgi?id=116166

Reviewed by Anders Carlsson.

  • WebCore.exp.in: Add ~Clipboard since it's no longer a virtual function, but to the

non-iOS section, since iOS is still using the legacy version of Clipboard.

  • dom/Clipboard.h: Mark items non-virtual, too. It's not implemented on Mac yet.
12:37 PM Changeset in webkit [150137] by commit-queue@webkit.org
  • 6 edits
    3 deletes in trunk

Remove an overloaded strokeRect in <canvas>
https://bugs.webkit.org/show_bug.cgi?id=116017

Patch by Dongseong Hwang <dongseong.hwang@intel.com> on 2013-05-15
Reviewed by Benjamin Poulain.

Source/WebCore:

The canvas spec [1] does not define strokeRect with 5 arguments, so this issue
remains only strokeRect with 4 arguments.

[1] http://www.w3.org/TR/2dcontext2/

Covered by existing tests: canvas/philip/tests/2d.missingargs.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::strokeRect):

  • html/canvas/CanvasRenderingContext2D.h:

(CanvasRenderingContext2D):

  • html/canvas/CanvasRenderingContext2D.idl:

LayoutTests:

canvas/philip/tests/2d.missingargs.html can cover
fast/canvas/canvas-overloads-strokeRect.html, so this patch removed it.

  • fast/canvas/canvas-overloads-strokeRect-expected.txt: Removed.
  • fast/canvas/canvas-overloads-strokeRect.html: Removed.
  • fast/canvas/script-tests/canvas-overloads-strokeRect.js: Removed.
  • fast/canvas/script-tests/canvas-strokeRect.js:
12:15 PM Changeset in webkit [150136] by Bruno de Oliveira Abinader
  • 7 edits in trunk

[css3-text] text-decoration-line now accepts "blink" as valid value
https://bugs.webkit.org/show_bug.cgi?id=116104

Reviewed by Andreas Kling.

Source/WebCore:

As of November 13th 2012, the W3C specification has been updated to
accept "blink" as a valid property value in text-decoration-line. Though
accepting the value as valid, it is ignored as CSS Level 1
text-decoration property currently does.

Updated related layout tests to reflect changes in specification.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseTextDecoration):

LayoutTests:

Updated layout test results to reflect changes in specification.

  • fast/css3-text/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-line-expected.txt:
  • fast/css3-text/css3-text-decoration/getComputedStyle/script-tests/getComputedStyle-text-decoration-line.js:
  • fast/css3-text/css3-text-decoration/text-decoration-line-expected.html:
  • fast/css3-text/css3-text-decoration/text-decoration-line.html:
12:12 PM Changeset in webkit [150135] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Revert http://trac.webkit.org/changeset/150047

It introduced unwanted behavioral differences between
Retina and non-Retina Mac hardware.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::requiresTiledLayer):
(WebCore::GraphicsLayerCA::computePixelAlignment):

12:12 PM Changeset in webkit [150134] by thakis@chromium.org
  • 10 edits in trunk/Source

WebKit doesn't support MSVS2003 any more, remove preprocessor checks for older versions.
https://bugs.webkit.org/show_bug.cgi?id=116157

Reviewed by Anders Carlsson.

Also remove a gcc3.2 workaround.

Merges parts of these two commits by the talented Nico Weber:
https://chromium.googlesource.com/chromium/blink/+/3677e2f47348daeff405a40b6f90fbdf0654c2f5
https://chromium.googlesource.com/chromium/blink/+/0fcd96c448dc30be1416dcc15713c53710c1a312

Source/JavaScriptCore:

  • os-win32/inttypes.h:

Source/WTF:

  • wtf/Alignment.h:

(WTF):

  • wtf/Assertions.h:
  • wtf/Atomics.h:

(WTF):

  • wtf/Compiler.h:
  • wtf/DateMath.cpp:

(WTF::getLocalTime):

  • wtf/MathExtras.h:
  • wtf/RefCountedLeakCounter.h:

(RefCountedLeakCounter):

  • wtf/StaticConstructors.h:
11:55 AM Changeset in webkit [150133] by andersca@apple.com
  • 16 edits
    3 copies in trunk/Source/WebKit2

Need a way for NPAPI plug-ins to open preference panes
https://bugs.webkit.org/show_bug.cgi?id=116173
<rdar://problem/13503848>

Reviewed by Sam Weinig.

  • PluginProcess/PluginControllerProxy.h:

Add openPluginPreferencePane().

  • PluginProcess/mac/PluginControllerProxyMac.mm:

(WebKit::PluginControllerProxy::openPluginPreferencePane):
Send OpenPluginPreferencePane to the UI process.

  • Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:

(WebKit::NetscapePluginModule::getPluginInfo):
Get the preference pane path.

  • Shared/Plugins/PluginModuleInfo.h:

Add preferencePanePath member variable.

  • UIProcess/Plugins/PluginProcessProxy.h:

Add openPluginPreferencePane message handler.

  • UIProcess/Plugins/PluginProcessProxy.messages.in:

ADd OpenPluginPreferencePane message.

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::openPluginPreferencePane):
Get the path to the preference pane and use LS to open it.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue):
Handle WKNVPlugInContainer.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

Add WKNVPlugInContainer member variable.

  • WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:

(WebKit::NetscapePlugin::openPluginPreferencePane):
Call through to the plug-in controller.

(WebKit::NetscapePlugin::plugInContainer):
Create a WKNPAPIPlugInContainer object if necessary.

(WebKit::NetscapePlugin::platformDestroy):
Invalidate the WKNPAPIPlugInContainer object.

  • WebProcess/Plugins/Netscape/mac/WKNPAPIPlugInContainer.h:

New file with the protocol definition.

  • WebProcess/Plugins/Netscape/mac/WKNPAPIPlugInContainer.mm:

(-[WKNPAPIPlugInContainer dealloc]):
Assert that the plug-in is null (that we've been invalidated).

(-[WKNPAPIPlugInContainer _invalidate]):
Set the plug-in to null.

(-[WKNPAPIPlugInContainer openPlugInPreferencePane]):
Call through to the plug-in.

  • WebProcess/Plugins/Netscape/mac/WKNPAPIPlugInContainerInternal.h:

New file with the interface declaration for the object that implements the protocol.

  • WebProcess/Plugins/PluginController.h:

Add openPluginPreferencePane member function.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::openPluginPreferencePane):
Add stub; this should never be called since we always go through the UI process.

11:50 AM Changeset in webkit [150132] by ap@apple.com
  • 7 edits in trunk/Source/WebKit2

[WK2][Mac] Split resetTextInputState into two functions
https://bugs.webkit.org/show_bug.cgi?id=116174

Reviewed by Anders Carlsson.

Splitting resetTextInputState into resetSecureInputState and
notifyInputContextAboutDiscardedComposition, paving the way for a fix where these
won't be happening simultaneously.

  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::resetSecureInputState): (WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
  • UIProcess/API/mac/WKView.mm: (-[WKView resignFirstResponder]): (-[WKView _resetSecureInputState]): (-[WKView _notifyInputContextAboutDiscardedComposition]):
  • UIProcess/API/mac/WKViewInternal.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didCommitLoadForFrame):
11:36 AM Changeset in webkit [150131] by Brent Fulgham
  • 5 edits in trunk/Tools

[Windows] Update various build tools to understand VS2010 environment.
https://bugs.webkit.org/show_bug.cgi?id=116169.

Reviewed by Anders Carlsson.

  • Scripts/build-api-tests: Identify VS2010 environment.
  • Scripts/build-dumprendertree: Ditto.
  • Scripts/build-webkit: Ditto.
  • Scripts/webkitdirs.pm:

(dieIfWindowsPlatformSDKNotInstalled): Update to recognize a wider
range of acceptable SDK's.

11:11 AM Changeset in webkit [150130] by Carlos Garcia Campos
  • 30 edits in trunk/Source/WebKit2

[GTK] Add padding to all public class structs for future expansion without breaking ABI
https://bugs.webkit.org/show_bug.cgi?id=112565

Reviewed by Anders Carlsson.

Use 4 pointers for most of the classes that are unlikely to grow
and 8 for WebKitWebView and WebKitWebContext.

  • UIProcess/API/gtk/WebKitBackForwardList.h:

(_WebKitBackForwardListClass):

  • UIProcess/API/gtk/WebKitBackForwardListItem.h:

(_WebKitBackForwardListItemClass):

  • UIProcess/API/gtk/WebKitContextMenu.h:

(_WebKitContextMenuClass):

  • UIProcess/API/gtk/WebKitContextMenuItem.h:

(_WebKitContextMenuItemClass):

  • UIProcess/API/gtk/WebKitCookieManager.h:

(_WebKitCookieManagerClass):

  • UIProcess/API/gtk/WebKitDownload.h:

(_WebKitDownloadClass):

  • UIProcess/API/gtk/WebKitFaviconDatabase.h:

(_WebKitFaviconDatabaseClass):

  • UIProcess/API/gtk/WebKitFileChooserRequest.h:

(_WebKitFileChooserRequestClass):

  • UIProcess/API/gtk/WebKitFindController.h:

(_WebKitFindControllerClass):

  • UIProcess/API/gtk/WebKitFormSubmissionRequest.h:

(_WebKitFormSubmissionRequestClass):

  • UIProcess/API/gtk/WebKitGeolocationPermissionRequest.h:

(_WebKitGeolocationPermissionRequestClass):

  • UIProcess/API/gtk/WebKitHitTestResult.h:

(_WebKitHitTestResultClass):

  • UIProcess/API/gtk/WebKitNavigationPolicyDecision.h:

(_WebKitNavigationPolicyDecisionClass):

  • UIProcess/API/gtk/WebKitPlugin.h:

(_WebKitPluginClass):

  • UIProcess/API/gtk/WebKitPolicyDecision.h:

(_WebKitPolicyDecisionClass):

  • UIProcess/API/gtk/WebKitPrintOperation.h:

(_WebKitPrintOperationClass):

  • UIProcess/API/gtk/WebKitResponsePolicyDecision.h:

(_WebKitResponsePolicyDecisionClass):

  • UIProcess/API/gtk/WebKitSecurityManager.h:

(_WebKitSecurityManagerClass):

  • UIProcess/API/gtk/WebKitSettings.h:

(_WebKitSettingsClass):

  • UIProcess/API/gtk/WebKitURIRequest.h:

(_WebKitURIRequestClass):

  • UIProcess/API/gtk/WebKitURIResponse.h:

(_WebKitURIResponseClass):

  • UIProcess/API/gtk/WebKitURISchemeRequest.h:

(_WebKitURISchemeRequestClass):

  • UIProcess/API/gtk/WebKitWebContext.h:

(_WebKitWebContextClass):

  • UIProcess/API/gtk/WebKitWebInspector.h:

(_WebKitWebInspectorClass):

  • UIProcess/API/gtk/WebKitWebResource.h:

(_WebKitWebResourceClass):

  • UIProcess/API/gtk/WebKitWebView.h:

(_WebKitWebViewClass):

  • UIProcess/API/gtk/WebKitWebViewBase.h:

(_WebKitWebViewBaseClass):

  • UIProcess/API/gtk/WebKitWebViewGroup.h:

(_WebKitWebViewGroupClass):

  • UIProcess/API/gtk/WebKitWindowProperties.h:

(_WebKitWindowPropertiesClass):

10:24 AM Changeset in webkit [150129] by Darin Adler
  • 7 edits
    1 delete in trunk/Source

[Mac] Remove the ClipboardMac class and header file
https://bugs.webkit.org/show_bug.cgi?id=116165

Reviewed by Anders Carlsson.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj: Remove ClipboardMac.h.
  • editing/mac/EditorMac.mm: Import Clipboard.h rather than ClipboardMac.h.
  • page/mac/EventHandlerMac.mm: Ditto.
  • platform/mac/ClipboardMac.h: Removed.
  • platform/mac/ClipboardMac.mm: Import Clipboard.h rather than ClipboardMac.h.

Deleted ClipboardMac constructor.

Source/WebKit/mac:

  • WebCoreSupport/WebDragClient.mm: Import Clipboard.h instead of ClipboardMac.h.
10:23 AM Changeset in webkit [150128] by commit-queue@webkit.org
  • 4 edits
    1 add in trunk

Allow http tests on Arch Linux
https://bugs.webkit.org/show_bug.cgi?id=116155

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-05-15
Reviewed by Ryosuke Niwa.

Tools:

  • Scripts/webkitpy/port/base.py:

(Port._is_arch_based): Added check for /etc/arch-release file.
(Port._apache_config_file_name_for_platform): Call the check.

  • Scripts/webkitpy/port/port_testcase.py:

(test_linux_distro_detection): Testcase added.

LayoutTests:

  • http/conf/archlinux-httpd.conf: Added.
10:14 AM Changeset in webkit [150127] by Darin Adler
  • 3 edits in trunk/Source/WebCore

[Mac] Change Clipboard::create functions so they don't use ClipboardMac::create any more
https://bugs.webkit.org/show_bug.cgi?id=116163

Reviewed by Anders Carlsson.

  • dom/Clipboard.h: Made the file drag boolean default to false, better for most callers.
  • platform/mac/ClipboardMac.mm: Remove #if ENABLE(DRAG_SUPPORT); that's always on for Mac

and it's not helpful to have the conditionals in here. It's helpful in cross-platform
source files.
(WebCore::Clipboard::create): Create a Pasteboard and then create a Clipboard with new.
Later could refactor to have the Pasteboard creation be platform-specific, and make these
functions platform-independent.
(WebCore::Clipboard::createForDragAndDrop): Ditto.
(WebCore::Clipboard::createForCopyAndPaste): Ditto.

10:04 AM Changeset in webkit [150126] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove a leftover v8 file from the watchlist
https://bugs.webkit.org/show_bug.cgi?id=116158

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-05-15
Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/common/config/watchlist: Removed a v8 entry from the watchlist.
10:02 AM Changeset in webkit [150125] by Darin Adler
  • 4 edits in trunk/Source/WebCore

[Mac] Remove call to ClipboardMac::create from Editor::newGeneralClipboard
https://bugs.webkit.org/show_bug.cgi?id=116162

Reviewed by Andreas Kling.

  • dom/Clipboard.h: Add createForCopyAndPaste function.
  • editing/mac/EditorMac.mm:

(WebCore::Editor::newGeneralClipboard): Call createForCopyAndPaste.

  • platform/mac/ClipboardMac.mm:

(WebCore::Clipboard::createForCopyAndPaste): Added. Moved code here from
Editor::newGeneralClipboard.

9:53 AM Changeset in webkit [150124] by Darin Adler
  • 4 edits in trunk/Source/WebCore

[Mac] Remove call to ClipboardMac::create from EventHandler::createDraggingClipboard
https://bugs.webkit.org/show_bug.cgi?id=116161

Reviewed by Andreas Kling.

  • dom/Clipboard.h: Added createForDragAndDrop function.
  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::createDraggingClipboard): Changed to use new Clipboard function
instead of ClipboardMac::create.

  • platform/mac/ClipboardMac.mm:

(WebCore::Clipboard::createForDragAndDrop): Added. For now it does exactly what the
EventHandler::createDraggingClipboard function did, soon to be refactored better.

9:48 AM Changeset in webkit [150123] by Patrick Gansterer
  • 8 edits in trunk

Consolidate lists in WTF CMake files
https://bugs.webkit.org/show_bug.cgi?id=116142

Reviewed by Martin Robinson.

Move common files into the CMakeLists.txt to avoid duplicating the list of files.
Also rebase the recently added GTK files to match the other CMake ports, since
the submitted patch was based on an older version of the source tree.

.:

  • Source/cmake/OptionsGTK.cmake:

Source/WTF:

  • wtf/CMakeLists.txt:
  • wtf/PlatformBlackBerry.cmake:
  • wtf/PlatformEfl.cmake:
  • wtf/PlatformGTK.cmake:
  • wtf/PlatformWinCE.cmake:
9:44 AM Changeset in webkit [150122] by Darin Adler
  • 9 edits in trunk/Source

[Mac] Thin out the ClipboardMac class and header file to prepare for deleting them
https://bugs.webkit.org/show_bug.cgi?id=116159

Reviewed by Andreas Kling.

Source/WebCore:

  • dom/Clipboard.h:

(WebCore::Clipboard::pasteboard): Added. For clients that have a DOM clipboard
object and need to get to the Pasteboard platform abstraction.

  • editing/Editor.cpp:

(WebCore::Editor::dispatchCPPEvent): Call writePasteboard instead of writeClipboard.
Our long term plan is to delete writeClipboard.

  • platform/Pasteboard.h: Added writePasteboard function.

(WebCore::Pasteboard::name): Made this const.

  • platform/mac/ClipboardMac.h: Deleted unneeded includes and forward declarations.

Deleted all the data members and the virtual destructor.

  • platform/mac/ClipboardMac.mm: Deleted the many includes that are no longer needed.

Deleted the destructor, since it's now automatically generated. Deleted the comment
on an #endif since it's only a few source lines away from the #if.
(WebCore::ClipboardMac::ClipboardMac): Deleted the code to set the data members,
since they are no longer used.

  • platform/mac/PasteboardMac.mm: Changed include to Clipboard.h instead of ClipboardMac.h.

(WebCore::Pasteboard::writePasteboard): Replaced writeClipboard with this.

Source/WebKit/mac:

  • WebCoreSupport/WebDragClient.mm:

(WebDragClient::willPerformDragSourceAction): Changed to get the pasteboard name
without going through the ClipboardMac class.
(WebDragClient::startDrag): Ditto.

9:40 AM Changeset in webkit [150121] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Get rid of addNativeSnapshotChunk and HeapSnapshotChunk from Memory domain
https://bugs.webkit.org/show_bug.cgi?id=116144

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-15
Reviewed by Timothy Hatcher.

No new tests, no behavior change.

  • inspector/Inspector.json:
9:31 AM Changeset in webkit [150120] by jocelyn.turcotte@digia.com
  • 5 edits in trunk/Source

[Qt] Fix a crash under ~PingLoader when the QNAM on the page has been destroyed.
https://bugs.webkit.org/show_bug.cgi?id=116035

Reviewed by Allan Sandfeld Jensen.

Source/WebCore:

The previous fix only moved the crash location from WebKit down to QNetworkReplyHttpImpl
which expects its QNetworkAccessManager to still be alive.

Fix it by watching the QNetworkReply's destroyed() signal and avoid the dangling pointer
instead. The QNetworkReply doesn't need to be aborted in this case anyway.

  • platform/network/qt/QNetworkReplyHandler.cpp:

(WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):
(WebCore::QNetworkReplyWrapper::release):
(WebCore::QNetworkReplyWrapper::stopForwarding):

Rename resetConnections to stopForwarding since not all connections are related
to data forwarding to the client anymore.

(WebCore::QNetworkReplyWrapper::receiveMetaData):
(WebCore::QNetworkReplyWrapper::replyDestroyed):
(WebCore::QNetworkReplyWrapper::didReceiveFinished):

  • platform/network/qt/QNetworkReplyHandler.h:

(QNetworkReplyWrapper):

Source/WebKit/qt:

  • tests/qwebpage/tst_qwebpage.cpp:

(tst_QWebPage::networkReplyParentDidntChange): Change test to match the new expectation.
(tst_QWebPage::destroyQNAMBeforeAbortDoesntCrash):

9:27 AM Changeset in webkit [150119] by Darin Adler
  • 5 edits in trunk/Source/WebCore

[Mac] Make Clipboard::declareAndWriteDragImage non-virtual
https://bugs.webkit.org/show_bug.cgi?id=116156

Reviewed by Anders Carlsson.

  • dom/Clipboard.h: Make declareAndWriteDragImage non-virtual for non-legacy.
  • platform/Pasteboard.h:

(WebCore::Pasteboard::name): Added. Can be used in Mac platform code to do
pasteboard operations directly instead of through the Pasteboard class
functions. Not sure if we'll need it long term or not.

  • platform/mac/ClipboardMac.h: Removed declareAndWriteDragImage function.
  • platform/mac/ClipboardMac.mm:

(WebCore::Clipboard::declareAndWriteDragImage): Made this function a Clipboard
member instead of ClipboardMac.

9:22 AM Changeset in webkit [150118] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[curl] Remove version #if guards
https://bugs.webkit.org/show_bug.cgi?id=116152

Patch by Peter Gal <galpeter@inf.u-szeged.hu> on 2013-05-15
Reviewed by Brent Fulgham.

No tests required.

  • platform/network/curl/ResourceHandleCurl.cpp:

(WebCore::ResourceHandle::platformSetDefersLoading): Removed version guard.

  • platform/network/curl/ResourceHandleManager.cpp:

(WebCore::writeCallback): Ditto.
(WebCore::headerCallback): Ditto.
(WebCore::readCallback): Ditto.
(WebCore::ResourceHandleManager::dispatchSynchronousJob): Ditto.
(WebCore::ResourceHandleManager::initializeHandle): Ditto.

9:13 AM Changeset in webkit [150117] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Fails to build while generating gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=115612

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-15
Reviewed by Philippe Normand.

Fix typo in the prerequisites of docs-build.stamp.

  • GNUmakefile.am:
9:11 AM Changeset in webkit [150116] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Unreviewed, fixing the current test-webkitpy failure.

  • Scripts/webkitpy/port/mac_unittest.py:

(test_setup_environ_for_server): Adjusting the expected DYLD_INSERT_LIBRARIES environment variable value
in webkitpy.port.mac_unittest.test_setup_environ_for_server after r150089.

9:03 AM Changeset in webkit [150115] by Patrick Gansterer
  • 2 edits in trunk/Source/WebKit/win

Remove unnecessary dependecy on CoreFoundation from WebDatabaseManager
https://bugs.webkit.org/show_bug.cgi?id=115993

Reviewed by Anders Carlsson.

Using COMPropertyBag instead of CFDictionaryPropertyBag also reduces
the total lines of code needed for the same functionality.

  • WebDatabaseManager.cpp:

(WebDatabaseManager::dispatchDidModifyDatabase):

8:51 AM Changeset in webkit [150114] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX (r150089): Make WebCoreTestShim build for iOS

  • Configurations/WebCoreTestShim.xcconfig: Exclude

WebCoreTestShimLibrary.cpp when building for iOS.

8:35 AM Changeset in webkit [150113] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Removing two redundant flaky crasher expectations. Adjusting one expectation,

assigning it a mock bug modifier so the TestExpectations linting passes.

8:28 AM Changeset in webkit [150112] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Removing failure expectations for 7 CSS Regions and CSS Exclusions reftests.
8:15 AM Changeset in webkit [150111] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/fast/js/global-constructors-attributes-expected.txt: Rebaselining after r149845.
8:09 AM Changeset in webkit [150110] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding faillure expectations for two reftests that

started failing after r150025 and r150065.

8:05 AM Changeset in webkit [150109] by mark.lam@apple.com
  • 6 edits
    6 adds in branches/dfgFourthTier/Source/JavaScriptCore

Refactor JITStubs.cpp to move CPU specific parts out into their own files.
https://bugs.webkit.org/show_bug.cgi?id=116135.

Reviewed by Michael Saboff.

This mod only moves the CPU specific parts out. There is no code change.
Tested on debug builds of X86, X86_64, ARM and ARMv7. The SH4 and MIPS
ports are untested. Windows port also not tested.

(JSC::performPlatformSpecificJITAssertions):

  • jit/JITStubsARM.h: Added.

(JSC::ctiTrampoline):
(JSC::ctiTrampolineEnd):
(JSC::ctiVMThrowTrampoline):
(JSC::ctiOpThrowNotCaught):
(JSC::performARMJITAssertions):

  • jit/JITStubsARMv7.h: Added.

(JSC::ctiTrampoline):
(JSC::ctiVMThrowTrampoline):
(JSC::ctiOpThrowNotCaught):
(JSC::performARMv7JITAssertions):

  • jit/JITStubsMIPS.h: Added.

(JSC::performMIPSJITAssertions):

  • jit/JITStubsSH4.h: Added.
  • jit/JITStubsX86.h: Added.
  • jit/JITStubsX86_64.h: Added.
3:54 AM Changeset in webkit [150108] by commit-queue@webkit.org
  • 6 edits
    1 copy
    1 add in trunk

[CSSRegions] Implement offsetParent for elements inside named flow
https://bugs.webkit.org/show_bug.cgi?id=113276

Source/WebCore:

In the offsetParent algorithm, the nearest ancestor search skips from the topmost named flow elements directly to the body element.
http://dev.w3.org/csswg/css-regions/#cssomview-offset-attributes

As a result of this change, the DumpRenderTree tool would crash in
WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent when running the selecting-text-through-different-region-flows.html
test. The RenderObjects inside a flow are attached to the RenderFlowThread. However, the RenderFlowThread is attached to the
RenderView directly, meaning that we are going to bypass the <body>'s RenderObject while iterating the parents.

Patch by Radu Stavila <stavila@adobe.com> on 2013-05-15
Reviewed by Darin Adler.

Tests: fast/regions/offsetParent-body-in-flow-thread.html

fast/regions/offsetParent-in-flow-thread.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::offsetParent):

LayoutTests:

Patch by Radu Stavila <stavila@adobe.com> on 2013-05-15
Reviewed by Darin Adler.

In the offsetParent algorithm, the nearest ancestor search skips from the topmost named flow elements directly to the body element.

Added new test for offsetParent when body is flowed into a region.
Updated existing offsetParent test.

  • fast/regions/offsetParent-body-in-flow-thread-expected.txt: Added.
  • fast/regions/offsetParent-body-in-flow-thread.html: Added.
  • fast/regions/offsetParent-in-flow-thread-expected.txt:
  • fast/regions/offsetParent-in-flow-thread.html:
2:43 AM Changeset in webkit [150107] by Darin Adler
  • 4 edits in trunk/Source/WebCore

[Mac] Make Clipboard::createDragImage non-virtual
https://bugs.webkit.org/show_bug.cgi?id=116136

Reviewed by Benjamin Poulain.

  • dom/Clipboard.h: Made createDragImage non-virtual for non-legacy.
  • platform/mac/ClipboardMac.h: Removed frame argument from create function

and constructor. Removed createDragImage and dragNSImage. Removed m_frame
data member.

  • platform/mac/ClipboardMac.mm:

(WebCore::ClipboardMac::ClipboardMac): Removed frame argument and code
to initialize m_frame.
(WebCore::Clipboard::createDragImage): Merged the createDragImage and
dragNSImage functions, since they were the same thing. Changed code to get
the frame from the drag image element. Made the createDragImage function
a Clipboard member instead of ClipboardMac.

2:03 AM Changeset in webkit [150106] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

[WINCE] Fix calls to GlyphPage::setGlyphDataForIndex()
https://bugs.webkit.org/show_bug.cgi?id=116137

Reviewed by Andreas Kling.

Use zero for the glyp when the fontData pointer is null.
This aligns GlyphPageTreeNodeWinCE with the other implementations
and makes all ASSERT() pass in setGlyphDataForIndex().

  • platform/graphics/wince/GlyphPageTreeNodeWinCE.cpp:

(WebCore::GlyphPage::fill):

1:28 AM Changeset in webkit [150105] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Do not bloat HTMLTokenizer with a giant inline InputStreamPreprocessor::peek
https://bugs.webkit.org/show_bug.cgi?id=116066

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-15
Reviewed by Ryosuke Niwa.

Merge https://chromium.googlesource.com/chromium/blink/+/45e0337b2f2db535ab08365f6e763a5015e4d990.

On x86_64, this removes 40kb from the binary. On my machine it is completely neutral on performance.

  • html/parser/InputStreamPreprocessor.h:

(WebCore::InputStreamPreprocessor::peek):
(InputStreamPreprocessor):
(WebCore::InputStreamPreprocessor::advance):
(WebCore::InputStreamPreprocessor::skipNextNewLine):
(WebCore::InputStreamPreprocessor::reset):
(WebCore::InputStreamPreprocessor::processNextInputCharacter):

1:07 AM Changeset in webkit [150104] by Carlos Garcia Campos
  • 36 edits in trunk/Source

Remove WTF_USE_PLATFORM_STRATEGIES
https://bugs.webkit.org/show_bug.cgi?id=114431

Reviewed by Darin Adler.

Source/WebCore:

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::DatabaseManager):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::suspendPostAttachCallbacks):
(WebCore::ContainerNode::resumePostAttachCallbacks):

  • dom/VisitedLinkState.cpp:

(WebCore::VisitedLinkState::determineLinkStateSlowCase):

  • loader/CookieJar.cpp:

(WebCore::cookies):
(WebCore::setCookies):
(WebCore::cookiesEnabled):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):
(WebCore::deleteCookie):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadResourceSynchronously):

  • loader/HistoryController.cpp:

(WebCore::addVisitedLink):

  • loader/LoaderStrategy.cpp:
  • loader/LoaderStrategy.h:
  • loader/ResourceLoadScheduler.cpp:

(WebCore::resourceLoadScheduler):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::releaseResources):
(WebCore::ResourceLoader::willSendRequest):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::load):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::performPostLoadActions):

  • platform/CookiesStrategy.h:
  • platform/DatabaseStrategy.cpp:
  • platform/DatabaseStrategy.h:
  • platform/PasteboardStrategy.h:
  • platform/PlatformStrategies.cpp:
  • platform/PlatformStrategies.h:
  • platform/VisitedLinkStrategy.h:
  • platform/mac/PasteboardMac.mm:
  • platform/network/BlobRegistry.cpp:

(WebCore::blobRegistry):

  • plugins/PluginData.cpp:

(WebCore::PluginData::initPlugins):

  • plugins/PluginStrategy.h:
  • storage/StorageNamespace.cpp:

(WebCore::StorageNamespace::localStorageNamespace):
(WebCore::StorageNamespace::transientLocalStorageNamespace):
(WebCore::StorageNamespace::sessionStorageNamespace):

  • storage/StorageStrategy.cpp:
  • storage/StorageStrategy.h:
  • workers/SharedWorkerStrategy.h:

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataUseFeatures.in:

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

Source/WTF:

  • wtf/Platform.h:
12:37 AM Changeset in webkit [150103] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/Source/WebCore

[curl] Add support for HttpOnly cookies
https://bugs.webkit.org/show_bug.cgi?id=116102

Patch by Dávid Szabolcs <David.Szabolcs@stud.u-szeged.hu> on 2013-05-15
Reviewed by Brent Fulgham.

  • platform/network/curl/CookieJarCurl.cpp:

(WebCore::addMatchingCurlCookie):
(WebCore::cookiesForSession):
(WebCore::cookiesForDOM):
(WebCore):
(WebCore::cookieRequestHeaderFieldValue):

May 14, 2013:

11:42 PM Changeset in webkit [150102] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

REGRESSION(r147548): Broken comboboxes
https://bugs.webkit.org/show_bug.cgi?id=115475

Reviewed by Gustavo Noronha Silva.

The problem is that r147548 made the popup to be closed when a
blur event is received. Right before showing the popup the input
element is focused, so that after the the popup is shown the focus
event is emitted and the event handler is called again hiding the
popup.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::menuListDefaultEventHandler): Check
element has lost the focus before closing the popup menu.

9:35 PM Changeset in webkit [150101] by Beth Dakin
  • 5 edits in trunk

Printing in 1Password app is broken with screen fonts disabled
https://bugs.webkit.org/show_bug.cgi?id=116133
-and corresponding-
<rdar://problem/13162981>

Reviewed by Anders Carlsson.

Source/WebKit/mac:

Return YES from [WebPreferences screenFontSubstitutionEnabled] for versions of the
1Password app that were linked on or before MountainLion.

  • WebView/WebPreferences.mm:

(needsScreenFontsEnabledQuirk):
(-[WebPreferences screenFontSubstitutionEnabled]):

WebKitLibraries:

Need WKExecutableWasLinkedOnOrBeforeMountainLion() for this quirk.

  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:
9:27 PM Changeset in webkit [150100] by Darin Adler
  • 7 edits in trunk/Source/WebCore

[Mac] Move setDragImage from ClipboardMac to PasteboardMac
https://bugs.webkit.org/show_bug.cgi?id=116036

Reviewed by Anders Carlsson.

  • dom/Clipboard.cpp:

(WebCore::Clipboard::~Clipboard): Stop loading the drag image when
the clipboard object is deallocated. It would be better if there was
a more-well-defined time to stop the load.
(WebCore::Clipboard::setDragImage): Added. Sets up a drag image
based on a CachedImage. This tells the image loader to load the image
and updates the drag image when the image arrives. Copied from the
code in ClipboardMac, but refactored to use a separate loader object.
(WebCore::Clipboard::setDragImageElement): Added. Sets up a drag image
based on an element.
(WebCore::Clipboard::updateDragImage): Added. Common code to update
drag image when a new one is set or when a drag image load completes.
(WebCore::DragImageLoader::create): Added.
(WebCore::DragImageLoader::DragImageLoader): Ditto.
(WebCore::DragImageLoader::startLoading): Ditto.
(WebCore::DragImageLoader::stopLoading): Ditto.
(WebCore::DragImageLoader::imageChanged): Ditto.

  • dom/Clipboard.h: Made setDragImage and setDragImageElement non-virtual

for non-legacy. Added updateDragImage and m_dragImageLoader.

  • platform/Pasteboard.h: Added setDragImage function.
  • platform/mac/ClipboardMac.h: Removed CachedImageClient as a base class

for ClipboardMac. Removed setDragImage and setDragImageElement.

  • platform/mac/ClipboardMac.mm: Removed setDragImage and setDragImageElement.

(WebCore::ClipboardMac::~ClipboardMac): Removed code to remove self as
client loading the drag image. This is now in the Clipboard base class.

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::setDragImage): Added. Contains code moved here
from ClipboardMac.

8:17 PM Changeset in webkit [150099] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Use ElementTraversal in SelectorDataList::execute
https://bugs.webkit.org/show_bug.cgi?id=116131

Reviewed by Darin Adler.

Use ElementTraversal::firstWithin and ElementTraversal::next to simplify the code.

  • dom/SelectorQuery.cpp:

(WebCore::SelectorDataList::execute):

7:18 PM Changeset in webkit [150098] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix build after r150090.
https://bugs.webkit.org/show_bug.cgi?id=116129

Unreviewed build fix after r150090.

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2013-05-14

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

7:17 PM Changeset in webkit [150097] by hmuller@adobe.com
  • 6 edits in trunk/LayoutTests

[CSS Exclusions] Some layout tests fail to account for inline pixel snapping
https://bugs.webkit.org/show_bug.cgi?id=116115

Reviewed by Dirk Schulze.

Adjust the expected locations of spans to account for the fact that inline layout snaps boxes' logical top
and bottom to pixels, and the fact that line segment layout rounds the logical left and floors the logical
right of segments.

  • fast/exclusions/shape-inside/shape-inside-polygon-layout.html: Use the quiet variable!
  • fast/exclusions/shape-outside-floats/shape-outside-floats-diamond-margin-polygon-expected.txt:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-diamond-margin-polygon.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-ellipse-margin-left.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-ellipse-margin-right.html:
6:20 PM Changeset in webkit [150096] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows, others] Unreviewed build fix after r150090.

  • DumpRenderTree/TestRunner.cpp:

(getSecureEventInputIsEnabledCallback): IsSecureEventInputEnabled
doesn't exist on other platforms.

6:00 PM Changeset in webkit [150095] by Brent Fulgham
  • 3 edits in trunk/Tools

[Windows] Expunge pthreads2VC.dll from DumpRenderTree Project
https://bugs.webkit.org/show_bug.cgi?id=115889

Patch by Brent Fulgham <bfulgham@webkit.org> on 2013-05-14
Reviewed by Benjamin Poulain.

  • DumpRenderTree/DumpRenderTree.vcxproj/DumpRenderTree/DumpRenderTreeCommon.props:
  • DumpRenderTree/win/DumpRenderTreeCommon.vsprops:
5:27 PM Changeset in webkit [150094] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Add a preference that can disable the fake SYSV SHM shim
https://bugs.webkit.org/show_bug.cgi?id=116127
<rdar://problem/13810524>

Patch by Simon Cooper <scooper@apple.com> on 2013-05-14
Reviewed by Alexey Proskuryakov.

  • PluginProcess/mac/PluginProcessShim.mm:

(WebKit::shim_disabled):
(WebKit::shim_shmdt):
(WebKit::shim_shmat):
(WebKit::shim_shmget):
(WebKit::shim_shmctl):

5:18 PM Changeset in webkit [150093] by timothy_horton@apple.com
  • 5 edits in trunk/Source

[wk2] Not updating tiled backing coverage when main frame scrollability changes
https://bugs.webkit.org/show_bug.cgi?id=116123
<rdar://problem/13836559>

Reviewed by Simon Fraser.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:

(TiledCoreAnimationDrawingArea):
Add updateMainFrameClipsToExposedRect.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::flushLayers):
Remove m_clipsToExposedRect. We don't actually need it.

(WebKit::TiledCoreAnimationDrawingArea::mainFrameScrollabilityChanged):
Call updateMainFrameClipsToExposedRect so that we can always update
tiled backing coverage and can factor out our calls to setClipsToExposedRect.

(WebKit::TiledCoreAnimationDrawingArea::updateMainFrameClipsToExposedRect):
Factor out setClipsToExposedRect calls to here, and also call
FrameView::adjustTiledBackingCoverage so that the FrameView's tiled
backing is informed to allow overdraw in the UI-process-scrolling case.

(WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
Use updateMainFrameClipsToExposedRect.

Export FrameView::adjustTiledBackingCoverage.

  • WebCore.exp.in:
5:15 PM Changeset in webkit [150092] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Identify proper run environment for scripts.
https://bugs.webkit.org/show_bug.cgi?id=116114

Reviewed by David Kilzer.

Determine (based on Visual Studio version) which path to use for
executables (bin versus bin32).

  • Scripts/webkitdirs.pm:

(determineVisualStudioInstallDir): Added.
(determineVisualStudioVersion): Added.
(determineConfigurationProductDir): Modified to choose proper bin
or bin32 directory.
(visualStudioVersion): Added
(setupCygwinEnv): Modified to use new determineVisualStudioInstallDir

3:40 PM Changeset in webkit [150091] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Improve Fatfinger phase.
https://bugs.webkit.org/show_bug.cgi?id=107403

Patch by Tiancheng Jiang <tijiang@rim.com> on 2013-05-14
Reviewed by Rob Buis.

Internally reviewed by Genevieve Mak.
BlackBerry PR 324965.

Cache and reuse intersected nodes as long as hit position has not been
changed.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::hitTestResult):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebKitSupport/FatFingers.cpp:

(BlackBerry::WebKit::FatFingers::findBestPoint):
(BlackBerry::WebKit::FatFingers::findIntersectingRegions):
(BlackBerry::WebKit::FatFingers::getNodesFromRect):

  • WebKitSupport/FatFingers.h:
3:20 PM Changeset in webkit [150090] by ap@apple.com
  • 15 edits
    13 adds in trunk

[Mac] Add tests for secure event input
https://bugs.webkit.org/show_bug.cgi?id=116121

Reviewed by Mark Rowe.

  • editing/secure-input: Added.
  • editing/secure-input/password-input-changed-type-expected.txt: Added.
  • editing/secure-input/password-input-changed-type.html: Added.
  • editing/secure-input/password-input-focusing-expected.txt: Added.
  • editing/secure-input/password-input-focusing-to-different-frame-expected.txt: Added.
  • editing/secure-input/password-input-focusing-to-different-frame.html: Added.
  • editing/secure-input/password-input-focusing.html: Added.
  • editing/secure-input/removed-password-input-expected.txt: Added.
  • editing/secure-input/removed-password-input.html: Added.
  • editing/secure-input/reset-state-on-navigation-expected.txt: Added.
  • editing/secure-input/reset-state-on-navigation.html: Added.
  • editing/secure-input/resources: Added.
  • editing/secure-input/resources/reset-state-on-navigation-target.html: Added.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
3:08 PM Changeset in webkit [150089] by ap@apple.com
  • 9 edits
    1 move
    2 adds in trunk

[Mac] Add a testing shim for secure event input functions
https://bugs.webkit.org/show_bug.cgi?id=116122

Reviewed by Mark Rowe.

Added a new target with a dynamic library that interposes secure event input functions.
We need this to avoid interfering with user session state.

  • Configurations/WebCoreTestShim.xcconfig: Added.
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mac/DynamicLinkerInterposing.h: Moved from Source/WebKit2/Shared/mac/DyldInterpose.h.
  • testing/WebCoreTestShimLibrary.cpp: Added. (shimEnableSecureEventInput): (shimDisableSecureEventInput): (shimIsSecureEventInputEnabled):
2:14 PM Changeset in webkit [150088] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Get rid of Gradient::getColor()
https://bugs.webkit.org/show_bug.cgi?id=116089

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-14
Reviewed by Andreas Kling.

This code is now useless, remove it.

  • html/canvas/CanvasGradient.h:

(CanvasGradient):

  • platform/graphics/Gradient.cpp:

(WebCore::Gradient::Gradient):
(WebCore::Gradient::hash):

  • platform/graphics/Gradient.h:

(Gradient):

1:37 PM Changeset in webkit [150087] by hyatt@apple.com
  • 5 edits
    2 adds in trunk

Source/WebCore: REGRESSION: united.com has overlapping elements and is broken by flex box changes.
https://bugs.webkit.org/show_bug.cgi?id=115329
<rdar://problem/13690610>

The new flexbox spec says that flex-basis omitted in the flex shorthand defaults to
0 when flex-grow/shrink are set. This has undesirable behavior when objects don't
end up flexing at all, and it's something the spec is going to eventually address.

For now, though, to fix the regression, I'm making a targeted "hack" to deliberately
violate the spec, but to do so as minimally as possible. This hack detects if there
is infinite available space on a line, and if so, it treats a flex-basis of 0 like
auto.

This means that when height is constrained and set by a container, flexing will do
the right thing. Basically any time you end up actually flexing, the spec behavior
should happen. If you're just laying out at intrinsic sizes, though, and no flexing
is going to occur, we ignore a flex-basis of 0 and just use the child's normal size.

Note that widths don't have to be patched because the preferred logical widths
algorithm is broken right now and not checking flex-basis. If it did, we'd have seen
the same bug in the width direction.

This width issue is covered by https://bugs.webkit.org/show_bug.cgi?id=116117

Reviewed by Simon Fraser.

Added fast/flexbox/auto-height-with-flex.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::mainAxisContentExtent):
Make sure we return LayoutUnit::max when you have infinite free space and not
max - borderPadding.

(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
Only clear override size if it was set. Only mark for relayout if we did
an override size clear (i.e., if we were actually flexed). Add a new parameter,
hasInfiniteLineLength, that - if set - causes us to special case flex-basis:0
and treat it like flex-basis:auto.

(WebCore::RenderFlexibleBox::layoutFlexItems):
Define hasInfiniteLineLength and pass it to all the functions that need it.

(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
Remove the code that marks for layout and does a layout so early. This code
is moving (and changing) to preferredMainAxisContentExtentForChild.

(WebCore::RenderFlexibleBox::computeNextFlexLine):
Computes whether or not we have infinite line length now.

(WebCore::RenderFlexibleBox::freezeViolations):
(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
Propagate hasInfiniteLineLength through to preferredMainAxisContentExtentForChild.

  • rendering/RenderFlexibleBox.h:

(RenderFlexibleBox):
Add hasInfiniteLineLength parameter to a bunch of functions.

LayoutTests: REGRESSION (r147261): Many overlaid elements on united.com's account page
https://bugs.webkit.org/show_bug.cgi?id=116107
<rdar://problem/13690610>

Reviewed by Simon Fraser.

  • fast/flexbox/auto-height-with-flex-expected.html: Added.
  • fast/flexbox/auto-height-with-flex.html: Added.
1:37 PM Changeset in webkit [150086] by mhahnenberg@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Segfault in jsc with simple test program when running with profile dumping enabled
https://bugs.webkit.org/show_bug.cgi?id=116082

It's crashing because CodeBlock::baselineVersion() doesn't know how to handle the case where 'this' is the
baseline version but it hasn't been assigned to the m_blahCodeBlock field in BlahExecutable. The fix is to
check if we're the baseline version in baselineVersion() and return this if so.

Reviewed by Filip Pizlo.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::baselineVersion):

1:22 PM Changeset in webkit [150085] by akling@apple.com
  • 4 edits in trunk/Source/WebCore
Assertion failure in GlyphPage::setGlyphDataForIndex: (!glyph
fontData == m_fontDataForAllGlyphs)

<http://webkit.org/b/116113>
<rdar://problem/13833790>

Reviewed by Dan Bernstein.

If we're filling a full GlyphPage with a SimpleFontData that is actually a composite font reference,
we need to make sure we have per-glyph font data pointers, since it may end up using them.

Added GlyphPage::mayUseMixedFontDataWhenFilling() which can be implemented by the platform to let
GlyphPageTreeNode know that it should allocate a full-sized GlyphPage for mixed font data pointers
in case the font is a composite font reference, or if there are CJK ideographs in the text.

This code can be made smarter, but that's outside the scope of this change.
Fixes heavy asserting on bots running unreleased software.

  • platform/graphics/GlyphPage.h:

(GlyphPage):
(WebCore::GlyphPage::mayUseMixedFontDataWhenFilling):

  • platform/graphics/GlyphPageTreeNode.cpp:

(WebCore::GlyphPageTreeNode::initializePage):

  • platform/graphics/mac/GlyphPageTreeNodeMac.cpp:

(WebCore::shouldUseCoreText):
(WebCore::GlyphPage::mayUseMixedFontDataWhenFilling):

1:09 PM Changeset in webkit [150084] by zoltan@webkit.org
  • 4 edits
    2 adds in trunk

Heap-use-after-free in WebCore::RenderBox::exclusionShapeOutsideInfo
https://bugs.webkit.org/show_bug.cgi?id=115566

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-05-14
Reviewed by David Hyatt.

Source/WebCore:

When a portion of the render tree is being detached, anonymous blocks
will be combined as their children are deleted. In this process, the
anonymous block later in the tree is merged into the one preceeding it.
It can happen that the later block contains floats that the previous
block did not contain, and thus are not in the floating objects list for
the new block. This can result in the new block containing floats that
are not in it's floating objects list, but are in the floating objects
lists of siblings and parents. This can cause problems when the float
itself is deleted, since the deletion code assumes that if a float is not
in it's containing block's floating objects list, it isn't in any
floating objects list, causing dangling pointers in the floating objects
lists of the siblings and parents. In order to preserve this condition
(removing it has serious performance implications), we need to copy the
floating objects from the old block to the new block. The float's
metrics will likely all be wrong, but since the new block is already
marked for layout, this will get fixed before anything gets displayed.

Test: fast/block/float/float-append-child-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::moveAllChildrenIncludingFloatsTo): Copy

floating objects list in addition to children.

(WebCore::RenderBlock::FloatingObject::clone): Added.
(WebCore::RenderBlock::removeChild): Use new method to copy children.

  • rendering/RenderBlock.h:

(RenderBlock): Add method.

LayoutTests:

Cleaned up test from the fuzzer. Will only crash if run under a memory
checking tool like ASAN.

  • fast/block/float/float-append-child-crash-expected.txt: Added.
  • fast/block/float/float-append-child-crash.html: Added.
12:57 PM Changeset in webkit [150083] by commit-queue@webkit.org
  • 29 edits
    3 deletes in trunk

Unreviewed, rolling out r150023.
http://trac.webkit.org/changeset/150023
https://bugs.webkit.org/show_bug.cgi?id=116120

Causes table layout issues (Bug 116118) and crashes on
buildbot waterfall pages. (Requested by ddkilzer on #webkit).

Source/WebCore:

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):

  • rendering/RenderTableSection.h:

(RenderTableSection):

LayoutTests:

  • fast/css/vertical-align-baseline-rowspan-007-expected.html:
  • fast/css/vertical-align-baseline-rowspan-007.htm:
  • fast/css/vertical-align-baseline-rowspan-008-expected.html:
  • fast/table/table-rowspan-height-distribution-in-rows.html: Removed.
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/qt/fast/table/table-rowspan-height-distribution-in-rows-expected.png: Removed.
  • platform/qt/fast/table/table-rowspan-height-distribution-in-rows-expected.txt: Removed.
  • platform/qt/tables/mozilla/bugs/bug17548-expected.png:
  • platform/qt/tables/mozilla/bugs/bug17548-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug220536-expected.png:
  • platform/qt/tables/mozilla/bugs/bug220536-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug7714-expected.png:
  • platform/qt/tables/mozilla/bugs/bug7714-expected.txt:
  • platform/qt/tables/mozilla/core/bloomberg-expected.png:
  • platform/qt/tables/mozilla/core/bloomberg-expected.txt:
  • platform/qt/tables/mozilla/other/test6-expected.png:
  • platform/qt/tables/mozilla/other/test6-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug1010-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug6933-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug6933-expected.txt:
  • tables/mozilla/core/bloomberg-expected.txt:
  • tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
12:39 PM Changeset in webkit [150082] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Hook up frame render begin/end in PerformanceMonitor
https://bugs.webkit.org/show_bug.cgi?id=116110

Patch by Andrew Lo <anlo@rim.com> on 2013-05-14
Reviewed by Rob Buis.

Internally reviewed by Jeff Rogers, Jonathan Jiang.
Internal PR 299155.

Mark frame render begin & end for BlackBerry performance monitoring
in blitVisibleContents.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::blitVisibleContents):

11:39 AM WebKit Team edited by zhajiang@rim.com
(diff)
11:03 AM Changeset in webkit [150081] by Antoine Quint
  • 2 edits in trunk/Source/WebCore

Snapshotted plug-ins shadow tree should reset style inheritance
https://bugs.webkit.org/show_bug.cgi?id=116098

Reset the styles such that only injected user-agent stylesheets affect
the rendering of snapshotted plug-ins' shadow content.

Reviewed by Darin Adler.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):

10:57 AM Changeset in webkit [150080] by Brent Fulgham
  • 4 edits in trunk/Tools

[Windows] Switch to embedded manifest commands for launcher executables.
https://bugs.webkit.org/show_bug.cgi?id=116109

Reviewed by Darin Adler.

  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj: Remove the

now-unused WinLauncher.exe.manifest file.

  • WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj.filters: Ditto.
  • win/DLLLauncher/DLLLauncherMain.cpp: Add embedded manifest command

when building with VS2010 or newer.

10:55 AM Changeset in webkit [150079] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebKit2

[Win] REGRESSION(r149944): mmap is not available on Windows
https://bugs.webkit.org/show_bug.cgi?id=116015

Reviewed by Anders Carlsson.

Use fastAlloc/fastFree for platforms other than OS(DARWIN) where
using mmap is not necessary and maybe not available.

  • Platform/CoreIPC/ArgumentEncoder.cpp:

(CoreIPC::allocBuffer):
(CoreIPC::freeBuffer):
(CoreIPC::ArgumentEncoder::~ArgumentEncoder):
(CoreIPC::ArgumentEncoder::grow):

10:55 AM Changeset in webkit [150078] by mihnea@adobe.com
  • 3 edits in trunk/Source/WebCore

[CSSRegions] Improve hit testing for empty regions
https://bugs.webkit.org/show_bug.cgi?id=115534

Reviewed by David Hyatt.

As a better follow up after WebKit bug https://bugs.webkit.org/show_bug.cgi?id=107752,
we can improve the code by not doing hit testing on the render flow thread object when
we are trying to hit test the render flow thread background. In this case, we should just bail out.
No new tests, covered by existing regions tests.

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::nodeAtPoint):
(WebCore):
(WebCore::RenderFlowThread::hitTestFlowThreadPortionInRegion):

  • rendering/RenderFlowThread.h:
10:54 AM Changeset in webkit [150077] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Update ORWT to know about the Windows 8 SDK and Debug Tools.
https://bugs.webkit.org/show_bug.cgi?id=116079

Reviewed by David Kilzer.

  • Scripts/old-run-webkit-tests:

(setUpWindowsCrashLogSaving): Locate ntsd.exe and use it.

10:53 AM Changeset in webkit [150076] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[BlackBerry] Handle network errors when starting a new job
https://bugs.webkit.org/show_bug.cgi?id=116101

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-14
Reviewed by Rob Buis.

Make startJob() return a network status that can be used by the
caller to create a network error.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::initialize): createNetworkStream() should
always return a valid pointer so use an ASSERT instead of an early
return to make sure we have a valid stream.
(WebCore::NetworkJob::startNewJobWithRequest): Only return true if
the network job was started successfully.

  • platform/network/blackberry/NetworkJob.h:

(NetworkJob): Make initialize method void instead of bool since it
can't fail.

  • platform/network/blackberry/NetworkManager.cpp:

(WebCore::NetworkManager::startJob): Return a network error or
StatusSuccess.

  • platform/network/blackberry/NetworkManager.h:

(NetworkManager):

  • platform/network/blackberry/ResourceHandleBlackBerry.cpp:

(WebCore::ResourceHandle::start): Return true if job was started
successfully.
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
Check return value of startJob and fill the ResourceError with the
network status returned to finish the load.

10:44 AM Changeset in webkit [150075] by Antoine Quint
  • 2 edits in trunk/Source/WebCore

[Mac] captions menu is not positioned correctly in full-screen
https://bugs.webkit.org/show_bug.cgi?id=116103

Update the positioning properties of the captions menu in full-screen
following the fix for https://webkit.org/b/115968.

Reviewed by Darin Adler.

  • css/fullscreenQuickTime.css:

(video:-webkit-full-screen::-webkit-media-controls-closed-captions-container):
Add 50px to the bottom position since we're now positioned relative to the
media element, and use a calc() command to be right-aligned to the captions
icon in the media controller. The max-width and max-height properties follow
the same technique used for the non-full-screen mode.

10:40 AM Changeset in webkit [150074] by zandobersek@gmail.com
  • 15 edits in trunk

[GTK] Move generated ColorData.cpp, WebKitFontFamilyNames.(cpp|h) build targets into libPlatform
https://bugs.webkit.org/show_bug.cgi?id=115921

Reviewed by Gustavo Noronha Silva.

.:

  • GNUmakefile.am: Add GENSOURCES_PLATFORM, platform_built_sources variables.

Source/Platform:

  • GNUmakefile.am: Move the ANGLE include directories under the new platform_cppflags variable,

adding the DerivedSources/Platform directory. Add the generated sources' build targets to libPlatform
under nodist_libPlatform_la_SOURCES. Add platform_cppflags to the list of libPlatformGtk CPPFLAGS.
Add generation rules for the ColorData.cpp and WebKitFontFamilyNames.(cpp|h) source files, now generated
into the DerivedSources/Platform directory.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.am: Add platform_cppflags to the list of CPPFLAGS for libWebCoreSVG, libWebCore,

libWebCorePlatform, libWebCoreGtk. Remove generation rules for ColorData.cpp and WebKitFontFamilyNames.(cpp|h).

  • GNUmakefile.list.am: Include the ColorData.cpp and WebKitFontFamilyNames.(cpp|h) build targers under

platform_built_sources.

  • bindings/gobject/GNUmakefile.am: Add platform_cppflags to the list of libWebCoreDOM CPPFLAGS.

Source/WebKit/gtk:

  • GNUmakefile.am: Add platform_cppflags to the list of CPPFLAGS for libwebkit2gtk, libWebCoreGtk2,

libPlatformGtk2 and WebKitPluginProcess.

Source/WebKit2:

  • GNUmakefile.am: Add platform_cppflags to the list of libwebkit2gtk CPPFLAGS.

Tools:

  • GNUmakefile.am: Add platform_cppflags to the list of CPPFLAGS for libWebCoreInternals and DumpRenderTree.
  • TestWebKitAPI/GNUmakefile.am: Add platform_cppflags to the list of TestGtk CPPFLAGS.
10:31 AM Changeset in webkit [150073] by zandobersek@gmail.com
  • 4 edits in trunk/Source

[GTK] libPlatform, libPlatformGtk must depend on the related GNUmakefiles
https://bugs.webkit.org/show_bug.cgi?id=115937

Reviewed by Martin Robinson.

Source/Platform:

  • GNUmakefile.am: Set up an artifical dependency so that libPlatform and libPlatformGtk

libraries take into account any changes in this GNUmakefile.am and the GNUmakefile.list.am
located under Source/WebCore. The latter is included due to all the build targets for the
two libraries being listed there.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.am: Fix typos in two libraries' names - Webcore -> WebCore.
9:52 AM Changeset in webkit [150072] by rniwa@webkit.org
  • 4 edits
    2 adds in trunk

Removing Attr can delete a wrong Attribute in ElementData
https://bugs.webkit.org/show_bug.cgi?id=116077

Source/WebCore:

Reviewed by Benjamin Poulain.

Merge https://chromium.googlesource.com/chromium/blink/+/e861452a292e185501e48940305947aa6a4e23c2
after simplifying and renaming functions to be more WebKit style.

The XML parser can produce elements with attributes whose names have
distinct prefixes, but the same expanded name. When one of these
attributes is put up for adoption, it may be its similarly named
sibling that is removed from its owner element. As a result the
original owner hangs onto the adopted attribute, despite the fact that
it is now in a different document. Sometimes it's just hard to let go.

Test: fast/dom/adopt-attribute-crash.svg

  • dom/Element.cpp:

(WebCore::Element::setAttributeNode):
(WebCore::Element::removeAttributeNode):
(WebCore::ElementData::getAttributeItemIndex):

  • dom/Element.h:

(ElementData):
(Element):

LayoutTests:

Reviewed by Benjamin Poulain.

Add a regression test by importing
https://chromium.googlesource.com/chromium/blink/+/e861452a292e185501e48940305947aa6a4e23c2

  • fast/dom/adopt-attribute-crash-expected.txt: Added.
  • fast/dom/adopt-attribute-crash.svg: Added.
9:17 AM Changeset in webkit [150071] by commit-queue@webkit.org
  • 7 edits in trunk/Source

[BlackBerry] Use requestAnimationFrame for animations
https://bugs.webkit.org/show_bug.cgi?id=115896

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-14
Reviewed by Rob Buis.

Source/WebKit/blackberry:

Make WebPagePrivate a
BlackBerry::Platform::AnimationFrameRateClient and use it to
schedule animations.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::~WebPagePrivate):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::animationFrameChanged):
(BlackBerry::WebKit::WebPagePrivate::scheduleAnimation):
(BlackBerry::WebKit::WebPagePrivate::startRefreshAnimationClient):
(BlackBerry::WebKit::WebPagePrivate::stopRefreshAnimationClient):
(BlackBerry::WebKit::WebPagePrivate::handleServiceScriptedAnimationsOnMainThread):

  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore):
(WebCore::ChromeClientBlackBerry::scheduleAnimation):

  • WebCoreSupport/ChromeClientBlackBerry.h:

(ChromeClientBlackBerry):

Source/WTF:

  • wtf/Platform.h: Disable REQUEST_ANIMATION_FRAME_TIMER and

WTF_USE_REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR for BlackBerry
port.

8:59 AM Changeset in webkit [150070] by Antti Koivisto
  • 19 edits in trunk/Source/WebCore

Remove ::-webkit-distributed()
https://bugs.webkit.org/show_bug.cgi?id=116106

Reviewed by Andreas Kling.

This experimental Shadow DOM selector code is unused and has no owner.

  • css/CSSGrammar.y.in:
  • css/CSSParser.cpp:

(WebCore::CSSParser::rewriteSpecifiersWithNamespaceIfNeeded):
(WebCore::CSSParser::rewriteSpecifiersWithElementName):

  • css/CSSParser.h:
  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::CSSParserSelector):

  • css/CSSParserValues.h:

(CSSParserSelector):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::pseudoId):
(WebCore::nameToPseudoTypeMap):
(WebCore::CSSSelector::selectorText):

  • css/CSSSelector.h:
  • css/CSSSelectorList.cpp:
  • css/CSSSelectorList.h:

(CSSSelectorList):

  • css/DocumentRuleSets.cpp:

(WebCore::DocumentRuleSets::resetAuthorStyle):

  • css/DocumentRuleSets.h:

(DocumentRuleSets):

  • css/ElementRuleCollector.cpp:

(WebCore::ElementRuleCollector::matchAuthorRules):

  • css/ElementRuleCollector.h:

(ElementRuleCollector):

  • css/RuleSet.cpp:

(WebCore::RuleSet::addChildRules):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::match):

  • css/SelectorFilter.cpp:

(WebCore::SelectorFilter::collectIdentifierHashes):

  • html/shadow/InsertionPoint.cpp:
  • html/shadow/InsertionPoint.h:
7:29 AM Changeset in webkit [150069] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Remove RenderTheme::supportsCalendarPicker
https://bugs.webkit.org/show_bug.cgi?id=116068

Patch by Daker Fernandes Pinheiro <daker.pinheiro@openbossa.org> on 2013-05-14
Reviewed by Benjamin Poulain.

No new tests needed because it doesn't affect behaviour.

This method was never overrided by any platform
and always leaded to the same behaviour.
The code which depended on it was also removed.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::createShadowSubtree):
(WebCore::BaseMultipleFieldsDateAndTimeInputType::updatePickerIndicatorVisibility):

  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType):

  • page/ChromeClient.h:

(ChromeClient):

  • rendering/RenderTheme.h:
5:54 AM Changeset in webkit [150068] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebKit2

[WK2][Win] Fix ASSERT(DeleteTimerQueueTimer...)
https://bugs.webkit.org/show_bug.cgi?id=116039

Reviewed by Benjamin Poulain.

According to the documentation, DeleteTimerQueueTimer can be expected to return
false with an ERROR_IO_PENDING error when called from the timer's callback.

  • Platform/win/WorkQueueWin.cpp:

(WorkQueue::timerCallback):

5:51 AM Changeset in webkit [150067] by abucur@adobe.com
  • 2 edits in trunk/LayoutTests

Modify checkLayout to receive the log container as an optional parameter
https://bugs.webkit.org/show_bug.cgi?id=112793

Reviewed by Darin Adler.

Add a way to specify the container manually for checkLayout. This is helpful to measure regions for nested
named flows (and probably other cases as well).

  • resources/check-layout.js: Added an optional parameter to window.checkLayout.
5:49 AM Changeset in webkit [150066] by kbalazs@webkit.org
  • 4 edits
    2 adds in trunk

[GStreamer] cannot seek after video finished
https://bugs.webkit.org/show_bug.cgi?id=114044

Patch by Balazs Kelemen <b.kelemen@sisa.samsung.com> on 2013-04-30
Reviewed by Philippe Normand.

Source/WebCore:

Test: media/video-seek-after-end.html

Reland without wrong assertion. If seek is called after didEnd the pipeline
state will not be in GST_STATE_NULL yet but it is not a problem because we handle that.

Rework the seeking logic to be able to seek after reseting the pipeline.
In addition to solve the actual problem this patch supposed to make seeking
more robust and correct.
The previous implementation tried to hide the complexity of asynchronous operations
on the pipeline. It did not handle the GST_MESSAGE_ASYNC_DONE message from the bus
but instead reported the seek as finished when it saw an asynchronous pending state
(GST_STATE_CHANGE_ASYNC) which could happen way before the seek is really done.
Now we pay attention to the GST_MESSAGE_ASYNC_DONE message to track the status of seeks.
Seeks are not the only operations executed asynchronously, changing the pipeling state is
similar. It means a seek can overlap with onother ongoing asynchronous operation.
This change address this by introducing an invariant for seeks, which is that we only request
a seek if there are no other ongoing asynchronous operations and the pipeline state is either
paused or playing (which is recommended anyway according to GStreamer's documentation).
This way we can be sure that the time when we get the next GST_MESSAGE_ASYNC_DONE message the
seek has been completed.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::toGstClockTime): Factored time conversation into a helper.
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):

(WebCore::MediaPlayerPrivateGStreamer::playbackPosition): The position might not be available
if the pipeline still has a pending state. As a workaround, if we are right after a seek we can
use the seek time. Avoiding this situation would be possible by not allowing any asynchronous
operation to overlap. I believe it would add a lot more complexity so I decided to rather introduce
this workaround. Otherwise those overlapping operations are handled fine by GStreamer.

(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Do not reset internal state variables.
This function called when there is an intent to restart playback but it does not actually restart it.
(WebCore::MediaPlayerPrivateGStreamer::currentTime): Just removed a staling newline.
(WebCore::MediaPlayerPrivateGStreamer::seek): Take a look to the pipeline state and act upon that.
If there is an ongoing asynchronous operation make the seek pending, otherwise do it now.
Now we handle overlapping seeks as well because I saw that it can happen in some tests.
Added an early return for live streams as it doesn't makes sense to try seeking in them.

(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Handle GST_MESSAGE_ASYNC_DONE and some refactoring.
(WebCore::MediaPlayerPrivateGStreamer::asyncStateChangeDone):
(WebCore::MediaPlayerPrivateGStreamer::updateStates): Only handle seeks in the pending case, the rest is
now handled in asyncStateChangeDone.
(WebCore::MediaPlayerPrivateGStreamer::cacheDuration): Do not reset the m_mediaDurationKnown if the pipeline
has an asynchronous pending state because it would fail. It does actually happen when we get a duration message
after restarting the pipeline and it would result in restarting playback from the start. It seems to be a bug
in GStreamer that it sends the duration message too early. Also sanitized this function by merging redundant branches.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(MediaPlayerPrivateGStreamer):

LayoutTests:

  • media/video-seek-after-end-expected.txt: Added.
  • media/video-seek-after-end.html: Added.
5:27 AM Changeset in webkit [150065] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Ellipsis text is placed to wrong position, when the truncated text is fully cut off in RTL direction.
https://bugs.webkit.org/show_bug.cgi?id=115858

Patch by Zalan Bujtas <Alan Bujtas> on 2013-05-14
Reviewed by Darin Adler.

Source/WebCore:

Take text direction into account to calculate ellipsis position in case of
full truncation.

Test: fast/css/text-overflow-ellipsis-full-truncate-rtl.html

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::placeEllipsisBox):

LayoutTests:

  • fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html: Added.
  • fast/css/text-overflow-ellipsis-full-truncate-rtl.html: Added.
4:37 AM Changeset in webkit [150064] by ap@apple.com
  • 7 edits in trunk/Source/WebKit2

Remove unused "type" field from DictionaryPopupInfo
https://bugs.webkit.org/show_bug.cgi?id=116011

Reviewed by Darin Adler.

It is unused, and furthermore, PDFPlugin sets it incorrectly anyway.

  • Shared/DictionaryPopupInfo.cpp:

(WebKit::DictionaryPopupInfo::encode):
(WebKit::DictionaryPopupInfo::decode):

  • Shared/DictionaryPopupInfo.h:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::showDefinitionForAttributedString):

  • WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:

(WebKit::WebContextMenuClient::lookUpInDictionary):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performDictionaryLookupAtLocation):
(WebKit::WebPage::performDictionaryLookupForSelection):
(WebKit::WebPage::performDictionaryLookupForRange):

4:32 AM Changeset in webkit [150063] by michael.bruning@digia.com
  • 4 edits in trunk/Source/WebKit2

[WK2] Make WebPageProxy use deviceScaleFactor() in creationParameters().
https://bugs.webkit.org/show_bug.cgi?id=110218

Reviewed by Darin Adler.

Make the WebPageProxy::creationParameters use the accessor
deviceScaleFactor() instead of using m_intrinsicDeviceScaleFactor
directly. This will restore the custom device scale factor when
reattaching to the WebProcess after a crash.

Moreover, it will enable the Qt and ELF ports to use the
existing C API for overriding the device scale factor instead
of using the WebPageProxy directly or adding new C API to set
the intrinsic device scale factor.

  • UIProcess/API/efl/EwkView.cpp:

(EwkView::setDeviceScaleFactor):

  • UIProcess/API/qt/qquickwebpage.cpp:

(QQuickWebPage::updatePaintNode):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

3:12 AM Changeset in webkit [150062] by commit-queue@webkit.org
  • 12 edits
    3 adds
    2 deletes in trunk/Source

[BlackBerry] Implement platform strategies
https://bugs.webkit.org/show_bug.cgi?id=112162

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-14
Reviewed by Rob Buis.

Source/WebCore:

This is just a refactoring, covered by existing tests.

  • CMakeLists.txt: Move PlatformStrategies.cpp from platform

specific makefiles to the global one now that all platforms using
cmake implement platform strategies.

  • PlatformBlackBerry.cmake:
  • PlatformEfl.cmake:
  • PlatformWinCE.cmake:
  • loader/CookieJar.cpp: Remove the preprocessor error that is not

needed anymore.

  • loader/blackberry/CookieJarBlackBerry.cpp: Removed.
  • platform/network/blackberry/CookieJarBlackBerry.cpp: Added.

(WebCore):
(WebCore::setCookiesFromDOM):
(WebCore::cookiesForDOM):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::cookiesEnabled):
(WebCore::getRawCookies):
(WebCore::deleteCookie):
(WebCore::getHostnamesWithCookies):
(WebCore::deleteCookiesForHostname):
(WebCore::deleteAllCookies):

  • plugins/blackberry/PluginDataBlackBerry.cpp: Removed.

Source/WebKit:

  • PlatformBlackBerry.cmake: Add new files to compilation.

Source/WebKit/blackberry:

  • Api/BlackBerryGlobal.cpp:

(BlackBerry::WebKit::globalInitialize): Initialize platform
strategies.

  • WebCoreSupport/PlatformStrategiesBlackBerry.cpp: Added.

(PlatformStrategiesBlackBerry::initialize):
(PlatformStrategiesBlackBerry::PlatformStrategiesBlackBerry):
(PlatformStrategiesBlackBerry::createCookiesStrategy):
(PlatformStrategiesBlackBerry::createDatabaseStrategy):
(PlatformStrategiesBlackBerry::createLoaderStrategy):
(PlatformStrategiesBlackBerry::createPasteboardStrategy):
(PlatformStrategiesBlackBerry::createPluginStrategy):
(PlatformStrategiesBlackBerry::createSharedWorkerStrategy):
(PlatformStrategiesBlackBerry::createStorageStrategy):
(PlatformStrategiesBlackBerry::createVisitedLinkStrategy):
(PlatformStrategiesBlackBerry::cookiesForDOM):
(PlatformStrategiesBlackBerry::setCookiesFromDOM):
(PlatformStrategiesBlackBerry::cookiesEnabled):
(PlatformStrategiesBlackBerry::cookieRequestHeaderFieldValue):
(PlatformStrategiesBlackBerry::getRawCookies):
(PlatformStrategiesBlackBerry::deleteCookie):
(PlatformStrategiesBlackBerry::refreshPlugins):
(PlatformStrategiesBlackBerry::getPluginInfo):
(PlatformStrategiesBlackBerry::isLinkVisited):
(PlatformStrategiesBlackBerry::addVisitedLink):

  • WebCoreSupport/PlatformStrategiesBlackBerry.h: Added.

(PlatformStrategiesBlackBerry):

Source/WTF:

  • wtf/Platform.h: Add BlackBerry platform to the list of platforms

using platform strategies.

2:23 AM Changeset in webkit [150061] by zarvai@inf.u-szeged.hu
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations: Skip test using disabled feature.
  • platform/qt/http/tests/security/cross-frame-access-put-expected.txt: Rebaselining after r149869.
1:52 AM Changeset in webkit [150060] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Crash due to an assert in FrameView::doDeferredRepaints
https://bugs.webkit.org/show_bug.cgi?id=115412

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-05-14
Reviewed by Rob Buis.

PR 115412

The problem is that we are calling
updateLayoutAndStyleIfNeededRecursive() (because of
zoomToInitialScaleOnLoad) from ChomeClient::layoutUpdated()
callback which is not expected. It's expected to be called right
before painting, and not right after painting. Even if a new
layout is not done, updateLayoutAndStyleIfNeededRecursive() calls
flushDeferredRepaints() and it's possible that this is called in
the middle of a beginDeferredRepaints() and endDeferredRepaints()
apparently.
In general only BackingStore should call
updateLayoutAndStyleIfNeededRecursive before painting, and a simple
layout is enough in all other cases like resizing. This patch renames
requestLayoutIfNeeded as updateLayoutAndStyleIfNeededRecursive to
make more obvious what it does, and adds layoutIfNeeded that calls
layout. The former is used by the BackingStore and the latter by
WebPage.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resumeScreenUpdates):
(BlackBerry::WebKit::BackingStorePrivate::requestLayoutIfNeeded):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::zoomAboutPoint):
(BlackBerry::WebKit::WebPagePrivate::updateLayoutAndStyleIfNeededRecursive):
(BlackBerry::WebKit::WebPagePrivate::layoutIfNeeded):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::overflowExceedsContentsSize):
(BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):
(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPagePrivate::zoomAnimationFinished):
(BlackBerry::WebKit::WebPagePrivate::setViewportSize):
(BlackBerry::WebKit::WebPage::setDefaultLayoutSize):
(BlackBerry::WebKit::WebPagePrivate::rootLayerCommitTimerFired):

  • Api/WebPage_p.h:

(WebPagePrivate):

1:49 AM Changeset in webkit [150059] by commit-queue@webkit.org
  • 37 edits
    1 move
    2 adds in trunk/LayoutTests

[EFL] Unreviewed EFL gardening
https://bugs.webkit.org/show_bug.cgi?id=116090

Unreviewed EFL gardening.

Rebaseline after r155023.

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2013-05-14

  • platform/efl/TestExpectations:
  • platform/efl/fast/table/007-expected.png:
  • platform/efl/fast/table/007-expected.txt:
  • platform/efl/fast/table/colspanMinWidth-expected.png:
  • platform/efl/fast/table/colspanMinWidth-expected.txt:
  • platform/efl/fast/table/spanOverlapRepaint-expected.png:
  • platform/efl/fast/table/spanOverlapRepaint-expected.txt:
  • platform/efl/fast/table/table-rowspan-height-distribution-in-rows-expected.txt: Added.
  • platform/efl/tables/mozilla/bugs/bug13169-expected.png:
  • platform/efl/tables/mozilla/bugs/bug13169-expected.txt: Added.
  • platform/efl/tables/mozilla/bugs/bug133756-1-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug133756-2-expected.png:
  • platform/efl/tables/mozilla/bugs/bug133756-2-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug17138-expected.png:
  • platform/efl/tables/mozilla/bugs/bug17138-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug17548-expected.png:
  • platform/efl/tables/mozilla/bugs/bug17548-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug220536-expected.png:
  • platform/efl/tables/mozilla/bugs/bug220536-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug6304-expected.png:
  • platform/efl/tables/mozilla/bugs/bug6304-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug73321-expected.txt: Renamed from LayoutTests/platform/efl-wk2/tables/mozilla/bugs/bug73321-expected.txt.
  • platform/efl/tables/mozilla/bugs/bug7714-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug8858-expected.txt:
  • platform/efl/tables/mozilla/core/bloomberg-expected.png:
  • platform/efl/tables/mozilla/core/bloomberg-expected.txt:
  • platform/efl/tables/mozilla/core/cell_heights-expected.txt:
  • platform/efl/tables/mozilla/other/test6-expected.png:
  • platform/efl/tables/mozilla/other/test6-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug1010-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug6933-expected.txt:
1:40 AM Changeset in webkit [150058] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

The tests marked with the comment "WebKitTestRunner needs to sanitize file urls in the output"
run successfully with WebKitTestRunner. They should not be skipped.
https://bugs.webkit.org/show_bug.cgi?id=116083

Patch by Alex Christensen <achristensen@apple.com> on 2013-05-14
Reviewed by Darin Adler.

  • platform/wk2/TestExpectations:

Unskip tests.

1:31 AM Changeset in webkit [150057] by jocelyn.turcotte@digia.com
  • 4 edits in trunk/Source

[Qt] Fix a crash under ~PingLoader when the QNAM on the page has been destroyed.
https://bugs.webkit.org/show_bug.cgi?id=116035

Reviewed by Simon Hausmann.

Source/WebCore:

Reproduced with arora which does destroy the QNetworkAccessManager in some situations.
The problem is that PingLoader can still be pending meanwhile, holding a ResourceHandle
with a dangling pointer to a QNetworkReply destroyed with the QNetworkAccessManager.

  • platform/network/qt/QNetworkReplyHandler.cpp:

(WebCore::QNetworkReplyWrapper::QNetworkReplyWrapper):

Set the parent to 0 like we did before the introduction of QNetworkReplyWrapper.

(WebCore::QNetworkReplyWrapper::release):

Source/WebKit/qt:

  • tests/qwebpage/tst_qwebpage.cpp:

(tst_QWebPage::networkReplyParentChanged):

May 13, 2013:

11:52 PM Changeset in webkit [150056] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Make -[WebNavigationData url] the destination of the navigation
https://bugs.webkit.org/show_bug.cgi?id=114904

Reviewed by Dave Kilzer.

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::updateGlobalHistory): Initialize the WebNavigationData with the
current URL, not the original request URL.

10:42 PM Changeset in webkit [150055] by eric.carlson@apple.com
  • 6 edits in trunk/Source/WebCore

[Mac] update in-band caption attributes
https://bugs.webkit.org/show_bug.cgi?id=116057

Reviewed by Dean Jackson.

  • html/track/InbandTextTrack.cpp:

(WebCore::InbandTextTrack::updateCueFromCueData): Copy highlight color.

  • html/track/TextTrackCueGeneric.cpp:

(WebCore::TextTrackCueGenericBoxElement::applyCSSProperties): "highlight" color sets the cue

background, "background" color sets the cue container background.

  • html/track/TextTrackCueGeneric.h:
  • platform/graphics/InbandTextTrackPrivateClient.h:
  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processCueAttributes): Process "highlight" color.

9:09 PM Changeset in webkit [150054] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX (r150049): Fix RetainPtr<> type in PasteboardIOS.mm

  • platform/ios/PasteboardIOS.mm:

(WebCore::Pasteboard::writeImage): Use RetainPtr<CFStringRef>
instead of RetainPtr<NSString>.

9:04 PM Changeset in webkit [150053] by benjamin@webkit.org
  • 13 edits
    1 delete in trunk/Source/WebCore

Remove platform/graphic's Generator
https://bugs.webkit.org/show_bug.cgi?id=116084

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-13
Reviewed by Darin Adler.

The Generator no longer abstract anything useful, its only
implementation is Gradient.

  • GNUmakefile.list.am:
  • WebCore.exp.in:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/GeneratedImage.h:
  • platform/graphics/Generator.h: Removed.
  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratorGeneratedImage::draw):
(WebCore::GeneratorGeneratedImage::drawPattern):

  • platform/graphics/GeneratorGeneratedImage.h:

(WebCore::GeneratorGeneratedImage::create):
(WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
(GeneratorGeneratedImage):

  • platform/graphics/Gradient.h:

(WebCore):
(Gradient):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::fillRect):

  • platform/graphics/GraphicsContext.h:

(WebCore):
(GraphicsContext):

8:36 PM Changeset in webkit [150052] by ryuan.choi@samsung.com
  • 2 edits
    2 adds in trunk/LayoutTests

Unreviewed EFL gardening.

Unskip several tests which already passed and add png expected results.

  • platform/efl/TestExpectations:
  • platform/efl/editing/selection/doubleclick-crash-expected.png: Added.
  • platform/efl/editing/selection/select-missing-image-expected.png: Added.
8:20 PM Changeset in webkit [150051] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Nightly build's jsc doesn't work without DYLD_FRAMEWORK...
https://bugs.webkit.org/show_bug.cgi?id=79065

Patch by Alvaro Lopez Ortega <alvaro@alobbs.com> on 2013-05-13
Reviewed by Darin Adler.

Fixes the build process so the depencencies of the jsc binary are
modified before its copied to its target directory. In this way
jsc should always use relative reference to the JavaScriptCore
libraries.

the "Copy Into Framework" target.

7:49 PM Changeset in webkit [150050] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Objective-C API: scanExternalObjectGraph should not create new JSVirtualMachine wrappers
https://bugs.webkit.org/show_bug.cgi?id=116074

If scanExternalObjectGraph creates a new JSVirtualMachine wrapper during collection, when the
scanExternalObjectGraph call finishes and the autorelease pool is drained we will dealloc the
JSVirtualMachine which will cause us to try to take the API lock for the corresponding VM.
If this happens on a GC thread other than the "main" thread, we will deadlock. The solution
is to just check the VM cache, and if there is no JSVirtualMachine wrapper, return early.

Reviewed by Darin Adler.

  • API/JSVirtualMachine.mm:

(scanExternalObjectGraph):

7:21 PM Changeset in webkit [150049] by ddkilzer@apple.com
  • 4 edits
    3 adds in trunk/Source/WebCore

Upstream iOS Clipboard and Pasteboard changes
<http://webkit.org/b/116062>

Reviewed by Darin Adler.

  • WebCore.xcodeproj/project.pbxproj:
  • dom/Clipboard.h:
  • platform/Pasteboard.h:
  • platform/ios/ClipboardIOS.h: Added.
  • platform/ios/ClipboardIOS.mm: Added.
  • platform/ios/PasteboardIOS.mm: Added.
7:14 PM Changeset in webkit [150048] by allan.jensen@digia.com
  • 2 edits in trunk/LayoutTests

compositing/transitions/transform-on-large-layer.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=110099

Reviewed by Darin Adler.

Only set the timeout for test end after the resize event has been
received. This helps slow test bots, and also makes it easier to
tell rendering failures from failures to send resize event.

  • compositing/transitions/transform-on-large-layer.html:
7:11 PM Changeset in webkit [150047] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Mac] Use pageScaleFactor * deviceScaleFactor in requiresTiledLayer() and computePixelAlignment() of GraphicsLayerCA.
https://bugs.webkit.org/show_bug.cgi?id=107359

Patch by Huang Dongsung <luxtella@company100.net> on 2013-05-13
Reviewed by Darin Adler.

Currently GraphicsLayerCA uses pageScaleFactor in requiresTiledLayer() and
computePixelAlignment(), but we must use pageScaleFactor * deviceScaleFactor in
them.
It is because:

  1. requiresTiledLayer() uses the scale to compute an actual layer size in the device

pixel unit.

  1. computePixelAlignment() uses the scale to compute an aligned layer position

in the device pixel unit.

No new tests. We can not test about requiresTiledLayer() because it depends on
gpu. computePixelAlignment() is correct now because fortunately Mac uses
only 2 (for retina display) as a deviceScaleFactor.

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::requiresTiledLayer):
(WebCore::GraphicsLayerCA::computePixelAlignment):

7:00 PM Changeset in webkit [150046] by commit-queue@webkit.org
  • 12 edits in trunk

Added testRunner.setPrinting.
https://bugs.webkit.org/show_bug.cgi?id=42693
rdar://problem/8213845

Patch by Alex Christensen <achristensen@apple.com> on 2013-05-13
Reviewed by Darin Adler.

Source/WebKit2:

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageCopyRenderTreeExternalRepresentationForPrinting): Added.

  • WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:

Added WKBundlePageCopyRenderTreeExternalRepresentationForPrinting declaration.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::renderTreeExternalRepresentationForPrinting): Added.

  • WebProcess/WebPage/WebPage.h:

Added renderTreeExternalRepresentationForPrinting declaration.

Tools:

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:

Added setPrinting JavaScript function.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::dump):
Dump the external representation for printing if setPrinting has been called.

  • WebKitTestRunner/InjectedBundle/TestRunner.h:

(WTR::TestRunner::isPrinting): Added.
(WTR::TestRunner::setPrinting): Added.
Added and initialized m_isPrinting member boolean.

LayoutTests:

  • platform/wk2/TestExpectations:

Unskipped printing tests.

5:59 PM Changeset in webkit [150045] by Christophe Dumez
  • 27 edits
    3 moves in trunk

Rename BarInfo to BarProp and remove [NoInterfaceObject]
https://bugs.webkit.org/show_bug.cgi?id=116027

Reviewed by Andreas Kling.

Source/WebCore:

Rename BarInfo to BarProp and remove [NoInterfaceObject] extended attribute from
the IDL interface to match the specification:
http://www.w3.org/html/wg/drafts/html/master/browsers.html#barprop

The new behavior also matches Firefox and Blink.

No new tests, covered by LayoutTests/fast/js/global-constructors-attributes.html.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.order:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/gobject/GNUmakefile.am:
  • page/BarProp.cpp: Renamed from Source/WebCore/page/BarInfo.cpp.
  • page/BarProp.h: Renamed from Source/WebCore/page/BarInfo.h.
  • page/BarProp.idl: Renamed from Source/WebCore/page/BarInfo.idl.
  • page/DOMWindow.cpp:
  • page/DOMWindow.h:
  • page/DOMWindow.idl:

LayoutTests:

Rebaseline fast/js/global-constructors-attributes.html now that there is a new
'BarProp' global constructor.

Rebaseline a few other tests now that BarInfo was renamed to BarProp.

  • fast/dom/Window/window-lookup-precedence-expected.txt:
  • fast/js/global-constructors-attributes-expected.txt:
  • fast/loader/window-properties-restored-from-page-cache-expected.txt:
  • http/tests/security/cross-frame-access-put-expected.txt:
  • platform/efl/fast/js/global-constructors-attributes-expected.txt:
  • platform/gtk/fast/dom/Window/window-lookup-precedence-expected.txt:
  • platform/gtk/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac/fast/dom/Window/window-lookup-precedence-expected.txt:
  • platform/qt/fast/js/global-constructors-attributes-expected.txt:
4:17 PM Changeset in webkit [150044] by andersca@apple.com
  • 6 edits in trunk/Source

Remove ChromeClient::willPopupMenu
https://bugs.webkit.org/show_bug.cgi?id=116063

Reviewed by Andreas Kling.

Source/WebCore:

Remove ChromeClient::willPopupMenu.

  • page/ChromeClient.h:

Source/WebKit/mac:

ChromeClient::willPopupMenu is only called in one place from WebKit, so just move the function to the call site.

  • WebCoreSupport/PopupMenuMac.mm:

(PopupMenuMac::show):

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:
4:16 PM Changeset in webkit [150043] by Beth Dakin
  • 13 edits in trunk/Source/WebCore

Headers and footers should be pinned to the left edge of the window when scrolling
horizontally
https://bugs.webkit.org/show_bug.cgi?id=116061
-and corresponding-
<rdar://problem/13599215>

Reviewed by Simon Fraser.

The scrolling thread will need to know about the header and footer layers in order
the implement this custom scrolling behavior.

These getters will fetch the header or footer layer from the FrameView as
appropriate.

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::headerLayerForFrameView):
(WebCore::ScrollingCoordinator::footerLayerForFrameView):

  • page/scrolling/ScrollingCoordinator.h:

When we’re scrolling on the main thread, adjust the position of the header and
footer layers here.
(WebCore::ScrollingCoordinator::updateMainFrameScrollPosition):

ScrollingStateScrollingNode now stores GraphicsLayers and PlatformLayers for the
header and footer, just like it already does for the counterScrollingLayer.

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):

  • page/scrolling/ScrollingStateScrollingNode.h:

(ScrollingStateScrollingNode):
(WebCore::ScrollingStateScrollingNode::headerLayer):
(WebCore::ScrollingStateScrollingNode::footerLayer):

Setters for the new layers.

  • page/scrolling/mac/ScrollingCoordinatorMac.h:

(ScrollingCoordinatorMac):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::frameViewRootLayerDidChange):
(WebCore::ScrollingCoordinatorMac::setHeaderLayerForNode):
(WebCore::ScrollingCoordinatorMac::setFooterLayerForNode):

These setters and getters mirror the existing one for counterScrollingLayer.

  • page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:

(WebCore::ScrollingStateScrollingNode::headerPlatformLayer):
(WebCore::ScrollingStateScrollingNode::setHeaderLayer):
(WebCore::ScrollingStateScrollingNode::footerPlatformLayer):
(WebCore::ScrollingStateScrollingNode::setFooterLayer):

And the ScrollingTree will store CALayers for the header and footer.

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:

(ScrollingTreeScrollingNodeMac):

  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):

This is where the magic happens when we are scrolling on the scrolling thread.
Adjust the horizontal position the behave like a fixed object, but keep the
vertical position what it was when layer was created.
(WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):

RenderLayerCompositor must now provide getters for the header and footer.

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::headerLayer):
(WebCore::RenderLayerCompositor::footerLayer):

Set the anchor point for when we adjust the position later on. Also call
frameViewRootLayerDidChange() to get the new layers picked up and sent to the
scrolling tree.
(WebCore::RenderLayerCompositor::updateLayerForHeader):
(WebCore::RenderLayerCompositor::updateLayerForFooter):

4:11 PM Changeset in webkit [150042] by benjamin@webkit.org
  • 8 edits in trunk/Source

Improve stringProtoFuncLastIndexOf for the prefix case
https://bugs.webkit.org/show_bug.cgi?id=115952

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncLastIndexOf):
Use the optimized string search when possible.

On Joseph Pecoraro's tests, this gives a ~30% speed improvement.

Source/WTF:

Add an optimized version of StringImpl::startsWith() for JavaScriptCore.

  • wtf/text/StringImpl.cpp:

(WTF::StringImpl::startsWith):

  • wtf/text/StringImpl.h:

(StringImpl):
(WTF::StringImpl::startsWith):

  • wtf/text/WTFString.h:

(WTF::String::startsWith):

2:53 PM Changeset in webkit [150041] by timothy@apple.com
  • 32 edits in trunk/Source

Add support for updating the Web Inspector toolbar height.

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

Reviewed by Joseph Pecoraro and Benjamin Poulain.

Source/WebCore:

  • inspector/InspectorFrontendClient.h:

(InspectorFrontendClient):

  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::setToolbarHeight):

  • inspector/InspectorFrontendHost.h:

(InspectorFrontendHost):

  • inspector/InspectorFrontendHost.idl:
  • testing/Internals.cpp:

Source/WebKit/efl:

  • WebCoreSupport/InspectorClientEfl.cpp:

(WebCore::InspectorFrontendClientEfl::setToolbarHeight):

  • WebCoreSupport/InspectorClientEfl.h:

Source/WebKit/gtk:

  • WebCoreSupport/InspectorClientGtk.cpp:

(WebKit::InspectorFrontendClient::setToolbarHeight):

  • WebCoreSupport/InspectorClientGtk.h:

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorFrontendClient::setToolbarHeight):

Source/WebKit/qt:

  • WebCoreSupport/InspectorClientQt.cpp:

(WebCore::InspectorFrontendClientQt::setToolbarHeight):

  • WebCoreSupport/InspectorClientQt.h:

Source/WebKit/win:

  • WebCoreSupport/WebInspectorClient.cpp:

(WebInspectorFrontendClient::setToolbarHeight):

  • WebCoreSupport/WebInspectorClient.h:

Source/WebKit2:

  • UIProcess/WebInspectorProxy.h:

(WebKit::WebInspectorProxy::setToolbarHeight):
(WebInspectorProxy):

  • UIProcess/WebInspectorProxy.messages.in:
  • UIProcess/efl/WebInspectorProxyEfl.cpp:

(WebKit::WebInspectorProxy::platformSetToolbarHeight):

  • UIProcess/gtk/WebInspectorProxyGtk.cpp:

(WebKit::WebInspectorProxy::platformSetToolbarHeight):
(WebKit):

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformSetToolbarHeight):

  • UIProcess/qt/WebInspectorProxyQt.cpp:

(WebKit::WebInspectorProxy::platformSetToolbarHeight):

  • WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:

(WebKit::WebInspectorFrontendClient::setToolbarHeight):

  • WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:

(WebInspectorFrontendClient):

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::setToolbarHeight):

  • WebProcess/WebPage/WebInspector.h:
2:29 PM Changeset in webkit [150040] by dino@apple.com
  • 4 edits
    2 adds in trunk

toDataURL can return an empty image in some cases
https://bugs.webkit.org/show_bug.cgi?id=115981
<rdar://problem/13760256>

Reviewed by Darin Adler.

Source/WebCore:

In some accelerated rendering cases, calling toDataURL on
an off-screen canvas produced an empty image. The solution
was to force a CGContextFlush before extracting the data
for image generation.

While here, I collected the flushing code from other methods
into a single place. Also we were getting into a situation where
we called flush two times in a row.

Test: fast/canvas/toDataURL-not-empty.html

  • platform/graphics/ImageBuffer.h:

(ImageBuffer): Define two new methods flushContext and flushContextIfNecessary.

  • platform/graphics/cg/ImageBufferCG.cpp:

(WebCore::ImageBuffer::context): Call flushContextIfNecessary.
(WebCore::ImageBuffer::flushContextIfNecessary): Moved the 10.7 code in here.
(WebCore::ImageBuffer::flushContext): Calls CGContextFlush.
(WebCore::ImageBuffer::getUnmultipliedImageData): Call new helper.
(WebCore::ImageBuffer::getPremultipliedImageData): Call new helper.
(WebCore::ImageBuffer::toDataURL): Flush the CG context.

LayoutTests:

Make sure that a canvas with content is not the same as one
without content.

  • fast/canvas/toDataURL-not-empty-expected.txt: Added.
  • fast/canvas/toDataURL-not-empty.html: Added.
2:27 PM Changeset in webkit [150039] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark fast/table/crash-split-table-section-no-cell-recalc.html as crashing
on EFL port.

  • platform/efl/TestExpectations:
2:02 PM Changeset in webkit [150038] by hyatt@apple.com
  • 2 edits in trunk/Source/WebCore

Regressions in flexbox layout caused by the flexing optimizations.
https://bugs.webkit.org/show_bug.cgi?id=116058
<rdar://problem/13863647>

Reviewed by Beth Dakin.

Roll out the flex-related changes from r149597 so that the layout
algorithm goes back to the way it was. Leave the repainting optimizations
in place though.

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::gatherFlexChildrenInfo):
(WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
(WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):

1:43 PM Changeset in webkit [150037] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Unskip several tests that stopped crashing after r150030.

  • platform/efl-wk2/TestExpectations:
1:39 PM Changeset in webkit [150036] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark fast/css/variables/var-inside-shape.html as failing on EFL after
r150025.

  • platform/efl/TestExpectations:
1:29 PM Changeset in webkit [150035] by Philippe Normand
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r150014.
http://trac.webkit.org/changeset/150014
https://bugs.webkit.org/show_bug.cgi?id=86410

Broke video playback on WK2 and some webgl tests

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::paint):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:

(MediaPlayerPrivateGStreamerBase):

1:07 PM Changeset in webkit [150034] by rniwa@webkit.org
  • 4 edits in trunk/Source

Sometimes NSUndoManager can get into an inconsistent state
https://bugs.webkit.org/show_bug.cgi?id=116050

Reviewed by Enrica Casucci.

Always group undo items to work around a bug in NSUndoManager that manifests
when we call removeAllActionsWithTarget.

Source/WebKit/mac:

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::registerUndoOrRedoStep):

Source/WebKit2:

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::registerEditCommand):

1:06 PM Changeset in webkit [150033] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark fast/animation/request-animation-frame-too-rapid.html as failing on EFL WK2
due to r150015.

  • platform/efl-wk2/TestExpectations:
12:37 PM Changeset in webkit [150032] by hmuller@adobe.com
  • 9 edits
    6 adds
    2 deletes in trunk/LayoutTests

[CSS Exclusions] Simple shape-outside tests fail when subpixel layout is disabled
https://bugs.webkit.org/show_bug.cgi?id=115767

Reviewed by Dirk Schulze.

The overall goal of this change was to restore the (last) four excluded exclusions ref-tests
by making them work correctly when subpixel layout is disabled. All of the tests were
substantially simplified, as was the supporting javascript code. The original
shape-outside-floats-simple-rounded-rectangle test was replaced by three separate tests
because the original was bigger then then the 800x600 limit and because it unncessarily
combined three indepedent test cases.

  • fast/exclusions/resources/rounded-rectangle.js:

(ellipseXIntercept): Return the 1st quadrant X intercept for an ellipse given a first quadrant Y intercept.
(scanConvertRoundedRectangleOutside): Return the line segment intervals that overlap a rounded rectangle.
(genLeftRightRoundedRectFloatShapeOutsideRefTest): Insert a stack of float divs that match the left or right edge of a rounded rectangle.

  • fast/exclusions/shape-outside-floats/shape-outside-floats-non-zero-y-expected.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-non-zero-y.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-circle-expected.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-circle.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-ellipse-expected.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-ellipse.html:
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-001-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-001.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-002-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-002.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-003-expected.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-003.html: Added.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle-expected.html: Removed.
  • fast/exclusions/shape-outside-floats/shape-outside-floats-simple-rounded-rectangle.html: Removed.
  • platform/mac/TestExpectations:
12:35 PM Changeset in webkit [150031] by Christophe Dumez
  • 4 edits
    2 deletes in trunk

Unreviewed, rolling out r150022.
http://trac.webkit.org/changeset/150022
https://bugs.webkit.org/show_bug.cgi?id=114044

Causes assertions in media tests

Source/WebCore:

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay):
(WebCore::MediaPlayerPrivateGStreamer::currentTime):
(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(MediaPlayerPrivateGStreamer):

LayoutTests:

  • media/video-seek-after-end-expected.txt: Removed.
  • media/video-seek-after-end.html: Removed.
12:31 PM Changeset in webkit [150030] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

[WK2] Crash in WebKit::StorageAreaMap::didSetItem()
https://bugs.webkit.org/show_bug.cgi?id=116026

Reviewed by Andreas Kling.

Make sure that we ignore any leftover messages from the UI process after we've reset
the storage map. Achieve this by keeping a seed count in the StorageAreaMap object that's incremented
everytime the map is reset. Associate every storage area change with the seed and ignore any incoming
notification messages from the UI process if the seeds are different.

  • Platform/CoreIPC/HandleMessage.h:

(CoreIPC):
(CoreIPC::callMemberFunction):

  • UIProcess/Storage/StorageManager.cpp:

(WebKit::StorageManager::getValues):
(WebKit::StorageManager::setItem):
(WebKit::StorageManager::removeItem):
(WebKit::StorageManager::clear):

  • UIProcess/Storage/StorageManager.h:

(StorageManager):

  • UIProcess/Storage/StorageManager.messages.in:
  • WebProcess/Storage/StorageAreaMap.cpp:

(WebKit::StorageAreaMap::StorageAreaMap):
(WebKit::StorageAreaMap::setItem):
(WebKit::StorageAreaMap::removeItem):
(WebKit::StorageAreaMap::clear):
(WebKit::StorageAreaMap::resetValues):
(WebKit::StorageAreaMap::loadValuesIfNeeded):
(WebKit::StorageAreaMap::didGetValues):
(WebKit::StorageAreaMap::didSetItem):
(WebKit::StorageAreaMap::didRemoveItem):
(WebKit::StorageAreaMap::didClear):
(WebKit::StorageAreaMap::applyChange):

  • WebProcess/Storage/StorageAreaMap.h:

(StorageAreaMap):

  • WebProcess/Storage/StorageAreaMap.messages.in:
12:30 PM Changeset in webkit [150029] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Source/WebCore: Floats should not overhang from flex items
https://bugs.webkit.org/show_bug.cgi?id=115925

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-05-13
Reviewed by David Hyatt.

Allowing floats to overhand from flex items is not only against the
spec, it causes bad bugs. Fix this by having flex items properly avoid
floats.

Test: fast/block/float/float-not-removed-crash2.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::avoidsFloats): Add flex items to avoid floats.

  • rendering/RenderBox.h:

(WebCore::RenderBox::isFlexItemIncludingDeprecated): Determine if the current box is a

flex item or deprecated flex item.

LayoutTests: Fix the float logic to not return an anonymous block ancestor
https://bugs.webkit.org/show_bug.cgi?id=115925

Patch by Bem Jones-Bey <Bem Jones-Bey> on 2013-05-13
Reviewed by David Hyatt.

Cleaned up fuzzer test. Note that this will only crash when run under
a memory checker like ASAN.

  • fast/block/float/float-not-removed-crash2-expected.txt: Added.
  • fast/block/float/float-not-removed-crash2.html: Added.
12:23 PM Changeset in webkit [150028] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[webkitpy] Make FileInfo.repository_name support SVN version > 1.6
https://bugs.webkit.org/show_bug.cgi?id=116016

Reviewed by Dirk Pranke.

Same fix as in the upstream style checker, but without hg support.
( http://google-styleguide.googlecode.com/svn/trunk/cpplint/cpplint.py )

  • Scripts/webkitpy/style/checkers/cpp.py:

(FileInfo.repository_name):

12:11 PM Changeset in webkit [150027] by zoltan@webkit.org
  • 10 edits
    1 copy
    13 adds in trunk

[CSS Regions][CSS Exclusions] Shape-inside on regions should respect region borders and paddings
https://bugs.webkit.org/show_bug.cgi?id=115456

Reviewed by David Hyatt.

I refactored the computation logic of shape-inside on regions by removing access to RenderFlowThread from ExclusionShapeInfo's logicalTopOffset
function, this means all the logic is now existing in RenderBlockLineLayout.cpp. By modifying the logicalTopOffset it turned out that the borders
and padding hadn't worked correctly, since borders and paddings were counted twice in the shape-inside's computation. This patch adds the necessary
modifications to let it respect the borders and padding in the correct way. I created 2 new helper functions to prevent increasing the code size of
the layoutRunsAndFloatsInRange function.

Source/WebCore:

I introduced 7 new tests to test for testing the correct behavior.

Tests: fast/regions/shape-inside/shape-inside-on-first-region-block-content.html

fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html
fast/regions/shape-inside/shape-inside-on-second-region-block-content.html
fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html
fast/regions/shape-inside/shape-inside-on-regions-inline-content.html
fast/regions/shape-inside/shape-inside-with-region-borders.html
fast/regions/shape-inside/shape-inside-with-region-padding.html

  • rendering/ExclusionShapeInfo.cpp:

(WebCore): Remove FlowThread logic from logicalTopOffset move definition to header.

  • rendering/ExclusionShapeInfo.h:

(WebCore::ExclusionShapeInfo::logicalTopOffset): Moved from cpp.
(WebCore::ExclusionShapeInfo::logicalLeftOffset): Add condition for RenderRegions.

  • rendering/RenderBlock.h:

(RenderBlock): Add definition to the new helper members.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Modified the flow thread case to return the appropriate region.
(WebCore::RenderBlock::updateLineBoundariesForExclusions): Added new helper function. Modify the shape-inside on regions
line boundaries and position computation logic.
(WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded): Added new helper function which handles the flow thread case also.
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Modified the code to use the helper functions.

LayoutTests:

  • fast/regions/shape-inside/shape-inside-on-additional-regions-expected.html: Modify to not use shape-inside for testing.
  • fast/regions/shape-inside/shape-inside-on-additional-regions.html: Fix the shape-inside's dimension.
  • fast/regions/shape-inside/shape-inside-on-first-region-block-content-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-first-region-block-content.html: Added.
  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions-expected.html: Match the shape-inside height to the container's height.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-regions.html: Match the shape-inside height to the container's height.
  • fast/regions/shape-inside/shape-inside-on-second-region-block-content-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-second-region-block-content.html: Added.
  • fast/regions/shape-inside/shape-inside-on-second-region-inline-content-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html: Added.
  • fast/regions/shape-inside/shape-inside-with-region-borders-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-with-region-borders.html: Added.
  • fast/regions/shape-inside/shape-inside-with-region-padding-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-with-region-padding.html: Added.
12:06 PM Changeset in webkit [150026] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebKit/win

Unreviewed. AppleWin VS2005 build fix.

  • WebKit.vcproj/WebKitExports.def.in:
11:37 AM Changeset in webkit [150025] by betravis@adobe.com
  • 3 edits
    2 adds in trunk

[css exclusions] Enable CSS Exclusions by default when CSS_EXCLUSIONS is set
https://bugs.webkit.org/show_bug.cgi?id=115919

Reviewed by Dean Jackson.

Source/WebCore:

Change the RuntimeEnabledFeatures::isCSSExclusionsEnabled boolean to default
to true. CSS Exclusions can still be enabled / disabled in platforms by
setting the CSS_EXCLUSIONS compile flag in one of the FeatureDefine files.

Test: fast/exclusions/css-exclusions-enabled.html

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore):

LayoutTests:

Adding a test to make sure CSS Exclusions can be enabled, and are enabled by
default.

  • fast/exclusions/css-exclusions-enabled-expected.txt: Added.
  • fast/exclusions/css-exclusions-enabled.html: Added.
11:24 AM Changeset in webkit [150024] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][CoordinatedGraphics] Avoid dispensable calls to WebView::updateViewportSize()
https://bugs.webkit.org/show_bug.cgi?id=116045

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2013-05-13
Reviewed by Darin Adler.

  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::setSize):

11:16 AM Changeset in webkit [150023] by commit-queue@webkit.org
  • 30 edits
    3 adds in trunk

Cell heights are disproportional when a row-spanning cell contains a block element that determines the height of the rows
https://bugs.webkit.org/show_bug.cgi?id=52185

Patch by Suchit Agrawal <a.suchit@samsung.com> on 2013-05-13
Reviewed by David Hyatt.

Source/WebCore:

Cells heights are not proper when rowspan cell have its own height and rowspan height
is more than the height of the rows present in rowspan.

After calculating logical height of the rows in the table, we are recalculating the height
of the rows present in rowspan. Based on the ratio of row's logical height, we are
distributing rowspan cell height in rows.

Test: fast/table/table-rowspan-height-distribution-in-rows.html

  • rendering/RenderTableSection.cpp:

(WebCore):

Update the logical height of the rows based on rowspan cell height.
(WebCore::RenderTableSection::distributeRowSpanHeightToRows):

It calculates logical height of the rows in the table.
(WebCore::RenderTableSection::calcRowLogicalHeight):

Added new private API to distribute rowSpan cell height in rows.

  • rendering/RenderTableSection.h:

(RenderTableSection):

LayoutTests:

Test case updated.

  • fast/css/vertical-align-baseline-rowspan-007.htm:

Reference Test cases updated.

  • fast/css/vertical-align-baseline-rowspan-007-expected.html:
  • fast/css/vertical-align-baseline-rowspan-008-expected.html:

Added test cases based on changes in the code and different scenarios for rowspan height
distribution in rows.

  • fast/table/table-rowspan-height-distribution-in-rows.html: Added.
  • platform/qt/fast/table/table-rowspan-height-distribution-in-rows-expected.png: Added.
  • platform/qt/fast/table/table-rowspan-height-distribution-in-rows-expected.txt: Added.

Test cases need to rebaseline in qt, efl, gtk and mac platforms.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:

Test case results are updated in qt platform.

  • platform/qt/tables/mozilla/bugs/bug17548-expected.png:
  • platform/qt/tables/mozilla/bugs/bug17548-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug220536-expected.png:
  • platform/qt/tables/mozilla/bugs/bug220536-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug7714-expected.png:
  • platform/qt/tables/mozilla/bugs/bug7714-expected.txt:
  • platform/qt/tables/mozilla/core/bloomberg-expected.png:
  • platform/qt/tables/mozilla/core/bloomberg-expected.txt:
  • platform/qt/tables/mozilla/other/test6-expected.png:
  • platform/qt/tables/mozilla/other/test6-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug1010-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug58402-2-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug58402-2-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug6933-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug6933-expected.txt:
  • tables/mozilla/core/bloomberg-expected.txt:
  • tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
10:07 AM Changeset in webkit [150022] by kbalazs@webkit.org
  • 4 edits
    2 adds in trunk

[GStreamer] cannot seek after video finished
https://bugs.webkit.org/show_bug.cgi?id=114044

Patch by Balazs Kelemen <b.kelemen@sisa.samsung.com> on 2013-04-30
Reviewed by Philippe Normand.

Source/WebCore:

Test: media/video-seek-after-end.html

Rework the seeking logic to be able to seek after reseting the pipeline.
In addition to solve the actual problem this patch supposed to make seeking
more robust and correct.
The previous implementation tried to hide the complexity of asynchronous operations
on the pipeline. It did not handle the GST_MESSAGE_ASYNC_DONE message from the bus
but instead reported the seek as finished when it saw an asynchronous pending state
(GST_STATE_CHANGE_ASYNC) which could happen way before the seek is really done.
Now we pay attention to the GST_MESSAGE_ASYNC_DONE message to track the status of seeks.
Seeks are not the only operations executed asynchronously, changing the pipeling state is
similar. It means a seek can overlap with onother ongoing asynchronous operation.
This change address this by introducing an invariant for seeks, which is that we only request
a seek if there are no other ongoing asynchronous operations and the pipeline state is either
paused or playing (which is recommended anyway according to GStreamer's documentation).
This way we can be sure that the time when we get the next GST_MESSAGE_ASYNC_DONE message the
seek has been completed.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::toGstClockTime): Factored time conversation into a helper.
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):

(WebCore::MediaPlayerPrivateGStreamer::playbackPosition): The position might not be available
if the pipeline still has a pending state. As a workaround, if we are right after a seek we can
use the seek time. Avoiding this situation would be possible by not allowing any asynchronous
operation to overlap. I believe it would add a lot more complexity so I decided to rather introduce
this workaround. Otherwise those overlapping operations are handled fine by GStreamer.

(WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Do not reset internal state variables.
This function called when there is an intent to restart playback but it does not actually restart it.
(WebCore::MediaPlayerPrivateGStreamer::currentTime): Just removed a staling newline.
(WebCore::MediaPlayerPrivateGStreamer::seek): Take a look to the pipeline state and act upon that.
If there is an ongoing asynchronous operation make the seek pending, otherwise do it now.
Now we handle overlapping seeks as well because I saw that it can happen in some tests.
Added an early return for live streams as it doesn't makes sense to try seeking in them.

(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Handle GST_MESSAGE_ASYNC_DONE and some refactoring.
(WebCore::MediaPlayerPrivateGStreamer::asyncStateChangeDone):
(WebCore::MediaPlayerPrivateGStreamer::updateStates): Only handle seeks in the pending case, the rest is
now handled in asyncStateChangeDone.
(WebCore::MediaPlayerPrivateGStreamer::cacheDuration): Do not reset the m_mediaDurationKnown if the pipeline
has an asynchronous pending state because it would fail. It does actually happen when we get a duration message
after restarting the pipeline and it would result in restarting playback from the start. It seems to be a bug
in GStreamer that it sends the duration message too early. Also sanitized this function by merging redundant branches.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(MediaPlayerPrivateGStreamer):

LayoutTests:

  • media/video-seek-after-end-expected.txt: Added.
  • media/video-seek-after-end.html: Added.
9:44 AM Changeset in webkit [150021] by jocelyn.turcotte@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Fix a crash on startup in FrameLoaderClientQt::callPolicyFunction with MSVC

Reviewed by Allan Sandfeld Jensen.

It's not clear why it crashes, but here's my guess by looking at the generated
assembly code:
Since we're using a member function pointer to PolicyChecker, the representation
is not necessarily just a simple pointer and might be a bigger structure used
to handle virtual functions resolution.
For a function taking such a function "pointer" as parameter, the compiler doesn't
seem to have the caller and callee agree on which convention to use if the function
pointer's class is non-virtual and only one of the ends doesn't know about it.

Including the definition of the member function pointer's class fixes the crash.

  • WebCoreSupport/FrameLoaderClientQt.cpp:
9:19 AM Changeset in webkit [150020] by jonlee@apple.com
  • 3 edits in trunk/Source/WebKit2

[WK2] Notification manager removal should not be tied to termination of web processes
https://bugs.webkit.org/show_bug.cgi?id=116038
<rdar://problem/10968680>

Reviewed by Ryosuke Niwa.

WebNotificationManagerProxy incorrectly removes the manager when web processes close.
Since it is a supplemental on the web context, the manager should only be removed
when the context is destroyed.

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:
  • UIProcess/Notifications/WebNotificationManagerProxy.h: Remove implementation of

processDidClose().

9:19 AM Changeset in webkit [150019] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WTF

Unreviewed. Fix Qt Linux MIPS32R2 build after r149879.

Bring back GLIB_CHECK_VERSION for GBytes since Qt Linux MIPS32R2
depends on glib 2.24.2.

  • wtf/gobject/GRefPtr.cpp:

(_GBytes):
(WTF::refGPtr):
(WTF::derefGPtr):

8:45 AM Changeset in webkit [150018] by Martin Robinson
  • 3 edits
    2 adds in trunk/Source/WebKit2

[GTK] [WebKit2] Use a template file for generated GObject enum files
https://bugs.webkit.org/show_bug.cgi?id=115867

Reviewed by Carlos Garcia Campos.

  • GNUmakefile.am: Use a template file instead of specifying portions of the file on the command-line.
  • UIProcess/API/gtk/WebKitEnumTypes.cpp.template: Added.
  • UIProcess/API/gtk/WebKitEnumTypes.h.template: Added.
  • UIProcess/API/gtk/WebKitFindController.cpp: We can no longer rely on WebKitEnumTypes.h to pull in WebKitWebView.h.
8:45 AM Changeset in webkit [150017] by akling@apple.com
  • 1 edit in trunk/Source/WebKit/mac/ChangeLog

Remove accidental unrelated ChangeLog entry from r150016.

8:29 AM Changeset in webkit [150016] by Darin Adler
  • 6 edits in trunk/Source

Source/WebCore: [Mac] Move writeRange/PlainText/URL from ClipboardMac to PasteboardMac
https://bugs.webkit.org/show_bug.cgi?id=116009

Reviewed by Andreas Kling.

  • dom/Clipboard.cpp:

(WebCore::Clipboard::writeRange): Added. Moved from ClipboardMac,
but added some FIXMEs.
(WebCore::Clipboard::writePlainText): Ditto.
(WebCore::Clipboard::writeURL): Ditto.

  • dom/Clipboard.h: Made writeURL, writeRange, and writePlainText

non-virtual in non-legacy clipboard implementations.

  • platform/mac/ClipboardMac.h: Removed writeRange, writeURL, and

writePlainText.

  • platform/mac/ClipboardMac.mm: Ditto.

Source/WebKit/mac: [Mac] Layer-backed WebViews draw their background color even when setDrawsBackground:NO was called
https://bugs.webkit.org/show_bug.cgi?id=116014
<rdar://problem/12781227>

Reviewed by Andreas Kling.

  • WebView/WebFrame.mm:

(-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Remove calls to setBackgroundColor: and
setDrawsBackground: on the document view. These were added to support a hypothetical document view
that wanted to draw its background like WebHTMLView does, but this was never communicated as a
document view protocol, formal or informal, and it's unlikely that it was ever used. The bug was
caused because there is an -[NSView setDrawsBackground:] method, probably an internal one, and we
were calling it unintentionally on a WebHTMLView.

8:29 AM Changeset in webkit [150015] by commit-queue@webkit.org
  • 10 edits in trunk/Source

[CoordGfx] requestAnimationFrame performance issues
https://bugs.webkit.org/show_bug.cgi?id=112345

Patch by Noam Rosenthal <Noam Rosenthal> on 2013-05-13
Reviewed by Jocelyn Turcotte.

Source/WebCore:

Removed current requestAnimationFrame logic from CoordinatedGraphics. The new logic
is entirely in WebKit2 CoordinatedLayerTreeHost.

Covered by existing tests in fast/animations.

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
(WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:

(CoordinatedGraphicsScene):

Source/WebKit2:

Changed the logic of requestAnimationFrame in Coordinated Graphics.
We don't send any IPC messages for requestAnimationFrame. Instead, we do one of two things:

  • If there is already a frame pending in the UI process, do nothing, as the animations would be serviced when the frame is returned to the web process.
  • If there is no frame pending, we schedule a flush, making sure that that flush occurs at least 1/60 seconds after the last animation service, so that we don't get an infinite loop of flushes.
  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:

(WebKit::CoordinatedLayerTreeHostProxy::requestAnimationFrame):

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
(WebKit::CoordinatedLayerTreeHost::scheduleAnimation):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
8:14 AM Changeset in webkit [150014] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[texmap][GStreamer] Composited Video support
https://bugs.webkit.org/show_bug.cgi?id=86410

Patch by Víctor Manuel Jáquez Leal <vjaquez@igalia.com> on 2013-05-13
Reviewed by Philippe Normand.

Enable the video accelerated compositing using the WebKit's
TextureMapper.

This patch does not use hardware accelerated video decoding. It
provides a generic path for system memory buffers.

No new tests, already covered by existing tests.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
(WebCore):
(WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): update the
texture content with the new received video buffer.
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint): choose to
use the accelerated compositing or the normal code path
(WebCore::MediaPlayerPrivateGStreamerBase::paint): if accelerated
compositing is used this method is halted.
(WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper): get
a texture from the pool and draws it if it is already available.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:

(MediaPlayerPrivateGStreamerBase):
(WebCore::MediaPlayerPrivateGStreamerBase::platformLayer): returns itself
(WebCore::MediaPlayerPrivateGStreamerBase::supportsAcceleratedRendering):
returns true

8:05 AM Changeset in webkit [150013] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Document: Use a DeferrableOneShotTimer to throw out StyleResolver when unused.
<http://webkit.org/b/115929>

Reviewed by Anders Carlsson.

Nothing exciting here, just replacing a rickety-looking punting mechanism with a proper
DeferrableOneShotTimer. Note that the timeout changes from 60 to 30 seconds because DOST
works by punting a full interval on next timeout.

  • dom/Document.cpp:

(WebCore::Document::Document):
(WebCore::Document::didAccessStyleResolver):
(WebCore::Document::styleResolverThrowawayTimerFired):

  • dom/Document.h:

(Document):

7:59 AM Changeset in webkit [150012] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[WK2][CoordinatedGraphics] WKView needs API for handling opacity
https://bugs.webkit.org/show_bug.cgi?id=116032

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2013-05-13
Reviewed by Kenneth Rohde Christiansen.

Add WKViewSetOpacity and WKViewOpacity APIs and use them in
WebView.cpp.

  • UIProcess/API/C/CoordinatedGraphics/WKView.cpp:

(WKViewSetOpacity):
(WKViewOpacity):

  • UIProcess/API/C/CoordinatedGraphics/WKView.h:
  • UIProcess/CoordinatedGraphics/WebView.cpp:

(WebKit::WebView::WebView):
(WebKit::WebView::paintToCurrentGLContext):

  • UIProcess/CoordinatedGraphics/WebView.h:

(WebKit::WebView::setOpacity):
(WebKit::WebView::opacity):
(WebView):

7:55 AM Changeset in webkit [150011] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION(r149287): FoldingText only shows me half of my text.
<http://webkit.org/b/115956>
<rdar://problem/13831099>

Reviewed by Antti Koivisto.

Check if the FrameView geometry changed post-layout, and send a resize event if needed.
This brings us closer to the original resize event behavior, with the exception that
setFrameRect() still fires an event right away if possible. This means we are still
guarded from FOUC's but frames that layout via [WebHTMLView layoutToMinimumPageWidth]
also get resize events like they used to.

No new tests, because I don't know how to test this.

  • page/FrameView.h:
  • page/FrameView.cpp:

(WebCore::FrameView::setFrameRect):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::sendResizeEventIfNeeded):

Factor out the resize event logic from setFrameRect() so we can call it from both
there and performPostLayoutTasks(). sendResizeEventIfNeeded() only sends an event
if view geometry or zoom factor has changed since last time it was called.

7:26 AM Changeset in webkit [150010] by Antti Koivisto
  • 10 edits in trunk/Source

Remove unneeded counters from ScopeContentDistribution.
https://bugs.webkit.org/show_bug.cgi?id=116028

Reviewed by Andreas Kling.

They don't do much.

  • WebCore.exp.in:
  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):

  • dom/ShadowRoot.h:


No need for registration code anymore.

  • html/shadow/ContentDistributor.cpp:

(WebCore::ScopeContentDistribution::ScopeContentDistribution):

Default m_insertionPointListIsValid to true to avoid crawling when there are no InsertionPoints.

(WebCore::ScopeContentDistribution::ensureInsertionPointList):
(WebCore::ScopeContentDistribution::registerInsertionPoint):
(WebCore::ScopeContentDistribution::unregisterInsertionPoint):

  • html/shadow/ContentDistributor.h:


Remove distributeNodeChildrenTo, it was only used by the older/younger shadow root code.

  • testing/Internals.cpp:
  • testing/Internals.h:
  • testing/Internals.idl:
7:10 AM EFLHistoryApiTutorial edited by saulo@gmx.com
(diff)
7:03 AM Changeset in webkit [150009] by commit-queue@webkit.org
  • 2 edits
    1 delete in trunk/PerformanceTests

Web Inspector: Get rid of native-memory-snapshot in performance test
https://bugs.webkit.org/show_bug.cgi?id=116013

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-13
Reviewed by Andreas Kling.

Remove native-memory-snapshot.html from PerformanceTests.

  • inspector/native-memory-snapshot.html: Removed.
  • inspector/performance-test.js:

(initialize_TimeTracker.Timer):
(initialize_TimeTracker.Timer.prototype._dump):
(initialize_TimeTracker.InspectorTest.runPerformanceTest):

6:55 AM Changeset in webkit [150008] by zandobersek@gmail.com
  • 4 edits in trunk

[GTK] Use WebCore layer archives for TestWebCore, WebKitPluginProcess
https://bugs.webkit.org/show_bug.cgi?id=115918

Reviewed by Gustavo Noronha Silva.

Source/WebKit2:

Due to layer violations and circular dependencies the WebKitPluginProcess requires for the
libraries containing the built code of the intertwining Platform and WebCore layers to be
specified multiple times when linking. This can be avoided by packing the two layers' archives
into one big archive, named after the WebCore layer due to no clear boundary between it and the
Platform layer. The big archive can then be specified only once when linking, simplifying the code
and suppressing all the layering violations so they do not cause build problems.

First the libtool libraries that the WebCore layer (as required by the WebKitPluginProcess) depends on
are specified. These are then used as dependencies for the archive creation rule as well as the list
from which the archive file paths are constructed and then used to dump the member files from these archives.
The member files are then added to the big archive. The latter is added to the list of libraries the
WebKitPluginProcess requires to successfully link.

  • GNUmakefile.am:

Tools:

Due to layer violations and circular dependencies the TestWebCores requires for the libraries containing
the built code of the intertwining Platform and WebCore layers to be specified multiple times when linking.
This can be avoided by packing the two layers' archives into one big archive, named after the WebCore layer
due to no clear boundary between it and the Platform layer. The big archive can then be specified only once
when linking, simplifying the code and suppressing all the layering violations so they do not cause build
problems.

First the libtool libraries that the WebCore layer (as required by the TestWebCore) depends on are specified.
These are then used as dependencies for the archive creation rule as well as the list from which the archive
file paths are constructed and then used to dump the member files from these archives. The member files are
then added to the big archive. The latter is added to the list of libraries the TestWebCore requires to
successfully link.

  • TestWebKitAPI/GNUmakefile.am:
6:52 AM Changeset in webkit [150007] by andersca@apple.com
  • 11 edits
    1 delete in trunk

Remove UnusedParam.h
https://bugs.webkit.org/show_bug.cgi?id=116029

Reviewed by Andreas Kling.

Source/WTF:

Remove UnusedParam.h, it's empty now.

  • GNUmakefile.list.am:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/UnusedParam.h: Removed.

Tools:

Stop including UnusedParam.h.

  • DumpRenderTree/blackberry/TestRunnerBlackBerry.cpp:
  • WebKitTestRunner/qt/TestInvocationQt.cpp:
6:14 AM Changeset in webkit [150006] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.0.2

Tagging the WebKitGTK+ 2.0.2 release

5:30 AM Changeset in webkit [150005] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.0

Unreviewed. Update NEWS and Versions.m4 for 2.0.2 release.

.:

  • Source/autotools/Versions.m4: Bump version numbers.

Source/WebKit/gtk:

  • NEWS: Added release notes for 2.0.2.
4:32 AM Changeset in webkit [150004] by Christophe Dumez
  • 3 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark several test cases as crashing on EFL port.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
4:08 AM Changeset in webkit [150003] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark 2 ref tests as failing on EFL port.

  • platform/efl/TestExpectations:
4:00 AM Changeset in webkit [150002] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Skip 2 HTTP tests that time out of EFL port.

  • platform/efl/TestExpectations:
3:53 AM Changeset in webkit [150001] by Christophe Dumez
  • 1 edit
    6 adds in trunk/LayoutTests

Unreviewed EFL gardening.

Provide EFL baselines for several compositing test cases.

  • platform/efl/compositing/backing/no-backing-for-clip-overhang-expected.txt: Added.
  • platform/efl/compositing/contents-opaque/hidden-with-visible-child-expected.txt: Added.
  • platform/efl/compositing/contents-opaque/hidden-with-visible-text-expected.txt: Added.
  • platform/efl/compositing/contents-opaque/overflow-hidden-child-layers-expected.txt: Added.
3:50 AM Changeset in webkit [150000] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Remove unused references from projects in Visual Studio
https://bugs.webkit.org/show_bug.cgi?id=116002

Patch by Seokju Kwon <Seokju Kwon> on 2013-05-13
Reviewed by Csaba Osztrogonác.

nativeMemoryProfiler.css and NativeMemorySnapshotView.js were removed in r149807.

No new tests, no behavior change.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
1:53 AM Changeset in webkit [149999] by commit-queue@webkit.org
  • 20 edits in trunk

WebProcess consuming very high CPU on linkedin.com
https://bugs.webkit.org/show_bug.cgi?id=115601

Patch by Zalan Bujtas <Alan Bujtas> on 2013-05-13
Reviewed by Andreas Kling.

Disable WEB_TIMING_MINIMAL.
Turn off window.performance and performance.now(). Some JS frameworks expect
additional Web Timing APIs, when performance.now() is available.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • dom/EventTargetFactory.in:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::~DOMWindow):
(WebCore::DOMWindow::resetDOMWindowProperties):
(WebCore):

  • page/DOMWindow.h:

(DOMWindow):

  • page/DOMWindow.idl:
  • page/Performance.cpp:

(WebCore::Performance::timing):

  • page/Performance.h:

(Performance):

  • page/Performance.idl:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/FeatureDefines.h:

LayoutTests:

  • platform/mac/TestExpectations:
  • fast/js/global-constructors-attributes-expected.txt:
1:37 AM Changeset in webkit [149998] by Darin Adler
  • 2 edits in trunk/Source/WebKit/mac

[Mac] Layer-backed WebViews draw their background color even when setDrawsBackground:NO was called
https://bugs.webkit.org/show_bug.cgi?id=116014
<rdar://problem/12781227>

Reviewed by Dan Bernstein.

  • WebView/WebFrame.mm:

(-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Remove calls to setBackgroundColor: and
setDrawsBackground: on the document view. These were added to support a hypothetical document view
that wanted to draw its background like WebHTMLView does, but this was never communicated as a
document view protocol, formal or informal, and it's unlikely that it was ever used. The bug was
caused because there is an -[NSView setDrawsBackground:] method, probably an internal one, and we
were calling it unintentionally on a WebHTMLView.

12:55 AM Changeset in webkit [149997] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit/gtk

Merge r149666 - [GTK] Initialize WebKitWebPlugin path to prevent double-free
https://bugs.webkit.org/show_bug.cgi?id=115624

Patch by Tomas Popela <tpopela@redhat.com> on 2013-05-07
Reviewed by Carlos Garcia Campos.

Use GOwnPtr for WebKitWebPlugin path to prevent double-free
situations. Also use GOwnPtr for GError in webkit_web_plugin_get_path.

  • webkit/webkitwebplugin.cpp:

(webkit_web_plugin_finalize):
(webkit_web_plugin_get_path):

  • webkit/webkitwebpluginprivate.h:
12:46 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
12:43 AM Changeset in webkit [149996] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore

Merge r149735 - [GStreamer] Does memory buffering even with preload set to none
https://bugs.webkit.org/show_bug.cgi?id=115754

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-05-08
Reviewed by Philippe Normand.

Covered by existing tests.

Revision 148840 fixed on-disk buffering being done when preload is set to none,
but memory buffering is still being done. That is because setting the state to
paused causes GStreamer to start loading the media, to gather information. Only
doing that when committing the load avoids that while maintaining the tested
behaviour unchanged.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::load): move setting pause state to commitLoad.
(WebCore::MediaPlayerPrivateGStreamer::commitLoad): see above.

12:33 AM Changeset in webkit [149995] by kadam@inf.u-szeged.hu
  • 1 edit
    6 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Added platform specific expected files.

  • platform/qt-5.0-wk1/compositing/backing/no-backing-for-clip-overhang-expected.txt: Added after r149969.
  • platform/qt-5.0-wk2/compositing/contents-opaque/hidden-with-visible-child-expected.txt: Added after r149915.
  • platform/qt-5.0-wk2/compositing/contents-opaque/hidden-with-visible-text-expected.txt: Added after r149915.
  • platform/qt-5.0-wk2/compositing/contents-opaque/overflow-hidden-child-layers-expected.txt: Added after r149914.
  • platform/qt/compositing/backing/no-backing-for-clip-overhang-expected.txt: Added after r149969.
12:20 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
12:18 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
12:17 AM Changeset in webkit [149994] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

Merge r149494 - Updated WebKitGTK+ Translation for Odia [or] language.
https://bugs.webkit.org/show_bug.cgi?id=115030

Patch by Manoj Kumar Giri <mgiri@redhat.com> on 2013-05-02
Reviewed by Gustavo Noronha Silva.

  • or.po: updated translation.
12:15 AM Changeset in webkit [149993] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit/gtk

Merge r149486 - Segmentation Fault with Romanian locale. Evolution not starting.
https://bugs.webkit.org/show_bug.cgi?id=115484

Reviewed by Darin Adler.

Do not translate the property names that are being passed to the g_param_spec_boolean
method - it is not required and is causing segfaults with various locales.

  • webkit/webkitviewportattributes.cpp:

(webkit_viewport_attributes_class_init):

12:14 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
12:11 AM Changeset in webkit [149992] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebKit2

Merge r149192 - [GTK] Compilation of ProcessLauncherGtk.cpp fails due to unresolved symbols
https://bugs.webkit.org/show_bug.cgi?id=115240

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2013-04-26
Reviewed by Martin Robinson.

  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: Includes sys/socket.h if OS is Linux
12:07 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
Note: See TracTimeline for information about the timeline view.