diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.com> | 2014-09-30 13:30:45 +0200 |
---|---|---|
committer | Tomaž Vajngerl <tomaz.vajngerl@collabora.com> | 2014-10-04 17:40:23 +0200 |
commit | 005b8d429c3eac0294d49c5757714575357faae7 (patch) | |
tree | d35077fb8145ce846decd4794940fb339cf6450a /android | |
parent | a4f72f9a07333a8e0818ab2821fea414b5119278 (diff) |
android: clear all tiles on part change (method clearAllTiles)
Change-Id: I4e18fed5167559284bc18235811cb2b1c6c62a4d
Diffstat (limited to 'android')
3 files changed, 11 insertions, 2 deletions
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java index baf12061c5a3..c6ee612ae9b4 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java @@ -53,6 +53,7 @@ public class LOKitThread extends Thread { private void changePart(int partIndex) throws InterruptedException { mTileProvider.changePart(partIndex); + mLayerClient.clearAllTiles(); refresh(); } diff --git a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java index e847c01c9139..28c2bbb14eb7 100644 --- a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java +++ b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/GeckoLayerClient.java @@ -275,6 +275,10 @@ public class GeckoLayerClient implements LayerView.Listener { mRootLayer.reevaluateTiles(mLayerController.getViewportMetrics()); } + public void clearAllTiles() { + mRootLayer.clearAllTiles(); + } + private class AdjustRunnable implements Runnable { public void run() { mPendingViewportAdjust = false; diff --git a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/MultiTileLayer.java b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/MultiTileLayer.java index 14a08e26a3c6..eb1ab5ca4482 100644 --- a/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/MultiTileLayer.java +++ b/android/experimental/LOAndroid3/src/java/org/mozilla/gecko/gfx/MultiTileLayer.java @@ -215,13 +215,13 @@ public class MultiTileLayer extends Layer { if (tileViewPort != newTileViewPort) { tileViewPort = newTileViewPort; - cleanTiles(); + clearMarkedTiles(); addNewTiles(viewportMetrics); markTiles(viewportMetrics); } } - private void cleanTiles() { + private void clearMarkedTiles() { List<SubTile> tilesToRemove = new ArrayList<SubTile>(); for(SubTile tile : mTiles) { if (tile.markedForRemoval) { @@ -269,5 +269,9 @@ public class MultiTileLayer extends Layer { } } } + + public void clearAllTiles() { + mTiles.clear(); + } } |