<https://webkit.org/b/118754> AX: aria-required.html needs to test @required vs @aria-required mismatch reconciliation

Patch by James Craig <james@cookiecrook.com> on 2013-08-19
Reviewed by Chris Fleizach.

More thorough testing of @required and @aria-required, especially regarding conflict resolution.
Found https://webkit.org/b/119988 as a result of the updated test.

* accessibility/aria-required-expected.txt:
* accessibility/aria-required.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/118106> Web Inspector: AX: Add additional contextual labels for Error/Warnings/Logs that will be spoken for screen readers

Patch by James Craig <james@cookiecrook.com> on 2013-08-19
Reviewed by Joseph Pecoraro.

Changed general console "Output" string to more specific "Error", "Warning", etc for accessibility.

* Localizations/en.lproj/localizedStrings.js:
* UserInterface/ConsoleCommandResult.js:
* UserInterface/ConsoleMessageImpl.js:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154310 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120041> Remove superfluous min calls in RenderBlock::computeOverflow

Reviewed by Simon Fraser.

Merge https://chromium.googlesource.com/chromium/blink/+/29cad35d6b4642804e6b7c1a30f0b4435dd7a71d

They are contained in an "if" statement that ensures that textIndent < 0 and so the min will never be 0.

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


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154311 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120051> Remove the Mail thread workaround

Reviewed by Sam Weinig.

Remove the workaround for a very old version of Mail added in r39455.

* WebView/WebArchive.mm:
(-[WebArchive initWithMainResource:subresources:subframeArchives:]):
(-[WebArchive mainResource]):
(-[WebArchive subresources]):
(-[WebArchive subframeArchives]):
* WebView/WebFrameView.mm:
(-[WebFrameView initWithFrame:]):
* WebView/WebResource.mm:
(-[WebResource data]):
(-[WebResource URL]):
(-[WebResource MIMEType]):
(-[WebResource textEncodingName]):
(-[WebResource frameName]):
(-[WebResource _ignoreWhenUnarchiving]):
(-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
(-[WebResource _suggestedFilename]):
(-[WebResource _response]):
(-[WebResource _stringValue]):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore: https://bugs.webkit.org/show_bug.cgi?id=120034
Remove custom getOwnPropertyDescriptor for global objects

Reviewed by Geoff Garen.

Fix attributes of JSC SynbolTableObject entries, ensure that cross frame access is safe, and suppress prototype chain walk.

* runtime/JSGlobalObject.cpp:
    - Remove custom getOwnPropertyDescriptor implementation.
* runtime/JSSymbolTableObject.h:
(JSC::symbolTableGet):
    - The symbol table does not store the DontDelete attribute, we should be adding it back in.
* runtime/PropertyDescriptor.h:
    - JSDOMWindow walks the prototype chain on own access. This is bad, but for now workaround for the getOwnPropertyDescriptor case.
* runtime/PropertySlot.h:
(JSC::PropertySlot::setUndefined):
    - This is used by WebCore when blocking access to properties on cross-frame access.
      Mark blocked properties as read-only, non-configurable to prevent defineProperty.

Source/WebCore: <https://webkit.org/b/120041> Remove superfluous min calls in RenderBlock::computeOverflow

Patch by Ryosuke Niwa <rniwa@webkit.org> on 2013-08-19
Reviewed by Simon Fraser.

Merge https://chromium.googlesource.com/chromium/blink/+/29cad35d6b4642804e6b7c1a30f0b4435dd7a71d

They are contained in an "if" statement that ensures that textIndent < 0 and so the min will never be 0.

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



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120049> Delete code for Snow Leopard

Reviewed by Benjamin Poulain.

Source/WebCore:

Delete all the code for Mac OS 10.6. Nobody builds on Snow Leopard at this point.

* WebCore.exp.in:
* WebCore.xcodeproj/project.pbxproj:
* editing/mac/EditorMac.mm:
(WebCore::Editor::pasteWithPasteboard):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::populate):
* platform/LocalizedStrings.cpp:
(WebCore::truncatedStringForLookupMenuItem):
(WebCore::contextMenuItemTagSearchWeb):
(WebCore::contextMenuItemTagLookUpInDictionary):
* platform/MemoryPressureHandler.cpp:
* platform/audio/mac/AudioBusMac.mm:
(WebCore::AudioBus::loadPlatformResource):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayer::acceleratesDrawing):
(PlatformCALayer::setAcceleratesDrawing):
(PlatformCALayer::contentsScale):
(PlatformCALayer::setContentsScale):
(PlatformCALayer::synchronouslyDisplayTilesInRect):
* platform/graphics/ca/mac/TileController.mm:
(WebCore::TileController::setScale):
(WebCore::TileController::setAcceleratesDrawing):
(WebCore::TileController::createTileLayer):
* platform/graphics/cg/ImageBufferDataCG.cpp:
(WebCore::ImageBufferData::getData):
(WebCore::ImageBufferData::putData):
* platform/graphics/cg/ImageBufferDataCG.h:
* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::platformAddPathForRoundedRect):
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::setFont):
* platform/graphics/mac/FontMac.mm:
(WebCore::showGlyphsWithAdvances):
* platform/graphics/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawLineForDocumentMarker):
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::createQTMovie):
(WebCore::MediaPlayerPrivateQTKit::layerHostChanged):
* platform/graphics/mac/WebLayer.mm:
(drawLayerContents):
* platform/mac/CursorMac.mm:
(WebCore::Cursor::ensurePlatformCursor):
* platform/mac/EmptyProtocolDefinitions.h: Removed.
* platform/mac/MemoryPressureHandlerMac.mm:
(WebCore::MemoryPressureHandler::releaseMemory):
* platform/mac/NSScrollerImpDetails.h:
* platform/mac/PlatformEventFactoryMac.mm:
(WebCore::momentumPhaseForEvent):
(WebCore::phaseForEvent):
* platform/mac/ScrollAnimatorMac.mm:
* platform/mac/SharedTimerMac.mm:
* platform/mac/WebCoreSystemInterface.h:
* platform/mac/WebCoreSystemInterface.mm:
* platform/network/mac/ResourceHandleMac.mm:
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
* platform/text/cf/HyphenationCF.cpp:
* platform/text/mac/HyphenationMac.mm: Removed.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::containsPaintedContent):
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):

