From 30eb8d9363eaf985e3b42b8403a73cfcb72e9c6d Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 9 Jul 2018 15:42:49 +0300 Subject: split network-related preferences to a separate screen --- .../org/fox/ttrss/NetworkPreferencesFragment.java | 15 +++++++++++ .../java/org/fox/ttrss/PreferencesActivity.java | 10 +++++--- .../java/org/fox/ttrss/PreferencesFragment.java | 19 ++++++++++---- org.fox.ttrss/src/main/res/values/strings.xml | 1 + org.fox.ttrss/src/main/res/xml/preferences.xml | 9 +++++-- .../src/main/res/xml/preferences_network.xml | 29 ++++++++++++++++++++++ 6 files changed, 72 insertions(+), 11 deletions(-) create mode 100755 org.fox.ttrss/src/main/java/org/fox/ttrss/NetworkPreferencesFragment.java mode change 100644 => 100755 org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesFragment.java create mode 100755 org.fox.ttrss/src/main/res/xml/preferences_network.xml diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/NetworkPreferencesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/NetworkPreferencesFragment.java new file mode 100755 index 00000000..8e0e6519 --- /dev/null +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/NetworkPreferencesFragment.java @@ -0,0 +1,15 @@ +package org.fox.ttrss; + +import android.os.Bundle; +import android.preference.PreferenceFragment; + +public class NetworkPreferencesFragment extends PreferenceFragment { + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + // Load the preferences from an XML resource + addPreferencesFromResource(R.xml.preferences_network); + } +} \ No newline at end of file diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesActivity.java index 61f914bd..6af96a7f 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesActivity.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesActivity.java @@ -18,17 +18,19 @@ public class PreferencesActivity extends CommonActivity { setContentView(R.layout.activity_preferences); - Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().hide(); - android.app.FragmentTransaction ft = getFragmentManager().beginTransaction(); + if (savedInstanceState == null) { + android.app.FragmentTransaction ft = getFragmentManager().beginTransaction(); - ft.replace(R.id.preferences_container, new PreferencesFragment()); - ft.commit(); + ft.replace(R.id.preferences_container, new PreferencesFragment()); + ft.commit(); + } } @Override diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesFragment.java old mode 100644 new mode 100755 index 3f10b83b..b4f1ccdc --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesFragment.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/PreferencesFragment.java @@ -1,18 +1,14 @@ package org.fox.ttrss; import android.app.Activity; -import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.os.Bundle; +import android.preference.Preference; import android.preference.PreferenceFragment; -import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; -import java.util.Locale; -import java.util.zip.ZipEntry; -import java.util.zip.ZipFile; public class PreferencesFragment extends PreferenceFragment { @@ -47,6 +43,19 @@ public class PreferencesFragment extends PreferenceFragment { findPreference("build_timestamp").setSummary(getString(R.string.prefs_build_timestamp, buildTimestamp)); + findPreference("network_settings").setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { + @Override + public boolean onPreferenceClick(Preference preference) { + getFragmentManager() + .beginTransaction() + .replace(R.id.preferences_container, new NetworkPreferencesFragment() ) + .addToBackStack( NetworkPreferencesFragment.class.getSimpleName() ) + .commit(); + + return false; + } + }); + } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } diff --git a/org.fox.ttrss/src/main/res/values/strings.xml b/org.fox.ttrss/src/main/res/values/strings.xml index ae1c42dd..89fe997a 100755 --- a/org.fox.ttrss/src/main/res/values/strings.xml +++ b/org.fox.ttrss/src/main/res/values/strings.xml @@ -259,4 +259,5 @@ Try again Tap to switch offline No articles downloaded + More settings... diff --git a/org.fox.ttrss/src/main/res/xml/preferences.xml b/org.fox.ttrss/src/main/res/xml/preferences.xml index 9d0178ce..cdf952a6 100755 --- a/org.fox.ttrss/src/main/res/xml/preferences.xml +++ b/org.fox.ttrss/src/main/res/xml/preferences.xml @@ -22,8 +22,13 @@ android:summary="@string/ttrss_url_summary" android:title="@string/ttrss_url" > + + + - + diff --git a/org.fox.ttrss/src/main/res/xml/preferences_network.xml b/org.fox.ttrss/src/main/res/xml/preferences_network.xml new file mode 100755 index 00000000..8d1469d5 --- /dev/null +++ b/org.fox.ttrss/src/main/res/xml/preferences_network.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + -- cgit v1.2.3