Changeset 77928 in webkit


Ignore:
Timestamp:
Feb 8, 2011 7:08:05 AM (13 years ago)
Author:
andreas.kling@nokia.com
Message:

2011-02-08 Andreas Kling <kling@webkit.org>

Reviewed by Tor Arne Vestbø.

REGRESSION(r77312): Unbreak TiledBackingStore.

Due to an off-by-one error, we were no longer rendering the
rightmost column and bottom row of tiles.

Covered by tst_QGraphicsWebView::widgetsRenderingThroughCache().

  • platform/graphics/TiledBackingStore.cpp: (WebCore::TiledBackingStore::invalidate): (WebCore::TiledBackingStore::updateTileBuffers): (WebCore::TiledBackingStore::paint): (WebCore::TiledBackingStore::createTiles):
Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r77927 r77928  
     12011-02-08  Andreas Kling  <kling@webkit.org>
     2
     3        Reviewed by Tor Arne Vestbø.
     4
     5        REGRESSION(r77312): Unbreak TiledBackingStore.
     6
     7        Due to an off-by-one error, we were no longer rendering the
     8        rightmost column and bottom row of tiles.
     9
     10        Covered by tst_QGraphicsWebView::widgetsRenderingThroughCache().
     11
     12        * platform/graphics/TiledBackingStore.cpp:
     13        (WebCore::TiledBackingStore::invalidate):
     14        (WebCore::TiledBackingStore::updateTileBuffers):
     15        (WebCore::TiledBackingStore::paint):
     16        (WebCore::TiledBackingStore::createTiles):
     17
    1182011-02-08  Sheriff Bot  <webkit.review.bot@gmail.com>
    219
  • trunk/Source/WebCore/platform/graphics/TiledBackingStore.cpp

    r77328 r77928  
    7777    Tile::Coordinate bottomRight = tileCoordinateForPoint(IntPoint(dirtyRect.maxX(), dirtyRect.maxY()));
    7878   
    79     for (unsigned yCoordinate = topLeft.y(); yCoordinate < bottomRight.y(); ++yCoordinate) {
    80         for (unsigned xCoordinate = topLeft.x(); xCoordinate < bottomRight.x(); ++xCoordinate) {
     79    for (unsigned yCoordinate = topLeft.y(); yCoordinate <= bottomRight.y(); ++yCoordinate) {
     80        for (unsigned xCoordinate = topLeft.x(); xCoordinate <= bottomRight.x(); ++xCoordinate) {
    8181            RefPtr<Tile> currentTile = tileAt(Tile::Coordinate(xCoordinate, yCoordinate));
    8282            if (!currentTile)
     
    111111        return;
    112112    }
     113
    113114    // FIXME: In single threaded case, tile back buffers could be updated asynchronously
    114115    // one by one and then swapped to front in one go. This would minimize the time spent
     
    137138    Tile::Coordinate bottomRight = tileCoordinateForPoint(IntPoint(dirtyRect.maxX(), dirtyRect.maxY()));
    138139
    139     for (unsigned yCoordinate = topLeft.y(); yCoordinate < bottomRight.y(); ++yCoordinate) {
    140         for (unsigned xCoordinate = topLeft.x(); xCoordinate < bottomRight.x(); ++xCoordinate) {
     140    for (unsigned yCoordinate = topLeft.y(); yCoordinate <= bottomRight.y(); ++yCoordinate) {
     141        for (unsigned xCoordinate = topLeft.x(); xCoordinate <= bottomRight.x(); ++xCoordinate) {
    141142            Tile::Coordinate currentCoordinate(xCoordinate, yCoordinate);
    142143            RefPtr<Tile> currentTile = tileAt(currentCoordinate);
     
    231232    Tile::Coordinate topLeft = tileCoordinateForPoint(coverRect.location());
    232233    Tile::Coordinate bottomRight = tileCoordinateForPoint(IntPoint(coverRect.maxX(), coverRect.maxY()));
    233     for (unsigned yCoordinate = topLeft.y(); yCoordinate < bottomRight.y(); ++yCoordinate) {
    234         for (unsigned xCoordinate = topLeft.x(); xCoordinate < bottomRight.x(); ++xCoordinate) {
     234    for (unsigned yCoordinate = topLeft.y(); yCoordinate <= bottomRight.y(); ++yCoordinate) {
     235        for (unsigned xCoordinate = topLeft.x(); xCoordinate <= bottomRight.x(); ++xCoordinate) {
    235236            Tile::Coordinate currentCoordinate(xCoordinate, yCoordinate);
    236237            if (tileAt(currentCoordinate))
Note: See TracChangeset for help on using the changeset viewer.