WebKit-https.git
6 years agoDisable HTTP request "Accept-Encoding:" header field on gstreamer source element...
commit-queue@webkit.org [Wed, 7 Aug 2013 18:40:31 +0000 (18:40 +0000)]
Disable HTTP request "Accept-Encoding:" header field on gstreamer source element to avoid receiving the wrong size when retrieving data
https://bugs.webkit.org/show_bug.cgi?id=115354

Patch by Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk> on 2013-08-07
Reviewed by Philippe Normand.

The default value for the HTTP "Accept-Encoding:" header field in the request allows
compressed data to be received on requests.
While this works fine for most cases, it can break the webkit source that needs to rely on the
the proper data size when receiving the response (even though the received data is already
uncompressed the size reported in ResourceResponse::expectedContentLength() is the same
represented by the HTTP header field "Content-Length" which is the size of the compressed data).

This patch disables the HTTP "Accept-Encoding:" header field when using the request
as we don't want the received response to be encoded in any way, as we need to rely on the proper
size of the returned data on ResourceHandle::didReceiveResponse().

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcStart):
* platform/network/soup/ResourceRequest.h:
(ResourceRequestBase):
(WebCore::ResourceRequest::acceptEncoding):
(WebCore::ResourceRequest::setAcceptEncoding):
(WebCore::ResourceRequest::ResourceRequestBase):
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupMessage):
(WebCore::ResourceRequest::toSoupMessage):

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

6 years agoTry to fix Win WK1 build.
antti@apple.com [Wed, 7 Aug 2013 18:40:17 +0000 (18:40 +0000)]
Try to fix Win WK1 build.

Not reviewed.

* WebFrame.cpp:
(WebFrame::invalidate):

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

6 years ago32-bit code gen for TypeOf doesn't properly update the AbstractInterpreter state
mhahnenberg@apple.com [Wed, 7 Aug 2013 18:36:31 +0000 (18:36 +0000)]
32-bit code gen for TypeOf doesn't properly update the AbstractInterpreter state
https://bugs.webkit.org/show_bug.cgi?id=119555

Reviewed by Geoffrey Garen.

It uses a speculationCheck where it should be using a DFG_TYPE_CHECK like the 64-bit backend does.
This was causing crashes on maps.google.com in 32-bit debug builds.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

6 years agoUnreviewed. Add myself as a committer.
ctruta@gmail.com [Wed, 7 Aug 2013 18:30:13 +0000 (18:30 +0000)]
Unreviewed. Add myself as a committer.

* Scripts/webkitpy/common/config/contributors.json:

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

6 years ago[Qt] Skip background-blending-mode tests
allan.jensen@digia.com [Wed, 7 Aug 2013 16:56:18 +0000 (16:56 +0000)]
[Qt] Skip background-blending-mode tests

Unreviewed gardening.

* platform/qt/TestExpectations:

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

6 years ago[Qt] REGRESSION(r) Two pixel result fail after r153522
allan.jensen@digia.com [Wed, 7 Aug 2013 16:34:17 +0000 (16:34 +0000)]
[Qt] REGRESSION(r) Two pixel result fail after r153522
https://bugs.webkit.org/show_bug.cgi?id=119392

Reviewed by Jocelyn Turcotte.

Consider scaling transform on the painter to determine final destination size.

Covered by existing tests.

* platform/graphics/qt/ImageQt.cpp:
(WebCore::prescaleImageIfRequired):
(WebCore::BitmapImage::draw):

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

6 years agoREGRESSION(FTL merge): Assertion fail on 32 bit with enabled DFG JIT
msaboff@apple.com [Wed, 7 Aug 2013 16:17:33 +0000 (16:17 +0000)]
REGRESSION(FTL merge): Assertion fail on 32 bit with enabled DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=119405

Reviewed by Geoffrey Garen.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileGetByValOnString): For X86 32 bit, construct an indexed address
ourselves to save a register and then load from it.

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

6 years ago2.5% regression on page cycler moz
antti@apple.com [Wed, 7 Aug 2013 15:02:39 +0000 (15:02 +0000)]
2.5% regression on page cycler moz
https://bugs.webkit.org/show_bug.cgi?id=102822

Source/WebCore:

Reviewed by Andreas Kling.

DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache() triggers a style recalc for quirks mode
documents in the beginning of document parsing via Document::setCompatibilityMode. This often coalesces
with style recalc triggered by stylesheet loading. However on very simple documents it can generate genuinely
unnecessary work.

* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):

    Check that we actually have cached injected stylesheets before triggering style recalc.

* page/PageGroup.cpp:
(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):

    Fix a misspelling.

(WebCore::PageGroup::invalidateInjectedStyleSheetCacheInAllFrames):

    Always invalidate style when user sheets change since we don't do that in
    DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache anymore.

* page/PageGroup.h:

LayoutTests:

Reviewed by Andreas Kling.

This is a progression.

* inspector/timeline/timeline-script-tag-1-expected.txt:

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

6 years agoDo no check seek offset against internal size on gstreamer source element
commit-queue@webkit.org [Wed, 7 Aug 2013 15:00:42 +0000 (15:00 +0000)]
Do no check seek offset against internal size on gstreamer source element
https://bugs.webkit.org/show_bug.cgi?id=116533

Patch by Andre Moreira Magalhaes <andre.magalhaes@collabora.co.uk> on 2013-08-07
Reviewed by Philippe Normand.

The internal size on gstreamer source element may be wrong in case the received size in
didReceiveResponse is not accurate. Lets just try to seek and let it fail if necessary.

* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcSeekDataCb):

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

6 years agoTry to fix EFL build.
antti@apple.com [Wed, 7 Aug 2013 14:31:03 +0000 (14:31 +0000)]
Try to fix EFL build.

Not reviewed.

* CMakeLists.txt:

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

6 years agoCreate WebCore/style and move StyleResolveTree there
antti@apple.com [Wed, 7 Aug 2013 14:22:49 +0000 (14:22 +0000)]
Create WebCore/style and move StyleResolveTree there
https://bugs.webkit.org/show_bug.cgi?id=119543

Reviewed by Andreas Kling.

WebCore/css is bloated. We should move the internal style representation and the style resolver
related code to a directory of their own. CSS language related code including parser and
CSSOM stays under css.

Things named StyleFoo should generally move under WebCore/style. They should also be moved to
the Style namespace at the same time.

* CMakeLists.txt:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.pri:
* Target.pri:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCoreCommon.props:
* WebCore.vcxproj/copyForwardingHeaders.cmd:
* WebCore.xcodeproj/project.pbxproj:
* css/StyleResolveTree.cpp: Removed.
* css/StyleResolveTree.h: Removed.
* style: Added.
* style/StyleResolveTree.cpp: Copied from Source/WebCore/css/StyleResolveTree.cpp.
* style/StyleResolveTree.h: Copied from Source/WebCore/css/StyleResolveTree.h.

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

6 years ago[CSS Blending] Add test suite to validate background blending with different properties
commit-queue@webkit.org [Wed, 7 Aug 2013 13:42:54 +0000 (13:42 +0000)]
[CSS Blending] Add test suite to validate background blending with different properties
https://bugs.webkit.org/show_bug.cgi?id=118243

Patch by Mirela Budaes <mbudaes@adobe.com> on 2013-08-07
Reviewed by Dirk Schulze.

* css3/compositing/background-blend-mode-background-attachement-fixed-expected.html: Added.
* css3/compositing/background-blend-mode-background-attachement-fixed.html: Added.
* css3/compositing/background-blend-mode-background-clip-content-box-expected.html: Added.
* css3/compositing/background-blend-mode-background-clip-content-box.html: Added.
* css3/compositing/background-blend-mode-background-clip-padding-box-expected.html: Added.
* css3/compositing/background-blend-mode-background-clip-padding-box.html: Added.
* css3/compositing/background-blend-mode-background-origin-border-box-expected.html: Added.
* css3/compositing/background-blend-mode-background-origin-border-box.html: Added.
* css3/compositing/background-blend-mode-background-position-percentage-expected.html: Added.
* css3/compositing/background-blend-mode-background-position-percentage.html: Added.
* css3/compositing/background-blend-mode-background-repeat-no-repeat-expected.html: Added.
* css3/compositing/background-blend-mode-background-repeat-no-repeat.html: Added.
* css3/compositing/background-blend-mode-background-size-contain-expected.html: Added.
* css3/compositing/background-blend-mode-background-size-contain.html: Added.
* css3/compositing/background-blend-mode-background-size-cover-expected.html: Added.
* css3/compositing/background-blend-mode-background-size-cover.html: Added.
* css3/compositing/resources/white_square.svg: Added.

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

6 years agoMove style recalculation out from Element
antti@apple.com [Wed, 7 Aug 2013 12:02:04 +0000 (12:02 +0000)]
Move style recalculation out from Element
https://bugs.webkit.org/show_bug.cgi?id=119497

Reviewed by Andreas Kling.

Element currently does too much. Element::recalcStyle() and the related functions can be turned into
standalone functions that operate on DOM tree. This will also give more freedom for future refactoring,
for example making style recalculation non-recursive.

* WebCore.xcodeproj/project.pbxproj:
* css/StyleResolveTree.cpp: Added.
(WebCore::Style::determineChange):

    - moved and renamed from Node::diff
    - factored to use early return style
    - simplifield the null input logic

(WebCore::Style::pseudoStyleCacheIsInvalid):

    - moved from Element::pseudoStyleCacheIsInvalid
    - narrowed to take RenderObject rather than operate on Element

(WebCore::Style::resolveLocal):

    - split from Element::recalcStyle
    - factored to use early return style

(WebCore::Style::resolveTree):

    - moved and renamed from Element::recalcStyle

* css/StyleResolveTree.h: Added.

    - introcuduce Style namespace for style related classes and functions
    - move and rename Node::StyleChange -> Style::Change

* css/StyleResolver.h:
(WebCore::StyleResolverParentPusher::StyleResolverParentPusher):
(WebCore::StyleResolverParentPusher::push):
(WebCore::StyleResolverParentPusher::~StyleResolverParentPusher):

    Moved this stack helper to StyleResolver.h for now since it is needed by both
    StyleRecalculation and Element.

* dom/Document.cpp:
(WebCore::Document::recalcStyle):
(WebCore::Document::updateStyleIfNeeded):
(WebCore::Document::updateLayoutIgnorePendingStylesheets):
(WebCore::Document::attach):
(WebCore::Document::styleResolverChanged):
(WebCore::Document::webkitWillEnterFullScreenForElement):
* dom/Document.h:
* dom/Element.cpp:
(WebCore::shouldIgnoreAttributeCase):
(WebCore::Element::updatePseudoElement):
(WebCore::Element::resetComputedStyle):
(WebCore::Element::willRecalcStyle):
(WebCore::Element::didRecalcStyle):
* dom/Element.h:

    - remove Element::recalcStyle
    - make a few private functions needed by StyleRecalculation public

* dom/ElementShadow.cpp:
(WebCore::ElementShadow::recalcStyle):
* dom/ElementShadow.h:
* dom/Node.cpp:
* dom/Node.h:

    - remove Node::StyleChange
    - remove Node::diff

* dom/PseudoElement.cpp:
(WebCore::PseudoElement::didRecalcStyle):
* dom/PseudoElement.h:
* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::recalcStyle):
(WebCore::ShadowRoot::setResetStyleInheritance):
* dom/ShadowRoot.h:
* dom/Text.cpp:
(WebCore::Text::recalcTextStyle):
* dom/Text.h:
* html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::didRecalcStyle):
* html/HTMLFormControlElement.h:
* html/HTMLFrameSetElement.cpp:
(WebCore::HTMLFrameSetElement::willRecalcStyle):
* html/HTMLFrameSetElement.h:
* html/HTMLIFrameElement.cpp:
(WebCore::HTMLIFrameElement::didRecalcStyle):
* html/HTMLIFrameElement.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::didRecalcStyle):
* html/HTMLMediaElement.h:
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::didRecalcStyle):
* html/HTMLOptionElement.h:
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::willRecalcStyle):
(WebCore::HTMLPlugInImageElement::documentWillSuspendForPageCache):
(WebCore::HTMLPlugInImageElement::documentDidResumeFromPageCache):
* html/HTMLPlugInImageElement.h:
* inspector/InspectorOverlay.cpp:
(WebCore::InspectorOverlay::update):
* loader/DocumentWriter.cpp:
(WebCore::DocumentWriter::reportDataReceived):
* page/Frame.cpp:
(WebCore::Frame::setPageAndTextZoomFactors):
* page/Page.cpp:
(WebCore::Page::setPageScaleFactor):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetterStyle):
* svg/SVGElement.cpp:
(WebCore::SVGElement::willRecalcStyle):
* svg/SVGElement.h:
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::willRecalcStyle):
* svg/SVGUseElement.h:

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

6 years ago[Qt] Build fix after r153751
allan.jensen@digia.com [Wed, 7 Aug 2013 11:41:19 +0000 (11:41 +0000)]
[Qt] Build fix after r153751

Unreviewed build fix.

Fix build when PAGE_VISIBILITY_API is disabled.

* WebCoreSupport/QWebPageAdapter.cpp:
(QWebPageAdapter::visibilityState):

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

6 years ago[CSSRegions] Wrong auto-height region computation for nested named flows
mihnea@adobe.com [Wed, 7 Aug 2013 09:11:04 +0000 (09:11 +0000)]
[CSSRegions] Wrong auto-height region computation for nested named flows
https://bugs.webkit.org/show_bug.cgi?id=119517

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/regions/abspos-autoheight-nested-region.html

In the case of an (inner) auto-height region that is absolutely positioned in a named flow that is displayed in an (outer) auto-height region,
when we are doing the layout for the named flow we need to add a "forced region break" also for the case of simplified layout, otherwise
the outer auto-height region will not get the chance to compute its auto-height, ending up with a huge value that was used to initialize
the auto-height computed value before the start of the layout algorithm.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::simplifiedLayout):

LayoutTests:

* fast/regions/abspos-autoheight-nested-region-expected.txt: Added.
* fast/regions/abspos-autoheight-nested-region.html: Added.

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

6 years ago[EFL] REGRESSION after r153432: marking crashing tests.
commit-queue@webkit.org [Wed, 7 Aug 2013 09:09:32 +0000 (09:09 +0000)]
[EFL] REGRESSION after r153432: marking crashing tests.
https://bugs.webkit.org/show_bug.cgi?id=119539

Unreviewed EFL gardening.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-08-07

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:

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

6 years agoRemove dependency on CoreFoundation from WebURLResponse
paroga@webkit.org [Wed, 7 Aug 2013 07:19:47 +0000 (07:19 +0000)]
Remove dependency on CoreFoundation from WebURLResponse
https://bugs.webkit.org/show_bug.cgi?id=119390

Reviewed by Brent Fulgham.

* WebURLResponse.cpp:
(localizedShortDescriptionForStatusCode):
(WebURLResponse::localizedStringForStatusCode):

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

6 years agoDFG FixupPhase should insert Int32ToDouble nodes for number uses in NewArray, and...
fpizlo@apple.com [Wed, 7 Aug 2013 04:04:50 +0000 (04:04 +0000)]
DFG FixupPhase should insert Int32ToDouble nodes for number uses in NewArray, and SpeculativeJIT 64-bit should not try to coerce integer constants to double constants
https://bugs.webkit.org/show_bug.cgi?id=119528

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Either of the two fixes would solve the crash I saw. Basically, for best performance, we want the DFG register allocator to track double uses and non-double
uses of a node separately, and we accomplish this by inserting Int32ToDouble nodes in the FixupPhase. But even if FixupPhase fails to do this, we still want
the DFG register allocator to do the right thing: if it encounters a double use of an integer, it should perform a conversion and preserve the original
format of the value (namely, that it was an integer). For constants, the best format to preserve is None, so that future integer uses rematerialize the int
from scratch. This only affects the 64-bit backend; the 32-bit backend was already doing the right thing.

This also fixes some more debug dumping code, and adds some stronger assertions for integer arrays.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finalizeUnconditionally):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
* runtime/JSObject.h:
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::tryGetIndexQuickly):

LayoutTests:

* fast/js/dfg-new-array-double-const-then-int-const.html: Added.
* fast/js/dfg-new-array-double-const-then-int-const-expected.txt: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-new-array-double-const-then-int-const.js: Added.
(bar):
(foo):

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