Source/WebKit/mac:

* DefaultDelegates/WebDefaultContextMenuDelegate.mm:
(-[WebDefaultUIDelegate menuItemWithTag:target:representedObject:]):
(-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
* Misc/WebNSControlExtras.m:
(-[NSControl sizeToFitAndAdjustWindowHeight]):
* Misc/WebNSFileManagerExtras.mm:
* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::shouldEraseMarkersAfterChangeSelection):
(WebEditorClient::getGuessesForWord):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchDidLayout):
(WebFrameLoaderClient::provisionalLoadStarted):
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
* WebKitPrefix.h:
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView scrollWheel:]):
* WebView/WebFullScreenController.mm:
(convertRectToScreen):
(-[WebFullScreenController finishedEnterFullScreenAnimation:]):
(-[WebFullScreenController exitFullScreen]):
* WebView/WebHTMLView.mm:
(-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
(-[WebHTMLView removeMouseMovedObserver]):
(-[WebHTMLView windowDidBecomeKey:]):
(-[WebHTMLView windowDidResignKey:]):
* WebView/WebView.mm:
(-[WebView _deviceScaleFactor]):

Source/WebKit2:

* NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::overrideSystemProxies):
(WebKit::NetworkProcess::platformInitializeNetworkProcess):
* WebKit2Prefix.h:

Source/WTF:

