android/source/build.gradle                                           |    1 
 android/source/res/values/arrays.xml                                  |   15 --
 android/source/res/values/strings.xml                                 |    2 
 android/source/res/xml/libreoffice_preferences.xml                    |    9 -
 android/source/src/java/org/libreoffice/LibreOfficeApplication.java   |    5 
 android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java  |    2 
 android/source/src/java/org/libreoffice/LocaleHelper.java             |   57 
----------
 android/source/src/java/org/libreoffice/SettingsActivity.java         |   28 
++--
 android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java |   27 
----
 9 files changed, 19 insertions(+), 127 deletions(-)

New commits:
commit 39ed595d608efd852a0239f6cf74f1168981cfc2
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu May 16 07:01:35 2024 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Thu May 16 12:13:30 2024 +0200

    android: No longer manually set UI language
    
    Drop the possibility to manually set a UI language
    introduced in
    
        commit f2e35a695671028b32139df1824ff536e7610d35
        Author: Mert Tumer <merttu...@outlook.com>
        Date:   Tue Sep 18 23:29:57 2018 +0300
    
            Added language support on Android Viewer
    
    Since
    
        commit 5bf2ec9ed8728a2042e110122ea2b0e4ff55104a
        Author: Michael Weghorn <m.wegh...@posteo.de>
        Date:   Fri Dec 20 10:40:34 2019 +0100
    
            android: Use system locale by default
    
    , Android Viewer defaulted to the system
    language for its UI language as well.
    
    In addition, current Android versions allow to set
    a specific language for apps: [1]
    
    The previous approach of manually setting a language
    in Android Viewer shouldn't really be necessary any more.
    
    With the app now being available for translation on
    Weblate and having been translated to more languages,
    the list of available languages had become out of sync.
    
    Additionally, the manually selected language wasn't
    consistently applied everywhere:
    
    * On the start activity where a document can be selected,
      it was only applied after closing the app, then opening
      it again.
    
    * in the Settings, the language was not applied at all,
      that was always using the system locale anyway
    
    Changes to the system locale are applied immediately
    and consistently, so stick to the default Android mechanism
    and reduce the overall complexity and maintenance burden.
    
    [1] https://support.google.com/android/answer/12395118?hl=en
    
    Change-Id: Ida61650b888a563f2346ea94a14b260802b1d24d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167718
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/android/source/res/values/arrays.xml 
b/android/source/res/values/arrays.xml
deleted file mode 100644
index 832bca781572..000000000000
--- a/android/source/res/values/arrays.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-    <string-array name="SupportedLanguagesValues">
-        <item>SYSTEM_DEFAULT_LANGUAGE</item>
-        <item >de</item>
-        <item >en</item>
-        <item >tr</item>
-    </string-array>
-    <string-array name="SupportedLanguages">
-        <item>(System Default)</item>
-        <item>Deutsch</item>
-        <item>English</item>
-        <item>Turkçe</item>
-    </string-array>
-</resources>
diff --git a/android/source/res/values/strings.xml 
b/android/source/res/values/strings.xml
index 3766db146098..36b3cef75a25 100644
--- a/android/source/res/values/strings.xml
+++ b/android/source/res/values/strings.xml
@@ -140,8 +140,6 @@
     <string name="alert_ok">OK</string>
     <string name="alert_cancel">Cancel</string>
     <string name="current_uno_command">Current UNO command</string>
-    <string name="display_language">Display Language</string>
-    <string name="display_language_summary">Set the default display 
language</string>
     <string name="pdf_export_finished">PDF export finished</string>
     <string name="unable_to_export_pdf">Unable to export to pdf</string>
     <string name="unable_to_save">Unable to save file</string>
diff --git a/android/source/res/xml/libreoffice_preferences.xml 
b/android/source/res/xml/libreoffice_preferences.xml
index 052efacb2e3e..d8ca4dc8c7a7 100644
--- a/android/source/res/xml/libreoffice_preferences.xml
+++ b/android/source/res/xml/libreoffice_preferences.xml
@@ -4,15 +4,6 @@
         android:title="@string/pref_category_general"
         android:key="PREF_CATEGORY_GENERAL">
 
