WebKit-https.git
7 years ago[Qt][WK2] Unreviewed build fix after r150305 and r150306.
ossy@webkit.org [Sat, 18 May 2013 07:33:44 +0000 (07:33 +0000)]
[Qt][WK2] Unreviewed build fix after r150305 and r150306.

* DerivedSources.pri:
* Target.pri:

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

7 years ago[GTK] Parallel build fails if gtk-doc is enabled
commit-queue@webkit.org [Sat, 18 May 2013 07:19:37 +0000 (07:19 +0000)]
[GTK] Parallel build fails if gtk-doc is enabled
https://bugs.webkit.org/show_bug.cgi?id=116227

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-18
Reviewed by Martin Robinson.

.:

* GNUmakefile.am:
Define an empty noinst_DATA variable where other automake files
can add additional objects to be built.

Source/WebCore:

* GNUmakefile.am:
Don't overwrite noinst_DATA, modify its existing value instead.

Tools:

* GNUmakefile.am:
Don't use the 'all' target to generate the documentation.
The prerequisites of this target must be files that need to be
built _before_ the actual compilation of WebKit starts. Since the
documentation depends on WebKit being built first, this means in
practice that the code will be built in parallel with the
generation of its dependencies, potentially making the build fail.

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

7 years agoUnreviewed build fix for the GTK port after r150305 and r150306.
zandobersek@gmail.com [Sat, 18 May 2013 07:12:01 +0000 (07:12 +0000)]
Unreviewed build fix for the GTK port after r150305 and r150306.

* GNUmakefile.list.am:

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

7 years agoDon't run hg.
rniwa@webkit.org [Sat, 18 May 2013 04:50:06 +0000 (04:50 +0000)]
Don't run hg.

* Scripts/webkitpy/w3c/test_importer_unittest.py:
(TestImporterTest):

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

7 years ago <rdar://problem/13819878> Disable SharedWorker when in multiple web process...
ap@apple.com [Sat, 18 May 2013 04:23:45 +0000 (04:23 +0000)]
    <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):

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

7 years agoCSSParser parsing of CSSPropertyFontStretch falls into CSSPropertyGeometry
michelangelo@webkit.org [Sat, 18 May 2013 04:11:30 +0000 (04:11 +0000)]
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):

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

7 years agoForce the script debug server to continue when disabling the debugger.
timothy@apple.com [Sat, 18 May 2013 03:12:01 +0000 (03:12 +0000)]
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):

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

7 years ago[BlackBerry] Get BlackBerry port off legacy clipboard
darin@apple.com [Sat, 18 May 2013 02:58:53 +0000 (02:58 +0000)]
[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.

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

7 years agoAds on theverge.com cause repaints when hovered, even though content doesn't visibly...
akling@apple.com [Sat, 18 May 2013 02:56:20 +0000 (02:56 +0000)]
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):

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

7 years agoCreate a script to import W3C tests
dpranke@chromium.org [Sat, 18 May 2013 02:40:37 +0000 (02:40 +0000)]
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):

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

7 years agoPlug leak in CSSSelectorList::deleteSelectors().
akling@apple.com [Sat, 18 May 2013 02:28:25 +0000 (02:28 +0000)]
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):

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

7 years agoOne more Mac rebaseline.
rniwa@webkit.org [Sat, 18 May 2013 02:21:18 +0000 (02:21 +0000)]
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:

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

7 years agoOnly allow 1 WebProcess to hold a PageCache
barraclough@apple.com [Sat, 18 May 2013 01:13:44 +0000 (01:13 +0000)]
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.

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

7 years agoShare code between WebKit1 and WebKit2 StorageArea subclasses
andersca@apple.com [Sat, 18 May 2013 01:04:53 +0000 (01:04 +0000)]
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:

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

7 years agoUnreviewed, rolling out r150294.
commit-queue@webkit.org [Sat, 18 May 2013 00:51:35 +0000 (00:51 +0000)]
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:

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

