Set the threshold value of tile size for tile partial update.
authorEunsol Park <eunsol47.park@samsung.com>
Thu, 25 Apr 2013 02:51:49 +0000 (11:51 +0900)
committerGerrit Code Review <gerrit2@kim11>
Fri, 26 Apr 2013 08:34:10 +0000 (17:34 +0900)
[Title] Limitation of the tile size on partial update
[Issue#] N/A
[Problem] Aquarium and Toon shading test result regressed due to partial update.
[Cause] Partial update takes even longer than repainting whole tile.
[Solution] Added the threshold value of tile size for tile partial update.

Change-Id: I03a3885d560a1c42a4688042ef3dac4ed02c2afc

Source/WebKit2/WebProcess/WebPage/efl/tizen/TiledBackingStoreRemoteTileTizen.cpp

index bf5505d..3d6d179 100644 (file)
@@ -51,6 +51,12 @@ TiledBackingStoreRemoteTileTizen::TiledBackingStoreRemoteTileTizen(TiledBackingS
 
 static inline bool needUpdateBackBufferPartially(const IntRect& entireRect, const IntRect& dirtyRect)
 {
+    //FIXME: apply partial update only for tiles whoes size is larger than 384*384.
+    //because otherwise, i.e. for small tiles, partial update takes even longer time than repainting whole tile.
+    //we need to tune the threshold tile size through more testing.
+    if (entireRect.width() * entireRect.height() < 147456)
+        return false;
+
     if (entireRect.size() != dirtyRect.size())
         return true;
     return false;