Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorKamil K <kamil@ryuu.eu>2019-08-06 23:14:09 +0300
committerNiedermann IT-Dienstleistungen <stefan-niedermann@users.noreply.github.com>2019-08-11 15:01:12 +0300
commit6f23054f608c13c30b64a813716c95bc3361878a (patch)
tree69be4794f2c05239a68bf915536088f7aa604699 /app
parent5d1a3e617e5d73b1a07937615b857e99d7eb6993 (diff)
Added font size preference.
Diffstat (limited to 'app')
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/BaseNoteFragment.java19
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NoteEditFragment.java2
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NotePreviewFragment.java2
-rw-r--r--app/src/main/res/drawable/ic_format_size_black_24dp.xml5
-rw-r--r--app/src/main/res/values/arrays.xml6
-rw-r--r--app/src/main/res/values/dimens.xml6
-rw-r--r--app/src/main/res/values/strings.xml14
-rw-r--r--app/src/main/res/xml/preferences.xml9
8 files changed, 63 insertions, 0 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/BaseNoteFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/BaseNoteFragment.java
index a8513907..86fa35a2 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/BaseNoteFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/BaseNoteFragment.java
@@ -5,6 +5,7 @@ import android.app.Fragment;
import android.app.FragmentManager;
import android.app.PendingIntent;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.content.pm.ShortcutInfo;
import android.content.pm.ShortcutManager;
import android.graphics.drawable.Icon;
@@ -319,6 +320,24 @@ public abstract class BaseNoteFragment extends Fragment implements CategoryDialo
}
}
+ protected float getFontSizeFromPreferences(SharedPreferences sp) {
+ final String prefValueTiny = getString(R.string.pref_value_font_size_tiny);
+ final String prefValueSmall = getString(R.string.pref_value_font_size_small);
+ final String prefValueMedium = getString(R.string.pref_value_font_size_medium);
+ final String prefValueLarge = getString(R.string.pref_value_font_size_large);
+ String fontSize = sp.getString(getString(R.string.pref_key_font_size), prefValueMedium);
+
+ if (fontSize.equals(prefValueTiny)) {
+ return getResources().getDimension(R.dimen.note_font_size_tiny);
+ } else if (fontSize.equals(prefValueSmall)) {
+ return getResources().getDimension(R.dimen.note_font_size_small);
+ } else if (fontSize.equals(prefValueMedium)) {
+ return getResources().getDimension(R.dimen.note_font_size_medium);
+ } else {
+ return getResources().getDimension(R.dimen.note_font_size_large);
+ }
+ }
+
protected abstract String getContent();
/**
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NoteEditFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NoteEditFragment.java
index 059360bc..05970f12 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NoteEditFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NoteEditFragment.java
@@ -10,6 +10,7 @@ import android.preference.PreferenceManager;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.Log;
+import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
@@ -155,6 +156,7 @@ public class NoteEditFragment extends BaseNoteFragment {
editContent.setCustomSelectionActionModeCallback(new StyleCallback(this.editContent));
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext());
+ editContent.setTextSize(TypedValue.COMPLEX_UNIT_PX, getFontSizeFromPreferences(sp));
if (sp.getBoolean(getString(R.string.pref_key_font), false)) {
editContent.setTypeface(Typeface.MONOSPACE);
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NotePreviewFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NotePreviewFragment.java
index 96240aa3..0dbf8d0d 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NotePreviewFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/NotePreviewFragment.java
@@ -6,6 +6,7 @@ import android.os.Bundle;
import android.preference.PreferenceManager;
import android.text.method.LinkMovementMethod;
import android.util.Log;
+import android.util.TypedValue;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
@@ -100,6 +101,7 @@ public class NotePreviewFragment extends BaseNoteFragment {
noteContent.setMovementMethod(LinkMovementMethod.getInstance());
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext());
+ noteContent.setTextSize(TypedValue.COMPLEX_UNIT_PX, getFontSizeFromPreferences(sp));
if (sp.getBoolean(getString(R.string.pref_key_font), false)) {
noteContent.setTypeface(Typeface.MONOSPACE);
}
diff --git a/app/src/main/res/drawable/ic_format_size_black_24dp.xml b/app/src/main/res/drawable/ic_format_size_black_24dp.xml
new file mode 100644
index 00000000..49293372
--- /dev/null
+++ b/app/src/main/res/drawable/ic_format_size_black_24dp.xml
@@ -0,0 +1,5 @@
+<vector android:autoMirrored="true" android:height="24dp"
+ android:tint="#666666" android:viewportHeight="24.0"
+ android:viewportWidth="24.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
+ <path android:fillColor="#FF000000" android:pathData="M9,4v3h5v12h3L17,7h5L22,4L9,4zM3,12h3v7h3v-7h3L12,9L3,9v3z"/>
+</vector>
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 307afaeb..3c08c1cd 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -5,4 +5,10 @@
<item>@string/pref_value_mode_preview</item>
<item>@string/pref_value_mode_last</item>
</string-array>
+ <string-array name="fontSize_values">
+ <item>@string/pref_value_font_size_tiny</item>
+ <item>@string/pref_value_font_size_small</item>
+ <item>@string/pref_value_font_size_medium</item>
+ <item>@string/pref_value_font_size_large</item>
+ </string-array>
</resources> \ No newline at end of file
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 6ddd571f..41784f68 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -12,6 +12,12 @@
<dimen name="primary_font_size">16sp</dimen>
<dimen name="secondary_font_size">14sp</dimen>
+ <!-- Font Sizes -->
+ <dimen name="note_font_size_tiny">14sp</dimen>
+ <dimen name="note_font_size_small">16sp</dimen>
+ <dimen name="note_font_size_medium">18sp</dimen>
+ <dimen name="note_font_size_large">22sp</dimen>
+
<!-- Widgets -->
<dimen name="widget_margin">8dp</dimen>
<dimen name="widget_single_note_padding">10dp</dimen>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 5a1d21cd..09b4eebb 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -56,6 +56,7 @@
<string name="settings_note_mode">Display mode for notes</string>
<string name="settings_theme_title">Dark theme</string>
<string name="settings_font_title">Monospace font</string>
+ <string name="settings_font_size">Font size</string>
<string name="settings_wifi_only">Sync only on Wi-Fi</string>
<string name="settings_cert_category">Manage certificates</string>
<string name="settings_cert_trust_system">Trust system certificates</string>
@@ -142,12 +143,17 @@
<string name="pref_key_note_mode" translatable="false">noteMode</string>
<string name="pref_key_theme" translatable="false">darkTheme</string>
<string name="pref_key_font" translatable="false">font</string>
+ <string name="pref_key_font_size" translatable="false">fontSize</string>
<string name="pref_key_wifi_only" translatable="false">wifiOnly</string>
<string name="pref_key_last_note_mode" translatable="false">lastNoteMode</string>
<string name="pref_value_mode_edit" translatable="false">edit</string>
<string name="pref_value_mode_preview" translatable="false">preview</string>
<string name="pref_value_mode_last" translatable="false">last</string>
<string name="pref_value_mode_note" translatable="false">note</string>
+ <string name="pref_value_font_size_tiny" translatable="false">tiny</string>
+ <string name="pref_value_font_size_small" translatable="false">small</string>
+ <string name="pref_value_font_size_medium" translatable="false">medium</string>
+ <string name="pref_value_font_size_large" translatable="false">large</string>
<string name="pref_value_theme_light">Light</string>
<string name="pref_value_theme_dark">Dark</string>
<string name="pref_value_font_normal">Normal</string>
@@ -167,6 +173,14 @@
<item>Remember my last selection</item>
</string-array>
+ <!-- Array: font size -->
+ <string-array name="fontSize_entries">
+ <item>Tiny</item>
+ <item>Small</item>
+ <item>Medium</item>
+ <item>Large</item>
+ </string-array>
+
<!-- Plurals -->
<plurals name="ab_selected">
<item quantity="one">%d selected</item>
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index c9b428ac..0a165c38 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -30,6 +30,15 @@
android:key="@string/pref_key_font"
android:title="@string/settings_font_title" />
+ <ListPreference
+ android:defaultValue="@string/pref_value_font_size_medium"
+ android:entries="@array/fontSize_entries"
+ android:entryValues="@array/fontSize_values"
+ android:icon="@drawable/ic_format_size_black_24dp"
+ android:key="@string/pref_key_font_size"
+ android:summary="%s"
+ android:title="@string/settings_font_size" />
+
<SwitchPreference
android:defaultValue="@string/pref_value_wifi_and_mobile"
android:icon="@drawable/ic_sync_black_24dp"