diff options
author | Tomaž Vajngerl <tomaz.vajngerl@collabora.com> | 2014-09-18 22:10:49 +0200 |
---|---|---|
committer | Tomaž Vajngerl <tomaz.vajngerl@collabora.com> | 2014-09-18 23:05:04 +0200 |
commit | 046e19ef2cb02d11560b5812364aa5211b20e4ac (patch) | |
tree | 761616da2bbdcf98c45bceeb4e12763f2ea6a6e0 | |
parent | 6ca57cb25ef8826aac5584dee5b41b6ad6114555 (diff) |
android: thumbnail as background when tile is not available
Change-Id: Id38e40b3fdb46adeb19e6a1e106775391c5da455
-rw-r--r-- | android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java index e75276da0084..c5918e69b9ce 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java @@ -1,5 +1,6 @@ package org.libreoffice; +import android.graphics.Bitmap; import android.graphics.Rect; import android.graphics.RectF; import android.util.Log; @@ -22,6 +23,7 @@ public class LOKitThread extends Thread { private ViewportMetrics mViewportMetrics; private String mInputFile; private Rect mOldRect; + private boolean mCheckboardImageSet = false; LOKitThread(String inputFile) { mInputFile = inputFile; @@ -115,6 +117,7 @@ public class LOKitThread extends Thread { layerClient.endDrawing(); Log.i(LOGTAG, "tilerender end draw"); + return true; } @@ -128,7 +131,22 @@ public class LOKitThread extends Thread { private boolean initialize() { mApplication = LibreOfficeMainActivity.mAppContext; mTileProvider = new LOKitTileProvider(mApplication.getLayerController(), mInputFile); - return mTileProvider.isReady(); + boolean isReady = mTileProvider.isReady(); + if (isReady) + { + if (!mCheckboardImageSet) { + Log.i(LOGTAG, "Generate thumbnail!"); + Bitmap bitmap = mTileProvider.thumbnail(); + Log.i(LOGTAG, "Done generate thumbnail!"); + if (bitmap != null) { + Log.i(LOGTAG, "Setting checkboard image!"); + mApplication.getLayerController().getView().changeCheckerboardBitmap(bitmap); + Log.i(LOGTAG, "Done setting checkboard image!!"); + mCheckboardImageSet = true; + } + } + } + return isReady; } public void run() { |