6 years agoUpdate Order Files for Safari
slewis@apple.com [Wed, 7 Aug 2013 02:41:27 +0000 (02:41 +0000)]
Update Order Files for Safari
<rdar://problem/14517392>

Unreviewed.

Source/JavaScriptCore:

* JavaScriptCore.order:

Source/WebCore:

No change in functionality.

* WebCore.order:

Source/WebKit/mac:

* WebKit.order:

Source/WebKit2:

* mac/WebKit2.order:

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

6 years agoAssertion failure in emitExpressionInfo when reloading with Web Inspector open.
mark.lam@apple.com [Wed, 7 Aug 2013 00:19:28 +0000 (00:19 +0000)]
Assertion failure in emitExpressionInfo when reloading with Web Inspector open.
https://bugs.webkit.org/show_bug.cgi?id=119532.

Reviewed by Oliver Hunt.

* parser/Parser.cpp:
(JSC::::Parser):
- Just need to initialize the Parser's JSTokenLocation's initial line and
  startOffset as well during Parser construction.

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

6 years agoCrash when entering fullscreen video playback from a WebView using WebKit2
jer.noble@apple.com [Wed, 7 Aug 2013 00:13:32 +0000 (00:13 +0000)]
Crash when entering fullscreen video playback from a WebView using WebKit2
https://bugs.webkit.org/show_bug.cgi?id=119531

Reviewed by Tim Horton.

Initialize wkWindowSetScaledFrame and wkWindowSetAlpha when initializing WebCoreSystemInterface.

* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):

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

6 years ago.: Remove support for HTML5 MicroData
weinig@apple.com [Tue, 6 Aug 2013 23:22:53 +0000 (23:22 +0000)]
.: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* Source/autotools/SetupWebKitFeatures.m4:
* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/WebKitFeatures.cmake:
* Source/cmakeconfig.h.cmake:

Source/JavaScriptCore: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore: Remove support for HTML5 Microdata
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* UseJSC.cmake:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/gobject/GNUmakefile.am:
* bindings/js/JSBindingsAllInOne.cpp:
* bindings/js/JSHTMLCollectionCustom.cpp:
(WebCore::JSHTMLCollection::nameGetter):
* bindings/js/JSHTMLElementCustom.cpp:
* bindings/js/JSMicroDataItemValueCustom.cpp: Removed.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
* dom/Document.cpp:
* dom/Document.h:
* dom/Document.idl:
* dom/Element.cpp:
(WebCore::Element::ensureCachedHTMLCollection):
* dom/LiveNodeList.cpp:
(WebCore::LiveNodeListBase::rootNode):
(WebCore::LiveNodeListBase::invalidateCache):
(WebCore::LiveNodeList::namedItem):
* dom/LiveNodeList.h:
(WebCore::LiveNodeListBase::shouldInvalidateTypeOnAttributeChange):
* dom/MicroDataItemList.cpp: Removed.
* dom/MicroDataItemList.h: Removed.
* dom/Node.cpp:
* dom/Node.h:
* dom/NodeRareData.cpp:
* dom/NodeRareData.h:
* dom/PropertyNodeList.cpp: Removed.
* dom/PropertyNodeList.h: Removed.
* dom/PropertyNodeList.idl: Removed.
* html/CollectionType.h:
* html/HTMLAnchorElement.cpp:
* html/HTMLAnchorElement.h:
* html/HTMLAreaElement.cpp:
* html/HTMLAreaElement.h:
* html/HTMLCollection.cpp:
(WebCore::shouldOnlyIncludeDirectChildren):
(WebCore::rootTypeFromCollectionType):
(WebCore::invalidationTypeExcludingIdAndNameAttributes):
(WebCore::isMatchingElement):
(WebCore::LiveNodeListBase::item):
* html/HTMLElement.cpp:
(WebCore::HTMLElement::parseAttribute):
(WebCore::HTMLElement::isURLAttribute):
* html/HTMLElement.h:
* html/HTMLElement.idl:
* html/HTMLEmbedElement.cpp:
* html/HTMLEmbedElement.h:
* html/HTMLIFrameElement.cpp:
* html/HTMLIFrameElement.h:
* html/HTMLImageElement.cpp:
* html/HTMLImageElement.h:
* html/HTMLLinkElement.cpp:
* html/HTMLLinkElement.h:
* html/HTMLMediaElement.cpp:
* html/HTMLMediaElement.h:
* html/HTMLMetaElement.cpp:
* html/HTMLMetaElement.h:
* html/HTMLObjectElement.cpp:
* html/HTMLObjectElement.h:
* html/HTMLPropertiesCollection.cpp: Removed.
* html/HTMLPropertiesCollection.h: Removed.
* html/HTMLPropertiesCollection.idl: Removed.
* html/HTMLSourceElement.cpp:
* html/HTMLSourceElement.h:
* html/HTMLTrackElement.cpp:
* html/HTMLTrackElement.h:
* html/MicroDataAttributeTokenList.cpp: Removed.
* html/MicroDataAttributeTokenList.h: Removed.
* html/MicroDataItemValue.cpp: Removed.
* html/MicroDataItemValue.h: Removed.
* html/MicroDataItemValue.idl: Removed.

Source/WebKit/blackberry: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* WebCoreSupport/AboutDataEnableFeatures.in:

Source/WebKit/mac: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* Configurations/FeatureDefines.xcconfig:

Source/WTF: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* wtf/FeatureDefines.h:

Tools: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* Scripts/webkitperl/FeatureList.pm:
* qmake/mkspecs/features/features.pri:

LayoutTests: Remove support for HTML5 MicroData
https://bugs.webkit.org/show_bug.cgi?id=119480

Reviewed by Anders Carlsson.

* fast/dom/MicroData: Removed.
* fast/dom/MicroData/001-expected.txt: Removed.
* fast/dom/MicroData/001.html: Removed.
* fast/dom/MicroData/002-expected.txt: Removed.
* fast/dom/MicroData/002.html: Removed.
* fast/dom/MicroData/003-expected.txt: Removed.
* fast/dom/MicroData/003.html: Removed.
* fast/dom/MicroData/004-expected.txt: Removed.
* fast/dom/MicroData/004.html: Removed.
* fast/dom/MicroData/005-expected.txt: Removed.
* fast/dom/MicroData/005.html: Removed.
* fast/dom/MicroData/006-expected.txt: Removed.
* fast/dom/MicroData/006.html: Removed.
* fast/dom/MicroData/007-expected.txt: Removed.
* fast/dom/MicroData/007.html: Removed.
* fast/dom/MicroData/008-expected.txt: Removed.
* fast/dom/MicroData/008.html: Removed.
* fast/dom/MicroData/009-expected.txt: Removed.
* fast/dom/MicroData/009.html: Removed.
* fast/dom/MicroData/add-remove-property-to-item-which-is-not-attached-to-domtree-expected.txt: Removed.
* fast/dom/MicroData/add-remove-property-to-item-which-is-not-attached-to-domtree.html: Removed.
* fast/dom/MicroData/domsettabletokenlist-attributes-add-token-expected.txt: Removed.
* fast/dom/MicroData/domsettabletokenlist-attributes-add-token.html: Removed.
* fast/dom/MicroData/domsettabletokenlist-attributes-out-of-range-index-expected.txt: Removed.
* fast/dom/MicroData/domsettabletokenlist-attributes-out-of-range-index.html: Removed.
* fast/dom/MicroData/element-with-empty-itemprop-expected.txt: Removed.
* fast/dom/MicroData/element-with-empty-itemprop.html: Removed.
* fast/dom/MicroData/getitems-empty-string-as-arg-expected.txt: Removed.
* fast/dom/MicroData/getitems-empty-string-as-arg.html: Removed.
* fast/dom/MicroData/getitems-multiple-itemtypes-expected.txt: Removed.
* fast/dom/MicroData/getitems-multiple-itemtypes.html: Removed.
* fast/dom/MicroData/item-not-attached-to-domtree-expected.txt: Removed.
* fast/dom/MicroData/item-not-attached-to-domtree.html: Removed.
* fast/dom/MicroData/item-with-itemprop-attr-expected.txt: Removed.
* fast/dom/MicroData/item-with-itemprop-attr.html: Removed.
* fast/dom/MicroData/item-with-itemref-pointing-to-itself-expected.txt: Removed.
* fast/dom/MicroData/item-with-itemref-pointing-to-itself.html: Removed.
* fast/dom/MicroData/itemid-attribute-test-001-expected.txt: Removed.
* fast/dom/MicroData/itemid-attribute-test-001.html: Removed.
* fast/dom/MicroData/itemid-attribute-test-expected.txt: Removed.
* fast/dom/MicroData/itemid-attribute-test.html: Removed.
* fast/dom/MicroData/itemid-must-see-resolved-url-expected.txt: Removed.
* fast/dom/MicroData/itemid-must-see-resolved-url.html: Removed.
* fast/dom/MicroData/itemprop-add-remove-tokens-expected.txt: Removed.
* fast/dom/MicroData/itemprop-add-remove-tokens.html: Removed.
* fast/dom/MicroData/itemprop-for-an-element-must-be-correct-expected.txt: Removed.
* fast/dom/MicroData/itemprop-for-an-element-must-be-correct.html: Removed.
* fast/dom/MicroData/itemprop-must-be-read-only-expected.txt: Removed.
* fast/dom/MicroData/itemprop-must-be-read-only.html: Removed.
* fast/dom/MicroData/itemprop-names-override-builtin-properties-expected.txt: Removed.
* fast/dom/MicroData/itemprop-names-override-builtin-properties.html: Removed.
* fast/dom/MicroData/itemprop-reflected-by-itemProp-property-expected.txt: Removed.
* fast/dom/MicroData/itemprop-reflected-by-itemProp-property.html: Removed.
* fast/dom/MicroData/itemref-add-remove-tokens-expected.txt: Removed.
* fast/dom/MicroData/itemref-add-remove-tokens.html: Removed.
* fast/dom/MicroData/itemref-attribute-reflected-by-itemRef-property-expected.txt: Removed.
* fast/dom/MicroData/itemref-attribute-reflected-by-itemRef-property.html: Removed.
* fast/dom/MicroData/itemref-for-an-element-must-be-correct-expected.txt: Removed.
* fast/dom/MicroData/itemref-for-an-element-must-be-correct.html: Removed.
* fast/dom/MicroData/itemref-must-be-read-only-expected.txt: Removed.
* fast/dom/MicroData/itemref-must-be-read-only.html: Removed.
* fast/dom/MicroData/itemref-pointing-to-root-node-expected.txt: Removed.
* fast/dom/MicroData/itemref-pointing-to-root-node.html: Removed.
* fast/dom/MicroData/itemref-refers-first-element-with-given-id-expected.txt: Removed.
* fast/dom/MicroData/itemref-refers-first-element-with-given-id.html: Removed.
* fast/dom/MicroData/itemscope-attribute-test-expected.txt: Removed.
* fast/dom/MicroData/itemscope-attribute-test.html: Removed.
* fast/dom/MicroData/itemscope-must-be-read-write-expected.txt: Removed.
* fast/dom/MicroData/itemscope-must-be-read-write.html: Removed.
* fast/dom/MicroData/itemtype-add-remove-tokens-expected.txt: Removed.
* fast/dom/MicroData/itemtype-add-remove-tokens.html: Removed.
* fast/dom/MicroData/itemtype-attribute-test-expected.txt: Removed.
* fast/dom/MicroData/itemtype-attribute-test.html: Removed.
* fast/dom/MicroData/itemvalue-reflects-data-attr-on-object-element-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-reflects-data-attr-on-object-element.html: Removed.
* fast/dom/MicroData/itemvalue-reflects-href-attr-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-reflects-href-attr.html: Removed.
* fast/dom/MicroData/itemvalue-reflects-src-attribute-on-img-element-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-reflects-src-attribute-on-img-element.html: Removed.
* fast/dom/MicroData/itemvalue-reflects-the-content-attr-on-meta-element-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-reflects-the-content-attr-on-meta-element.html: Removed.
* fast/dom/MicroData/itemvalue-reflects-the-src-attr-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-reflects-the-src-attr.html: Removed.
* fast/dom/MicroData/itemvalue-returns-element-itself-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-returns-element-itself.html: Removed.
* fast/dom/MicroData/itemvalue-returns-null-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-returns-null.html: Removed.
* fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-001-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-001.html: Removed.
* fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-002-expected.txt: Removed.
* fast/dom/MicroData/itemvalue-throws-excpetion-onsetting-002.html: Removed.
* fast/dom/MicroData/microdata-domtokenlist-attribute-add-remove-tokens-expected.txt: Removed.
* fast/dom/MicroData/microdata-domtokenlist-attribute-add-remove-tokens.html: Removed.
* fast/dom/MicroData/nameditem-must-be-case-sensitive-expected.txt: Removed.
* fast/dom/MicroData/nameditem-must-be-case-sensitive.html: Removed.
* fast/dom/MicroData/nameditem-must-return-correct-item-properties-expected.txt: Removed.
* fast/dom/MicroData/nameditem-must-return-correct-item-properties.html: Removed.
* fast/dom/MicroData/nameditem-returns-propertynodelist-expected.txt: Removed.
* fast/dom/MicroData/nameditem-returns-propertynodelist.html: Removed.
* fast/dom/MicroData/names-item-out-of-range-index-expected.txt: Removed.
* fast/dom/MicroData/names-item-out-of-range-index.html: Removed.
* fast/dom/MicroData/names-property-must-be-correct-expected.txt: Removed.
* fast/dom/MicroData/names-property-must-be-correct.html: Removed.
* fast/dom/MicroData/names-property-test-expected.txt: Removed.
* fast/dom/MicroData/names-property-test.html: Removed.
* fast/dom/MicroData/properties-collection-add-remove-itemref-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-add-remove-itemref.html: Removed.
* fast/dom/MicroData/properties-collection-add-remove-property-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-add-remove-property.html: Removed.
* fast/dom/MicroData/properties-collection-behavior-add-remove-itemscope-attr-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-behavior-add-remove-itemscope-attr.html: Removed.
* fast/dom/MicroData/properties-collection-must-be-correct-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-must-be-correct.html: Removed.
* fast/dom/MicroData/properties-collection-must-ignore-properties-of-nested-items-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-must-ignore-properties-of-nested-items.html: Removed.
* fast/dom/MicroData/properties-collection-must-see-the-properties-added-in-itemref-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-must-see-the-properties-added-in-itemref.html: Removed.
* fast/dom/MicroData/properties-collection-namedgetter-with-invalid-name-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-namedgetter-with-invalid-name.html: Removed.
* fast/dom/MicroData/properties-collection-nameditem-test-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-nameditem-test.html: Removed.
* fast/dom/MicroData/properties-collection-test-expected.txt: Removed.
* fast/dom/MicroData/properties-collection-test.html: Removed.
* fast/dom/MicroData/propertiescollection-crash-expected.txt: Removed.
* fast/dom/MicroData/propertiescollection-crash.html: Removed.
* fast/dom/MicroData/propertiescollection-on-changing-id-attr-expected.txt: Removed.
* fast/dom/MicroData/propertiescollection-on-changing-id-attr.html: Removed.
* fast/dom/MicroData/propertynodelist-add-remove-itemprop-tokens-expected.txt: Removed.
* fast/dom/MicroData/propertynodelist-add-remove-itemprop-tokens.html: Removed.
* fast/dom/MicroData/propertynodelist-add-remove-itemref-tokens-expected.txt: Removed.
* fast/dom/MicroData/propertynodelist-add-remove-itemref-tokens.html: Removed.
* fast/dom/MicroData/propertynodelist-crash-expected.txt: Removed.
* fast/dom/MicroData/propertynodelist-crash.html: Removed.
* fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element-expected.txt: Removed.
* fast/dom/MicroData/propertynodelist-getvalues-array-values-obtained-from-itemvalue-of-each-element.html: Removed.
* fast/dom/MicroData/propertynodelist-getvalues-test-expected.txt: Removed.
* fast/dom/MicroData/propertynodelist-getvalues-test.html: Removed.
* fast/dom/MicroData/propertynodelist-test-add-remove-element-expected.txt: Removed.
* fast/dom/MicroData/propertynodelist-test-add-remove-element.html: Removed.
* fast/dom/MicroData/resources: Removed.
* fast/dom/MicroData/resources/microdata-common.js: Removed.

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