-        <ListPreference
-            android:title="@string/display_language"
-            android:summary="@string/display_language_summary"
-            android:entries="@array/SupportedLanguages"
-            android:entryValues="@array/SupportedLanguagesValues"
-            android:defaultValue="SYSTEM_DEFAULT_LANGUAGE"
-            android:key="DISPLAY_LANGUAGE"
-            />
-
         <CheckBoxPreference
             android:title="@string/pref_experimental_editing"
             android:key="ENABLE_EXPERIMENTAL"
diff --git 
a/android/source/src/java/org/libreoffice/LibreOfficeApplication.java 
b/android/source/src/java/org/libreoffice/LibreOfficeApplication.java
index ebe54cf27c64..3b03c83adda9 100644
--- a/android/source/src/java/org/libreoffice/LibreOfficeApplication.java
+++ b/android/source/src/java/org/libreoffice/LibreOfficeApplication.java
@@ -25,9 +25,4 @@ public class LibreOfficeApplication extends 
MultiDexApplication {
     public static Handler getMainHandler() {
         return mainHandler;
     }
-
-    @Override
-    protected void attachBaseContext(Context base) {
-        super.attachBaseContext(LocaleHelper.onAttach(base));
-    }
 }
diff --git a/android/source/src/java/org/libreoffice/LocaleHelper.java 
b/android/source/src/java/org/libreoffice/LocaleHelper.java
deleted file mode 100644
index e3997f913a32..000000000000
--- a/android/source/src/java/org/libreoffice/LocaleHelper.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package org.libreoffice;
-
-import android.content.Context;
-import android.content.SharedPreferences;
-import android.content.res.Configuration;
-import android.content.res.Resources;
-import androidx.preference.PreferenceManager;
-
-import java.util.Locale;
-
-public class LocaleHelper {
-
-    private static final String SELECTED_LANG = 
"org.libreoffice.selected.lang";
-    // value for language that indicates that system's default language should 
be used
-    public static final String SYSTEM_DEFAULT_LANGUAGE = 
"SYSTEM_DEFAULT_LANGUAGE";
-
-    public static Context onAttach(Context context){
-        String lang = getPersistedData(context, 
Locale.getDefault().getLanguage());
-        return setLocale(context, lang);
-    }
-
-    public static Context setLocale(Context context, String lang) {
-        persist(context, lang);
-        return updateResources(context, lang);
-    }
-
-    @SuppressWarnings("deprecation")
-    private static Context updateResources(Context context, String lang) {
-        Locale locale;
-        if (lang.equals(SYSTEM_DEFAULT_LANGUAGE)) {
-            locale = Locale.getDefault();
-        } else {
-            locale = new Locale(lang);
-        }
-        Locale.setDefault(locale);
-
-        Resources res = context.getResources();
-        Configuration cfg = res.getConfiguration();
-        cfg.locale = locale;
-        cfg.setLayoutDirection(locale);
-
-        res.updateConfiguration(cfg, res.getDisplayMetrics());
-        return context;
-    }
-
-    private static void persist(Context context, String lang) {
-        SharedPreferences preferences = 
PreferenceManager.getDefaultSharedPreferences(context);
-        preferences.edit().putString(SELECTED_LANG, lang);
-        preferences.edit().apply();
-    }
-
-    private static String getPersistedData(Context context, String lang) {
-        SharedPreferences preferences = 
PreferenceManager.getDefaultSharedPreferences(context);
-        return preferences.getString(SELECTED_LANG, lang);
-    }
-}
diff --git a/android/source/src/java/org/libreoffice/SettingsActivity.java 
b/android/source/src/java/org/libreoffice/SettingsActivity.java
index e9cb403be459..90d3f95459e4 100644
--- a/android/source/src/java/org/libreoffice/SettingsActivity.java
+++ b/android/source/src/java/org/libreoffice/SettingsActivity.java
@@ -59,9 +59,6 @@ public class SettingsActivity extends FragmentActivity {
         @Override
         public void onSharedPreferenceChanged(SharedPreferences 
sharedPreferences, String key) {
             
SettingsListenerModel.getInstance().changePreferenceState(sharedPreferences, 
key);
-            if(key.equals("DISPLAY_LANGUAGE")){
-                getActivity().recreate();
-            }
         }
     }
 }
