[BlackBerry] Use newer version of platform API to implement callOnMainThread
https://bugs.webkit.org/show_bug.cgi?id=91404

Patch by Adam Treat <atreat@rim.com> on 2012-07-16
Reviewed by Yong Li.

Right now we're using an outdated API that involves a virtual function call for no reason.
Use the new API that is much more direct and to the point.

* wtf/blackberry/MainThreadBlackBerry.cpp:
(WTF::scheduleDispatchFunctionsOnMainThread):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122744 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Improve about:memory page
https://bugs.webkit.org/show_bug.cgi?id=87676

Patch by Yong Li <yoli@rim.com> on 2012-07-16
Reviewed by Rob Buis.

Add a table for process memory usage summary for easy read.

* WebCoreSupport/AboutData.cpp:
(WebCore::memoryPage):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122745 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Only apply page scale delta to root scroll layer
https://bugs.webkit.org/show_bug.cgi?id=91374

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-07-16
Reviewed by Adrienne Walker.

Source/WebCore:

When the user pinch-zooms the web page though the Chromium compositor, the
per-layer page scale delta is used to keep track of the difference between the
page scale on the compositor thread versus the main thread. On the next
commit to the main thread these values are reset to 1.

When calculating layer positions, the compositor applies a layer's page scale
delta both to the layer itself as well as all of its children. Since we are
currently updating the page scale delta on all scrollable layers, this results
in scrollable child layers getting scaled multiple times.

This patch changes the compositor to only apply the page scale delta on the
root scroll layer.

New unit test: CCLayerTreeHostImplTest.pageScaleDeltaAppliedToRootScrollLayerOnly

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::setPageScaleFactorAndLimits):
(WebCore::CCLayerTreeHostImpl::setPageScaleDelta):

Source/WebKit/chromium:

New unit test
CCLayerTreeHostImplTest.pageScaleDeltaAppliedToRootScrollLayerOnly to verify
the transformation of child layer while pinch zooming.

* tests/CCLayerTreeHostImplTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122746 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Position grid items by row/column index
https://bugs.webkit.org/show_bug.cgi?id=91293

Reviewed by Ojan Vafai.

Source/WebCore:

Do some initial grid positioning. Only handle the simple case where tracks are
fixed values and don't properly size the grid items. This gives us something to
work with and starts implementing the "Grid Track Sizing Algorithm":
http://dev.w3.org/csswg/css3-grid-layout/#grid-track-sizing-algorithm0

Test: fast/css-grid-layout/place-cell-by-index.html

* rendering/RenderGrid.cpp:
(RenderGrid::GridTrack): Data structure for holding the track size. UsedBreadth matches the terminology
used in the spec.
(WebCore::RenderGrid::layoutBlock): Pull in some boiler plate code and put the
grid specific code in layoutGridItems.
(WebCore::RenderGrid::computedUsedBreadthOfGridTracks): Implement part of the grid track sizing algorithm.
(WebCore::RenderGrid::layoutGridItems): Compute the size of grid tracks, layout and position children.
(WebCore::RenderGrid::findChildLogicalPosition): Map track sizes to the actual position of the child.
* rendering/RenderGrid.h:
* rendering/style/RenderStyle.h: Just return a copy of Length rather than a reference to Length. This seems
more consistent with other getters that return a Length.

LayoutTests:

Add a test for grid layout in each writing mode direction.  The height in vertical writing mode is incorrect for now.

* fast/css-grid-layout/containing-block-grids-expected.html: Scope <p> around text only.
* fast/css-grid-layout/containing-block-grids.html: Fix missing closing </div>.
* fast/css-grid-layout/place-cell-by-index-expected.txt: Added.
* fast/css-grid-layout/place-cell-by-index.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@122747 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Cleanup a bunch of invalid BUG* lines. Rebaseline tests that were straightfoward
rebaselines and update the expectations to match what's actually happening on the bots.

* platform/chromium-linux/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
* platform/chromium-linux/http/tests/misc/slow-loading-image-in-pattern-expected.png:
* platform/chromium-mac-snowleopard/fast/backgrounds/solid-color-context-restore-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/reflections/inline-crash-expected.png: Added.
* platform/chromium-mac-snowleopard/http/tests/misc/slow-loading-image-in-pattern-expected.png: Added.
* platform/chromium-mac/fast/backgrounds/solid-color-context-restore-expected.png: Added.
* platform/chromium-mac/fast/reflections/inline-crash-expected.png: Added.
* platform/chromium-mac/http/tests/misc/slow-loading-image-in-pattern-expected.png: Added.
* platform/chromium-mac/transforms/2d/zoom-menulist-expected.png: Added.
* platform/chromium-win/http/tests/misc/slow-loading-image-in-pattern-expected.png:
* platform/chromium/TestExpectations:
* platform/gtk/TestExpectations:

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