7 years agoGet rid of Custom code for Audio global constructor
ch.dumez@sisa.samsung.com [Sat, 18 May 2013 00:16:19 +0000 (00:16 +0000)]
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:

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

7 years ago <rdar://problem/13819878> Disable SharedWorker when in multiple web process...
ap@apple.com [Sat, 18 May 2013 00:05:10 +0000 (00:05 +0000)]
    <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):

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

7 years agoMove Storage member functions out of line
andersca@apple.com [Fri, 17 May 2013 23:45:25 +0000 (23:45 +0000)]
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):

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

7 years agoRe-align the OS(AIX) macro...
akling@apple.com [Fri, 17 May 2013 23:35:26 +0000 (23:35 +0000)]
Re-align the OS(AIX) macro...
...in the hopes that the resulting world rebuild will fix failures after r150294.

* wtf/Platform.h:

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

7 years agoHeaders and footers will sometimes disappear and re-appear during page loads
bdakin@apple.com [Fri, 17 May 2013 23:13:31 +0000 (23:13 +0000)]
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):

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

7 years agoRename WebKeyValueStorageManagerProxy to WebKeyValueStorageManager
andersca@apple.com [Fri, 17 May 2013 23:13:16 +0000 (23:13 +0000)]
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:

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

7 years agoRemove dead local storage code
andersca@apple.com [Fri, 17 May 2013 23:06:08 +0000 (23:06 +0000)]
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):

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

7 years agoUse the UI process storage manager for deleting local storage data
andersca@apple.com [Fri, 17 May 2013 22:59:28 +0000 (22:59 +0000)]
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.

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

7 years agoLeaks builders exit early frequently
rniwa@webkit.org [Fri, 17 May 2013 22:06:08 +0000 (22:06 +0000)]
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):

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

7 years ago[CSS] Minor cleanups in CSS variables handling
csaavedra@igalia.com [Fri, 17 May 2013 21:53:28 +0000 (21:53 +0000)]
[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.

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

7 years agoOnly import local storage items from the database once
andersca@apple.com [Fri, 17 May 2013 21:51:30 +0000 (21:51 +0000)]
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):

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

