diff options
Diffstat (limited to 'android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java')
-rw-r--r-- | android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java index 528f419d7c25..e5765e6ebdeb 100644 --- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java +++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LOKitThread.java @@ -61,7 +61,7 @@ public class LOKitThread extends Thread { LOKitShell.hideProgressSpinner(); } - private boolean load(String filename) { + private boolean loadDocument(String filename) { if (mApplication == null) { mApplication = LibreOfficeMainActivity.mAppContext; } @@ -69,10 +69,6 @@ public class LOKitThread extends Thread { mController = mApplication.getLayerController(); mLayerClient = mApplication.getLayerClient(); - if (mTileProvider != null) { - mTileProvider.close(); - } - mTileProvider = TileProviderFactory.create(mController, filename); boolean isReady = mTileProvider.isReady(); if (isReady) { @@ -82,9 +78,16 @@ public class LOKitThread extends Thread { refresh(); LOKitShell.hideProgressSpinner(); } + return isReady; } + public void closeDocument() { + if (mTileProvider != null) { + mTileProvider.close(); + } + } + public void run() { try { while (true) { @@ -95,9 +98,13 @@ public class LOKitThread extends Thread { } private void processEvent(LOEvent event) { + Log.i(LOGTAG, "processEvent: " + event.getTypeString()); switch (event.mType) { case LOEvent.LOAD: - load(event.getFilename()); + loadDocument(event.getFilename()); + break; + case LOEvent.CLOSE: + closeDocument(); break; case LOEvent.VIEWPORT: mViewportMetrics = event.getViewport(); |