[Libreoffice-commits] core.git: android/experimental

Siqi Liu me at siqi.fr
Tue Apr 14 06:10:57 PDT 2015


 android/experimental/LOAndroid3/res/values/strings.xml                                |    3 +
 android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java |   17 ++++++----
 android/experimental/LOAndroid3/src/java/org/libreoffice/ToolbarController.java       |   13 +++++++
 3 files changed, 27 insertions(+), 6 deletions(-)

New commits:
commit bbfe124bfb37ac6b99f4016da02bd105c26177d0
Author: Siqi Liu <me at siqi.fr>
Date:   Tue Apr 14 15:10:15 2015 +0200

    disable saving on .tmp files.
    
    Change-Id: I80af505d0dd9a71eda5d640dd336a034288a574d

diff --git a/android/experimental/LOAndroid3/res/values/strings.xml b/android/experimental/LOAndroid3/res/values/strings.xml
index ffce3d8..d7a430e 100644
--- a/android/experimental/LOAndroid3/res/values/strings.xml
+++ b/android/experimental/LOAndroid3/res/values/strings.xml
@@ -8,6 +8,7 @@
     <string name="app_description">LibreOffice Viewer is a document viewer based on LibreOffice.</string>
     <string name="app_credits">http://www.libreoffice.org</string>
     <string name="app_vendor">This release was supplied by $VENDOR.</string>
+    <string name="temp_file_saving_disabled">This file is read-only, saving is disabled.</string>
 
     <string name="about_license">Show License</string>
     <string name="about_notice">Show Notice</string>
@@ -34,6 +35,8 @@
     <!-- Document provider names -->
     <string name="local_documents">Local documents</string>
     <string name="local_file_system">Local file system</string>
+
+    <!-- Edit action names -->
     <string name="action_bold">Bold</string>
     <string name="action_underline">Underline</string>
     <string name="action_italic">Italic</string>
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java
index e0d4098..8f4e480 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/LibreOfficeMainActivity.java
@@ -70,6 +70,11 @@ public class LibreOfficeMainActivity extends ActionBarActivity {
         // Inflate the menu; this adds items to the action bar if it is present.
         getMenuInflater().inflate(R.menu.main, menu);
         mToolbarController.setOptionMenu(menu);
+
+        if (mTempFile != null) {
+            mToolbarController.disableMenuItem(R.id.action_save, true);
+            Toast.makeText(this, getString(R.string.temp_file_saving_disabled), Toast.LENGTH_LONG).show();
+        }
         return super.onCreateOptionsMenu(menu);
     }
 
@@ -124,6 +129,12 @@ public class LibreOfficeMainActivity extends ActionBarActivity {
 
         mMainHandler = new Handler();
 
+        setContentView(R.layout.activity_main);
+
+        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+        setSupportActionBar(toolbar);
+        mToolbarController = new ToolbarController(this, getSupportActionBar(), toolbar);
+
         if (getIntent().getData() != null) {
             if (getIntent().getData().getScheme().equals(ContentResolver.SCHEME_CONTENT)) {
                 if (copyFileToTemp() && mTempFile != null) {
@@ -138,12 +149,6 @@ public class LibreOfficeMainActivity extends ActionBarActivity {
             mInputFile = DEFAULT_DOC_PATH;
         }
 
-        setContentView(R.layout.activity_main);
-
-        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
-        setSupportActionBar(toolbar);
-        mToolbarController = new ToolbarController(this, getSupportActionBar(), toolbar);
-
         toolbar.setNavigationOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
diff --git a/android/experimental/LOAndroid3/src/java/org/libreoffice/ToolbarController.java b/android/experimental/LOAndroid3/src/java/org/libreoffice/ToolbarController.java
index 1201b40..dde1a61 100644
--- a/android/experimental/LOAndroid3/src/java/org/libreoffice/ToolbarController.java
+++ b/android/experimental/LOAndroid3/src/java/org/libreoffice/ToolbarController.java
@@ -38,6 +38,19 @@ public class ToolbarController {
         switchToViewMode();
     }
 
+    public void disableMenuItem(final int menuItemId, final boolean disabled) {
+        LOKitShell.getMainHandler().post(new Runnable() {
+            public void run() {
+                MenuItem menuItem = mOptionsMenu.findItem(menuItemId);
+                if (menuItem != null) {
+                    menuItem.setEnabled(!disabled);
+                } else {
+                    Log.e(LOGTAG, "MenuItem not found.");
+                }
+            }
+        });
+    }
+
     public void onToggleStateChanged(int type, boolean pressed) {
         MenuItem menuItem = null;
         Bitmap icon = null;


More information about the Libreoffice-commits mailing list