7 years ago [Mac] Add DOMWindowConstructors.idl to Xcode project file
ap@apple.com [Fri, 17 May 2013 21:41:18 +0000 (21:41 +0000)]
    [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.

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

7 years agoRemove the declaration of Element::detachAttrNodeAtIndex erroneously added in r150072.
rniwa@webkit.org [Fri, 17 May 2013 21:17:09 +0000 (21:17 +0000)]
Remove the declaration of Element::detachAttrNodeAtIndex erroneously added in r150072.

* dom/Element.h:
(Element):

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

7 years ago <rdar://problem/13869765> Lion: Crashes in islcCanLoadInputMethodFromBundleID.
ap@apple.com [Fri, 17 May 2013 20:51:14 +0000 (20:51 +0000)]
    <rdar://problem/13869765> Lion: Crashes in islcCanLoadInputMethodFromBundleID.

        Reviewed by Anders Carlsson.

        * WebProcess/com.apple.WebProcess.sb.in: Allow text input directories.

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

7 years agoWKKeyValueStorageManagerGetKeyValueStorageOrigins should get origins from the UI...
andersca@apple.com [Fri, 17 May 2013 20:41:51 +0000 (20:41 +0000)]
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:

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

7 years agoApply FINAL to the RenderObject hierarchy.
akling@apple.com [Fri, 17 May 2013 20:32:43 +0000 (20:32 +0000)]
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.

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

7 years ago Build fix.
ap@apple.com [Fri, 17 May 2013 20:17:55 +0000 (20:17 +0000)]
    Build fix.

        * loader/FrameLoader.cpp: (WebCore::FrameLoader::willTransitionToCommitted):
        Frame:editor() now returns a reference.

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

7 years agoGet rid of [ConstructorParameters] extended attributes
ch.dumez@sisa.samsung.com [Fri, 17 May 2013 20:05:51 +0000 (20:05 +0000)]
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:

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

7 years ago Text input is largely broken when there are subframes loading
ap@apple.com [Fri, 17 May 2013 20:04:43 +0000 (20:04 +0000)]
    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.

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

7 years agoMac rebaselines; also remove some entries.
rniwa@webkit.org [Fri, 17 May 2013 19:54:51 +0000 (19:54 +0000)]
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:

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

7 years ago[WK2] Add support for selectTrailingWhitespaceEnabled setting
commit-queue@webkit.org [Fri, 17 May 2013 19:50:45 +0000 (19:50 +0000)]
[WK2] Add support for selectTrailingWhitespaceEnabled setting
https://bugs.webkit.org/show_bug.cgi?id=112426

Patch by Manuel Rego Casasnovas <rego@igalia.com> 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.

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

7 years agoFix crash introduced by http://trac.webkit.org/changeset/150282
beidson@apple.com [Fri, 17 May 2013 19:49:14 +0000 (19:49 +0000)]
Fix crash introduced by 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.

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

7 years agoRemove chrome-channels command from the webkit-patch
commit-queue@webkit.org [Fri, 17 May 2013 19:47:48 +0000 (19:47 +0000)]
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.

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

7 years agofilter-build-webkit: Don't filter out the location of the missing symbol when linking...
ddkilzer@apple.com [Fri, 17 May 2013 19:33:19 +0000 (19:33 +0000)]
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.

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

7 years agoAdd tests for shouldIgnoreLine() in filter-build-webkit
ddkilzer@apple.com [Fri, 17 May 2013 19:33:12 +0000 (19:33 +0000)]
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.

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

7 years agoRename "WebKit Queues" to explicitly call out for EWS and CQ on build.webkit.org
rniwa@webkit.org [Fri, 17 May 2013 19:24:51 +0000 (19:24 +0000)]
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:

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

7 years agoGet rid of [CustomGetter] for global named constructors
ch.dumez@sisa.samsung.com [Fri, 17 May 2013 19:17:06 +0000 (19:17 +0000)]
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:

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

7 years agoReplace WebFrameLoaderClient static_casts with a function that might return null.
beidson@apple.com [Fri, 17 May 2013 19:15:45 +0000 (19:15 +0000)]
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):

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

7 years ago[Windows] Don't use pdevenv when building with VS2010.
bfulgham@apple.com [Fri, 17 May 2013 19:06:43 +0000 (19:06 +0000)]
[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.

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

7 years agoWeb Inspector: SyntaxError evaluating "1+1; //@ sourceURL=test" in console
commit-queue@webkit.org [Fri, 17 May 2013 18:49:04 +0000 (18:49 +0000)]
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 <pecoraro@apple.com> on 2013-05-17
Reviewed by Timothy Hatcher.

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

* inspector/InjectedScriptSource.js:

LayoutTests:

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2013-05-17
Reviewed by Timothy Hatcher.

* inspector/console/console-eval-comment-expected.txt: Added.
* inspector/console/console-eval-comment.html: Added.

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

7 years agogit-svn-id: https://svn.webkit.org/repository/webkit/trunk@150279 268f45cc-cd09-0410...
hyatt@apple.com [Fri, 17 May 2013 18:42:48 +0000 (18:42 +0000)]
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@150279 268f45cc-cd09-0410-ab3c-d52691b4dbfc

7 years agofast/flexbox/auto-height-with-flex.html failing only on release builds.
hyatt@apple.com [Fri, 17 May 2013 18:41:14 +0000 (18:41 +0000)]
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):

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

7 years agoExpose new load-with-userData API to Objective-C
weinig@apple.com [Fri, 17 May 2013 18:28:02 +0000 (18:28 +0000)]
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:

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