6 years agoRemove PlatformCALayer::contentsTransform and ::setContentsTransform
timothy_horton@apple.com [Tue, 6 Aug 2013 23:21:32 +0000 (23:21 +0000)]
Remove PlatformCALayer::contentsTransform and ::setContentsTransform
https://bugs.webkit.org/show_bug.cgi?id=119529

Reviewed by Sam Weinig.

No new tests, removing dead code.

These methods are not used and are currently unimplemented.

* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
* platform/graphics/ca/win/PlatformCALayerWin.cpp:

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

6 years ago[EFL][WK2] Implement gesture recognizer.
commit-queue@webkit.org [Tue, 6 Aug 2013 23:01:33 +0000 (23:01 +0000)]
[EFL][WK2] Implement gesture recognizer.
https://bugs.webkit.org/show_bug.cgi?id=102643

Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2013-08-06
Reviewed by Gyuyoung Kim.

Recognize tap, pan and pinch gestures using touch events.
The tap gesture is separated into single tap, double tap and
'tap and hold'.

This patch references the webkit NIX port.
https://github.com/WebKitNix/webkitnix

* PlatformEfl.cmake:
* UIProcess/API/efl/EwkView.cpp:
(EwkView::EwkView):
(EwkView::doneWithTouchEvent):
* UIProcess/API/efl/EwkView.h:
* UIProcess/API/efl/GestureRecognizer.cpp: Added.
(WebKit::GestureHandler::create):
(WebKit::GestureHandler::GestureHandler):
(WebKit::GestureHandler::handleSingleTap):
(WebKit::GestureHandler::handleDoubleTap):
(WebKit::GestureHandler::handleTapAndHold):
(WebKit::GestureHandler::handlePanStarted):
(WebKit::GestureHandler::handlePan):
(WebKit::GestureHandler::handlePanFinished):
(WebKit::GestureHandler::handlePinchStarted):
(WebKit::GestureHandler::handlePinch):
(WebKit::GestureHandler::handlePinchFinished):
(WebKit::GestureRecognizer::GestureRecognizer):
(WebKit::GestureRecognizer::~GestureRecognizer):
(WebKit::GestureRecognizer::processTouchEvent):
(WebKit::GestureRecognizer::doubleTapTimerCallback):
(WebKit::GestureRecognizer::tapAndHoldTimerCallback):
(WebKit::GestureRecognizer::exceedsPanThreshold):
(WebKit::GestureRecognizer::exceedsDoubleTapThreshold):
(WebKit::getPointAtIndex):
(WebKit::createVectorWithWKArray):
(WebKit::GestureRecognizer::noGesture):
(WebKit::GestureRecognizer::singleTapGesture):
(WebKit::GestureRecognizer::doubleTapGesture):
(WebKit::GestureRecognizer::panGesture):
(WebKit::GestureRecognizer::pinchGesture):
(WebKit::GestureRecognizer::reset):
(WebKit::GestureRecognizer::stopTapTimers):
* UIProcess/API/efl/GestureRecognizer.h: Added.
(WebKit::GestureRecognizer::create):

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

6 years ago[CSS Shapes] New positioning model: scripted shape-margin tests
hmuller@adobe.com [Tue, 6 Aug 2013 22:16:18 +0000 (22:16 +0000)]
[CSS Shapes] New positioning model: scripted shape-margin tests
https://bugs.webkit.org/show_bug.cgi?id=119491

Update some of the shape-margin tests to work with the new positioning model. Floats
that specify shape-outside are now positioned according to their margin box, not the
bounding box of the shape-outside shape. The tests have been revised to reflect the
change.

Reviewed by Alexandru Chiculita.

* TestExpectations:
* fast/shapes/shape-outside-floats/shape-outside-floats-diamond-margin-polygon.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-bottom.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-left.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-margin-right.html:

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

6 years agoEnabled WebGL on WinCairo port.
achristensen@apple.com [Tue, 6 Aug 2013 22:11:57 +0000 (22:11 +0000)]
Enabled WebGL on WinCairo port.
https://bugs.webkit.org/show_bug.cgi?id=119502

Reviewed by Benjamin Poulain.

Source/WebKit:

* WebKit.vcxproj/WebKit.sln: Build ANGLE libraries.
* WebKit.vcxproj/WebKit/WebKitCFLite.props: Link to ANGLE libraries.

Source/WTF:

* wtf/FeatureDefines.h: Enabled WebGL.
* wtf/Platform.h: Added definitions required for WebGL on Windows.

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

6 years ago<rdar://problem/5927399> FastMalloc should support MallocStackLogging
mrowe@apple.com [Tue, 6 Aug 2013 22:10:02 +0000 (22:10 +0000)]
<rdar://problem/5927399> FastMalloc should support MallocStackLogging

Call the malloc stack logging function from within the various entry points to FastMalloc
when stack logging is enabled.

Reviewed by Oliver Hunt and Geoff Garen.

* wtf/FastMalloc.cpp:
Call in to MallocHook::InvokeNewHook / MallocHook::InvokeDeleteHook at the appropriate entry
points to FastMalloc. The naming comes from TCMalloc's existing, unused concept of malloc hooks.
(WTF::MallocHook::record): Call the stack logging function with appropriate argument types.
(WTF::MallocHook::recordAllocation): Out-of-line slow path for when stack logging is enabled
that calls record with the values in the right arguments.
(WTF::MallocHook::recordDeallocation): Ditto.
(WTF::MallocHook::init): Stack logging is enabled if the system allocator has enabled stack logging.
(WTF::MallocHook::InvokeNewHook): Call recordAllocation in the unlikely event that stack logging is
enabled.
(WTF::MallocHook::InvokeDeleteHook): Ditto for recordDeallocation.
(WTF::TCMalloc_ThreadCache::InitModule): Initialize the malloc hook.

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

6 years agoMoved GraphicsContext3DPrivate out of cairo directory to be used by the AppleWin...
achristensen@apple.com [Tue, 6 Aug 2013 21:55:42 +0000 (21:55 +0000)]
Moved GraphicsContext3DPrivate out of cairo directory to be used by the AppleWin port.
https://bugs.webkit.org/show_bug.cgi?id=119525

Reviewed by Dean Jackson.

* GNUmakefile.list.am:
* PlatformGTK.cmake:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
Changed location of GraphicsContext3DPrivate.cpp and GraphicsContext3DPrivate.h.
* platform/graphics/GraphicsContext3DPrivate.cpp: Copied from WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp.
* platform/graphics/GraphicsContext3DPrivate.h: Copied from WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.h.
* platform/graphics/cairo/GraphicsContext3DPrivate.cpp: Removed.
* platform/graphics/cairo/GraphicsContext3DPrivate.h: Removed.

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

6 years agoWeb Inspector: Remove stale code in ResourceContentView
commit-queue@webkit.org [Tue, 6 Aug 2013 21:38:26 +0000 (21:38 +0000)]
Web Inspector: Remove stale code in ResourceContentView
https://bugs.webkit.org/show_bug.cgi?id=119527

The handling of Resource Type changes moved to ResourceClusterContentView,
this removeEventListener is stale and doesn't do anything anymore.

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

* UserInterface/ResourceContentView.js:
(WebInspector.ResourceContentView.prototype.closed):

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

6 years ago[Windows] Unreviewed build correction after r153754 and r153757.
bfulgham@apple.com [Tue, 6 Aug 2013 21:31:46 +0000 (21:31 +0000)]
[Windows] Unreviewed build correction after r153754 and r153757.

Source/WebCore:

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc): Don't force std::remainder, since we are using our own
custom implementation on Windows.

Source/WTF:

* wtf/MathExtras.h:
(remainder): Provide implementation of C99 remainder for VS2010 (and earlier).

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

6 years agoDelay Arguments creation in strict mode
oliver@apple.com [Tue, 6 Aug 2013 21:20:10 +0000 (21:20 +0000)]
Delay Arguments creation in strict mode
https://bugs.webkit.org/show_bug.cgi?id=119505

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Make use of the write tracking performed by the parser to
allow us to know if we're modifying the parameters to a function.
Then use that information to make strict mode function opt out
of eager arguments creation.

* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::createArgumentsIfNecessary):
(JSC::BytecodeGenerator::emitReturn):
* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::shouldTearOffArgumentsEagerly):
* parser/Nodes.h:
(JSC::ScopeNode::modifiesParameter):
* parser/Parser.cpp:
(JSC::::parseInner):
* parser/Parser.h:
(JSC::Scope::declareParameter):
(JSC::Scope::getCapturedVariables):
(JSC::Parser::declareWrite):
* parser/ParserModes.h:

LayoutTests:

Add performance testcase for lazy creation of arguments in strict mode

* fast/js/regress/delay-tear-off-arguments-strictmode-expected.txt: Added.
* fast/js/regress/delay-tear-off-arguments-strictmode.html: Added.
* fast/js/regress/script-tests/delay-tear-off-arguments-strictmode.js: Added.
(bar):

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

6 years agoRemove useless code from COMPILER(RVCT) JITStubs
paroga@webkit.org [Tue, 6 Aug 2013 20:51:22 +0000 (20:51 +0000)]
Remove useless code from COMPILER(RVCT) JITStubs
https://bugs.webkit.org/show_bug.cgi?id=119521

Reviewed by Geoffrey Garen.

* jit/JITStubsARMv7.h:
(JSC::ctiVMThrowTrampoline): "ldr r6, [sp, #PRESERVED_R6_OFFSET]" was called twice.
(JSC::ctiOpThrowNotCaught): Ditto.

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

6 years agoConvert all Web Inspector PDFs to SVGs.
timothy@apple.com [Tue, 6 Aug 2013 20:37:13 +0000 (20:37 +0000)]
Convert all Web Inspector PDFs to SVGs.

Some PDFs need to stay around until bug 119492 is fixed. But the SVGs are there for when they are needed.
Updated some of the existing SVGs to be consistent with the format of the new SVGs.

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

Rubber-stamped by Joseph Pecoraro.

* UserInterface/BreakpointIcons.css:
* UserInterface/BreakpointTreeElement.css:
* UserInterface/CallFrameIcons.css:
* UserInterface/DatabaseContentView.css:
* UserInterface/FilterBar.css:
* UserInterface/HierarchicalPathComponent.css:
* UserInterface/Images/BackArrow.svg: Added.
* UserInterface/Images/BottomUpTree.svg: Added.
* UserInterface/Images/BreakpointButton.pdf: Removed.
* UserInterface/Images/BreakpointButton.svg: Added.
* UserInterface/Images/BreakpointInactiveButton.pdf: Removed.
* UserInterface/Images/BreakpointInactiveButton.svg: Added.
* UserInterface/Images/Breakpoints.svg: Added.
* UserInterface/Images/Close.svg: Added.
* UserInterface/Images/Crosshair.svg: Added.
* UserInterface/Images/DOMCharacterData.pdf: Removed.
* UserInterface/Images/DOMCharacterData.svg: Added.
* UserInterface/Images/DOMComment.pdf: Removed.
* UserInterface/Images/DOMComment.svg: Added.
* UserInterface/Images/DOMDocument.pdf: Removed.
* UserInterface/Images/DOMDocument.svg: Added.
* UserInterface/Images/DOMDocumentType.pdf: Removed.
* UserInterface/Images/DOMDocumentType.svg: Added.
* UserInterface/Images/DOMElement.pdf: Removed.
* UserInterface/Images/DOMElement.svg: Added.
* UserInterface/Images/DOMNode.pdf: Removed.
* UserInterface/Images/DOMNode.svg: Added.
* UserInterface/Images/DOMTextNode.pdf: Removed.
* UserInterface/Images/DOMTextNode.svg: Added.
* UserInterface/Images/DOMTree.pdf: Removed.
* UserInterface/Images/DOMTree.svg: Added.
* UserInterface/Images/DisclosureTriangleSmallClosed.svg: Added.
* UserInterface/Images/DisclosureTriangleSmallOpen.svg: Added.
* UserInterface/Images/DisclosureTriangleTinyClosed.svg: Added.
* UserInterface/Images/DisclosureTriangleTinyOpen.svg: Added.
* UserInterface/Images/DockBottom.svg: Added.
* UserInterface/Images/DockRight.svg: Added.
* UserInterface/Images/Error.pdf: Removed.
* UserInterface/Images/Error.svg: Added.
* UserInterface/Images/ErrorSmall.pdf: Removed.
* UserInterface/Images/Errors.svg:
* UserInterface/Images/ErrorsEnabled.svg:
* UserInterface/Images/EventListener.pdf: Removed.
* UserInterface/Images/EventListener.svg: Added.
* UserInterface/Images/Exception.pdf: Removed.
* UserInterface/Images/Exception.svg: Added.
* UserInterface/Images/FilterFieldGlyph.pdf: Removed.
* UserInterface/Images/FilterFieldGlyph.svg: Added.
* UserInterface/Images/ForwardArrow.svg: Added.
* UserInterface/Images/Function.pdf: Removed.
* UserInterface/Images/Function.svg: Added.
* UserInterface/Images/GoToArrow.svg: Added.
* UserInterface/Images/HierarchicalNavigationItemChevron.pdf: Removed.
* UserInterface/Images/HierarchicalNavigationItemChevron.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner1.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner1.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner10.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner10.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner11.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner11.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner12.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner12.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner2.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner2.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner3.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner3.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner4.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner4.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner5.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner5.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner6.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner6.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner7.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner7.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner8.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner8.svg: Added.
* UserInterface/Images/IndeterminateProgressSpinner9.pdf: Removed.
* UserInterface/Images/IndeterminateProgressSpinner9.svg: Added.
* UserInterface/Images/Issues.svg:
* UserInterface/Images/IssuesEnabled.svg:
* UserInterface/Images/LayerBorders.svg: Added.
* UserInterface/Images/LessColumns.svg: Added.
* UserInterface/Images/Locked.svg: Added.
* UserInterface/Images/Logs.svg:
* UserInterface/Images/Memory.svg:
* UserInterface/Images/MoreColumns.svg: Added.
* UserInterface/Images/Native.pdf: Removed.
* UserInterface/Images/Native.svg: Added.
* UserInterface/Images/NavigationItemAngleBrackets.svg: Added.
* UserInterface/Images/NavigationItemBrushAndRuler.svg: Added.
* UserInterface/Images/NavigationItemBug.svg: Added.
* UserInterface/Images/NavigationItemCurleyBraces.svg: Added.
* UserInterface/Images/NavigationItemFile.svg: Added.
* UserInterface/Images/NavigationItemLayers.svg: Added.
* UserInterface/Images/NavigationItemLog.svg: Added.
* UserInterface/Images/NavigationItemMagnifyingGlass.svg: Added.
* UserInterface/Images/NavigationItemStopwatch.svg: Added.
* UserInterface/Images/NavigationItemStorage.svg: Added.
* UserInterface/Images/NavigationItemTrash.svg: Added.
* UserInterface/Images/NavigationItemVariable.svg: Added.
* UserInterface/Images/NetworkBarLabelCalloutLeft.pdf: Removed.
* UserInterface/Images/NetworkBarLabelCalloutLeft.svg: Added.
* UserInterface/Images/NetworkBarLabelCalloutRight.pdf: Removed.
* UserInterface/Images/NetworkBarLabelCalloutRight.svg: Added.
* UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.pdf: Removed.
* UserInterface/Images/NetworkBarLabelCalloutWhiteLeft.svg: Added.
* UserInterface/Images/NetworkBarLabelCalloutWhiteRight.pdf: Removed.
* UserInterface/Images/NetworkBarLabelCalloutWhiteRight.svg: Added.
* UserInterface/Images/Pause.svg: Added.
* UserInterface/Images/Percent.svg: Added.
* UserInterface/Images/Plus.svg: Added.
* UserInterface/Images/PseudoElement.pdf: Removed.
* UserInterface/Images/PseudoElement.svg: Added.
* UserInterface/Images/Reflection.pdf: Removed.
* UserInterface/Images/Reflection.svg: Added.
* UserInterface/Images/Reload.svg:
* UserInterface/Images/ReloadSelected.svg:
* UserInterface/Images/Request.pdf: Removed.
* UserInterface/Images/Request.svg: Added.
* UserInterface/Images/Resources.svg:
* UserInterface/Images/Response.pdf: Removed.
* UserInterface/Images/Response.svg: Added.
* UserInterface/Images/ResultLine.pdf: Removed.
* UserInterface/Images/ResultLine.svg: Added.
* UserInterface/Images/Resume.svg: Added.
* UserInterface/Images/ShadowDOM.svg: Added.
* UserInterface/Images/SortIndicatorDownArrow.svg: Added.
* UserInterface/Images/SortIndicatorUpArrow.svg: Added.
* UserInterface/Images/SourceCode.pdf: Removed.
* UserInterface/Images/SourceCode.svg: Added.
* UserInterface/Images/SplitToggleDown.svg: Added.
* UserInterface/Images/SplitToggleUp.svg: Added.
* UserInterface/Images/StepInto.svg: Added.
* UserInterface/Images/StepOut.svg: Added.
* UserInterface/Images/StepOver.svg: Added.
* UserInterface/Images/StyleRuleAuthor.pdf: Removed.
* UserInterface/Images/StyleRuleAuthor.svg: Added.
* UserInterface/Images/StyleRuleInherited.pdf: Removed.
* UserInterface/Images/StyleRuleInherited.svg: Added.
* UserInterface/Images/StyleRuleInheritedElement.pdf: Removed.
* UserInterface/Images/StyleRuleInheritedElement.svg: Added.
* UserInterface/Images/StyleRuleInspector.pdf: Removed.
* UserInterface/Images/StyleRuleInspector.svg: Added.
* UserInterface/Images/StyleRuleUser.pdf: Removed.
* UserInterface/Images/StyleRuleUser.svg: Added.
* UserInterface/Images/StyleRuleUserAgent.pdf: Removed.
* UserInterface/Images/StyleRuleUserAgent.svg: Added.
* UserInterface/Images/Time.svg:
* UserInterface/Images/Undock.svg: Added.
* UserInterface/Images/UpDownArrows.svg:
* UserInterface/Images/UserInputPrompt.pdf: Removed.
* UserInterface/Images/UserInputPrompt.svg: Added.
* UserInterface/Images/UserInputPromptPrevious.pdf: Removed.
* UserInterface/Images/UserInputPromptPrevious.svg: Added.
* UserInterface/Images/UserInputPromptPreviousSelected.pdf: Removed.
* UserInterface/Images/UserInputPromptPreviousSelected.svg: Added.
* UserInterface/Images/UserInputResult.pdf: Removed.
* UserInterface/Images/UserInputResult.svg: Added.
* UserInterface/Images/UserInputResultSelected.pdf: Removed.
* UserInterface/Images/UserInputResultSelected.svg: Added.
* UserInterface/Images/Warning.pdf: Removed.
* UserInterface/Images/Warning.svg: Added.
* UserInterface/Images/WarningSmall.pdf: Removed.
* UserInterface/Images/Weight.svg:
* UserInterface/IndeterminateProgressSpinner.css:
* UserInterface/LayerTreeSidebarPanel.css:
* UserInterface/LogContentView.css:
* UserInterface/Main.css:
* UserInterface/NetworkTimeline.css:
* UserInterface/PathComponentIcons.css:
* UserInterface/QuickConsole.css:
* UserInterface/RulesStyleDetailsPanel.css:
* UserInterface/SearchIcons.css:
* UserInterface/StyleRuleIcons.css:

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

