diff --git a/app/src/main/java/com/gsnathan/pdfviewer/MainActivity.java b/app/src/main/java/com/gsnathan/pdfviewer/MainActivity.java
index 8b62c55..8b32b14 100755
--- a/app/src/main/java/com/gsnathan/pdfviewer/MainActivity.java
+++ b/app/src/main/java/com/gsnathan/pdfviewer/MainActivity.java
@@ -259,10 +259,12 @@ void configurePdfViewAndLoad(PDFView.Configurator viewConfigurator) {
} else {
viewBinding.pdfView.setBackgroundColor(0xFF212121);
}
+ float maxZoom = (float)(prefManager.getInt("max_zoom_pref", 4) + 1);
+ float midZoom = Math.min(2.0f, maxZoom);
viewBinding.pdfView.useBestQuality(prefManager.getBoolean("quality_pref", false));
viewBinding.pdfView.setMinZoom(0.5f);
- viewBinding.pdfView.setMidZoom(2.0f);
- viewBinding.pdfView.setMaxZoom(5.0f);
+ viewBinding.pdfView.setMidZoom(midZoom);
+ viewBinding.pdfView.setMaxZoom(maxZoom);
viewConfigurator
.defaultPage(pageNumber)
.onPageChange(this::setCurrentPage)
diff --git a/app/src/main/java/com/gsnathan/pdfviewer/SettingsActivity.java b/app/src/main/java/com/gsnathan/pdfviewer/SettingsActivity.java
index 2a004c5..d8414de 100644
--- a/app/src/main/java/com/gsnathan/pdfviewer/SettingsActivity.java
+++ b/app/src/main/java/com/gsnathan/pdfviewer/SettingsActivity.java
@@ -6,6 +6,7 @@
import android.os.Build;
import android.os.Bundle;
import android.preference.Preference;
+import android.preference.PreferenceManager;
import android.util.Log;
import android.util.TypedValue;
import android.view.MenuItem;
@@ -13,6 +14,7 @@
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.widget.Toolbar;
+import androidx.preference.SeekBarPreference;
import com.jaredrummler.cyanea.app.CyaneaPreferenceActivity;
@@ -51,6 +53,19 @@ private void setupShowInLauncherPreference() {
}
});
}
+
+ Preference seekBar = (Preference)findPreference("max_zoom_pref");
+ int current_value = PreferenceManager.getDefaultSharedPreferences(this).getInt("max_zoom_pref",5);
+ String seekBarTitle = getResources().getString(R.string.maximum_zoom) + " " + String.valueOf(++current_value);
+ seekBar.setTitle(seekBarTitle);
+ seekBar.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object o) {
+ final int progress = Integer.valueOf(String.valueOf(o)) + 1;
+ preference.setTitle(getResources().getString(R.string.maximum_zoom) + " " + progress);
+ return true;
+ }
+ });
}
private void setOptionsListTopMargin() {
diff --git a/app/src/main/java/com/gsnathan/pdfviewer/Utils.java b/app/src/main/java/com/gsnathan/pdfviewer/Utils.java
index c422898..298e044 100755
--- a/app/src/main/java/com/gsnathan/pdfviewer/Utils.java
+++ b/app/src/main/java/com/gsnathan/pdfviewer/Utils.java
@@ -52,7 +52,8 @@ static void showLog(AppCompatActivity context) {
new WhatsNewItem("Full screen mode", "A new button has been added to the bottom bar to read PDFs in full screen!", R.drawable.star_icon),
new WhatsNewItem("Keep the screen on while reading", "You can enable this feature in Settings.", R.drawable.star_icon),
new WhatsNewItem("Sharing improvements and fixes", "Including better support for third-party share dialogs.", R.drawable.star_icon),
- new WhatsNewItem("Bugs", "A bunch of bug fixes and robustness improvements.", R.drawable.star_icon)
+ new WhatsNewItem("Bugs", "A bunch of bug fixes and robustness improvements.", R.drawable.star_icon),
+ new WhatsNewItem("Custom maximum zoom", "You can now set the maximum zoom.", R.drawable.star_icon)
);
log.setTitleColor(Color.BLACK);
log.setTitleText(context.getResources().getString(R.string.appChangelog));
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index 4a0e451..2e16ccd 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -73,5 +73,6 @@
Password errata.
Modalità scura per il PDF
Mantieni lo schermo acceso
+ Zoom massimo:
Questa app non raccoglie alcun dato.\nI seguenti permessi sono richiesti per fornire specifiche funzionalità dell\'applicazione:\n- Internet: aprire i PDF tramite link\n- Archiviazione: aprire file dalla memoria interna, salvare i PDF aperti tramite link
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 32b3c5e..a451703 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -121,5 +121,6 @@
Dark theme for PDF
Keep the screen on
+ Maximum zoom:
This app does not collect any data.\nThe following permissions are required to provide specific features in the app:\n- Internet: open PDFs through links\n- Storage: open files from storage, save PDFs opened through links
\ No newline at end of file
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index fa19ec7..443b48e 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -1,6 +1,6 @@
-
+
+
+