[CSS-Regions] OverrideLogicalHeight used by both regions and flexbox
https://bugs.webkit.org/show_bug.cgi?id=118057

Patch by Catalin Badea <badea@adobe.com> on 2013-07-02
Reviewed by David Hyatt.

Source/WebCore:

Remove the use of overrideLogicalContentHeight() from regions and
use a local variable instead. The change was needed to avoid
overlapping with flexbox containers.

Test: fast/regions/autoheight-flexbox.html

* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::validateRegions):
(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::applyBreakAfterContent):
(WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
(WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
(WebCore::RenderFlowThread::addForcedRegionBreak):
* rendering/RenderFlowThread.h:
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::pageLogicalHeight):
(WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
(WebCore::RenderRegion::updateRegionHasAutoLogicalHeightFlag):
(WebCore::RenderRegion::layoutBlock):
(WebCore::RenderRegion::updateLogicalHeight):
* rendering/RenderRegion.h:
(WebCore::RenderRegion::computedAutoHeight):
(WebCore::RenderRegion::setComputedAutoHeight):
(WebCore::RenderRegion::clearComputedAutoHeight):
(WebCore::RenderRegion::hasComputedAutoHeight):
* rendering/RenderView.cpp:

LayoutTests:

Add test for auto-height regions and flexbox containers.

* fast/regions/autoheight-flexbox-expected.html: Added.
* fast/regions/autoheight-flexbox.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152281 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt][WK1] Support WebGL with EGL on Linux
https://bugs.webkit.org/show_bug.cgi?id=118251

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Let GraphicsContext3D work without a GraphicsSurface.

* Target.pri:
* platform/graphics/OpenGLShims.cpp:
(WebCore::getProcAddress):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

Tools:

* qmake/mkspecs/features/features.prf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152282 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix cast-align warnings in WebCore/platform/graphics/texmap/TextureMapperGL.cpp
https://bugs.webkit.org/show_bug.cgi?id=118249

Reviewed by Allan Sandfeld Jensen.

* platform/graphics/texmap/TextureMapperGL.cpp:
(WebCore::BitmapTextureGL::updateContents):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152283 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Simplify SVGTextContentElement::elementFromRenderer()
https://bugs.webkit.org/show_bug.cgi?id=118284

Reviewed by Andreas Kling.

Simplify SVGTextContentElement::elementFromRenderer() by leveraging
SVGElement::isTextContent() methods instead of explicitly checking
for tag names.

No new tests, no behavior change.

* svg/SVGTextContentElement.cpp:
(WebCore::SVGTextContentElement::elementFromRenderer):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Introduce toSVGInlineTextBox
https://bugs.webkit.org/show_bug.cgi?id=118289

Reviewed by Andreas Kling.

As a step to change static_cast with toXXX, static_cast<SVGInlineTextBox*> can
be changed with toSVGInlineTextBox().

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

* rendering/svg/RenderSVGInlineText.cpp:
(WebCore::RenderSVGInlineText::positionForPoint):
* rendering/svg/SVGInlineFlowBox.cpp:
(WebCore::SVGInlineFlowBox::paintSelectionBackground):
(WebCore::SVGInlineFlowBox::paint):
(WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
* rendering/svg/SVGInlineTextBox.h:
(WebCore::toSVGInlineTextBox):
* rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::writeSVGInlineTextBoxes):
* rendering/svg/SVGRootInlineBox.cpp:
(WebCore::SVGRootInlineBox::paint):
(WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
(WebCore::SVGRootInlineBox::layoutChildBoxes):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
* rendering/svg/SVGTextQuery.cpp:
(WebCore::SVGTextQuery::collectTextBoxesInFlowBox):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152285 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unexpose EditingPropertiesToInclude in EditingStyle.h after r151772
https://bugs.webkit.org/show_bug.cgi?id=118271

Reviewed by Andreas Kling.

Don't expose EditingPropertiesToInclude in EditingStyle.h and do other cleanups as described below.

No new tests since there should be no behavioral change.

* editing/EditingStyle.cpp:
(WebCore::copyEditingProperties): Use newly defined numAllEditingProperties and numInheritableEditingProperties
instead of a magic number of 2.
(WebCore::copyPropertiesFromComputedStyle): Renamed from editingStyleFromComputedStyle. It now takes ComputedStyleExtractor and
PropertiesToInclude instead of Node* and EditingPropertiesToInclude and handles AllProperties. Also added a helper that takes Node*.
(WebCore::EditingStyle::init): Calls copyPropertiesFromComputedStyle. Unfortunately, we need to special-case EditingPropertiesInEffect
and not set background-color and text-decoration. This is required probably due to a bug elsewhere.
(WebCore::EditingStyle::removeStyleAddedByNode):
(WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
(WebCore::extractEditingProperties): Renamed from EditingStyle::removeAllButEditingProperties; takes PropertiesToInclude instead of
EditingPropertiesToInclude since the only caller of this function, EditingStyle::mergeInlineAndImplicitStyleOfElement, was converting
the type.
(WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
* editing/EditingStyle.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152286 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Skip 3 MathML tests that are failing after r152235.
<http://webkit.org/b/118298>

* TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152287 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Skip fast/dom/timer-throttling-hidden-page.html after r152202.
<http://webkit.org/b/118301>

* TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152288 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Avoid code duplication inside String::append()
https://bugs.webkit.org/show_bug.cgi?id=118290

Reviewed by Anders Carlsson.

The implementation of 'append(UChar)' had been repeated inside 'append(LChar)',
this duplication is obviated now.

* wtf/text/WTFString.cpp:
(WTF::String::appendInternal):
(WTF::String::append):
* wtf/text/WTFString.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152289 268f45cc-cd09-0410-ab3c-d52691b4dbfc
is/toHTMLStyleElement should use Element* for its argument
https://bugs.webkit.org/show_bug.cgi?id=118286

Reviewed by Andreas Kling.

To reduce unnecessary call of isElementNode(), this patch replaces argument
of is/toHTMLStyleElement from Node* to Element*. Plus, use Element::hasTagName
in collectActiveStyleSheets function for minor code refactoring since
its cost is cheaper than Node::hasTagName.

* css/CSSStyleSheet.cpp:
(WebCore::isAcceptableCSSStyleSheetParent):
* css/StyleScopeResolver.cpp:
(WebCore::StyleScopeResolver::scopeFor):
* dom/DocumentStyleSheetCollection.cpp:
(WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
* dom/Node.cpp:
(WebCore::Node::numberOfScopedHTMLStyleChildren):
* html/HTMLStyleElement.h:
(WebCore::isHTMLStyleElement):
(WebCore::toHTMLStyleElement):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152290 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Rebaseline background blend mode default test result.

* platform/mac/css3/compositing/background-blend-mode-default-value-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152291 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r152233.
http://trac.webkit.org/changeset/152233
https://bugs.webkit.org/show_bug.cgi?id=118304

hopeful attempt to restore windows buildage (Requested by
kling on #webkit).

* win/tools/vsprops/debugsuffix.props:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152292 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions] No other SVG elements except the SVGRoot must have RegionInfo objects attached
https://bugs.webkit.org/show_bug.cgi?id=118295

Patch by Radu Stavila <stavila@adobe.com> on 2013-07-02
Reviewed by Antti Koivisto.

Only the SVGRoot element can be collected in a named flow. As such, no SVG element below the root should
be attached to a RenderBoxRegionInfo object.

A larger patch's test (https://bugs.webkit.org/show_bug.cgi?id=118300) is failing because of this.
This change will be covered by that test.

* rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
* rendering/RenderObject.h:
(WebCore::RenderObject::isRenderSVGBlock):
* rendering/svg/RenderSVGBlock.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152293 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Added new baselines for GTK after revision r151841 and r151868.

* accessibility/listitem-title-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/listitem-title-expected.txt.
* platform/gtk/accessibility/aria-tab-role-on-buttons-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152294 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix WebKitTestRunner crashes.
https://bugs.webkit.org/show_bug.cgi?id=117630

Reviewed by Darin Adler.

Create static function to dump for WebProcess unresponsiveness status,
and use it before calling TestController::runTest().

Accessing TestController::m_currentInvocation before calling
TestController::runTest() can make crash because the invocation
instance will be assigned at the function.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::run):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::dumpWebProcessUnresponsiveness):
* WebKitTestRunner/TestInvocation.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Added new common expectations for test after r151665.

* accessibility/box-styled-lists-expected.txt: Added shared expectation.
* platform/efl/TestExpectations: Removed failure expectation.
* platform/gtk/TestExpectations: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152296 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Curl] Crash after download.
https://bugs.webkit.org/show_bug.cgi?id=118303

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-07-02
Reviewed by Brent Fulgham.

We need to make sure that the Curl easy handle is removed from the Curl multi handle before it's freed.

* platform/network/curl/CurlDownload.cpp:
(CurlDownloadManager::updateHandleList): Use addToCurl() and removeFromCurl() methods.
(CurlDownloadManager::addToCurl): Add method to add easy handle to multi handle.
(CurlDownloadManager::removeFromCurl): Add method to remove easy handle from multi handle, and then delete the handle.
(CurlDownloadManager::downloadThread): Use removeFromCurl() method.
(CurlDownload::~CurlDownload):
* platform/network/curl/CurlDownload.h: Avoid deleting Curl easy handle in destructor.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152297 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[ATK] Leak: leaks in AccessibilityUIElement
https://bugs.webkit.org/show_bug.cgi?id=118297

Fixed memory leak.

Patch by Brian Holt <brian.holt@samsung.com> on 2013-07-02
Reviewed by Christophe Dumez.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::stringValue):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152298 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove SVGStyledLocatableElement class
https://bugs.webkit.org/show_bug.cgi?id=118283

Reviewed by Dirk Schulze.

Remove SVGStyledLocatableElement class and have SVGGraphicsElement
inherit SVGStyledElement directly instead. SVGStyledLocatableElement
is no longer needed and according to the specification, SVGGraphicsElement
should inherit SVGStyledElement (actually SVGElement once we merge
SVGStyledElement into SVGElement).

No new tests, no behavior change.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.order:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/scripts/CodeGeneratorJS.pm:
(GetGnuVTableOffsetForType):
* svg/SVGAllInOne.cpp:
* svg/SVGElement.cpp:
(WebCore::SVGElement::getBoundingBox):
* svg/SVGElement.h:
* svg/SVGGraphicsElement.cpp:
(WebCore::SVGGraphicsElement::SVGGraphicsElement):
(WebCore::SVGGraphicsElement::parseAttribute):
(WebCore::SVGGraphicsElement::svgAttributeChanged):
* svg/SVGGraphicsElement.h:
* svg/SVGLocatable.cpp:
(WebCore::SVGLocatable::getTransformToElement):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::localCoordinateSpaceTransform):
* svg/SVGStyledLocatableElement.cpp: Removed.
* svg/SVGStyledLocatableElement.h: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@152299 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Windows] Unreviewed build correction for 'DebugSuffix' target.

* JavaScriptCore.vcxproj/LLInt/LLIntAssembly/LLIntAssembly.vcxproj: Must pass the
DEBUGSUFFIX definition to the nmake instance to be available during script processing.



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