7 years agoAdd [EnabledAtRuntime] extended attribute support for global constructors
ch.dumez@sisa.samsung.com [Fri, 17 May 2013 18:16:41 +0000 (18:16 +0000)]
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:

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

7 years agoUnreviewed. Skip webgl and transforms/3d tests again, until we find out why they do
kov@webkit.org [Fri, 17 May 2013 18:02:32 +0000 (18:02 +0000)]
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.

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

7 years ago[BlackBerry] REGRESSION(r150060): Crash in LayerWebKitThread::updateTextureContents
commit-queue@webkit.org [Fri, 17 May 2013 17:43:14 +0000 (17:43 +0000)]
[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):

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

7 years agoAccessing null function pointers is bad.
andersca@apple.com [Fri, 17 May 2013 17:40:17 +0000 (17:40 +0000)]
Accessing null function pointers is bad.

* WebCoreSupport/WebFrameLoaderClient.mm:

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

7 years agoMake filter-build-webkit testable using LoadAsModule
ddkilzer@apple.com [Fri, 17 May 2013 17:34:24 +0000 (17:34 +0000)]
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.

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

7 years agoAdd WKPageLoadData and WKPageLoadDataWithUserData SPI to support loading arbitrary...
weinig@apple.com [Fri, 17 May 2013 17:30:59 +0000 (17:30 +0000)]
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.

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

7 years agoFix Release builds.
timothy@apple.com [Fri, 17 May 2013 17:25:41 +0000 (17:25 +0000)]
Fix Release builds.

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

7 years agoMake kit(Frame*) more robust
andersca@apple.com [Fri, 17 May 2013 16:57:59 +0000 (16:57 +0000)]
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):

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

7 years ago[EFL] Move EFL port off legacy clipboard
darin@apple.com [Fri, 17 May 2013 16:57:42 +0000 (16:57 +0000)]
[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.

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

7 years ago[EFL][WK2] Fix sub menu initialization in ewk_context_menu_item
ch.dumez@sisa.samsung.com [Fri, 17 May 2013 16:53:55 +0000 (16:53 +0000)]
[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 <m.pakula@samsung.com> 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):

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

7 years agoMove the policy function to WebFramePolicyListener
andersca@apple.com [Fri, 17 May 2013 16:47:33 +0000 (16:47 +0000)]
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.

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

7 years agoWebFramePolicyListener should keep its Frame in a RefPtr
andersca@apple.com [Fri, 17 May 2013 16:34:35 +0000 (16:34 +0000)]
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.

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

7 years agoBad spacing inside MathML formulas when text-indent is specified
commit-queue@webkit.org [Fri, 17 May 2013 16:26:11 +0000 (16:26 +0000)]
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.

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

7 years agoFix code that expects Page::chrome() to return a pointer
commit-queue@webkit.org [Fri, 17 May 2013 16:07:05 +0000 (16:07 +0000)]
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):

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

7 years ago[BlackBerry] ImageBlackBerry: add missing BlendMode parameter
commit-queue@webkit.org [Fri, 17 May 2013 16:00:02 +0000 (16:00 +0000)]
[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):

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

7 years agoReduce number of WebFrameLoaderClient static casts in WebKit
andersca@apple.com [Fri, 17 May 2013 15:55:20 +0000 (15:55 +0000)]
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]):

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

7 years agoSome media/track tests fail or assert on Mac
jer.noble@apple.com [Fri, 17 May 2013 15:29:43 +0000 (15:29 +0000)]
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:

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

7 years agoChanges in text-only properties shouldn't cause repaints unless there is actually...
akling@apple.com [Fri, 17 May 2013 15:26:30 +0000 (15:26 +0000)]
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.

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

7 years agoImprove -webkit-text-underline-position memory usage.
commit-queue@webkit.org [Fri, 17 May 2013 15:11:10 +0000 (15:11 +0000)]
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):

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

