diff options
author | Siqi Liu <me@siqi.fr> | 2015-04-14 15:10:15 +0200 |
---|---|---|
committer | Siqi Liu <me@siqi.fr> | 2015-04-14 15:10:27 +0200 |
commit | bbfe124bfb37ac6b99f4016da02bd105c26177d0 (patch) | |
tree | 0b549dd1bc547de6b358329b1d8be7802f520460 /android | |
parent | 70b74121f06ac1892c81584919c5ee8c359d6b73 (diff) |
disable saving on .tmp files.
Change-Id: I80af505d0dd9a71eda5d640dd336a034288a574d
Diffstat (limited to 'android')
3 files changed, 27 insertions, 6 deletions
diff --git a/android/experimental/LOAndroid3/res/values/strings.xml b/android/experimental/LOAndroid3/res/values/strings.xml index ffce3d845fdb..d7a430e5674f 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 e0d40988dd6b..8f4e48035e5b 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 1201b40bafa4..dde1a614ccc8 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; |