[Qt] REGRESSION(r121339): It broke the build on the Qt Windows bots
https://bugs.webkit.org/show_bug.cgi?id=90081

Buildfix for Qt 4.8 Windows. Use the former path for Qt 4.8, and the newer one for Qt 5.

Reviewed by Noam Rosenthal.

* qmake/mkspecs/features/features.prf:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121346 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r121296): New zero-size background tests asserting on Mac.
<http://webkit.org/b/90071>

Reviewed by Dan Bernstein.

Remove ASSERT(patternTransform.isInvertible()) as this is now a valid scenario.

* platform/graphics/cg/ImageCG.cpp:
(WebCore::Image::drawPattern):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121347 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Blur filter causes issues when scrolling
https://bugs.webkit.org/show_bug.cgi?id=89475

Reviewed by Simon Fraser.

Source/WebCore:

This patch disables the fast scrolling when there is a fixed postioned element that
has a filter applied on its parent layer. Otherwise the scroll blitting will just
copy the outsets of the blur effect.

Test: css3/filters/blur-filter-page-scroll.html

* page/FrameView.cpp:
(WebCore::FrameView::scrollContentsFastPath):

LayoutTests:

Checking that the fixed positioned element repaints correctly when there is a blur filter
applied on its parent layer.

* css3/filters/blur-filter-page-scroll.html: Added.
* platform/chromium/css3/filters/blur-filter-page-scroll-expected.png: Added.
* platform/chromium/css3/filters/blur-filter-page-scroll-expected.txt: Added.
* platform/chromium/TestExpectations: The new test needs to be checked on Windows.
* platform/mac/css3/filters/blur-filter-page-scroll-expected.png: Added.
* platform/mac/css3/filters/blur-filter-page-scroll-expected.txt: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121348 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move CSSWrapShape style resolution from StyleResolver to StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=89668

Patch by Hans Muller <hmuller@adobe.com> on 2012-06-27
Reviewed by Andreas Kling.

Moved the resolution of the shapeInside and shapeOutside CSS properties
from the StyleResolver class to StyleBuilder. This is just refactoring
in preparation for fixing https://bugs.webkit.org/show_bug.cgi?id=89670.

No new tests were required.

* css/StyleBuilder.cpp:
(WebCore):
(ApplyPropertyWrapShape):
(WebCore::ApplyPropertyWrapShape::setValue):
(WebCore::ApplyPropertyWrapShape::applyValue):
(WebCore::ApplyPropertyWrapShape::createHandler):
(WebCore::StyleBuilder::StyleBuilder):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Shadow] Triggers assertion in VisibleSelection::adjustSelectionToAvoidCrossingBoundaries()
https://bugs.webkit.org/show_bug.cgi?id=89918

Reviewed by Ryosuke Niwa.

This patch adds a testcase of selection from Shadow DOM to some elements outside of shadow host.
r121303, which is a patch for another issue, fixed this issue.

* editing/shadow/breaking-editing-boundaries-2-expected.txt: Added.
* editing/shadow/breaking-editing-boundaries-2.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CSS3 calc: blending involving expressions
https://bugs.webkit.org/show_bug.cgi?id=86160

Reviewed by Tony Chang.

Source/WebCore:

If either endpoint of a blend involves a calc expression, we create a new
expression to perform the blend calculation.

Test: css3/calc/transitions.html
      css3/calc/transitions-dependent.html

* platform/Length.cpp:
(WebCore):
(WebCore::Length::blendCalculation):
* platform/Length.h:
(WebCore::Length::blend):
(Length):

LayoutTests:

Removed existing test as it was folded into transitions.html.

* css3/calc/transition-start-end-with-calc-expected.txt: Removed.
* css3/calc/transition-start-end-with-calc.html: Removed.
* css3/calc/transitions-dependent-expected.txt: Added.
* css3/calc/transitions-dependent.html: Added.
* css3/calc/transitions-expected.txt: Added.
* css3/calc/transitions.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions]Change display values that allow regions
https://bugs.webkit.org/show_bug.cgi?id=89759

Patch by Andrei Onea <onea@adobe.com> on 2012-06-27
Reviewed by Tony Chang.

Source/WebCore:

Allow only elements with display values of block, inline-block,
table-cell, table-caption and list-item to become regions, as per
CSSRegions spec: http://dev.w3.org/csswg/css3-regions .
Also added test for checking whether regions are destroyed and/or created
when changing display value.

Test: fast/regions/region-element-display-change.html

* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
* rendering/style/RenderStyle.h:

LayoutTests:

