Rename `Default font size` to `Font size`. https://redmine.stoutner.com/issues/351
authorSoren Stoutner <soren@stoutner.com>
Wed, 12 Dec 2018 00:14:12 +0000 (17:14 -0700)
committerSoren Stoutner <soren@stoutner.com>
Wed, 12 Dec 2018 00:14:12 +0000 (17:14 -0700)
app/src/main/java/com/stoutner/privacybrowser/activities/MainWebViewActivity.java
app/src/main/java/com/stoutner/privacybrowser/fragments/DomainSettingsFragment.java
app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java
app/src/main/java/com/stoutner/privacybrowser/helpers/ImportExportDatabaseHelper.java
app/src/main/res/values-de/strings.xml
app/src/main/res/values-es/strings.xml
app/src/main/res/values-it/strings.xml
app/src/main/res/values-ru/strings.xml
app/src/main/res/values/strings.xml
app/src/main/res/xml/preferences.xml

index d04e9218f05767e97a49f61d48f79ad9f3d09d3b..16a02ad24b91d17e4086abe081010b0b77a4c246 100644 (file)
@@ -4077,7 +4077,7 @@ public class MainWebViewActivity extends AppCompatActivity implements CreateBook
             SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this);
 
             // Store the general preference information.
-            String defaultFontSizeString = sharedPreferences.getString("default_font_size", getString(R.string.font_size_default_value));
+            String defaultFontSizeString = sharedPreferences.getString("font_size", getString(R.string.font_size_default_value));
             String defaultUserAgentName = sharedPreferences.getString("user_agent", getString(R.string.user_agent_default_value));
             defaultCustomUserAgentString = sharedPreferences.getString("custom_user_agent", getString(R.string.custom_user_agent_default_value));
             boolean defaultSwipeToRefresh = sharedPreferences.getBoolean("swipe_to_refresh", true);