6 years ago[CSS Shapes] New positioning model: support for shape-margin
bjonesbe@adobe.com [Tue, 6 Aug 2013 18:53:06 +0000 (18:53 +0000)]
[CSS Shapes] New positioning model: support for shape-margin
https://bugs.webkit.org/show_bug.cgi?id=118088

Reviewed by Alexandru Chiculita.

Update simple shape-margin tests to work with new positioning model.
Also move them to the CSSWG's repo.

* TestExpectations: Remove replaced tests.
* csswg/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-000-expected.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-left-margin-polygon-expected.html.
* csswg/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-000.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-left-margin-polygon.html.
* csswg/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-001-expected.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-right-margin-polygon-expected.html.
* csswg/submitted/shapes/shape-outside/shape-outside-floats-shape-margin-001.html: Renamed from LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-right-margin-polygon.html.

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

6 years agoImproper Calculation of In-band Cue Colors
bfulgham@apple.com [Tue, 6 Aug 2013 18:39:52 +0000 (18:39 +0000)]
Improper Calculation of In-band Cue Colors
https://bugs.webkit.org/show_bug.cgi?id=119523

Reviewed by Eric Carlson.

* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::makeRGBA32FromARGBCFArray): Remove redundant multiplication by
255.  The internal conversion logic already converts to bytes.

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

6 years agoSpeculative build fix after r153754.
rwlbuis@webkit.org [Tue, 6 Aug 2013 18:11:35 +0000 (18:11 +0000)]
Speculative build fix after r153754.

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):

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

6 years agoProvide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building...
dfarler@apple.com [Tue, 6 Aug 2013 17:43:57 +0000 (17:43 +0000)]
Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
https://bugs.webkit.org/show_bug.cgi?id=117762

Reviewed by Mark Rowe.

Source/JavaScriptCore:

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* Configurations/JavaScriptCore.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* Configurations/ToolExecutable.xcconfig:
Don't use ASAN for build tools.

Source/ThirdParty:

* gtest/xcode/Config/General.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* gtest/xcode/Config/StaticLibraryTarget.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS.

Source/ThirdParty/ANGLE:

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS.

Source/WebCore:

No new tests necessary.

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* Configurations/WebCore.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* Configurations/WebCoreTestShim.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* Configurations/WebCoreTestSupport.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* WebCore.xcodeproj/project.pbxproj:
Don't use ASAN for build tools.

Source/WebInspectorUI:

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.

Source/WebKit/mac:

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* Configurations/WebKit.xcconfig:
Add ASAN_OTHER_LDFLAGS.

Source/WebKit2:

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* Configurations/WebContentProcess.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* Configurations/WebKit2.xcconfig:
Add ASAN_OTHER_LDFLAGS.

Source/WTF:

* Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS.

Tools:

* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* MiniBrowser/Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* Scripts/check-for-weak-vtables-and-externals:
Ignore ___asan externals, these are populated by compiler-rt.
* TestWebKitAPI/Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* WebKitLauncher/Configurations/Base.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* WebKitLauncher/Configurations/WebKitNightlyEnabler.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* WebKitTestRunner/Configurations/DebugRelease.xcconfig:
Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
* WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
Add ASAN_OTHER_LDFLAGS.
* asan/asan.xcconfig: Added.
* asan/webkit-asan-ignore.txt: Added.

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

6 years agoSVG stroke-dasharray is not animatable
rwlbuis@webkit.org [Tue, 6 Aug 2013 15:54:23 +0000 (15:54 +0000)]
SVG stroke-dasharray is not animatable
https://bugs.webkit.org/show_bug.cgi?id=118574

Reviewed by Dirk Schulze.

Source/WebCore:

Make stroke-dasharray a property that can be animated using CSS transitions.

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
(WebCore::CSSPropertyAnimation::ensurePropertyMap):
* rendering/style/RenderStyle.h:

LayoutTests:

Add test for animating stroke-dasharray in addition to the original SVG tests.

* transitions/svg-transitions-expected.txt:
* transitions/svg-transitions.html:

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

6 years agoREGRESSION(r151403): Resizing is extremely laggy on many sites when plugins are disal...
akling@apple.com [Tue, 6 Aug 2013 15:40:50 +0000 (15:40 +0000)]
REGRESSION(r151403): Resizing is extremely laggy on many sites when plugins are disallowed.
<http://webkit.org/b/119516>
<rdar://problem/14648086>

Reviewed by Simon Fraser.

The web process relies on the WindowAndViewFramesChanged mechanism for caching a copy
of the window rect for fast access from DOMWindow APIs.

We retain part of the optimization introduced in r151403, namely not computing the
viewFrameInWindowCoordinates and accessibilityPosition unless the web process needs them.

* UIProcess/API/mac/WKView.mm:
(-[WKView _updateWindowAndViewFrames]):

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

6 years ago[CSS Grid Layout] Allow defining named grid lines on the grid element
sergio@webkit.org [Tue, 6 Aug 2013 15:08:21 +0000 (15:08 +0000)]
[CSS Grid Layout] Allow defining named grid lines on the grid element
https://bugs.webkit.org/show_bug.cgi?id=118255

Reviewed by Andreas Kling.

From Blink r149798 by <jchaffraix@chromium.org>

Source/WebCore:

This change adds parsing, style resolution and getComputedStyle
support for named grid lines at the grid element level
(i.e. extends our <track-list> support). Per the specification, we
allow multiple grid lines with the same name.

To fully support resolving the grid lines to a position on our
grid, we need to add the parsing at the grid item's level (which
means extending our <grid-line> support). This will be done in a
follow-up change.

Test: fast/css-grid-layout/named-grid-line-get-set.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::addValuesForNamedGridLinesAtIndex):
(WebCore::valueForGridTrackList):
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseGridTrackList):
* css/StyleResolver.cpp:
(WebCore::createGridTrackList):
(WebCore::StyleResolver::applyProperty):
* rendering/style/RenderStyle.h:
* rendering/style/StyleGridData.cpp:
(WebCore::StyleGridData::StyleGridData):
* rendering/style/StyleGridData.h:
(WebCore::StyleGridData::operator==):

LayoutTests:

* fast/css-grid-layout/named-grid-line-get-set-expected.txt: Added.
* fast/css-grid-layout/named-grid-line-get-set.html: Added.

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

6 years ago[Qt] Add Page Visibility API support
commit-queue@webkit.org [Tue, 6 Aug 2013 13:58:39 +0000 (13:58 +0000)]
[Qt] Add Page Visibility API support
https://bugs.webkit.org/show_bug.cgi?id=109422

Patch by Benjamin Dupont <bdupont@nds.com> on 2013-08-06
Reviewed by Simon Hausmann.

* WebCoreSupport/QWebPageAdapter.cpp:
(webPageVisibilityStateToWebCoreVisibilityState):
(webCoreVisibilityStateToWebPageVisibilityState):
(QWebPageAdapter::setVisibilityState):
(QWebPageAdapter::visibilityState):
* WebCoreSupport/QWebPageAdapter.h:
* WidgetApi/qwebpage.cpp:
(QWebPage::setVisibilityState):
(QWebPage::visibilityState):
* WidgetApi/qwebpage.h:
* tests/qwebpage/tst_qwebpage.cpp:
(tst_QWebPage::changeVisibilityState):

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

6 years ago[Qt] Fix minimal build.
allan.jensen@digia.com [Tue, 6 Aug 2013 12:52:36 +0000 (12:52 +0000)]
[Qt] Fix minimal build.

Unreviewed build fix.

Fix build witt XSLT disabled

* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::hasNoStyleInformation):

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

6 years agowebkit-gtk fails to build with bison-3.0
zandobersek@gmail.com [Tue, 6 Aug 2013 12:45:10 +0000 (12:45 +0000)]
webkit-gtk fails to build with bison-3.0
https://bugs.webkit.org/show_bug.cgi?id=119373

Reviewed by Gustavo Noronha Silva.

Source/ThirdParty/ANGLE:

* GNUmakefile.am: Stop relying on generated glslang_tab.(cpp|h) and glslang.cpp sources as Bison 3.0
produces non-compilable source code. Instead, compile these pregenerated files as they're included in
the tree. Originally, the ANGLE source tree provides these files as generated by Bison 2.7, but they're
at the moment regenerated with Bison 2.3 when the third-party ANGLE source is being updated.

Source/WebCore:

* GNUmakefile.am: Remove rules for generating ANGLE's glslang source files with Bison.

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

6 years ago[CSS Grid Layout] Add support for parsing <grid-line> that includes a 'span'
sergio@webkit.org [Tue, 6 Aug 2013 11:45:58 +0000 (11:45 +0000)]
[CSS Grid Layout] Add support for parsing <grid-line> that includes a 'span'
https://bugs.webkit.org/show_bug.cgi?id=118051

Reviewed by Andreas Kling.

From Blink r148766 by <jchaffraix@chromium.org>

Source/WebCore:

This adds the parsing, style resolution and getComputedStyle bits
to our code. The rendering code was not made aware of the new type
of GridPosition yet.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForGridPosition):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseGridPosition):
* css/CSSParser.h:
* css/CSSValueKeywords.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::adjustGridItemPosition):
(WebCore::createGridPosition):
* css/StyleResolver.h:
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::resolveGridPositionFromStyle):
* rendering/style/GridPosition.h:
(WebCore::GridPosition::isInteger):
(WebCore::GridPosition::isSpan):
(WebCore::GridPosition::setSpanPosition):
(WebCore::GridPosition::spanPosition):

LayoutTests:

Added several test cases to check that we properly parse the
keyword 'span' in <grid-line>.

* fast/css-grid-layout/grid-item-column-row-get-set-expected.txt:
* fast/css-grid-layout/grid-item-column-row-get-set.html:
* fast/css-grid-layout/grid-item-end-after-get-set-expected.txt:
* fast/css-grid-layout/grid-item-end-after-get-set.html:
* fast/css-grid-layout/grid-item-start-before-get-set-expected.txt:
* fast/css-grid-layout/grid-item-start-before-get-set.html:

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

6 years agoBuild fix for GTK 32-bit after r153736
simon.pena@samsung.com [Tue, 6 Aug 2013 11:08:03 +0000 (11:08 +0000)]
Build fix for GTK 32-bit after r153736

* Source/autotools/symbols.filter: expose WebCore::SerializedScriptValue::create.

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

6 years ago[CSS Grid Layout] Rename grid placement properties
sergio@webkit.org [Tue, 6 Aug 2013 10:33:32 +0000 (10:33 +0000)]
[CSS Grid Layout] Rename grid placement properties
https://bugs.webkit.org/show_bug.cgi?id=117878

Reviewed by Andreas Kling.

Renamed the grid placement properties to match the latest version
of the spec. The new names are -webkit-grid-column-{start|end} and
-webkit-grid-row-{start|end}.

Source/WebCore:

No new tests needed as we're just renaming some properties,
functionality already covered by existing tests in
fast/css-grid-layout.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/StylePropertyShorthand.cpp:
(WebCore::webkitGridColumnShorthand):
(WebCore::webkitGridRowShorthand):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::applyProperty):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::resolveGridPositionsFromStyle):
(WebCore::RenderGrid::resolveGridPositionFromStyle):
* rendering/RenderGrid.h:
* rendering/style/RenderStyle.h:
* rendering/style/StyleGridItemData.cpp:
(WebCore::StyleGridItemData::StyleGridItemData):
* rendering/style/StyleGridItemData.h:
(WebCore::StyleGridItemData::operator==):

LayoutTests:

* fast/css-grid-layout/grid-item-column-row-get-set-expected.txt:
* fast/css-grid-layout/grid-item-column-row-get-set.html:
* fast/css-grid-layout/grid-item-end-after-get-set-expected.txt:
* fast/css-grid-layout/grid-item-end-after-get-set.html:
* fast/css-grid-layout/grid-item-start-before-get-set-expected.txt:
* fast/css-grid-layout/grid-item-start-before-get-set.html:

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

6 years agoBuild fix for ARM MSVC after r153222 and r153648.
paroga@webkit.org [Tue, 6 Aug 2013 10:04:18 +0000 (10:04 +0000)]
Build fix for ARM MSVC after r153222 and r153648.

* jit/JITStubsARM.h: Added ctiVMThrowTrampolineSlowpath.

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

6 years agoBuild fix for ARM MSVC after r150109.
paroga@webkit.org [Tue, 6 Aug 2013 10:03:30 +0000 (10:03 +0000)]
Build fix for ARM MSVC after r150109.

Read the stub template from a header files instead of the JITStubs.cpp.

* CMakeLists.txt:
* DerivedSources.pri:
* create_jit_stubs:

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

6 years agoBuild fix for GTK after r153736
simon.pena@samsung.com [Tue, 6 Aug 2013 09:36:04 +0000 (09:36 +0000)]
Build fix for GTK after r153736

* Source/autotools/symbols.filter: expose missing symbols
WebCore::SerializedScriptValue::create and WebCore::toJS to Internals.

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

