diff --git a/app/src/main/java/at/tomtasche/reader/ui/activity/DocumentFragment.java b/app/src/main/java/at/tomtasche/reader/ui/activity/DocumentFragment.java index da74a72eb723..8a83e61a557f 100644 --- a/app/src/main/java/at/tomtasche/reader/ui/activity/DocumentFragment.java +++ b/app/src/main/java/at/tomtasche/reader/ui/activity/DocumentFragment.java @@ -166,8 +166,7 @@ public void onCreateMenu(@NonNull Menu menu, @NonNull MenuInflater menuInflater) // the other menu items are dynamically enabled based on the loaded document if (lastResult != null) { - // TODO - toggleDocumentMenu(true, true); + prepareMenu(lastResult.loaderType, lastResult.options.fileType); } } @@ -325,6 +324,30 @@ public void run() { menu.findItem(R.id.menu_tts).setVisible(enabled); } + private void prepareMenu(FileLoader.LoaderType loaderType, String fileType) { + boolean isEditEnabled = false; + boolean isDarkModeSupported = true; + + if (loaderType == FileLoader.LoaderType.CORE) { + isEditEnabled = true; + + // Edit is currently broken for ODS spreadsheets + // See: https://github.com/opendocument-app/OpenDocument.droid/issues/442 + if (fileType != null && fileType.startsWith("application/vnd.oasis.opendocument.spreadsheet")) { + isEditEnabled = false; + } + + // Edit is not supported for PDF documents + if (fileType != null && fileType.startsWith("application/pdf")) { + isEditEnabled = false; + isDarkModeSupported = false; + } + } + + toggleDocumentMenu(true, isEditEnabled); + pageView.toggleDarkMode(isDarkModeSupported); + } + private void requestInAppRating(Activity activity) { analyticsManager.report("in_app_review_eligible");