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

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150308 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move Storage member functions out of line
https://bugs.webkit.org/show_bug.cgi?id=116364

Reviewed by Andreas Kling.

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

* storage/Storage.cpp:
(WebCore::Storage::length):
(WebCore::Storage::key):
(WebCore::Storage::getItem):
(WebCore::Storage::setItem):
(WebCore::Storage::removeItem):
(WebCore::Storage::clear):
(WebCore::Storage::contains):
* storage/Storage.h:
(WebCore::Storage::area):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        <rdar://problem/13819878> Disable SharedWorker when in multiple web process model
        https://bugs.webkit.org/show_bug.cgi?id=116359

        Reviewed by Anders Carlsson.

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

        * workers/DefaultSharedWorkerRepository.cpp:
        (WebCore::DefaultSharedWorkerRepository::isAvailable):
        * workers/DefaultSharedWorkerRepository.h:
        * workers/SharedWorkerRepository.cpp:
        (WebCore::SharedWorkerRepository::isAvailable):
        * workers/SharedWorkerStrategy.h:
        (WebCore::SharedWorkerStrategy::isAvailable):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150310 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Get rid of Custom code for Audio global constructor
https://bugs.webkit.org/show_bug.cgi?id=116343

Reviewed by Geoffrey Garen.

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

HTMLAudioElement global constructors are now automatically generated.

No new tests, no behavior change for layout tests.

* bindings/js/JSDOMWindowCustom.cpp:
* html/HTMLAudioElement.idl:
* page/DOMWindow.idl:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150311 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r150294.
http://trac.webkit.org/changeset/150294
https://bugs.webkit.org/show_bug.cgi?id=116369

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