6 years ago[WebGL] validateRenderingState method name change
commit-queue@webkit.org [Tue, 6 Aug 2013 06:45:44 +0000 (06:45 +0000)]
[WebGL] validateRenderingState method name change
https://bugs.webkit.org/show_bug.cgi?id=119485

According to validateRenderingState method functionality its name should be
changed. This method validates only vertex attributes.

Patch by Przemyslaw Szymanski <p.szymanski3@samsung.com> on 2013-08-05
Reviewed by Dean Jackson.

No new tests. Covered by existing tests. No changes in functionality.

* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::validateVertexAttributes):
(WebCore::WebGLRenderingContext::drawArrays):
(WebCore::WebGLRenderingContext::drawElements):
* html/canvas/WebGLRenderingContext.h:

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

6 years agoForgot to add alt text to the example image :(
dino@apple.com [Tue, 6 Aug 2013 06:21:50 +0000 (06:21 +0000)]
Forgot to add alt text to the example image :(

* demos/srcset/index.html:

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

6 years agoMove previous commit into /demos.
dino@apple.com [Tue, 6 Aug 2013 06:01:14 +0000 (06:01 +0000)]
Move previous commit into /demos.

* demos/srcset/image-1x.png: Renamed from Websites/webkit.org/blog-files/srcset/image-1x.png.
* demos/srcset/image-2x.png: Renamed from Websites/webkit.org/blog-files/srcset/image-2x.png.
* demos/srcset/image-src.png: Renamed from Websites/webkit.org/blog-files/srcset/image-src.png.
* demos/srcset/index.html: Renamed from Websites/webkit.org/blog-files/srcset/index.html.

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

6 years agoAnother Windows release build fix.
mrowe@apple.com [Tue, 6 Aug 2013 03:16:02 +0000 (03:16 +0000)]
Another Windows release build fix.

* WebKitLogging.cpp: Wrap the implementation file in !LOG_DISABLED #if's too.

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

6 years agoBuild fix for Windows.
mrowe@apple.com [Tue, 6 Aug 2013 03:10:18 +0000 (03:10 +0000)]
Build fix for Windows.

* wtf/Assertions.cpp: Include StringExtras.h rather than StdLibExtras.h, since the former is where
strncasecmp is declared.

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

6 years agoBuild fix for Windows release build.
mrowe@apple.com [Tue, 6 Aug 2013 03:03:06 +0000 (03:03 +0000)]
Build fix for Windows release build.

* WebKitLogging.h: Wrap things in !LOG_DISABLED so that we don't attempt to use macros that have not been defined.

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

6 years agoLogging should be configurable using human-readable channel names rather than crazy...
mrowe@apple.com [Tue, 6 Aug 2013 02:53:49 +0000 (02:53 +0000)]
Logging should be configurable using human-readable channel names rather than crazy bitmasks
<http://webkit.org/b/119031>

Implement shared logic for initializing logging channels based on human-readable channel names in WTF,
and rework the WebCore, WebKit and WebKit2 logging initialization on top of it.

Logging channels may now be enabled by providing a comma-separated list of channel names, with the special
"all" name enabling all channels. Channel names prefixed with a leading "-" will result in the named channel
being disabled. For instance, specifying "all,-history,-loading" will result in all logging channels except
for history and loading being enabled.

For OS X developers, this also changes the name of the user defaults used to enable logging. This is done to allow
the old user defaults to remain set for those people that need to switch between version of WebKit before and
after this change. Where the old user default keys were WebCoreLogLevel, WebKitLogLevel and WebKit2LogLevel,
the new user default keys are WebCoreLogging, WebKitLogging and WebKit2Logging.

For GTK developers, this changes the separator used in the WEBKIT_DEBUG environment variable to a comma for
consistency with the other platforms and to enable more code sharing.

While doing this work I've also taken the opportunity to eliminate the need to touch multiple files when
adding a new logging channel. Now only the header in the relevant project needs to be updated.

Reviewed by Sam Weinig.

Source/WebCore:

* GNUmakefile.list.am: Remove the now-unused InitializeLogging.h
* Target.pri: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* platform/InitializeLogging.h: Removed. Ditto.
* platform/Logging.cpp: Use WEBCORE_LOG_CHANNELS to define all of the channels.
(WebCore::logChannelByName): Renamed to match our naming conventions. Calls through to the new WTF function
to find a log channel rather than repeating the names of the log channels a further two times each.
(WebCore::initializeLoggingChannelsIfNecessary): Pass the channels and the log level string to the new
WTF function that handles the initialization.
* platform/Logging.h: Declare a WEBCORE_LOG_CHANNELS macro that can be used to apply a preprocessor macro
across the set of all logging channels. Use this macro to declare the logging channels.
* platform/blackberry/LoggingBlackBerry.cpp:
(WebCore::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable.
* platform/efl/LoggingEfl.cpp:
(WebCore::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable, and then prepend
NotYetImplemented to it so that that channel will be enabled by default.
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink): Accommodate the rename to logChannelByName.
* platform/gtk/LoggingGtk.cpp:
(WebCore::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable, and then prepend
NotYetImplemented to it so that that channel will be enabled by default.
* platform/mac/LoggingMac.mm:
(WebCore::logLevelString): Pull the value out of the WebCoreLogging user default key.
* platform/qt/LoggingQt.cpp:
(WebCore::logLevelString): Pull the value out of the QT_WEBKIT_LOG environment variable, and then prepend
NotYetImplemented to it so that the channel will be enabled by default.
* platform/win/LoggingWin.cpp:
(WebCore::logLevelString): Pull the value out of the WebCoreLogging environment variable.

Source/WebKit/blackberry:

* Api/BlackBerryGlobal.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WebKit/efl:

* ewk/ewk_main.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WebKit/gtk:

* webkit/webkitglobals.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WebKit/mac:

* Misc/WebKitLogging.h: Declare a WEBKIT_LOG_CHANNELS macro that can be used to apply a preprocessor macro
across the set of all logging channels. Use this macro to declare the logging channels.
* Misc/WebKitLogging.m: Use WEBKIT_LOG_CHANNELS to define all of the channels. Pass the channels and the
preference value to the new WTF function that handles the initialization.
* WebView/WebPreferenceKeysPrivate.h: Remove a key that does not need to be here.
* WebView/WebView.mm: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WebKit/qt:

* WebCoreSupport/InitWebCoreQt.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WebKit/win:

* WebKitLogging.cpp: Declare a WEBKIT_LOG_CHANNELS macro that can be used to apply a preprocessor macro across
the set of all logging channels. Use this macro to declare the logging channels.
* WebKitLogging.h: Use WEBKIT_LOG_CHANNELS to define all of the channels. Pass the channels to the new WTF
function that handles the initialization. As per the previous implementation a developer needs to hard-code
their desired log level here.
* WebView.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WebKit2:

* NetworkProcess/NetworkProcess.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
* Platform/Logging.cpp: Use WEBKIT2_LOG_CHANNELS to define all of the channels.
(WebKit::initializeLogChannelsIfNecessary): Pass the channels and the log level string to the new WTF function
that handles the initialization.
(WebKit::logChannelByName): Renamed to match our naming conventions. Calls through to the new WTF function
to find a log channel rather than repeating the names of the log channels a further two times each.
(WebKit::logLevelString): Provide a no-op implementation.
* Platform/Logging.h: Declare a WEBKIT2_LOG_CHANNELS macro that can be used to apply a preprocessor macro
across the set of all logging channels. Use this macro to declare the logging channels.
* Platform/efl/LoggingEfl.cpp:
(WebKit::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable.
* Platform/gtk/LoggingGtk.cpp:
(WebKit::logLevelString): Ditto.
* Platform/mac/Logging.mac.mm:
(WebKit::logLevelString): Pull the value out of the WebKit2Logging user default key.
* Platform/qt/LoggingQt.cpp:
(WebKit::logLevelString): Pull the value out of the QT_WEBKIT_LOG environment variable.
* Shared/WebKit2Initialize.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
* UIProcess/WebContext.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.

Source/WTF:

* wtf/Assertions.cpp:
(WTFLogChannelByName): Iterate over the provided array of log channels, returning the first whose name
matches case-insensitively.
(setStateOfAllChannels): Helper function to set the state of all channels to a single value.
(WTFInitializeLogChannelStatesFromString): Parse a string containing a case-insensitive, comma-separated list
of channel names to enable or disable, with the latter being prefixed by a "-".
* wtf/Assertions.h: Update the layout of WTFLogChannel to include only the state of the channel and its name.
Declare WTFLogChannelByName and WTFInitializeLogChannelStatesFromString.
* wtf/RefCountedLeakCounter.cpp: Update to the new format of WTFLogChannel.

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

6 years agoUpload example for a blog post.
dino@apple.com [Tue, 6 Aug 2013 02:03:00 +0000 (02:03 +0000)]
Upload example for a blog post.

* blog-files/srcset/image-1x.png: Added.
* blog-files/srcset/image-2x.png: Added.
* blog-files/srcset/image-src.png: Added.
* blog-files/srcset/index.html: Added.

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

6 years agoEditor::updateMarkersForWordsAffectedByEditing(bool) shouldn't compute start and...
rniwa@webkit.org [Tue, 6 Aug 2013 02:02:03 +0000 (02:02 +0000)]
Editor::updateMarkersForWordsAffectedByEditing(bool) shouldn't compute start and end of words when there are nor markers
https://bugs.webkit.org/show_bug.cgi?id=119501

Reviewed by Enrica Casucci.

Exit early in updateMarkersForWordsAffectedByEditing before calling startOfWord and endOfWord if there are no document markers.

* dom/DocumentMarkerController.h:
(WebCore::DocumentMarkerController::hasMarkers): Added.
* editing/Editor.cpp:
(WebCore::Editor::updateMarkersForWordsAffectedByEditing):

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

6 years agoUpdate HTMLPreloadScanner to handle img srcset
dino@apple.com [Tue, 6 Aug 2013 01:13:15 +0000 (01:13 +0000)]
Update HTMLPreloadScanner to handle img srcset
https://bugs.webkit.org/show_bug.cgi?id=119360

Reviewed by Sam Weinig.

This patch is a merge of similar patches from Yoav Weiss <yoav@yoav.ws>
and Dean Jackson.

Source/WebCore:

Test: fast/preloader/image-srcset.html

* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::parseAttribute): Move srcset parsing into
HTMLParserIdioms, and call it when we hit src or srcset.
* html/HTMLImageElement.h: Remove code that was moved to HTMLParserIdioms.

* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizer): Pass device scale into preloader.
(WebCore::HTMLDocumentParser::insert):

* html/parser/HTMLPreloadScanner.cpp:
(WebCore::TokenPreloadScanner::StartTagScanner::StartTagScanner): Takes device scale as a parameter.
(WebCore::TokenPreloadScanner::StartTagScanner::processAttributes): Resolve between src and srcSet if necessary.
(WebCore::TokenPreloadScanner::StartTagScanner::processAttribute): Add support for srcset attribute.
(WebCore::TokenPreloadScanner::StartTagScanner::setUrlToLoad): New flag to indicate if we should
replace any existing value.
(WebCore::TokenPreloadScanner::TokenPreloadScanner): Takes device scale.
(WebCore::TokenPreloadScanner::scanCommon): Pass device scale.
(WebCore::HTMLPreloadScanner::HTMLPreloadScanner):
* html/parser/HTMLPreloadScanner.h: New attribute to constructor for device scale. New member
variable on TokenPreloadScanner that holds the srcset value.

* html/parser/HTMLParserIdioms.cpp:
(WebCore::ImageWithScale::operator==): Used for sorting.
(WebCore::compareByScaleFactor): Used for sorting.
(WebCore::bestFitSourceForImageAttributes): New method that takes the code from HTMLImageElement
for parsing src and srcset attributes, and finding the best match.
* html/parser/HTMLParserIdioms.h:

LayoutTests:

New test to make sure the HTML preloader takes the
value of srcset if available.

* fast/preloader/image-srcset-expected.txt: Added.
* fast/preloader/image-srcset.html: Added.

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

6 years agoAdded optimizations to Windows ANGLE builds.
achristensen@apple.com [Tue, 6 Aug 2013 00:41:08 +0000 (00:41 +0000)]
Added optimizations to Windows ANGLE builds.
https://bugs.webkit.org/show_bug.cgi?id=119500

Reviewed by Brent Fulgham.

* ANGLE.vcxproj/ANGLERelease.props: Added.
* ANGLE.vcxproj/libEGL.vcxproj:
* ANGLE.vcxproj/libGLESv2.vcxproj:
* ANGLE.vcxproj/preprocessor.vcxproj:
* ANGLE.vcxproj/translator_common.vcxproj:
* ANGLE.vcxproj/translator_glsl.vcxproj:
* ANGLE.vcxproj/translator_hlsl.vcxproj:
Use ANGLERelease.props for Release, Release_WinCairo, and Production configurations.

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

6 years agoGardening: fix build after r153728.
mark.lam@apple.com [Tue, 6 Aug 2013 00:39:42 +0000 (00:39 +0000)]
Gardening: fix build after r153728.

Not reviewed.

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

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

6 years agoDisable <meter> by default on iOS, it is enabled through the xconfig files
benjamin@webkit.org [Tue, 6 Aug 2013 00:28:44 +0000 (00:28 +0000)]
Disable <meter> by default on iOS, it is enabled through the xconfig files
https://bugs.webkit.org/show_bug.cgi?id=119503

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-08-05
Reviewed by Alexey Proskuryakov.

* wtf/FeatureDefines.h:

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

6 years ago <rdar://problem/13128990> chunked-progress-event-expectedLength.html is flaky...
ap@apple.com [Mon, 5 Aug 2013 23:06:30 +0000 (23:06 +0000)]
    <rdar://problem/13128990> chunked-progress-event-expectedLength.html is flaky on Mac
        https://bugs.webkit.org/show_bug.cgi?id=119498

        Reviewed by Brady Eidson.

        * http/tests/xmlhttprequest/resources/chunked-transfer.php: This test relies on
        length not being known upfront, which is not the case when the resource is served
        form cache.

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

6 years agoMove TypedArray implementation into JSC
oliver@apple.com [Mon, 5 Aug 2013 22:11:50 +0000 (22:11 +0000)]
Move TypedArray implementation into JSC
https://bugs.webkit.org/show_bug.cgi?id=119489

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Move TypedArray implementation into JSC in advance of re-implementation

* GNUmakefile.list.am:
* JSCTypedArrayStubs.h:
* JavaScriptCore.xcodeproj/project.pbxproj:
* runtime/ArrayBuffer.cpp: Renamed from Source/WTF/wtf/ArrayBuffer.cpp.
(JSC::ArrayBuffer::transfer):
(JSC::ArrayBuffer::addView):
(JSC::ArrayBuffer::removeView):
* runtime/ArrayBuffer.h: Renamed from Source/WTF/wtf/ArrayBuffer.h.
(JSC::ArrayBufferContents::ArrayBufferContents):
(JSC::ArrayBufferContents::data):
(JSC::ArrayBufferContents::sizeInBytes):
(JSC::ArrayBufferContents::transfer):
(JSC::ArrayBufferContents::copyTo):
(JSC::ArrayBuffer::isNeutered):
(JSC::ArrayBuffer::~ArrayBuffer):
(JSC::ArrayBuffer::clampValue):
(JSC::ArrayBuffer::create):
(JSC::ArrayBuffer::createUninitialized):
(JSC::ArrayBuffer::ArrayBuffer):
(JSC::ArrayBuffer::data):
(JSC::ArrayBuffer::byteLength):
(JSC::ArrayBuffer::slice):
(JSC::ArrayBuffer::sliceImpl):
(JSC::ArrayBuffer::clampIndex):
(JSC::ArrayBufferContents::tryAllocate):
(JSC::ArrayBufferContents::~ArrayBufferContents):
* runtime/ArrayBufferView.cpp: Renamed from Source/WTF/wtf/ArrayBufferView.cpp.
(JSC::ArrayBufferView::ArrayBufferView):
(JSC::ArrayBufferView::~ArrayBufferView):
(JSC::ArrayBufferView::neuter):
* runtime/ArrayBufferView.h: Renamed from Source/WTF/wtf/ArrayBufferView.h.
(JSC::ArrayBufferView::buffer):
(JSC::ArrayBufferView::baseAddress):
(JSC::ArrayBufferView::byteOffset):
(JSC::ArrayBufferView::setNeuterable):
(JSC::ArrayBufferView::isNeuterable):
(JSC::ArrayBufferView::verifySubRange):
(JSC::ArrayBufferView::clampOffsetAndNumElements):
(JSC::ArrayBufferView::setImpl):
(JSC::ArrayBufferView::setRangeImpl):
(JSC::ArrayBufferView::zeroRangeImpl):
(JSC::ArrayBufferView::calculateOffsetAndLength):
* runtime/Float32Array.h: Renamed from Source/WTF/wtf/Float32Array.h.
(JSC::Float32Array::set):
(JSC::Float32Array::getType):
(JSC::Float32Array::create):
(JSC::Float32Array::createUninitialized):
(JSC::Float32Array::Float32Array):
(JSC::Float32Array::subarray):
* runtime/Float64Array.h: Renamed from Source/WTF/wtf/Float64Array.h.
(JSC::Float64Array::set):
(JSC::Float64Array::getType):
(JSC::Float64Array::create):
(JSC::Float64Array::createUninitialized):
(JSC::Float64Array::Float64Array):
(JSC::Float64Array::subarray):
* runtime/Int16Array.h: Renamed from Source/WTF/wtf/Int16Array.h.
(JSC::Int16Array::getType):
(JSC::Int16Array::create):
(JSC::Int16Array::createUninitialized):
(JSC::Int16Array::Int16Array):
(JSC::Int16Array::subarray):
* runtime/Int32Array.h: Renamed from Source/WTF/wtf/Int32Array.h.
(JSC::Int32Array::getType):
(JSC::Int32Array::create):
(JSC::Int32Array::createUninitialized):
(JSC::Int32Array::Int32Array):
(JSC::Int32Array::subarray):
* runtime/Int8Array.h: Renamed from Source/WTF/wtf/Int8Array.h.
(JSC::Int8Array::getType):
(JSC::Int8Array::create):
(JSC::Int8Array::createUninitialized):
(JSC::Int8Array::Int8Array):
(JSC::Int8Array::subarray):
* runtime/IntegralTypedArrayBase.h: Renamed from Source/WTF/wtf/IntegralTypedArrayBase.h.
(JSC::IntegralTypedArrayBase::set):
(JSC::IntegralTypedArrayBase::IntegralTypedArrayBase):
* runtime/TypedArrayBase.h: Renamed from Source/WTF/wtf/TypedArrayBase.h.
(JSC::TypedArrayBase::data):
(JSC::TypedArrayBase::set):
(JSC::TypedArrayBase::setRange):
(JSC::TypedArrayBase::zeroRange):
(JSC::TypedArrayBase::length):
(JSC::TypedArrayBase::byteLength):
(JSC::TypedArrayBase::item):
(JSC::TypedArrayBase::checkInboundData):
(JSC::TypedArrayBase::TypedArrayBase):
(JSC::TypedArrayBase::create):
(JSC::TypedArrayBase::createUninitialized):
(JSC::TypedArrayBase::subarrayImpl):
(JSC::TypedArrayBase::neuter):
* runtime/Uint16Array.h: Renamed from Source/WTF/wtf/Uint16Array.h.
(JSC::Uint16Array::getType):
(JSC::Uint16Array::create):
(JSC::Uint16Array::createUninitialized):
(JSC::Uint16Array::Uint16Array):
(JSC::Uint16Array::subarray):
* runtime/Uint32Array.h: Renamed from Source/WTF/wtf/Uint32Array.h.
(JSC::Uint32Array::getType):
(JSC::Uint32Array::create):
(JSC::Uint32Array::createUninitialized):
(JSC::Uint32Array::Uint32Array):
(JSC::Uint32Array::subarray):
* runtime/Uint8Array.h: Renamed from Source/WTF/wtf/Uint8Array.h.
(JSC::Uint8Array::getType):
(JSC::Uint8Array::create):
(JSC::Uint8Array::createUninitialized):
(JSC::Uint8Array::Uint8Array):
(JSC::Uint8Array::subarray):
* runtime/Uint8ClampedArray.h: Renamed from Source/WTF/wtf/Uint8ClampedArray.h.
(JSC::Uint8ClampedArray::getType):
(JSC::Uint8ClampedArray::create):
(JSC::Uint8ClampedArray::createUninitialized):
(JSC::Uint8ClampedArray::zeroFill):
(JSC::Uint8ClampedArray::set):
(JSC::Uint8ClampedArray::Uint8ClampedArray):
(JSC::Uint8ClampedArray::subarray):
* runtime/VM.h:

Source/WebCore:

Update WebCore for new location of TypedArray implementation.

* ForwardingHeaders/runtime/ArrayBuffer.h: Added.
* ForwardingHeaders/runtime/ArrayBufferView.h: Added.
* ForwardingHeaders/runtime/Float32Array.h: Added.
* ForwardingHeaders/runtime/Float64Array.h: Added.
* ForwardingHeaders/runtime/Int16Array.h: Added.
* ForwardingHeaders/runtime/Int32Array.h: Added.
* ForwardingHeaders/runtime/Int8Array.h: Added.
* ForwardingHeaders/runtime/IntegralTypedArrayBase.h: Added.
* ForwardingHeaders/runtime/TypedArrayBase.h: Added.
* ForwardingHeaders/runtime/Uint16Array.h: Added.
* ForwardingHeaders/runtime/Uint32Array.h: Added.
* ForwardingHeaders/runtime/Uint8Array.h: Added.
* ForwardingHeaders/runtime/Uint8ClampedArray.h: Added.
* Modules/webaudio/AnalyserNode.h:
(WebCore::AnalyserNode::getFloatFrequencyData):
(WebCore::AnalyserNode::getByteFrequencyData):
(WebCore::AnalyserNode::getByteTimeDomainData):
* Modules/webaudio/AsyncAudioDecoder.cpp:
* Modules/webaudio/AsyncAudioDecoder.h:
(WebCore::AsyncAudioDecoder::DecodingTask::audioData):
* Modules/webaudio/AudioBuffer.h:
* Modules/webaudio/AudioContext.cpp:
* Modules/webaudio/AudioParam.h:
* Modules/webaudio/AudioParamTimeline.h:
* Modules/webaudio/PeriodicWave.h:
* Modules/webaudio/RealtimeAnalyser.cpp:
* Modules/webaudio/RealtimeAnalyser.h:
* Modules/webaudio/ScriptProcessorNode.cpp:
* Modules/webaudio/WaveShaperProcessor.h:
* Modules/websockets/ThreadableWebSocketChannel.h:
* Modules/websockets/WebSocket.cpp:
* Modules/websockets/WebSocket.h:
* Modules/websockets/WebSocketChannel.cpp:
* Modules/websockets/WebSocketChannel.h:
* Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
* Modules/websockets/WorkerThreadableWebSocketChannel.h:
* WebCore.exp.in:
* bindings/js/JSArrayBufferCustom.cpp:
* bindings/js/JSArrayBufferViewHelper.h:
* bindings/js/JSAudioContextCustom.cpp:
* bindings/js/JSCryptoCustom.cpp:
* bindings/js/JSDictionary.h:
* bindings/js/JSFileReaderCustom.cpp:
* bindings/js/JSWebGLRenderingContextCustom.cpp:
* bindings/js/JSXMLHttpRequestCustom.cpp:
* bindings/js/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::transferArrayBuffers):
* bindings/js/SerializedScriptValue.h:
* bindings/scripts/CodeGeneratorJS.pm:
(AddIncludesForType):
(GenerateHeader):
(NativeToJSValue):
* dom/MessageEvent.h:
* fileapi/FileReader.cpp:
* fileapi/FileReader.h:
* fileapi/FileReaderLoader.cpp:
* fileapi/FileReaderLoader.h:
* fileapi/FileReaderSync.cpp:
* fileapi/FileReaderSync.h:
* fileapi/WebKitBlobBuilder.cpp:
* fileapi/WebKitBlobBuilder.h:
* html/HTMLMediaElement.cpp:
* html/ImageData.h:
* html/canvas/ArrayBuffer.idl:
* html/canvas/ArrayBufferView.idl:
* html/canvas/CanvasRenderingContext2D.cpp:
* html/canvas/DataView.h:
* html/canvas/Float32Array.idl:
* html/canvas/Float64Array.idl:
* html/canvas/Int16Array.idl:
* html/canvas/Int32Array.idl:
* html/canvas/Int8Array.idl:
* html/canvas/Uint16Array.idl:
* html/canvas/Uint32Array.idl:
* html/canvas/Uint8Array.idl:
* html/canvas/Uint8ClampedArray.idl:
* html/canvas/WebGLBuffer.h:
(WebCore::WebGLBuffer::elementArrayBuffer):
* html/canvas/WebGLGetInfo.cpp:
* html/canvas/WebGLGetInfo.h:
* html/canvas/WebGLRenderingContext.cpp:
* html/canvas/WebGLRenderingContext.h:
* inspector/InspectorMemoryAgent.cpp:
* page/Crypto.cpp:
* page/Crypto.h:
* platform/graphics/GraphicsContext3D.cpp:
* platform/graphics/ImageBuffer.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
* platform/graphics/cg/ImageBufferDataCG.h:
* platform/graphics/filters/FEBlend.cpp:
* platform/graphics/filters/FEColorMatrix.cpp:
* platform/graphics/filters/FEComponentTransfer.cpp:
* platform/graphics/filters/FEComposite.cpp:
* platform/graphics/filters/FEConvolveMatrix.cpp:
* platform/graphics/filters/FECustomFilter.cpp:
* platform/graphics/filters/FEDisplacementMap.cpp:
* platform/graphics/filters/FEDropShadow.cpp:
* platform/graphics/filters/FEGaussianBlur.cpp:
* platform/graphics/filters/FELighting.h:
* platform/graphics/filters/FEMorphology.cpp:
* platform/graphics/filters/FETurbulence.cpp:
* platform/graphics/filters/FilterEffect.cpp:
* platform/graphics/filters/FilterEffect.h:
* platform/graphics/mac/GraphicsContext3DMac.mm:
* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
* testing/Internals.h:
* xml/XMLHttpRequest.cpp:
* xml/XMLHttpRequest.h:
(WebCore::XMLHttpRequest::optionalResponseArrayBuffer):

Source/WTF:

Remove TypedArray implementation from WTF

* GNUmakefile.list.am:
* WTF.xcodeproj/project.pbxproj:
* wtf/Forward.h:

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

6 years ago <rdar://problem/14637103> REGRESSION (r153060?): Microphone appears in the way
ap@apple.com [Mon, 5 Aug 2013 21:56:15 +0000 (21:56 +0000)]
    <rdar://problem/14637103> REGRESSION (r153060?): Microphone appears in the way
        of text when dictating an e-mail
        https://bugs.webkit.org/show_bug.cgi?id=119496

        Reviewed by Ryosuke Niwa.

        Test: platform/mac/editing/input/firstrectforcharacterrange-caret-in-br.html

        * rendering/RenderObject.cpp: (WebCore::RenderObject::absoluteBoundingBoxRectForRange):
        FloatRect::unite() doesn't preserve empty rects, which we need here.
        We alrady handle the case of collapsed range in Editor::firstRectForRange(), and
        this is similar, but we can't currently cover both with one simple fix.

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

6 years agoIgnore the Apple Java placeholder plug-in
andersca@apple.com [Mon, 5 Aug 2013 21:26:25 +0000 (21:26 +0000)]
Ignore the Apple Java placeholder plug-in
https://bugs.webkit.org/show_bug.cgi?id=119494
<rdar://problem/14610818>

Reviewed by Beth Dakin.

Never attempt to load the Java placeholder plug-in.

* UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
(WebKit::PluginInfoStore::shouldUsePlugin):

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

6 years agoRegion based columns not painted correctly in non-default writing-modes
commit-queue@webkit.org [Mon, 5 Aug 2013 21:20:19 +0000 (21:20 +0000)]
Region based columns not painted correctly in non-default writing-modes
https://bugs.webkit.org/show_bug.cgi?id=118506

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-08-05
Reviewed by David Hyatt.

Source/WebCore:

The column translation offset was calculated incorrectly.
The dirty rect intersection check was also wrong.

Added some documentation, to make it clear what's going on.

Tests: fast/multicol/newmulticol/hide-box-horizontal-bt.html
       fast/multicol/newmulticol/hide-box-vertical-lr.html
       fast/multicol/newmulticol/hide-box-vertical-rl.html

* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::collectLayerFragments):

LayoutTests:

* fast/multicol/newmulticol/hide-box-horizontal-bt-expected.html: Added.
* fast/multicol/newmulticol/hide-box-horizontal-bt.html: Added.
* fast/multicol/newmulticol/hide-box-vertical-lr-expected.html: Added.
* fast/multicol/newmulticol/hide-box-vertical-lr.html: Added.
* fast/multicol/newmulticol/hide-box-vertical-rl-expected.html: Added.
* fast/multicol/newmulticol/hide-box-vertical-rl.html: Added.

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

6 years agoRegion based columns not clipped properly
commit-queue@webkit.org [Mon, 5 Aug 2013 21:17:41 +0000 (21:17 +0000)]
Region based columns not clipped properly
https://bugs.webkit.org/show_bug.cgi?id=118499

Patch by Morten Stenshorne <mstensho@opera.com> on 2013-08-05
Reviewed by David Hyatt.

Source/WebCore:

Need to call RenderRegion::overflowRectForFlowThreadPortion() first,
and THEN clip in the column gaps. overflowRectForFlowThreadPortion()
expands the logical left and right to the flow thread's overflow
rectangle, effectively defeating inline direction clipping completely.

Tests: fast/multicol/newmulticol/clipping-overflow-hidden.html
       fast/multicol/newmulticol/clipping-top-overflow.html
       fast/multicol/newmulticol/clipping.html

* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):