* wtf/FastMalloc.cpp:
(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
* wtf/FeatureDefines.h:
* wtf/Platform.h:

Tools:

* DumpRenderTree/mac/CheckedMalloc.cpp:
(protectionOfRegion):
(makeLargeMallocFailSilently):
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetDefaultsToConsistentValues):
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
(-[DumpRenderTreeDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
* DumpRenderTree/mac/FrameLoadDelegate.mm:
(testPathFromURL):
(-[FrameLoadDelegate webView:didStartProvisionalLoadForFrame:]):
* DumpRenderTree/mac/LayoutTestHelper.m:
* DumpRenderTree/mac/TestRunnerMac.mm:
* WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/InjectedBundle/mac/InjectedBundlePageMac.mm:
(WTR::testPathFromURL):
(WTR::InjectedBundlePage::platformDidStartProvisionalLoadForFrame):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154314 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/119991> change usage of calculateUTCOffset()/calculateDSTOffset  to calculateLocalTimeOffset

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-08-19
Reviewed by Darin Adler.

Resolving code error.

* html/BaseDateAndTimeInputType.cpp:
(WebCore::BaseDateAndTimeInputType::defaultValueForStepUp):
* html/MonthInputType.cpp:
(WebCore::MonthInputType::defaultValueForStepUp):
* html/TimeInputType.cpp:
(WebCore::TimeInputType::defaultValueForStepUp):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154315 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Cairo] Canvas putImageData is not working as expected
https://bugs.webkit.org/show_bug.cgi?id=119992

Patch by Hurnjoo Lee <hurnjoo.lee@samsung.com> on 2013-08-19
Reviewed by Darin Adler.

Source/WebCore:

ImageBufferCairo::putImageArray didn't perform pre-multiply in case of zero alpha value.
If the alpha value is not 255, image data should always be pre-multiplied.

Test: fast/canvas/canvas-putImageData-zero-alpha.html

* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::putByteArray):

LayoutTests:

Add a ref test that ensures that putImageData of canvas with zero alpha work correctly.

* fast/canvas/canvas-putImageData-zero-alpha-expected.html: Added.
* fast/canvas/canvas-putImageData-zero-alpha.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Windows build fix after r154314.

* platform/graphics/cg/PathCG.cpp:
(WebCore::Path::platformAddPathForRoundedRect):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154317 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/117584> [GTK][WK1] http/tests/loading/unfinished-load-back-to-cached-page-callbacks.html is failing

Update DumpRenderTree to handle the WEBKIT_LOAD_FAILED status,
printing didFailLoadWithError.

Tools:

Behave like other ports, and handle WEBKIT_LOAD_FAILED status in
DumpRenderTree, printing didFailLoadWithError.

* DumpRenderTree/gtk/DumpRenderTree.cpp:
(webFrameLoadStatusNotified):

LayoutTests:

Adding that print makes
http/tests/loading/unfinished-load-back-to-cached-page-callbacks.html
and
http/tests/loading/unfinished-main-resource-back-to-cached-page-callbacks.html,
although it requires to modify the expected results for
http/tests/loading/pdf-commit-load-callbacks.html.

* platform/gtk-wk1/TestExpectations: Unskip
http/tests/loading/unfinished-load-back-to-cached-page-callbacks.html
and
http/tests/loading/unfinished-main-resource-back-to-cached-page-callbacks.html
* platform/gtk/http/tests/loading/pdf-commit-load-callbacks-expected.txt:
Update the expected results.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154318 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Added missing Reviewed By line.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154319 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/119969> REGRESSION (r154232): Crash on the japantimes.co.jp

Source/WebCore: 

Reviewed by Andreas Kling.
        
PseudoElement no longer has parent and calling Element::insertedInto for them crashes as it tries to access it.

Normally there are no pseudo elements when Element::insertedInto() is invoked as they get detached and attached
along with rendering. However in this case the page inserts a <style> that uses ::before along with an element
that it applies to. Stylesheet insertion triggers synchronous style recalc that attaches rendering to all newly
insered elements. Later Element::insertedInto gets called for the element that has pseudo element and we crash.