index ad6653c5387644b7d4fec5f39d3d9d70a9700bf0..6061a00e16ada058e2b729b893b72b886763a0bb 100644 (file)
@@ -92,9 +92,9 @@ public class DomainSettingsFragment extends Fragment {
         SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(context);
 
         // Store the default settings.
-        final String defaultUserAgentName = sharedPreferences.getString("user_agent", "Privacy Browser");
-        final String defaultCustomUserAgentString = sharedPreferences.getString("custom_user_agent", "PrivacyBrowser/1.0");
-        String defaultFontSizeString = sharedPreferences.getString("default_font_size", "100");
+        final String defaultUserAgentName = sharedPreferences.getString("user_agent", getString(R.string.user_agent_default_value));
+        final String defaultCustomUserAgentString = sharedPreferences.getString("custom_user_agent", getString(R.string.custom_user_agent_default_value));
+        String defaultFontSizeString = sharedPreferences.getString("font_size", getString(R.string.font_size_default_value));
         boolean defaultSwipeToRefresh = sharedPreferences.getBoolean("swipe_to_refresh", true);
         final boolean defaultNightMode = sharedPreferences.getBoolean("night_mode", false);
         final boolean defaultDisplayWebpageImages = sharedPreferences.getBoolean("display_webpage_images", true);
index 210018cbdb9a0e7d4679df5c09972340a10b8d30..be0d85b4f51a7839d94e849d9099048fbd5ef2a9 100644 (file)
@@ -86,7 +86,7 @@ public class SettingsFragment extends PreferenceFragment {
         final Preference clearFormDataPreference = findPreference("clear_form_data");  // The clear form data preference can be removed once the minimum API >= 26.
         final Preference clearCachePreference = findPreference("clear_cache");
         final Preference homepagePreference = findPreference("homepage");
-        final Preference defaultFontSizePreference = findPreference("default_font_size");
+        final Preference fontSizePreference = findPreference("font_size");
         final Preference swipeToRefreshPreference = findPreference("swipe_to_refresh");
         final Preference downloadWithExternalAppPreference = findPreference("download_with_external_app");
         final Preference displayAdditionalAppBarIconsPreference = findPreference("display_additional_app_bar_icons");
@@ -225,8 +225,8 @@ public class SettingsFragment extends PreferenceFragment {
         // Set the homepage URL as the summary text for the homepage preference.
         homepagePreference.setSummary(savedPreferences.getString("homepage", getString(R.string.homepage_default_value)));
 
-        // Set the default font size as the summary text for the preference.
-        defaultFontSizePreference.setSummary(savedPreferences.getString("default_font_size", getString(R.string.font_size_default_value)) + "%%");
+        // Set the font size as the summary text for the preference.
+        fontSizePreference.setSummary(savedPreferences.getString("font_size", getString(R.string.font_size_default_value)) + "%%");
 
         // Disable the JavaScript preference if Night Mode is enabled.  JavaScript will be enabled for all web pages.
         javaScriptPreference.setEnabled(!nightMode);
@@ -1470,9 +1470,9 @@ public class SettingsFragment extends PreferenceFragment {
                     homepagePreference.setSummary(sharedPreferences.getString("homepage", getString(R.string.homepage_default_value)));
                     break;
 
-                case "default_font_size":
-                    // Update the summary text of `default_font_size`.
-                    defaultFontSizePreference.setSummary(sharedPreferences.getString("default_font_size", getString(R.string.font_size_default_value)) + "%%");
+                case "font_size":
+                    // Update the font size summary text.
+                    fontSizePreference.setSummary(sharedPreferences.getString("font_size", getString(R.string.font_size_default_value)) + "%%");
                     break;
 
                 case "swipe_to_refresh":
index aea1682743a9d72502cea51fb5fff344f4e83997..1312f8a137d3c555273ccc0153d314f93d49e10d 100644 (file)
@@ -38,7 +38,7 @@ public class ImportExportDatabaseHelper {
     public static final String EXPORT_SUCCESSFUL = "Export Successful";
     public static final String IMPORT_SUCCESSFUL = "Import Successful";
 
-    private static final int SCHEMA_VERSION = 2;
+    private static final int SCHEMA_VERSION = 3;
     private static final String PREFERENCES_TABLE = "preferences";
 
     // The preferences constants.
@@ -74,7 +74,7 @@ public class ImportExportDatabaseHelper {
     private static final String CLEAR_FORM_DATA = "clear_form_data";
     private static final String CLEAR_CACHE = "clear_cache";
     private static final String HOMEPAGE = "homepage";
-    private static final String DEFAULT_FONT_SIZE = "default_font_size";
+    private static final String FONT_SIZE = "font_size";
     private static final String SWIPE_TO_REFRESH = "swipe_to_refresh";
     private static final String DOWNLOAD_WITH_EXTERNAL_APP = "download_with_external_app";
     private static final String DISPLAY_ADDITIONAL_APP_BAR_ICONS = "display_additional_app_bar_icons";
@@ -220,7 +220,7 @@ public class ImportExportDatabaseHelper {
                     CLEAR_FORM_DATA + " BOOLEAN, " +
                     CLEAR_CACHE + " BOOLEAN, " +
                     HOMEPAGE + " TEXT, " +
-                    DEFAULT_FONT_SIZE + " TEXT, " +
+                    FONT_SIZE + " TEXT, " +
                     SWIPE_TO_REFRESH + " BOOLEAN, " +
                     DOWNLOAD_WITH_EXTERNAL_APP + " BOOLEAN, " +
                     DISPLAY_ADDITIONAL_APP_BAR_ICONS + " BOOLEAN, " +
@@ -267,7 +267,7 @@ public class ImportExportDatabaseHelper {
             preferencesContentValues.put(CLEAR_FORM_DATA, sharedPreferences.getBoolean(CLEAR_FORM_DATA, true));  // Clear form data can be removed once the minimum API >= 26.
             preferencesContentValues.put(CLEAR_CACHE, sharedPreferences.getBoolean(CLEAR_CACHE, true));
             preferencesContentValues.put(HOMEPAGE, sharedPreferences.getString(HOMEPAGE, context.getString(R.string.homepage_default_value)));
-            preferencesContentValues.put(DEFAULT_FONT_SIZE, sharedPreferences.getString(DEFAULT_FONT_SIZE, context.getString(R.string.font_size_default_value)));
+            preferencesContentValues.put(FONT_SIZE, sharedPreferences.getString(FONT_SIZE, context.getString(R.string.font_size_default_value)));
             preferencesContentValues.put(SWIPE_TO_REFRESH, sharedPreferences.getBoolean(SWIPE_TO_REFRESH, true));
             preferencesContentValues.put(DOWNLOAD_WITH_EXTERNAL_APP, sharedPreferences.getBoolean(DOWNLOAD_WITH_EXTERNAL_APP, false));
             preferencesContentValues.put(DISPLAY_ADDITIONAL_APP_BAR_ICONS, sharedPreferences.getBoolean(DISPLAY_ADDITIONAL_APP_BAR_ICONS, false));
@@ -364,6 +364,30 @@ public class ImportExportDatabaseHelper {
                         } else {
                             importDatabase.execSQL("UPDATE " + PREFERENCES_TABLE + " SET " + DOWNLOAD_WITH_EXTERNAL_APP + " = " + 0);
                         }
+
+                    // Upgrade from schema version 2.
+                    case 2:
+                        // Once the SQLite version is >= 3.25.0 `ALTER TABLE RENAME` can be used.  https://www.sqlite.org/lang_altertable.html  https://www.sqlite.org/changes.html
+                        // https://developer.android.com/reference/android/database/sqlite/package-summary
+                        // In the meantime, we can create a new column with the new name.  There is no need to delete the old column on the temporary import database.
+
+                        // Get a cursor with the current `default_font_size` value.
+                        Cursor importDatabasePreferenceCursor = importDatabase.rawQuery("SELECT default_font_size FROM " + PREFERENCES_TABLE, null);
+
+                        // Move to the beginning fo the cursor.
+                        importDatabasePreferenceCursor.moveToFirst();
+
+                        // Get the current value in `default_font_size`.
+                        String fontSize = importDatabasePreferenceCursor.getString(importDatabasePreferenceCursor.getColumnIndex("default_font_size"));
+
+                        // Close the cursor.
+                        importDatabasePreferenceCursor.close();
+
+                        // Create a new column named `font_size`.
+                        importDatabase.execSQL("ALTER TABLE " + PREFERENCES_TABLE + " ADD COLUMN " + FONT_SIZE + " TEXT");
+
+                        // Place the font size string in the new column.
+                        importDatabase.execSQL("UPDATE " + PREFERENCES_TABLE + " SET " + FONT_SIZE + " = " + fontSize);
                 }
             }
 
@@ -507,7 +531,7 @@ public class ImportExportDatabaseHelper {
                     .putBoolean(CLEAR_FORM_DATA, importPreferencesCursor.getInt(importPreferencesCursor.getColumnIndex(CLEAR_FORM_DATA)) == 1)
                     .putBoolean(CLEAR_CACHE, importPreferencesCursor.getInt(importPreferencesCursor.getColumnIndex(CLEAR_CACHE)) == 1)
                     .putString(HOMEPAGE, importPreferencesCursor.getString(importPreferencesCursor.getColumnIndex(HOMEPAGE)))
-                    .putString(DEFAULT_FONT_SIZE, importPreferencesCursor.getString(importPreferencesCursor.getColumnIndex(DEFAULT_FONT_SIZE)))
+                    .putString(FONT_SIZE, importPreferencesCursor.getString(importPreferencesCursor.getColumnIndex(FONT_SIZE)))
                     .putBoolean(SWIPE_TO_REFRESH, importPreferencesCursor.getInt(importPreferencesCursor.getColumnIndex(SWIPE_TO_REFRESH)) == 1)
                     .putBoolean(DOWNLOAD_WITH_EXTERNAL_APP, importPreferencesCursor.getInt(importPreferencesCursor.getColumnIndex(DOWNLOAD_WITH_EXTERNAL_APP)) == 1)
                     .putBoolean(DISPLAY_ADDITIONAL_APP_BAR_ICONS, importPreferencesCursor.getInt(importPreferencesCursor.getColumnIndex(DISPLAY_ADDITIONAL_APP_BAR_ICONS)) == 1)
index b24512a6ed3548211d641a0cc9c7cbdbe580fc9c..993e1d469eef2b12790205a38a9b93bfc99b01c0 100644 (file)
         <string name="custom_url">Eigene URL</string>
     <string name="general">Allgemein</string>
         <string name="homepage">Startseite</string>
-        <string name="default_font_size">Standard-Schriftgröße</string>
-        <string-array name="default_font_size_entries">
+        <string name="font_size_preference">Schriftgröße</string>
+        <string-array name="font_size_entries">
             <item>25%</item>
             <item>50%</item>
             <item>75%</item>
index 76e4072a5d713e062f443be1f168f01d60a7962a..3aafa14dfa7b3615ae615fb6e4aabbd9c6e5dfba 100644 (file)
         <string name="clear_cache_summary">Borra la caché de WebView.</string>
     <string name="general">General</string>
         <string name="homepage">Página de inicio</string>
-        <string name="default_font_size">Tamaño de fuente por defecto</string>
-        <string-array name="default_font_size_entries">
+        <string name="font_size_preference">Tamaño de fuente</string>
+        <string-array name="font_size_entries">
             <item>25%</item>
             <item>50%</item>
             <item>75%</item>
index 974612c4a68648a9eebe0dae4dd55abb507297cd..faa7f34b5b9f63e86e03e85de7f9b551719e2f13 100644 (file)
         <string name="clear_cache_summary">Cancella solo la cache di WebView.</string>
     <string name="general">Generale</string>
         <string name="homepage">Homepage</string>
-        <string name="default_font_size">Dimensione standard carattere</string>
-        <string-array name="default_font_size_entries">
+        <string name="font_size_preference">Dimensione font</string>
+        <string-array name="font_size_entries">
             <item>25%</item>
             <item>50%</item>
             <item>75%</item>
index e6e7415fb78cd01306504a74b0836887af50f76c..2d0949390c87c4488d38f518cec7df852b9f609c 100644 (file)
         <string name="clear_cache_summary">Очищает кэш WebView.</string>
     <string name="general">Общее</string>
         <string name="homepage">Домашняя страница</string>
-        <string name="default_font_size">Размер шрифта по умолчанию</string>
-        <string-array name="default_font_size_entries">
+        <string name="font_size_preference">Размер шрифта</string>
+        <string-array name="font_size_entries">
             <item>25%</item>
             <item>50%</item>
             <item>75%</item>
index 6359951419a21dcf0f02b60184128da3ef873fec..84de2f09c249bdeea9bb563d7217d97d384c7d09 100644 (file)
         <string name="clear_cache_summary">Clears WebView’s cache.</string>
     <string name="general">General</string>
         <string name="homepage">Homepage</string>
-        <string name="default_font_size">Default font size</string>
-        <string-array name="default_font_size_entries">
+        <string name="font_size_preference">Font size</string>
+        <string-array name="font_size_entries">
             <item>25%</item>
             <item>50%</item>
             <item>75%</item>
             <item>175%</item>
             <item>200%</item>
         </string-array>
-        <string-array name="default_font_size_entry_values" translatable="false">  <!-- None of the items in this `string-array` should be translated. -->
+        <string-array name="font_size_entry_values" translatable="false">  <!-- None of the items in this `string-array` should be translated. -->
             <item>25</item>
             <item>50</item>
             <item>75</item>
index 7741cec80d0f50a8471a0a1222fa3d8905ea1fb3..b0404343337dbc7b32fe1fc50b55c1598259102a 100644 (file)
             android:icon="?attr/homepageIcon" />
 
         <ListPreference
-            android:key="default_font_size"
-            android:title="@string/default_font_size"
-            android:entries="@array/default_font_size_entries"
-            android:entryValues="@array/default_font_size_entry_values"
+            android:key="font_size"
+            android:title="@string/font_size_preference"
+            android:entries="@array/font_size_entries"
+            android:entryValues="@array/font_size_entry_values"
             android:defaultValue="@string/font_size_default_value"
             android:icon="?attr/fontSizeIcon" />