LayoutTests:

* fast/multicol/newmulticol/clipping-expected.html: Added.
* fast/multicol/newmulticol/clipping-overflow-hidden-expected.html: Added.
* fast/multicol/newmulticol/clipping-overflow-hidden.html: Added.
* fast/multicol/newmulticol/clipping-top-overflow-expected.html: Added.
* fast/multicol/newmulticol/clipping-top-overflow.html: Added.
* fast/multicol/newmulticol/clipping.html: Added.

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

6 years ago[GTK] Implement leak checking with valgrind
commit-queue@webkit.org [Mon, 5 Aug 2013 20:26:29 +0000 (20:26 +0000)]
[GTK] Implement leak checking with valgrind
https://bugs.webkit.org/show_bug.cgi?id=118785

Patch by Brian Holt <brian.holt@samsung.com> on 2013-08-05
Reviewed by Dirk Pranke.

Launch the DRT under Valgrind to generate xml files with details
of leaks found.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
* Scripts/webkitpy/port/gtk.py:
(GtkPort.__init__):
(GtkPort.default_timeout_ms): Allow extra time to run under
Valgrind.
(GtkPort.setup_environ_for_server): Pass Valgrind instructions
using environment variables.

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

6 years agoCopied space should be able to handle more than one copied backing store per JSCell
fpizlo@apple.com [Mon, 5 Aug 2013 19:52:43 +0000 (19:52 +0000)]
Copied space should be able to handle more than one copied backing store per JSCell
https://bugs.webkit.org/show_bug.cgi?id=119471

Reviewed by Mark Hahnenberg.

This allows a cell to call copyLater() multiple times for multiple different
backing stores, and then have copyBackingStore() called exactly once for each
of those. A token tells it which backing store to copy. All backing stores
must be named using the CopyToken, an enumeration which currently cannot
exceed eight entries.

When copyBackingStore() is called, it's up to the callee to (a) use the token
to decide what to copy and (b) call its base class's copyBackingStore() in
case the base class had something that needed copying. The only exception is
that JSCell never asks anything to be copied, and so if your base is JSCell
then you don't have to do anything.