Test: fast/css-generated-content/insert-stylesheet-and-pseudo-crash.html

* dom/Element.cpp:
(WebCore::Element::insertedInto):
(WebCore::Element::removedFrom):
        
    Remove calls to insertedInto/removedFrom for pseudo elements. They are not considered to be in document.
    When they are added normally during render tree attach these calls don't happen either.

LayoutTests: 

Reviewed by Andreas Kling.

* fast/css-generated-content/insert-stylesheet-and-pseudo-crash-expected.txt: Added.
* fast/css-generated-content/insert-stylesheet-and-pseudo-crash.html: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154320 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt][WK2] Doesn't build without Plugin-process
https://bugs.webkit.org/show_bug.cgi?id=120060

Reviewed by Jocelyn Turcotte.

Disable netscape plugin api in WebKit2 when the plugin architecture is unsupported for WebKit2.

* Target.pri:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120009> [GTK] Stop button should be added to MiniBrowser

Patch by Anton Obzhirov <a.obzhirov@samsung.com> on 2013-08-20
Reviewed by Martin Robinson.

Added stop button in MiniBrowser

* MiniBrowser/gtk/BrowserWindow.c:
(reloadOrStopCallback): Callback to handle stop or reload button click.
(webViewLoadProgressChanged): Update reload or stop button icon.
(browser_window_init): Save button pointer for further icon updates.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120023> REGRESSION(r154257): svg/custom/bug78807.svg and svg/custom/use-invalid-style.svg failing

Source/WebCore: 

Reviewed by Andreas Kling.

* xml/XMLErrors.cpp:
(WebCore::XMLErrors::insertErrorMessageBlock): "reattach" had accidentally turned into "detach" in refactoring.

LayoutTests: 

Reviewed by by Andreas Kling.

* TestExpectations: Unskip.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120062> Missing ensureSpace call in sh4 baseline JIT.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-08-20
Reviewed by Allan Sandfeld Jensen.

branchPtrWithPatch() of baseline JIT must ensure that space is available for its
instructions and two constants now DFG is enabled for sh4 architecture.
These missing ensureSpace calls lead to random crashes.

* assembler/MacroAssemblerSH4.h:
(JSC::MacroAssemblerSH4::branchPtrWithPatch):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154324 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120056> [GTK][ARM] enable DFG_JIT

Patch by Víctor Manuel Jáquez Leal <vjaquez@igalia.com> on 2013-08-20
Reviewed by Martin Robinson.

Enable DFG_JIT in GTK+ platform for ARM/Thumb architecture

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<https://webkit.org/b/120025> REGRESSION (r154254): fast/frames/frameset-frameborder-inheritance.html failing on Apple MountainLion Debug WK1 (Tests)

Reviewed by Anders Carlsson.

Source/WebCore: 

* html/HTMLDocument.cpp:
(WebCore::HTMLDocument::isFrameSet):
* html/HTMLFrameElement.cpp:
(WebCore::HTMLFrameElement::didAttachRenderers):
        
    Make helper public in HTMLFrameSetElement.

* html/HTMLFrameSetElement.cpp:
(WebCore::HTMLFrameSetElement::findContaining):
        
    Static function for finding containing frameset, if any.

(WebCore::HTMLFrameSetElement::willAttachRenderers):
        
    This broke in refactoring. We should exit the loop when the first containing frameset is found. Fix by refactoring more.

* html/HTMLFrameSetElement.h:
(WebCore::isHTMLFrameSetElement):
(WebCore::toHTMLFrameSetElement):
        
    Add casting functions.

* rendering/RenderFrameSet.cpp:
(WebCore::RenderFrameSet::frameSet):

LayoutTests: 

* platform/mac/TestExpectations: Unskip.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@154326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Merge branch 'master' into javascriptcore_jsexport_api
Merge remote-tracking branch 'appcelerator/javascriptcore_jsexport_api' into javascriptcore_jsexport_api