7 years ago[BlackBerry] Remove stale comment for select mouse handling.
mifenton@rim.com [Fri, 17 May 2013 15:08:46 +0000 (15:08 +0000)]
[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):

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

7 years agoUnreviewed build fix. Remove assertion that doesn't make sense anymore since the
kov@webkit.org [Fri, 17 May 2013 14:33:39 +0000 (14:33 +0000)]
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):

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

7 years agoMake sure to call release() on our smart pointers when we should.
alexis@webkit.org [Fri, 17 May 2013 14:05:05 +0000 (14:05 +0000)]
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):

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

7 years ago[EFL][WK2] Support sub menu in ewk context menus
commit-queue@webkit.org [Fri, 17 May 2013 13:46:33 +0000 (13:46 +0000)]
[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 <m.pakula@samsung.com> 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):

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

7 years ago[CMake] Remove invalid include paths
paroga@webkit.org [Fri, 17 May 2013 13:00:39 +0000 (13:00 +0000)]
[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:

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

7 years agoMake PNGImageDecoder::rowAvailable auto-vectorizable
allan.jensen@digia.com [Fri, 17 May 2013 12:41:28 +0000 (12:41 +0000)]
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):

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

7 years agoWeb Inspector: Allow "//# sourceMappingURL" syntax alongside "//@"
commit-queue@webkit.org [Fri, 17 May 2013 12:30:53 +0000 (12:30 +0000)]
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 <pecoraro@apple.com> 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 <pecoraro@apple.com> 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:

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

7 years ago2 math sputnik test fail on 32 bit
allan.jensen@digia.com [Fri, 17 May 2013 12:30:06 +0000 (12:30 +0000)]
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:

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

7 years agoRemove custom code for MessageEvent.ports getter
ch.dumez@sisa.samsung.com [Fri, 17 May 2013 12:24:50 +0000 (12:24 +0000)]
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.

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

7 years ago[Qt] Unreviewed gardening. Added platform specific expected after r143389.
zarvai@inf.u-szeged.hu [Fri, 17 May 2013 12:22:59 +0000 (12:22 +0000)]
[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.

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

7 years ago[BlackBerry] DumpRenderTreeSupport: fix build in setMockDeviceOrientation()
commit-queue@webkit.org [Fri, 17 May 2013 10:42:16 +0000 (10:42 +0000)]
[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):

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

7 years ago[GTK] Rebaseline after r150169
commit-queue@webkit.org [Fri, 17 May 2013 10:18:03 +0000 (10:18 +0000)]
[GTK] Rebaseline after r150169
https://bugs.webkit.org/show_bug.cgi?id=116256

Unreviewed GTK gardening.

Patch by Seokju Kwon <seokju.kwon@gmail.com> on 2013-05-17

* platform/gtk/TestExpectations: Renamed from fast/loader/willsendrequest-returns-null-for-memory-cache-load.html.

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

7 years ago[Qt] Unreviewed build fix.
zarvai@inf.u-szeged.hu [Fri, 17 May 2013 10:00:47 +0000 (10:00 +0000)]
[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):

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

7 years agomedia/video-seek-after-end.html is flaky
rniwa@webkit.org [Fri, 17 May 2013 07:07:47 +0000 (07:07 +0000)]
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.

* TestExpectations:

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

7 years agoRemove WKBundlePageGetHeaderLayer/Footer SPI
bdakin@apple.com [Fri, 17 May 2013 05:22:49 +0000 (05:22 +0000)]
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):

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

7 years agoAdd variants of the loading APIs that take user data and a way for the injected bundl...
weinig@apple.com [Fri, 17 May 2013 04:34:27 +0000 (04:34 +0000)]
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:

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