* GNUmakefile.list.am:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* heap/CopiedBlock.h:
* heap/CopiedBlockInlines.h:
(JSC::CopiedBlock::reportLiveBytes):
* heap/CopyToken.h: Added.
* heap/CopyVisitor.cpp:
(JSC::CopyVisitor::copyFromShared):
* heap/CopyVisitor.h:
* heap/CopyVisitorInlines.h:
(JSC::CopyVisitor::visitItem):
* heap/CopyWorkList.h:
(JSC::CopyWorklistItem::CopyWorklistItem):
(JSC::CopyWorklistItem::cell):
(JSC::CopyWorklistItem::token):
(JSC::CopyWorkListSegment::get):
(JSC::CopyWorkListSegment::append):
(JSC::CopyWorkListSegment::data):
(JSC::CopyWorkListIterator::get):
(JSC::CopyWorkListIterator::operator*):
(JSC::CopyWorkListIterator::operator->):
(JSC::CopyWorkList::append):
* heap/SlotVisitor.h:
* heap/SlotVisitorInlines.h:
(JSC::SlotVisitor::copyLater):
* runtime/ClassInfo.h:
* runtime/JSCell.cpp:
(JSC::JSCell::copyBackingStore):
* runtime/JSCell.h:
* runtime/JSObject.cpp:
(JSC::JSObject::visitButterfly):
(JSC::JSObject::copyBackingStore):
* runtime/JSObject.h:

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

6 years agoXMLTreeViewer should be created only in the XML viewer mode
vivek.vg@samsung.com [Mon, 5 Aug 2013 16:26:01 +0000 (16:26 +0000)]
XMLTreeViewer should be created only in the XML viewer mode
https://bugs.webkit.org/show_bug.cgi?id=119483

Reviewed by Alexey Proskuryakov.

XMLTreeViewer is created even for the XSL transform which is avoided by the patch.
The XMLTreeViewer::hasNoStyleInformation() is moved to XMLDocumentParserLibxml2.cpp
as static inline method as XMLTreeViewer should not have the responsibility for it.
Also removes an unnecessary conditional check while deciding for XML viewer mode.

Blink patch review links:
https://codereview.chromium.org/19552003/
https://codereview.chromium.org/22150003/

No new tests as the patch is about code refactoring.

* xml/XMLTreeViewer.cpp:
* xml/XMLTreeViewer.h:
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::hasNoStyleInformation):
(WebCore::XMLDocumentParser::doEnd):

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

6 years agoLoading a video with a custom URL scheme will result in stalling playback
jer.noble@apple.com [Mon, 5 Aug 2013 15:29:48 +0000 (15:29 +0000)]
Loading a video with a custom URL scheme will result in stalling playback
https://bugs.webkit.org/show_bug.cgi?id=119469

Reviewed by Eric Carlson.

Break the assumption that only one AVAssetResourceRequest will be outstanding simultaneously
by storing a HashMap of AVAssetResourceRequests and their resulting WebCoreAVFResourceLoader.
When loading is stopped (due to completion or error), notify the MediaPlayerPrivateAVFoundation
parent so that the map can be emptied.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource): Store the request
    in m_resourceLoaderMap.
(WebCore::MediaPlayerPrivateAVFoundationObjC::didCancelLoadingRequest): Pull the request from
    m_resourceLoaderMap.
(WebCore::MediaPlayerPrivateAVFoundationObjC::didStopLoadingRequest): Remove the requset from
    m_resourceLoaderMap.
* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.h:
* platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
(WebCore::WebCoreAVFResourceLoader::create): Return a PassRefPtr, rather than a PassOwnPtr.
(WebCore::WebCoreAVFResourceLoader::stopLoading): Call didStopLoadingRequest.

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

6 years agoMake tests platform agnostic, fix async tests, remove broken blend modes: hue, satura...
commit-queue@webkit.org [Mon, 5 Aug 2013 14:23:05 +0000 (14:23 +0000)]
Make tests platform agnostic, fix async tests, remove broken blend modes: hue, saturation, color, luminosity, soft-light.
The test suite should now pass on windows.

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

Patch by Mihai Tica <mitica@adobe.com> on 2013-08-05
Reviewed by Dirk Schulze.

* fast/canvas/canvas-blending-clipping-expected.txt:
* fast/canvas/canvas-blending-clipping.html:
* fast/canvas/canvas-blending-color-over-color-expected.txt:
* fast/canvas/canvas-blending-color-over-color.html:
* fast/canvas/canvas-blending-color-over-gradient-expected.txt:
* fast/canvas/canvas-blending-color-over-gradient.html:
* fast/canvas/canvas-blending-color-over-image-expected.txt:
* fast/canvas/canvas-blending-color-over-image.html:
* fast/canvas/canvas-blending-color-over-pattern-expected.txt:
* fast/canvas/canvas-blending-color-over-pattern.html:
* fast/canvas/canvas-blending-fill-style-expected.txt:
* fast/canvas/canvas-blending-fill-style.html:
* fast/canvas/canvas-blending-global-alpha-expected.txt:
* fast/canvas/canvas-blending-global-alpha.html:
* fast/canvas/canvas-blending-gradient-over-color-expected.txt:
* fast/canvas/canvas-blending-gradient-over-color.html:
* fast/canvas/canvas-blending-gradient-over-gradient-expected.txt:
* fast/canvas/canvas-blending-gradient-over-gradient.html:
* fast/canvas/canvas-blending-gradient-over-image-expected.txt:
* fast/canvas/canvas-blending-gradient-over-image.html:
* fast/canvas/canvas-blending-gradient-over-pattern-expected.txt:
* fast/canvas/canvas-blending-gradient-over-pattern.html:
* fast/canvas/canvas-blending-helpers.js:
(separateBlendFunctions.hardLight):
(nonSeparateBlendFunctions.hue):
(nonSeparateBlendFunctions.saturation):
(nonSeparateBlendFunctions.color):
(nonSeparateBlendFunctions.luminosity):
* fast/canvas/canvas-blending-image-over-color-expected.txt:
* fast/canvas/canvas-blending-image-over-color.html:
* fast/canvas/canvas-blending-image-over-gradient-expected.txt:
* fast/canvas/canvas-blending-image-over-gradient.html:
* fast/canvas/canvas-blending-image-over-image-expected.txt:
* fast/canvas/canvas-blending-image-over-image.html:
* fast/canvas/canvas-blending-image-over-pattern-expected.txt:
* fast/canvas/canvas-blending-image-over-pattern.html:
* fast/canvas/canvas-blending-pattern-over-color-expected.txt:
* fast/canvas/canvas-blending-pattern-over-color.html:
* fast/canvas/canvas-blending-pattern-over-gradient-expected.txt:
* fast/canvas/canvas-blending-pattern-over-gradient.html:
* fast/canvas/canvas-blending-pattern-over-image-expected.txt:
* fast/canvas/canvas-blending-pattern-over-image.html:
* fast/canvas/canvas-blending-pattern-over-pattern-expected.txt:
* fast/canvas/canvas-blending-pattern-over-pattern.html:
* fast/canvas/canvas-blending-shadow-expected.txt:
* fast/canvas/canvas-blending-shadow.html:
* fast/canvas/canvas-blending-text-expected.txt:
* fast/canvas/canvas-blending-text.html:
* fast/canvas/canvas-blending-transforms-expected.txt:
* fast/canvas/canvas-blending-transforms.html:
* platform/win/TestExpectations:

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

6 years agoSpatial Navigation should avoid unwanted calculation while deciding focus candidate.
commit-queue@webkit.org [Mon, 5 Aug 2013 13:09:19 +0000 (13:09 +0000)]
Spatial Navigation should avoid unwanted calculation while deciding focus candidate.
https://bugs.webkit.org/show_bug.cgi?id=117265

Patch by Abhijeet Kandalkar <abhijeet.k@samsung.com> on 2013-08-05
Reviewed by Antonio Gomes.

Source/WebCore:

Spatial Navigation should consider only those nodes as candidate which are exactly in the focus-direction.
e.g. If we are moving down then the nodes that are above CURRENT focused node should be considered as invalid.
Added isValidCandidate() which checks whether node is exactly in the focus-direction.

Test: fast/spatial-navigation/snav-search-optimization.html

* page/FocusController.cpp:
(WebCore::FocusController::findFocusCandidateInContainer):
(WebCore::FocusController::advanceFocusDirectionally):
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(WebCore::Page::setLastSpatialNavigationCandidateCount):
(WebCore::Page::lastSpatialNavigationCandidateCount):
* page/SpatialNavigation.cpp:
(WebCore::isValidCandidate):
* page/SpatialNavigation.h:
* testing/Internals.cpp:
(WebCore::Internals::lastSpatialNavigationCandidateCount):
* testing/Internals.h:
* testing/Internals.idl:

LayoutTests:

Added testcases to count how many target nodes were tested before choosing a final target.

* fast/spatial-navigation/snav-search-optimization-expected.txt: Added.
* fast/spatial-navigation/snav-search-optimization.html: Added.

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

6 years ago[Automake] Define ENABLE_JIT through the Autoconf header
zandobersek@gmail.com [Mon, 5 Aug 2013 07:58:16 +0000 (07:58 +0000)]
[Automake] Define ENABLE_JIT through the Autoconf header
https://bugs.webkit.org/show_bug.cgi?id=119445

Reviewed by Martin Robinson.

.:

Instead of defining the ENABLE_JIT value through JSC_CPPFLAGS, the feature define is
set to be either enabled or disabled through the Autoconf header, based on the value
passed through the configuration flag. The 'auto' value is used as default, meaning
that the feature is enabled or disabled in the Platform.h header based on the platform
configuration (OS, architecture etc.).

* Source/autotools/FindDependencies.m4: Remove the JSC_CPPFLAGS definition.
* Source/autotools/ReadCommandLineArguments.m4: Change the default value to 'auto' instead
of 'autodetect', as used by other configuration options that take a similar approach to enabling
a specific feature.
* Source/autotools/SetupAutoconfHeader.m4: Set a strict value for the ENABLE_JIT define through
the Autoconf header if the feature was specifically enabled or disabled.

Source/JavaScriptCore:

* GNUmakefile.am: Remove JSC_CPPFLAGS from the cpp flags for the JSC library.

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

6 years agoSource/WebCore: [CSS Background Blending] Specifying background-image and background...
commit-queue@webkit.org [Mon, 5 Aug 2013 07:16:00 +0000 (07:16 +0000)]
Source/WebCore: [CSS Background Blending] Specifying background-image and background-color
with opaque image doesn't trigger blending. The fix consists of adding a
check whether blend mode is set in hasOpaqueImage.

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

Patch by Mihai Tica <mitica@adobe.com> on 2013-08-05
Reviewed by Dirk Schulze.

Test: css3/compositing/background-blend-mode-separate-layer-declaration.html

* rendering/style/FillLayer.cpp:
(WebCore::FillLayer::hasOpaqueImage):

LayoutTests: [CSS Background Blending] Specifying background-image and background-color with opaque
image doesn't trigger blending. Adding ref test to validate the fix.

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

Patch by Mihai Tica <mitica@adobe.com> on 2013-08-05
Reviewed by Dirk Schulze.

* css3/compositing/background-blend-mode-separate-layer-declaration-expected.html: Added.
* css3/compositing/background-blend-mode-separate-layer-declaration.html: Added.
* css3/compositing/resources/gray_square.svg: Added.

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

6 years agoBackground doesn't fully repaint when body has margins.
zalan@apple.com [Sun, 4 Aug 2013 21:29:00 +0000 (21:29 +0000)]
Background doesn't fully repaint when body has margins.
https://bugs.webkit.org/show_bug.cgi?id=119033

Reviewed by Simon Fraser.

Ensure that background-color changes do not leave unpainted areas when
body has margins.

Both <body> and <html> background-color get propagated up to the viewport.
If <body> has background-color attribute set, while <html> doesn't, the color is
applied not only on the <body> but on both the <html> and the viewport. However,
it's not enough to mark the RenderView dirty because with tiles backing on,
there could be areas outside of the viewport that need repaint. By marking
the RenderView's graphics layer dirty instead, we ensure that all the related
tiles get marked dirty too and the new background color covers all areas.

Manual test added. When forcing top-level composition on (even with embedded iframe to
make sure we don't do paintsIntoWindow rendering), the test case execution changes so much,
that the repaint rects don't reflect the functionality difference anymore.

.:

Reviewed by Simon Fraser.

* ManualTests/compositing/background-color-change-on-body-with-margin.html: Added.

Source/WebCore:

* page/FrameView.cpp:
(WebCore::FrameView::reset):
(WebCore::FrameView::layout):
* page/FrameView.h:
(WebCore::FrameView::needsFullRepaint):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleWillChange):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
* rendering/RenderView.cpp:
(WebCore::RenderView::repaintRootContents):
(WebCore::RenderView::repaintViewAndCompositedLayers):
* rendering/RenderView.h:

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

6 years agoDocument needn't expose its active element.
akling@apple.com [Sun, 4 Aug 2013 16:17:32 +0000 (16:17 +0000)]
Document needn't expose its active element.
<http://webkit.org/b/119466>

Reviewed by Antonio Gomes.

The Document::m_activeElement pointer is only used inside updateHoverActiveState(),
so we can remove the activeElement()/setActiveElement() accessors.

* dom/Document.h:
* dom/Document.cpp:
(WebCore::Document::updateHoverActiveState):

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

6 years agoInserting a rule into an empty style sheet shouldn't trigger style recalc unless...
akling@apple.com [Sun, 4 Aug 2013 15:57:13 +0000 (15:57 +0000)]
Inserting a rule into an empty style sheet shouldn't trigger style recalc unless necessary.
<http://webkit.org/b/119475>
<rdar://problem/14643481>

Reviewed by Antti Koivisto.

This is kind of a cheesy optimization, but it turns out that the use case is quite common.
The pattern goes like this:

    (1) Create <style> element.
    (2) Add it to the document's <head>.
    (3) .addRule() one rule through the CSSOM API.

Prior to this patch, (3) would always cause a full (deferred) style recalc.

Now that we exclude empty style sheets from the document's (effective) active set,
we can piggyback on the style invalidation analysis when transitioning from an empty
sheet to a single-rule sheet.

In other words, add a special code path for the first rule insertion into an empty,
in-document style sheet to minimize the amount of invalidation that happens.

* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::didMutateRules):
(WebCore::CSSStyleSheet::insertRule):
* css/CSSStyleSheet.h:
(WebCore::CSSStyleSheet::RuleMutationScope::RuleMutationScope):
(WebCore::CSSStyleSheet::RuleMutationScope::~RuleMutationScope):

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

6 years ago[GTK] Fix a C++11 warning.
csaavedra@igalia.com [Sun, 4 Aug 2013 14:35:34 +0000 (14:35 +0000)]
[GTK] Fix a C++11 warning.

Rubber-stamped by Martin Robinson.

* platform/gtk/FileSystemGtk.cpp:
(WebCore::sharedResourcesPath): Fix a C++11 warning.

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

6 years ago[GTK] Remove legacy hack in CodeGeneratorGObject.pm
commit-queue@webkit.org [Sun, 4 Aug 2013 13:03:23 +0000 (13:03 +0000)]
[GTK] Remove legacy hack in CodeGeneratorGObject.pm
https://bugs.webkit.org/show_bug.cgi?id=117545

Patch by Diego Pino Garcia <dpino@igalia.com> on 2013-08-04
Reviewed by Carlos Garcia Campos.

There's a checking that sets gtype to uint in case it's ushort. gtype
is a value obtained from GetGValueTypeName(), which never returns
ushort.

* bindings/scripts/CodeGeneratorGObject.pm:
(GenerateProperty): remove unnecessary glitch

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

6 years ago[Mac] Disable screen font substitution at WebCore-level in OS X 10.9+
akling@apple.com [Sun, 4 Aug 2013 07:41:28 +0000 (07:41 +0000)]
[Mac] Disable screen font substitution at WebCore-level in OS X 10.9+
<http://webkit.org/b/119474>
<rdar://problem/14643349>

Reviewed by Dan Bernstein.

Disable screen font substitution by default in Settings so internal WebCore clients
such as SVG-as-image will get the right default setting.

* page/Settings.cpp:
(WebCore::Settings::Settings):
(WebCore::Settings::shouldEnableScreenFontSubstitutionByDefault):
(WebCore::Settings::setScreenFontSubstitutionEnabled):
* page/Settings.h:
(WebCore::Settings::screenFontSubstitutionEnabled):
* page/Settings.in:
* page/mac/SettingsMac.mm:
(WebCore::Settings::shouldEnableScreenFontSubstitutionByDefault):

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

6 years agoRefine the unavailable plug-in indicator
timothy_horton@apple.com [Sun, 4 Aug 2013 04:13:03 +0000 (04:13 +0000)]
Refine the unavailable plug-in indicator
https://bugs.webkit.org/show_bug.cgi?id=119400
<rdar://problem/14616012>

