Unreviewed. Remove references to SAFARI_THEME from Windows Solution.
<rdar://problem/13258710>

* config.h:
* page/Settings.cpp:
* page/Settings.h:
* platform/win/ScrollbarThemeWin.cpp:
* rendering/RenderThemeWin.cpp:
* WebKitClassFactory.cpp:
* WebView.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143536 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Zoomed, slow-scrolling pages keep recreating tiles when scrolled
https://bugs.webkit.org/show_bug.cgi?id=110379

Source/WebCore:

Reviewed by Tim Horton.

On slow-scrolling pages the TileCache makes the tiles the size of
the visible rect to minimize per-tile painting overhead. If the size
of that rect changes, the TileCache re-creates all the tiles.

This was a problem whem zoomed, because mapping the visible rect
through the scale transform and then rounding it would cause the
size to keep changing, causing lots of tile re-creation.

Fix by carrying the visibleRect around as a FloatRect, and doing
the same for the exposedRect. We then only expand to integers
when computing the tile size. This also fixes an issue where we could
sometimes make extra tiles because of fractional bits of tiles at the edges,
as shown by the test result change.

* platform/graphics/TiledBacking.h:
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::updateVisibleRect):
* platform/graphics/ca/mac/TileCache.h:
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::setVisibleRect):
(WebCore::TileCache::setExposedRect):
(WebCore::TileCache::prepopulateRect):
(WebCore::TileCache::computeTileCoverageRect):
(WebCore::TileCache::tileSizeForCoverageRect):
(WebCore::TileCache::blankPixelCountForTiles):
(WebCore::TileCache::revalidateTiles):
(WebCore::TileCache::ensureTilesForRect):
* platform/graphics/ca/mac/WebTileLayer.mm:
(-[WebTileLayer logFilledFreshTile]):

Source/WebKit2:

Reviewed by Tim Horton.

Make the visible rect and exposed rects passed through
the drawing area to the tile cache FloatRects instead of IntRects.

* UIProcess/API/mac/WKView.mm:
(-[WKView setFrameSize:]):
(-[WKView _updateWindowAndViewFrames]):
(-[WKView enableFrameSizeUpdates]):
(-[WKView setMinimumWidthForAutoLayout:]):
* UIProcess/WebPageProxy.h:
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::viewExposedRectChanged):
* WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::setExposedRect):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::viewExposedRectChanged):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
(TiledCoreAnimationDrawingArea):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::setExposedRect):

LayoutTests:

Reviewed by Tim Horton.

This test now just has one tile, rather than four. There is an apparent issue
with the integral tile cache coverage rect being smaller than the visible rect.
This is caused by rounding when dumping the tile coverage rect.

* platform/mac-wk2/tiled-drawing/tile-size-slow-zoomed-expected.txt:

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