Added checks for more display values, and modified results to reflect proper values that can become
regions. Also created new test for dynamically changing display values, making sure regions are
created or destroyed correctly.
* fast/regions/region-element-display-change-expected.txt: Added.
* fast/regions/region-element-display-change.html: Added.
* fast/regions/region-element-display-restriction-expected.txt:
* fast/regions/script-tests/region-element-display-change.js: Added.
(testElement):
* fast/regions/script-tests/region-element-display-restriction.js:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121352 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix some styling errors in the TestExpecations files.
There were automatically fixed when trying to make
webkit-patch rebaseline-expectations work for non-Chromium ports.

* platform/efl/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121353 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=87513
WebBackForwardList needs an overhaul to consistently and clearly handle error conditions.

Reviewed by Darin Adler.

- We think a null entry might somehow be getting in the list so we now try to prevent that.
- We think a null entry might somehow be in the list so we now null check when indexing into m_entries.
- A lot of index math - especially tracking "no current index" - was implicit or wrong.
- Operating on a WebBackForwardList whose page has been closed is now an explicit no-op.
- The session state data reading and writing code was fragile and needed an overhaul.
- This includes adding a new V1 format of the session data that is easier to validate when reading back in.

* UIProcess/WebBackForwardList.cpp:
(WebKit::WebBackForwardList::~WebBackForwardList):
(WebKit::WebBackForwardList::pageClosed):
(WebKit::WebBackForwardList::addItem):
(WebKit::WebBackForwardList::goToItem):
(WebKit::WebBackForwardList::backListCount):
(WebKit::WebBackForwardList::forwardListCount):
(WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::clear):

* UIProcess/WebBackForwardList.h:
(WebBackForwardList):

* UIProcess/cf/WebBackForwardListCF.cpp:
(WebKit::createEmptySessionHistoryDictionary):
(WebKit::WebBackForwardList::createCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromV0CFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromV1CFDictionaryRepresentation):
(WebKit::extractBackForwardListEntriesFromArray):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121354 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Scale was incorrect when reloading a simple web page after initial load https://bugs.webkit.org/show_bug.cgi?id=88889

Reviewed by Antonio Gomes.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 164442
For FrameLoadTypeStandard load, the layout timer can be fired which can
call dispatchDidFirstVisuallyNonEmptyLayout() after the load Finished
state, in which case the web page will have no chance to zoom to
initial scale. We should give it a chance as well as FrameLoadTypeSame
load.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::shouldZoomToInitialScaleOnLoad):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121355 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Rebaseline svg/text/scaled-font.svg and svg/text/scaling-font-with-geometric-precision.html caused by r121343.

Not reviewed. Build fix.

* platform/chromium-mac-snowleopard/svg/text/scaling-font-with-geometric-precision-expected.png:
* platform/chromium-mac/svg/text/scaled-font-expected.png:
* platform/chromium-mac/svg/text/scaling-font-with-geometric-precision-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121356 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (Safari 5?): Pasting a line into textarea inserts two newlines
https://bugs.webkit.org/show_bug.cgi?id=49288

Reviewed by Tony Chang.

Source/WebCore: 

The bug was caused by positionAvoidingPrecedingNodes getting out of a block when the insertion point is at a line break.
It caused the subsequent code to be misinformed of the insertion position and ended up not pruning the extra line break.

Fixed the bug by checking this special case and bailing out so that we don't crawl out of the enclosing block.
It's similar to checks several lines below it.

Test: editing/pasteboard/copy-paste-pre-line-content.html

* editing/ReplaceSelectionCommand.cpp:
(WebCore::positionAvoidingPrecedingNodes):

LayoutTests: 

Add a test regerssion test for copying & pasting a line in pre into textarea twice.

* editing/pasteboard/copy-paste-pre-line-content-expected.txt: Added.
* editing/pasteboard/copy-paste-pre-line-content.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121357 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Let Xcode have its own way.

* WebCore.xcodeproj/project.pbxproj:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121358 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector [JSC]: Implement ScriptCallStack::stackTrace
https://bugs.webkit.org/show_bug.cgi?id=40118

Patch by Anthony Scian <ascian@rim.com> on 2012-06-27
Reviewed by Yong Li.

Source/JavaScriptCore:

Added member functions to expose function name, urlString, and line #.
Refactored toString to make use of these member functions to reduce
duplicated code for future maintenance.

Manually tested refactoring of toString by tracing thrown exceptions.

* interpreter/Interpreter.h:
(StackFrame):
(JSC::StackFrame::toString):
(JSC::StackFrame::friendlySourceURL):
(JSC::StackFrame::friendlyFunctionName):
(JSC::StackFrame::friendlyLineNumber):

Source/WebCore:

Implemented stub for createScriptCallStack to call into
Interpreter and extract the current stack frames, iterate
through the frames and create the return result required.

No new tests, manually tested thrown exception and inspector
tracebacks.

* bindings/js/ScriptCallStackFactory.cpp:
(WebCore::createScriptCallStack):

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