Reviewed by Oliver Hunt.

Add a border, flip the text and background colors, and make the indicator
much higher contrast, to be more visible on a variety of sites.
Also, refine the arrow to be less blocky and inlaid inside a circle.

* rendering/RenderEmbeddedObject.cpp:
(WebCore::replacementTextRoundedRectPressedColor):
(WebCore::replacementTextRoundedRectColor):
(WebCore::replacementTextColor):
(WebCore::unavailablePluginBorderColor):
(WebCore::drawReplacementArrow):
(WebCore::RenderEmbeddedObject::paintReplaced):
(WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
(WebCore::RenderEmbeddedObject::unavailablePluginIndicatorBounds):
(WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
* rendering/RenderEmbeddedObject.h:

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

6 years agoUnreviewed, build and style fix for r153693.
timothy_horton@apple.com [Sun, 4 Aug 2013 04:00:03 +0000 (04:00 +0000)]
Unreviewed, build and style fix for r153693.

* UIProcess/WebProcessProxy.cpp:
* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/WebPage/WebPage.cpp:

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

6 years agoRemove SimplePDFPlugin
timothy_horton@apple.com [Sun, 4 Aug 2013 03:50:47 +0000 (03:50 +0000)]
Remove SimplePDFPlugin
https://bugs.webkit.org/show_bug.cgi?id=119437

Reviewed by Alexey Proskuryakov.

* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::getPlugins):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::createPlugin):
Don't add SimplePDFPlugin, nor try to instantiate it.

* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/PDF/PDFPlugin.mm:
Merge previously inherited behavior in from SimplePDFPlugin.

* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/Plugins/PDF/SimplePDFPlugin.h: Removed.
* WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Removed.
Remove SimplePDFPlugin.

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

6 years agoRemove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the...
timothy_horton@apple.com [Sun, 4 Aug 2013 00:31:27 +0000 (00:31 +0000)]
Remove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the Mac port
https://bugs.webkit.org/show_bug.cgi?id=119411

Reviewed by Simon Fraser.

Mac is the only holdout that performs non-composited fades of page
overlays. We should adopt that mechanism (as a precursor to doing a
CA-accelerated fade) and remove the now-unnecessary property.

* WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
(WKBundlePageOverlayFractionFadedIn):
Always return 1 (fully-faded-in) so that clients who attempt to use this
to bake the fade opacity into their painting will paint at full opacity,
allowing us to do the composited fade separately.

* WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/LayerTreeHost.h:
* WebProcess/WebPage/PageOverlay.cpp:
(WebKit::PageOverlay::PageOverlay):
(WebKit::PageOverlay::setPage):
(WebKit::PageOverlay::setNeedsDisplay):
(WebKit::PageOverlay::fadeAnimationTimerFired):
* WebProcess/WebPage/PageOverlay.h:
Remove pageOverlayShouldApplyFadeWhenPainting and fractionFadedIn().

* WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::drawRect):
Draw the find overlay without taking the PageOverlay's fade into account.

* WebProcess/WebPage/TapHighlightController.cpp:
(WebKit::TapHighlightController::drawRect):
Remove pageOverlayShouldApplyFadeWhenPainting. Since it's always
"false" for all ports now, take the second path here.

* WebProcess/WebPage/mac/LayerTreeHostMac.h:
* WebProcess/WebPage/mac/LayerTreeHostMac.mm:
(WebKit::LayerTreeHostMac::setPageOverlayOpacity):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::setPageOverlayOpacity):
Implement setPageOverlayOpacity for DrawingAreaImpl
and TiledCoreAnimationDrawingArea.

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

6 years agohasIndexingHeader() ought really to be a property of an object and its structure...
fpizlo@apple.com [Sun, 4 Aug 2013 00:12:21 +0000 (00:12 +0000)]
hasIndexingHeader() ought really to be a property of an object and its structure, not just its structure
https://bugs.webkit.org/show_bug.cgi?id=119470

Reviewed by Oliver Hunt.

Structure can still tell you if the object "could" (in the conservative sense)
have an indexing header; that's used by the compiler.

Most of the time if you want to know if there's an indexing header, you ask the
JSObject.

In some cases, the JSObject wants to know if it would have an indexing header if
it had a different structure; then it uses Structure::hasIndexingHeader(JSCell*).

* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCachePutByID):
(JSC::DFG::tryBuildPutByIdList):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
* runtime/ButterflyInlines.h:
(JSC::Butterfly::create):
(JSC::Butterfly::growPropertyStorage):
(JSC::Butterfly::growArrayRight):
(JSC::Butterfly::resizeArray):
* runtime/JSObject.cpp:
(JSC::JSObject::copyButterfly):
(JSC::JSObject::visitButterfly):
* runtime/JSObject.h:
(JSC::JSObject::hasIndexingHeader):
(JSC::JSObject::setButterfly):
* runtime/Structure.h:
(JSC::Structure::couldHaveIndexingHeader):
(JSC::Structure::hasIndexingHeader):

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

6 years agowebaudio/audiobuffersource-loop-points.html always times out
simon.fraser@apple.com [Sat, 3 Aug 2013 17:49:50 +0000 (17:49 +0000)]
webaudio/audiobuffersource-loop-points.html always times out
https://bugs.webkit.org/show_bug.cgi?id=119467

Skip this test.

* platform/mac-wk2/TestExpectations:

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

6 years agoPreloadScanner preloads external CSS with non-matching media attribute
commit-queue@webkit.org [Sat, 3 Aug 2013 13:43:24 +0000 (13:43 +0000)]
PreloadScanner preloads external CSS with non-matching media attribute
https://bugs.webkit.org/show_bug.cgi?id=106198

Patch by Yoav Weiss <yoav@yoav.ws> on 2013-08-03
Reviewed by Dean Jackson.

Source/WebCore:

Test: http/tests/loading/preload-css-test.html

* html/parser/HTMLPreloadScanner.cpp:
Remove m_linkMediaAttributeIsScreen
Remove MediaQueryEvaluator calls
Add m_mediaAttribute that gets the value of the "media" attribute
Pass m_mediaAttribute to PreloadRequest
(WebCore::TokenPreloadScanner::StartTagScanner::StartTagScanner):
(WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
(WebCore::TokenPreloadScanner::StartTagScanner::processAttribute):
(WebCore::TokenPreloadScanner::StartTagScanner::resourceType):
(WebCore::TokenPreloadScanner::StartTagScanner::shouldPreload):
* html/parser/HTMLResourcePreloader.cpp:
Add MediaQueryEvaluator calls to see if "media" matches
Perform preload only to resource with a matching media (if media exists)
(WebCore::PreloadRequest::isSafeToSendToAnotherThread):
(WebCore::mediaAttributeMatches):
(WebCore::HTMLResourcePreloader::preload):
* html/parser/HTMLResourcePreloader.h:
Add a constructor with a mediaAttribute value
Add m_mediaAttribute & its getter.
(WebCore::PreloadRequest::create):
(WebCore::PreloadRequest::media):
(WebCore::PreloadRequest::PreloadRequest):

LayoutTests:

* http/tests/loading/preload-css-test-expected.txt: Added.
* http/tests/loading/preload-css-test.html: Added.
* http/tests/loading/resources/big_mq.css: Added.
* http/tests/loading/resources/small_mq.css: Added.
* http/tests/local/link-stylesheet-load-order-preload-expected.txt:

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

6 years agoRenderBoxModelObject::firstLetterRemainingText should be a RenderTextFragment*.
akling@apple.com [Sat, 3 Aug 2013 10:15:12 +0000 (10:15 +0000)]
RenderBoxModelObject::firstLetterRemainingText should be a RenderTextFragment*.
<http://webkit.org/b/119181>

Reviewed by Sam Weinig.

De-generalize this code a bit since we know that the firstLetterRemainingText() is always
going to be a RenderTextFragment.

* rendering/RenderBoxModelObject.h:
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::firstLetterRemainingText):
(WebCore::RenderBoxModelObject::setFirstLetterRemainingText):

    Make these two deal in RenderTextFragment*.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetterStyle):

    Tighten up some pointer types so we don't have to cast as much.

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

6 years agoIntroduce toSVGMaskElement(), and use it
gyuyoung.kim@samsung.com [Sat, 3 Aug 2013 05:11:54 +0000 (05:11 +0000)]
Introduce toSVGMaskElement(), and use it
https://bugs.webkit.org/show_bug.cgi?id=119443

Reviewed by Andreas Kling.

As a step to change static_cast with toSVGXXX, static_cast<SVGMaskElement*> can
be changed with toSVGMaskElement().

Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=155432

* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::applyResource):
(WebCore::RenderSVGResourceMasker::resourceBoundingBox):
* rendering/svg/RenderSVGResourceMasker.h:
* svg/SVGMaskElement.h:
(WebCore::toSVGMaskElement):

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

6 years agoRemove a bunch of redundant checks for empty string in StringImpl
benjamin@webkit.org [Sat, 3 Aug 2013 03:33:25 +0000 (03:33 +0000)]
Remove a bunch of redundant checks for empty string in StringImpl
https://bugs.webkit.org/show_bug.cgi?id=118768

Reviewed by Ryosuke Niwa.

The first thing done by createUninitialized() is check if the length passed
is zero. Internally, there are many cases for which we know the check will never succeed.

Clang is usually really smart for those kind of things, but there are a few cases where
the condition to avoid returning empty() is not simply a check for the length.
This patch adds an internal initializer to deal with that.

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::createUninitializedInternal):
(WTF::StringImpl::createUninitializedInternalNonEmpty):
(WTF::StringImpl::createInternal): Create internal has a special case for null pointer
for the characters. The test also check length, the second check for length cannot fail.
(WTF::StringImpl::create8BitIfPossible): ditto.
(WTF::StringImpl::lower): 3 of the calls cannot be reached for empty length. On an empty length,
the test for (noUpper && !(ored & ~0x7F)) would have caused the function to return "this".

For the last createUninitialized(), there is no guarantee the realLength is not zero.

(WTF::StringImpl::replace): The first thing we do in replace(UChar,UChar) is check if there is anything
to replace. The check for length will never succeed as there must be a character to replace at that point.
* wtf/text/StringImpl.h:

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

6 years agoREGRESSION (r153005): Crash in SpaceSplitString::spaceSplitStringContainsValue on...
benjamin@webkit.org [Sat, 3 Aug 2013 03:09:25 +0000 (03:09 +0000)]
REGRESSION (r153005): Crash in SpaceSplitString::spaceSplitStringContainsValue on Facebook
https://bugs.webkit.org/show_bug.cgi?id=119384

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-08-02
Reviewed by Alexey Proskuryakov.

Source/WebCore:

When removing the "rel" attribute from HTMLAnchorElement, we parse the attribute for no value.
Following r153005, we no longer checked for null String, which caused a crash in that case.

Creating a SpaceSplitString from a null string causes the SpaceSplitString to be null. In that case
SpaceSplitString::contains() would always return false.
This patch modify SpaceSplitString::spaceSplitStringContainsValue() to follow the exact same
behavior.

Test: fast/dom/HTMLAnchorElement/remove-rel-attribute.html

* dom/SpaceSplitString.cpp:
(WebCore::SpaceSplitString::spaceSplitStringContainsValue):

LayoutTests:

* fast/dom/HTMLAnchorElement/remove-rel-attribute.html: Added.
* fast/dom/HTMLAnchorElement/remove-rel-attribute-expected.txt: Added.

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

6 years agoForce elements with perspective or preserve-3d to disallow direct composited backgrounds
dino@apple.com [Sat, 3 Aug 2013 00:06:31 +0000 (00:06 +0000)]
Force elements with perspective or preserve-3d to disallow direct composited backgrounds
https://bugs.webkit.org/show_bug.cgi?id=119462
<rdar://problem/14607548>

Reviewed by Simon Fraser.

Source/WebCore:

Bug 119461 (http://wkb.ug/119461) describes how a directly composited
background color can intersect with its children. It's not clear exactly
what the best way to fix that is, but for the moment we should disallow
any element that has perspective or a preserve-3d transform style from
getting a directly composited background.

Test: compositing/background-color/no-composited-background-color-when-perspective.html

* rendering/RenderLayerBacking.cpp:
(WebCore::hasPerspectiveOrPreserves3D): New static helper.
(WebCore::supportsDirectBoxDecorationsComposition): Return false if the above function is true.

LayoutTests:

* compositing/background-color/no-composited-background-color-when-perspective-expected.html: Added.
* compositing/background-color/no-composited-background-color-when-perspective.html: Added.
* compositing/geometry/preserve-3d-switching-expected.txt: Rebaselined.
* compositing/overflow-trumps-transform-style-expected.txt: Rebaselined.

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

6 years agoUpdate binding test results
oliver@apple.com [Sat, 3 Aug 2013 00:05:05 +0000 (00:05 +0000)]
Update binding test results

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

6 years agoGive the error object's stack property accessor attributes.
commit-queue@webkit.org [Sat, 3 Aug 2013 00:04:41 +0000 (00:04 +0000)]
Give the error object's stack property accessor attributes.
https://bugs.webkit.org/show_bug.cgi?id=119404

Source/JavaScriptCore:

Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-02
Reviewed by Geoffrey Garen.

Changed the attributes of error object's stack property to allow developers to write
and delete the stack property. This will match the functionality of Chrome. Firefox
allows developers to write the error's stack, but not delete it.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::addStackTraceIfNecessary):
* runtime/ErrorInstance.cpp:
(JSC::ErrorInstance::finishCreation):

LayoutTests:

Patch by Chris Curtis <chris_curtis@apple.com> on 2013-08-02
Reviewed by Geoffrey Garen.

* fast/dom/DOMException/stack-trace-expected.txt:

New tests to show that the error object's stack property is writable and deleteable.
* fast/js/error-object-write-and-detele-for-stack-property-expected.txt: Added.
* fast/js/error-object-write-and-detele-for-stack-property.html: Added.

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

6 years agoUnreviewed. Skip failing canvas blending tests on AppleWin port.
roger_fong@apple.com [Sat, 3 Aug 2013 00:01:06 +0000 (00:01 +0000)]
Unreviewed. Skip failing canvas blending tests on AppleWin port.
https://bugs.webkit.org/show_bug.cgi?id=119463.

* platform/win/TestExpectations:

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

6 years agoRemove no-arguments constructor to PropertySlot
barraclough@apple.com [Fri, 2 Aug 2013 23:40:48 +0000 (23:40 +0000)]
Remove no-arguments constructor to PropertySlot
https://bugs.webkit.org/show_bug.cgi?id=119460

Reviewed by Geoff Garen.

This constructor was unsafe if getValue is subsequently called,
and the property is a getter. Simplest to just remove it.

Source/WebCore:

* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertyDescriptor):
(WebCore::DialogHandler::returnValue):
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
* bindings/js/JSPluginElementFunctions.cpp:
(WebCore::runtimeObjectCustomGetOwnPropertyDescriptor):
* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::deleteProperty):
(WebCore::JSStorage::putDelegate):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertyDescriptorBody):
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::getOwnPropertyDescriptor):
* bridge/runtime_method.cpp:
(JSC::RuntimeMethod::getOwnPropertyDescriptor):
* bridge/runtime_object.cpp:
(JSC::Bindings::RuntimeObject::getOwnPropertyDescriptor):

Source/WebKit2:

* WebProcess/Plugins/Netscape/JSNPObject.cpp:
(WebKit::JSNPObject::getOwnPropertyDescriptor):

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

6 years agoGardening: Touched a line in Platform.h to get all bots to do a clean build.
mark.lam@apple.com [Fri, 2 Aug 2013 23:23:49 +0000 (23:23 +0000)]
Gardening: Touched a line in Platform.h to get all bots to do a clean build.

Not reviewed.

* wtf/Platform.h:

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

6 years agoIncorrect type speculation reported by ToPrimitive
oliver@apple.com [Fri, 2 Aug 2013 22:38:28 +0000 (22:38 +0000)]
Incorrect type speculation reported by ToPrimitive
https://bugs.webkit.org/show_bug.cgi?id=119458

Reviewed by Mark Hahnenberg.

Make sure that we report the correct type possibilities for the output
from ToPrimitive

* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::::executeEffects):

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