* WebCore.exp.in:
* rendering/InlineFlowBox.h:
* rendering/InlineTextBox.h:
(InlineTextBox):
* rendering/RenderApplet.h:
* rendering/RenderBR.h:
* rendering/RenderBlock.h:
(RenderBlock):
(WebCore::RenderBlock::virtualContinuation):
* rendering/RenderBox.h:
(WebCore::RenderBox::borderBoundingBox):
(RenderBox):
(WebCore::RenderBox::marginLogicalLeft):
(WebCore::RenderBox::marginLogicalRight):
* rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::isBoxModelObject):
* rendering/RenderButton.h:
* rendering/RenderCombineText.h:
* rendering/RenderCounter.h:
* rendering/RenderDeprecatedFlexibleBox.h:
* rendering/RenderDetailsMarker.h:
* rendering/RenderEmbeddedObject.h:
(RenderEmbeddedObject):
(WebCore::RenderEmbeddedObject::isEmbeddedObject):
(WebCore::RenderEmbeddedObject::virtualChildren):
* rendering/RenderFieldset.h:
* rendering/RenderFileUploadControl.h:
* rendering/RenderFlexibleBox.h:
* rendering/RenderFlowThread.h:
* rendering/RenderFrame.h:
* rendering/RenderFrameSet.h:
* rendering/RenderFullScreen.cpp:
* rendering/RenderFullScreen.h:
* rendering/RenderGrid.h:
* rendering/RenderHTMLCanvas.h:
* rendering/RenderIFrame.h:
* rendering/RenderImage.h:
(RenderImage):
(WebCore::RenderImage::isRenderImage):
* rendering/RenderInline.h:
(RenderInline):
(WebCore::RenderInline::virtualContinuation):
(WebCore::RenderInline::virtualChildren):
(WebCore::RenderInline::isRenderInline):
(WebCore::RenderInline::layout):
(WebCore::RenderInline::requiresLayer):
(WebCore::RenderInline::offsetWidth):
(WebCore::RenderInline::offsetHeight):
(WebCore::RenderInline::borderBoundingBox):
(WebCore::RenderInline::dirtyLinesFromChangedChild):
* rendering/RenderLayerModelObject.h:
* rendering/RenderListBox.h:
* rendering/RenderListItem.h:
* rendering/RenderListMarker.h:
* rendering/RenderMedia.h:
(WebCore::RenderMedia::virtualChildren):
(WebCore::RenderMedia::canHaveChildren):
(WebCore::RenderMedia::isMedia):
(WebCore::RenderMedia::isImage):
(WebCore::RenderMedia::requiresForcedStyleRecalcPropagation):
* rendering/RenderMediaControlElements.h:
* rendering/RenderMenuList.h:
* rendering/RenderMeter.h:
* rendering/RenderMultiColumnBlock.h:
* rendering/RenderMultiColumnFlowThread.h:
* rendering/RenderMultiColumnSet.h:
* rendering/RenderNamedFlowThread.h:
* rendering/RenderPart.h:
(RenderPart):
(WebCore::RenderPart::isRenderPart):
(WebCore::RenderPart::renderName):
* rendering/RenderProgress.h:
* rendering/RenderRegion.h:
(WebCore::RenderRegion::isRenderRegion):
* rendering/RenderRegionSet.h:
* rendering/RenderReplaced.h:
(RenderReplaced):
(WebCore::RenderReplaced::renderName):
* rendering/RenderReplica.h:
* rendering/RenderRuby.h:
* rendering/RenderRubyBase.h:
* rendering/RenderRubyRun.h:
* rendering/RenderRubyText.h:
* rendering/RenderScrollbarPart.h:
* rendering/RenderSearchField.h:
* rendering/RenderSlider.h:
* rendering/RenderSnapshottedPlugIn.h:
(RenderSnapshottedPlugIn):
* rendering/RenderTable.h:
(RenderTable):
(WebCore::RenderTable::renderName):
(WebCore::RenderTable::isTable):
(WebCore::RenderTable::avoidsFloats):
* rendering/RenderTableCaption.h:
* rendering/RenderTableCell.h:
* rendering/RenderTableCol.h:
* rendering/RenderTableRow.h:
* rendering/RenderTableSection.h:
* rendering/RenderText.h:
(RenderText):
(WebCore::RenderText::marginLeft):
(WebCore::RenderText::marginRight):
(WebCore::RenderText::styleWillChange):
(WebCore::RenderText::length):
(WebCore::RenderText::paint):
(WebCore::RenderText::layout):
* rendering/RenderTextControl.h:
(RenderTextControl):
(WebCore::RenderTextControl::renderName):
(WebCore::RenderTextControl::isTextControl):
(WebCore::RenderTextControl::avoidsFloats):
* rendering/RenderTextControlMultiLine.h:
* rendering/RenderTextControlSingleLine.h:
(RenderTextControlSingleLine):
(WebCore::RenderTextControlSingleLine::isTextField):
* rendering/RenderTextFragment.h:
* rendering/RenderTextTrackCue.h:
* rendering/RenderVideo.h:
* rendering/RenderView.h:
* rendering/RenderWidget.h:
(RenderWidget):
(WebCore::RenderWidget::isWidget):
* rendering/RenderWordBreak.h:
* rendering/RootInlineBox.h:
(RootInlineBox):
* rendering/mathml/RenderMathMLBlock.h:
* rendering/svg/RenderSVGBlock.h:
(RenderSVGBlock):
* rendering/svg/RenderSVGContainer.h:
(WebCore::RenderSVGContainer::setNeedsBoundariesUpdate):
(WebCore::RenderSVGContainer::virtualChildren):
(WebCore::RenderSVGContainer::isSVGContainer):
(WebCore::RenderSVGContainer::renderName):
(RenderSVGContainer):
(WebCore::RenderSVGContainer::objectBoundingBox):
(WebCore::RenderSVGContainer::strokeBoundingBox):
(WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
* rendering/svg/RenderSVGEllipse.h:
* rendering/svg/RenderSVGForeignObject.h:
* rendering/svg/RenderSVGGradientStop.h:
* rendering/svg/RenderSVGHiddenContainer.h:
(WebCore::RenderSVGHiddenContainer::renderName):
(RenderSVGHiddenContainer):
(WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer):
* rendering/svg/RenderSVGImage.h:
* rendering/svg/RenderSVGInline.h:
(WebCore::RenderSVGInline::renderName):
(WebCore::RenderSVGInline::requiresLayer):
(WebCore::RenderSVGInline::isSVGInline):
(RenderSVGInline):
* rendering/svg/RenderSVGInlineText.h:
* rendering/svg/RenderSVGModelObject.h:
(WebCore::RenderSVGModelObject::requiresLayer):
(RenderSVGModelObject):
* rendering/svg/RenderSVGPath.h:
* rendering/svg/RenderSVGRect.h:
* rendering/svg/RenderSVGResourceClipper.h:
* rendering/svg/RenderSVGResourceContainer.h:
(RenderSVGResourceContainer):
(WebCore::RenderSVGResourceContainer::isSVGResourceContainer):
(WebCore::RenderSVGResourceContainer::toRenderSVGResourceContainer):
* rendering/svg/RenderSVGResourceFilter.h:
* rendering/svg/RenderSVGResourceFilterPrimitive.h:
* rendering/svg/RenderSVGResourceGradient.h:
(RenderSVGResourceGradient):
(WebCore::RenderSVGResourceGradient::resourceBoundingBox):
* rendering/svg/RenderSVGResourceLinearGradient.h:
* rendering/svg/RenderSVGResourceMarker.h:
* rendering/svg/RenderSVGResourceMasker.h:
* rendering/svg/RenderSVGResourcePattern.h:
* rendering/svg/RenderSVGResourceRadialGradient.h:
* rendering/svg/RenderSVGRoot.h:
* rendering/svg/RenderSVGShape.h:
(WebCore::RenderSVGShape::setNeedsBoundariesUpdate):
(WebCore::RenderSVGShape::setNeedsTransformUpdate):
(WebCore::RenderSVGShape::repaintRectInLocalCoordinates):
(WebCore::RenderSVGShape::localToParentTransform):
(WebCore::RenderSVGShape::localTransform):
(WebCore::RenderSVGShape::isSVGShape):
(RenderSVGShape):
(WebCore::RenderSVGShape::objectBoundingBox):
(WebCore::RenderSVGShape::strokeBoundingBox):
* rendering/svg/RenderSVGTSpan.h:
* rendering/svg/RenderSVGText.h:
* rendering/svg/RenderSVGTextPath.h:
* rendering/svg/RenderSVGTransformableContainer.h:
* rendering/svg/RenderSVGViewportContainer.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Share code between WebKit1 and WebKit2 StorageArea subclasses
https://bugs.webkit.org/show_bug.cgi?id=116367

Reviewed by Andreas Kling.

Source/WebCore:

* inspector/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
Remove ec parameter.

* inspector/InspectorDOMStorageAgent.h:
Add forward declaration.

* page/DOMWindow.cpp:
(WebCore::DOMWindow::sessionStorage):
(WebCore::DOMWindow::localStorage):
Storage::StorageArea returns a reference now.

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

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

* storage/Storage.h:
(WebCore::Storage::area):
Return a reference.

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

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

Source/WebKit2:

* WebProcess/Storage/StorageAreaImpl.cpp:
(WebKit::StorageAreaImpl::length):
Remove code that's now in Storage::length.

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

* WebProcess/Storage/StorageAreaImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Only allow 1 WebProcess to hold a PageCache
https://bugs.webkit.org/show_bug.cgi?id=116368
<rdar://problem/13392600>

Reviewed by Geoff Garen & Anders Carlson.

* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::processDidSaveToPageCache):
(WebKit):
(WebKit::WebContext::disconnectProcess):
* UIProcess/WebContext.h:
    - Added m_processWithPageCache, only allow one process to keep a PageCache.
(WebContext):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didSaveToPageCache):
(WebKit):
* UIProcess/WebPageProxy.h:
(WebPageProxy):
* UIProcess/WebPageProxy.messages.in:
    - Forward didSaveToPageCache to the WebProcessProxy.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::addBackForwardItem):
(WebKit::WebProcessProxy::didSaveToPageCache):
(WebKit):
(WebKit::WebProcessProxy::releasePageCache):
    - Forward releasePageCache to the WebProcess.
    - Forward didSaveToPageCache to the WebContext.
* UIProcess/WebProcessProxy.h:
(WebProcessProxy):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::didSaveToPageCache):
    - Forward didSaveToPageCache to the WebPageProxy.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::releasePageCache):
(WebKit):
* WebProcess/WebProcess.h:
(WebProcess):
* WebProcess/WebProcess.messages.in:
    - Added 'ReleasePageCache' to instruct a web process to drop any cached pages.



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