diff --git 
a/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java 
b/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java
index e87779df0eae..63eed9d37069 100644
--- a/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java
+++ b/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java
@@ -46,16 +46,14 @@ import android.widget.TextView;
 import org.libreoffice.AboutDialogFragment;
 import org.libreoffice.BuildConfig;
 import org.libreoffice.LibreOfficeMainActivity;
-import org.libreoffice.LocaleHelper;
 import org.libreoffice.R;
 import org.libreoffice.SettingsActivity;
-import org.libreoffice.SettingsListenerModel;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 
-public class LibreOfficeUIActivity extends AppCompatActivity implements 
SettingsListenerModel.OnSettingsPreferenceChangedListener, View.OnClickListener{
+public class LibreOfficeUIActivity extends AppCompatActivity implements 
View.OnClickListener{
     public enum DocumentType {
         WRITER,
         CALC,
@@ -70,7 +68,6 @@ public class LibreOfficeUIActivity extends AppCompatActivity 
implements Settings
     private static final String RECENT_DOCUMENTS_KEY = "RECENT_DOCUMENT_URIS";
     // delimiter used for storing multiple URIs in a string
     private static final String RECENT_DOCUMENTS_DELIMITER = " ";
-    private static final String DISPLAY_LANGUAGE = "DISPLAY_LANGUAGE";
 
     public static final String NEW_DOC_TYPE_KEY = "NEW_DOC_TYPE_KEY";
     public static final String NEW_WRITER_STRING_KEY = 
"private:factory/swriter";
@@ -140,9 +137,6 @@ public class LibreOfficeUIActivity extends 
AppCompatActivity implements Settings
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
-        readPreferences();
-        SettingsListenerModel.getInstance().setListener(this);
-
         // init UI
         createUI();
         fabOpenAnimation = AnimationUtils.loadAnimation(this, R.anim.fab_open);
@@ -160,11 +154,6 @@ public class LibreOfficeUIActivity extends 
AppCompatActivity implements Settings
         }
     }
 
-    @Override
-    protected void attachBaseContext(Context newBase) {
-        super.attachBaseContext(LocaleHelper.onAttach(newBase));
-    }
-
     public void createUI() {
         setContentView(R.layout.activity_document_browser);
 
@@ -332,17 +321,6 @@ public class LibreOfficeUIActivity extends 
AppCompatActivity implements Settings
         return super.onOptionsItemSelected(item);
     }
 
-    public void readPreferences(){
-        SharedPreferences defaultPrefs = 
PreferenceManager.getDefaultSharedPreferences(getBaseContext());
-        final String displayLanguage = 
defaultPrefs.getString(DISPLAY_LANGUAGE, LocaleHelper.SYSTEM_DEFAULT_LANGUAGE);
-        LocaleHelper.setLocale(this, displayLanguage);
-    }
-
-    @Override
-    public void settingsPreferenceChanged(SharedPreferences sharedPreferences, 
String key) {
-        readPreferences();
-    }
-
     @Override
     protected void onResume() {
         super.onResume();
commit 567891fdf7912ae173429539bc97c68075c00c1f
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu May 16 06:01:12 2024 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Thu May 16 12:13:24 2024 +0200

    android: Port Settings{Activity,Fragment} from deprecated API
    
    API used in `SettingsActivity` and `SettingsFragment` has
    been deprecated, e.g. `PreferenceFragment` was deprecated in
    API level 28 [1].
    
    Port that to non-deprecated API from the androidx.preference
    library [2].
    
    This addresses these deprecation warnings:
    
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:14:
 warning: [deprecation] PreferenceFragment in android.preference has been 
deprecated
        import android.preference.PreferenceFragment;
                                 ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:15:
 warning: [deprecation] PreferenceGroup in android.preference has been 
deprecated
    
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:23:
 warning: [deprecation] getFragmentManager() in Activity has been deprecated
                getFragmentManager().beginTransaction()
                ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:23:
 warning: [deprecation] beginTransaction() in FragmentManager has been 
deprecated
                getFragmentManager().beginTransaction()
                                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:24:
 warning: [deprecation] replace(int,Fragment) in FragmentTransaction has been 
deprecated
                    .replace(android.R.id.content, new SettingsFragment())
                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:25:
 warning: [deprecation] commit() in FragmentTransaction has been deprecated
                    .commit();
                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:28:
 warning: [deprecation] PreferenceFragment in android.preference has been 
deprecated
            public static class SettingsFragment extends PreferenceFragment 
implements SharedPreferences.OnSharedPreferenceChangeListener {
                                                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:28:
 warning: [deprecation] PreferenceFragment() in PreferenceFragment has been 
deprecated
            public static class SettingsFragment extends PreferenceFragment 
implements SharedPreferences.OnSharedPreferenceChangeListener {
                          ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:30:
 warning: [deprecation] onCreate(Bundle) in PreferenceFragment has been 
deprecated
                public void onCreate(Bundle savedInstanceState) {
                            ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:31:
 warning: [deprecation] onCreate(Bundle) in PreferenceFragment has been 
deprecated
                    super.onCreate(savedInstanceState);
                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:32:
 warning: [deprecation] addPreferencesFromResource(int) in PreferenceFragment 
has been deprecated
                    addPreferencesFromResource(R.xml.libreoffice_preferences);
                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:34:
 warning: [deprecation] PreferenceGroup in android.preference has been 
deprecated
                        PreferenceGroup generalGroup = (PreferenceGroup) 
findPreference("PREF_CATEGORY_GENERAL");
                        ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:34:
 warning: [deprecation] PreferenceGroup in android.preference has been 
deprecated
                        PreferenceGroup generalGroup = (PreferenceGroup) 
findPreference("PREF_CATEGORY_GENERAL");
                                                        ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:34:
 warning: [deprecation] findPreference(CharSequence) in PreferenceFragment has 
been deprecated
                        PreferenceGroup generalGroup = (PreferenceGroup) 
findPreference("PREF_CATEGORY_GENERAL");
                                                                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:35:
 warning: [deprecation] findPreference(CharSequence) in PreferenceGroup has 
been deprecated
                        
generalGroup.removePreference(generalGroup.findPreference("ENABLE_EXPERIMENTAL"));
                                                                  ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:35:
 warning: [deprecation] removePreference(Preference) in PreferenceGroup has 
been deprecated
                        
generalGroup.removePreference(generalGroup.findPreference("ENABLE_EXPERIMENTAL"));
                                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:36:
 warning: [deprecation] findPreference(CharSequence) in PreferenceGroup has 
been deprecated
                        
generalGroup.removePreference(generalGroup.findPreference("ENABLE_DEVELOPER"));
                                                                  ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:36:
 warning: [deprecation] removePreference(Preference) in PreferenceGroup has 
been deprecated
                        
generalGroup.removePreference(generalGroup.findPreference("ENABLE_DEVELOPER"));
                                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:41:
 warning: [deprecation] onResume() in Fragment has been deprecated
                public void onResume() {
                            ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:42:
 warning: [deprecation] onResume() in Fragment has been deprecated
                    super.onResume();
                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:43:
 warning: [deprecation] getPreferenceScreen() in PreferenceFragment has been 
deprecated
                    getPreferenceScreen().getSharedPreferences()
                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:43:
 warning: [deprecation] getSharedPreferences() in Preference has been deprecated
                    getPreferenceScreen().getSharedPreferences()
                                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:48:
 warning: [deprecation] onPause() in Fragment has been deprecated
                public void onPause() {
                            ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:49:
 warning: [deprecation] onPause() in Fragment has been deprecated
                    super.onPause();
                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:50:
 warning: [deprecation] getPreferenceScreen() in PreferenceFragment has been 
deprecated
                    getPreferenceScreen().getSharedPreferences()
                    ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:50:
 warning: [deprecation] getSharedPreferences() in Preference has been deprecated
                    getPreferenceScreen().getSharedPreferences()
                                         ^
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/SettingsActivity.java:58:
 warning: [deprecation] getActivity() in Fragment has been deprecated
    
    [1] 
https://developer.android.com/reference/android/preference/PreferenceFragment
    [2] 
https://developer.android.com/reference/androidx/preference/package-summary
    
    Change-Id: I3365a487345787056c91fa7addf987edca38e94f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167717
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/android/source/src/java/org/libreoffice/SettingsActivity.java 
b/android/source/src/java/org/libreoffice/SettingsActivity.java
index 5623abc2e597..e9cb403be459 100644
--- a/android/source/src/java/org/libreoffice/SettingsActivity.java
+++ b/android/source/src/java/org/libreoffice/SettingsActivity.java
@@ -8,30 +8,35 @@
  */
 package org.libreoffice;
 
-import android.app.Activity;
 import android.content.SharedPreferences;
 import android.os.Bundle;
-import android.preference.PreferenceFragment;
-import android.preference.PreferenceGroup;
+import androidx.fragment.app.FragmentActivity;
+import androidx.preference.PreferenceFragmentCompat;
+import androidx.preference.PreferenceGroup;
 
-public class SettingsActivity extends Activity {
+public class SettingsActivity extends FragmentActivity {
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
         // Display the fragment as the main content.
-        getFragmentManager().beginTransaction()
+        getSupportFragmentManager().beginTransaction()
             .replace(android.R.id.content, new SettingsFragment())
             .commit();
     }
 
-    public static class SettingsFragment extends PreferenceFragment implements 
SharedPreferences.OnSharedPreferenceChangeListener {
+    public static class SettingsFragment extends PreferenceFragmentCompat 
implements SharedPreferences.OnSharedPreferenceChangeListener {
+
+        @Override
+        public void onCreatePreferences(Bundle savedInstanceState, String 
rootKey) {
+            setPreferencesFromResource(R.xml.libreoffice_preferences, rootKey);
+        }
+
         @Override
         public void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
-            addPreferencesFromResource(R.xml.libreoffice_preferences);
             if(!BuildConfig.ALLOW_EDITING) {
-                PreferenceGroup generalGroup = (PreferenceGroup) 
findPreference("PREF_CATEGORY_GENERAL");
+                PreferenceGroup generalGroup = 
findPreference("PREF_CATEGORY_GENERAL");
                 
generalGroup.removePreference(generalGroup.findPreference("ENABLE_EXPERIMENTAL"));
                 
generalGroup.removePreference(generalGroup.findPreference("ENABLE_DEVELOPER"));
             }
@@ -41,14 +46,14 @@ public class SettingsActivity extends Activity {
         public void onResume() {
             super.onResume();
             getPreferenceScreen().getSharedPreferences()
-                    .registerOnSharedPreferenceChangeListener(this);
+                .registerOnSharedPreferenceChangeListener(this);
         }
 
         @Override
         public void onPause() {
             super.onPause();
             getPreferenceScreen().getSharedPreferences()
-                    .unregisterOnSharedPreferenceChangeListener(this);
+                .unregisterOnSharedPreferenceChangeListener(this);
         }
 
         @Override
commit 7b0d2829fe691e013486578b6e93cf94ceb0cd36
Author:     Michael Weghorn <m.wegh...@posteo.de>
AuthorDate: Thu May 16 05:26:48 2024 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Thu May 16 12:13:18 2024 +0200

    android: Port to non-deprecated androidx PreferenceManager
    
    The `android.preference.PreferenceManager` class was
    deprecated in API level 29 [1].
    
    Port to `androidx.preference.PreferenceManager` from
    the AndroidX Preference library instead.
    
    All that needs to be done for this is to add the new library
    dependency and adjust the import, no further code changes
    needed for this step. (There are uses of more deprecated
    preferences-related classes, though. Those will have to be
    dealt with separately.)
    
    This addresses depreaction warnings like
    
        > Task :compileStrippedUIEditingDebugJavaWithJavac
        
/home/michi/development/git/libreoffice-WORKTREE-android/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java:16:
 warning: [deprecation] PreferenceManager in android.preference has been 
deprecated
        import android.preference.PreferenceManager;
                                 ^
    
    [1] 
https://developer.android.com/reference/android/preference/PreferenceManager
    
    Change-Id: Ied168ffbd0591d69e0797e2a0a5bab067e133d22
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/167716
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>
    Tested-by: Jenkins

diff --git a/android/source/build.gradle b/android/source/build.gradle
index 7012c275aa33..6428a0ffcfda 100644
--- a/android/source/build.gradle
+++ b/android/source/build.gradle
@@ -35,6 +35,7 @@ dependencies {
     implementation 'com.google.android.material:material:1.12.0'
     implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
     implementation "androidx.multidex:multidex:2.0.1"
+    implementation 'androidx.preference:preference:1.2.1'
 }
 
 android {
diff --git 
a/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java 
b/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java
index cf60ff37c5da..1b0b3915c349 100644
--- a/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java
+++ b/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java
@@ -13,13 +13,13 @@ import android.graphics.RectF;
 import android.net.Uri;
 import android.os.Build;
 import android.os.Bundle;
-import android.preference.PreferenceManager;
 import android.provider.DocumentsContract;
 import com.google.android.material.bottomsheet.BottomSheetBehavior;
 import com.google.android.material.snackbar.Snackbar;
 import androidx.drawerlayout.widget.DrawerLayout;
 import androidx.appcompat.app.AppCompatActivity;
 import androidx.appcompat.widget.Toolbar;
+import androidx.preference.PreferenceManager;
 import android.text.InputType;
 import android.util.Log;
 import android.view.KeyEvent;
diff --git a/android/source/src/java/org/libreoffice/LocaleHelper.java 
b/android/source/src/java/org/libreoffice/LocaleHelper.java
index a87c63f09990..e3997f913a32 100644
--- a/android/source/src/java/org/libreoffice/LocaleHelper.java
+++ b/android/source/src/java/org/libreoffice/LocaleHelper.java
@@ -4,8 +4,7 @@ import android.content.Context;
 import android.content.SharedPreferences;
 import android.content.res.Configuration;
 import android.content.res.Resources;
-import android.os.Build;
-import android.preference.PreferenceManager;
+import androidx.preference.PreferenceManager;
 
 import java.util.Locale;
 
diff --git 
a/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java 
b/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java
index bc5203d9c6eb..e87779df0eae 100644
--- a/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java
+++ b/android/source/src/java/org/libreoffice/ui/LibreOfficeUIActivity.java
@@ -20,9 +20,7 @@ import android.content.pm.ShortcutInfo;
 import android.content.pm.ShortcutManager;
 import android.graphics.drawable.Icon;
 import android.net.Uri;
-import android.os.Build;
 import android.os.Bundle;
-import android.preference.PreferenceManager;
 import com.google.android.material.floatingactionbutton.FloatingActionButton;
 import androidx.core.app.ActivityCompat;
 import androidx.core.content.ContextCompat;
@@ -31,6 +29,7 @@ import androidx.appcompat.app.ActionBar;
 import androidx.appcompat.app.AppCompatActivity;
 import androidx.recyclerview.widget.GridLayoutManager;
 import androidx.recyclerview.widget.RecyclerView;
+import androidx.preference.PreferenceManager;
 import androidx.appcompat.widget.Toolbar;
 import android.text.TextUtils;
 import android.util.Log;

Reply via email to