7 years ago[EFL] inspector-protocol/page/javascriptDialogEvents.html is failing
commit-queue@webkit.org [Fri, 17 May 2013 03:39:43 +0000 (03:39 +0000)]
[EFL] inspector-protocol/page/javascriptDialogEvents.html is failing
https://bugs.webkit.org/show_bug.cgi?id=114781

Patch by Seokju Kwon <seokju.kwon@gmail.com> 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:

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

7 years agoAdd stubs for ContextMenu and ContextMenuItem
commit-queue@webkit.org [Fri, 17 May 2013 03:28:52 +0000 (03:28 +0000)]
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.

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

7 years agoRegression: Event#stopPropagation() does not halt bubbling for webkitTransitionEnd
alexis@webkit.org [Fri, 17 May 2013 03:26:58 +0000 (03:26 +0000)]
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.

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

7 years ago[BlackBerry] Strip invoke URLs when writing to the clipboard.
mifenton@rim.com [Fri, 17 May 2013 03:20:24 +0000 (03:20 +0000)]
[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):

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

7 years agoFix Analyze ChangeLog's entry processing
commit-queue@webkit.org [Fri, 17 May 2013 03:18:00 +0000 (03:18 +0000)]
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.

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

7 years agoMissing UNUSED_PARAM macro for textPosition argument in WebKitAccessibleInterfaceText
commit-queue@webkit.org [Fri, 17 May 2013 03:17:23 +0000 (03:17 +0000)]
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.

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

7 years agoAdd failing test expectations to http/tests/cache/willsendrequest-returns-null-for...
rniwa@webkit.org [Fri, 17 May 2013 03:15:55 +0000 (03:15 +0000)]
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:

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

7 years agoSource/WebCore: Frame flattening prevents <HTML> in <OBJECT> from having scrollbars
commit-queue@webkit.org [Fri, 17 May 2013 03:14:09 +0000 (03:14 +0000)]
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.

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

7 years ago[BlackBerry] Optimize caret bounds calculation when leaving an input field.
mifenton@rim.com [Fri, 17 May 2013 02:53:15 +0000 (02:53 +0000)]
[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):

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

7 years ago[GTK] Fix memory leak in WebKitBackForwardList
commit-queue@webkit.org [Fri, 17 May 2013 02:50:22 +0000 (02:50 +0000)]
[GTK] Fix memory leak in WebKitBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=116222

Patch by Manuel Rego Casasnovas <rego@igalia.com> 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.

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

7 years agoPort functions for pathhandling to Windows CE in FileSystemWin
paroga@webkit.org [Fri, 17 May 2013 02:47:20 +0000 (02:47 +0000)]
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):

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

7 years agoUnreviewed, rolling out r150034.
rniwa@webkit.org [Fri, 17 May 2013 02:46:25 +0000 (02:46 +0000)]
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):

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

7 years ago[Qt] UrlLoader::loadNext is broken in MiniBrowser
commit-queue@webkit.org [Fri, 17 May 2013 02:44:43 +0000 (02:44 +0000)]
[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):

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

7 years agoAdd the symbol WTFInvokeCrashHook back for binary compatibility.
benjamin@webkit.org [Fri, 17 May 2013 01:10:05 +0000 (01:10 +0000)]
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:

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

7 years agoPDFPlugins don't load when plugins are disabled, but they should
timothy_horton@apple.com [Fri, 17 May 2013 00:42:03 +0000 (00:42 +0000)]
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.

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

7 years ago[EFL][WK2] Make Ewk_Context_Menu Ewk_Object
commit-queue@webkit.org [Fri, 17 May 2013 00:36:49 +0000 (00:36 +0000)]
[EFL][WK2] Make Ewk_Context_Menu Ewk_Object
https://bugs.webkit.org/show_bug.cgi?id=116097

Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> 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:

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

7 years ago[WebSocket] Update pywebsocket to r760
commit-queue@webkit.org [Fri, 17 May 2013 00:33:55 +0000 (00:33 +0000)]
[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:

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