Dbrant has uploaded a new change for review. https://gerrit.wikimedia.org/r/318092
Change subject: Don't show Zero preferences until initially joining a Zero network. ...................................................................... Don't show Zero preferences until initially joining a Zero network. Break our preferences into three separate XML chunks, and add logic to conditionally inflate the Zero preference chunk only if the initial Zero tutorial has been shown. Bug: T140610 Change-Id: I456ba77f7eeebccd249d455e3ad4cf369f322a29 --- M app/src/main/java/org/wikipedia/settings/SettingsPreferenceLoader.java M app/src/main/res/xml/preferences.xml A app/src/main/res/xml/preferences_about.xml A app/src/main/res/xml/preferences_zero.xml 4 files changed, 73 insertions(+), 57 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia refs/changes/92/318092/1 diff --git a/app/src/main/java/org/wikipedia/settings/SettingsPreferenceLoader.java b/app/src/main/java/org/wikipedia/settings/SettingsPreferenceLoader.java index 359cd08..9629c37 100644 --- a/app/src/main/java/org/wikipedia/settings/SettingsPreferenceLoader.java +++ b/app/src/main/java/org/wikipedia/settings/SettingsPreferenceLoader.java @@ -26,12 +26,27 @@ public void loadPreferences() { loadPreferences(R.xml.preferences); + if (!Prefs.isZeroTutorialEnabled()) { + loadPreferences(R.xml.preferences_zero); + + findPreference(R.string.preference_key_zero_interstitial) + .setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(Preference preference, Object newValue) { + if (newValue == Boolean.FALSE) { + WikipediaApp.getInstance().getWikipediaZeroHandler().getZeroFunnel().logExtLinkAlways(); + } + return true; + } + }); + } + + loadPreferences(R.xml.preferences_about); + updateLanguagePrefSummary(); - Preference languagePref = findPreference(R.string.preference_key_language); - Preference zeroWarnPref = findPreference(R.string.preference_key_zero_interstitial); - - languagePref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { + findPreference(R.string.preference_key_language) + .setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { LanguagePreferenceDialog langPrefDialog = new LanguagePreferenceDialog(activity, false); @@ -46,16 +61,6 @@ } }); langPrefDialog.show(); - return true; - } - }); - - zeroWarnPref.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { - @Override - public boolean onPreferenceChange(Preference preference, Object newValue) { - if (newValue == Boolean.FALSE) { - WikipediaApp.getInstance().getWikipediaZeroHandler().getZeroFunnel().logExtLinkAlways(); - } return true; } }); diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 434a987..e24ba3f 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -35,47 +35,4 @@ android:summary="@string/preference_summary_auto_upload_crash_reports" /> </PreferenceCategory> - <PreferenceCategory android:title="@string/zero_wikipedia_zero_heading"> - <SwitchPreferenceCompat - android:key="zero_warn_when_leaving" - android:title="@string/zero_warn_when_leaving" - android:defaultValue="true" - android:summary="@string/zero_warn_when_leaving_summary" - /> - <org.wikipedia.settings.PreferenceMultiLine - android:title="@string/zero_webpage_title"> - <intent android:action="android.intent.action.VIEW" - android:data="@string/zero_webpage_url" - /> - </org.wikipedia.settings.PreferenceMultiLine> - - </PreferenceCategory> - <PreferenceCategory android:title="@string/about_activity_title"> - <org.wikipedia.settings.PreferenceMultiLine - android:key="about" - android:title="@string/about_description"> - <intent android:action="android.intent.action.VIEW" - android:targetClass="org.wikipedia.settings.AboutActivity" - android:targetPackage="org.wikipedia" - /> - </org.wikipedia.settings.PreferenceMultiLine> - <org.wikipedia.settings.PreferenceMultiLine - android:title="@string/wikipedia_app_faq"> - <intent android:action="android.intent.action.VIEW" - android:data="https://m.mediawiki.org/wiki/Wikimedia_Apps/Android_FAQ" - /> - </org.wikipedia.settings.PreferenceMultiLine> - <org.wikipedia.settings.PreferenceMultiLine - android:title="@string/privacy_policy_description"> - <intent android:action="android.intent.action.VIEW" - android:data="@string/privacy_policy_url" - /> - </org.wikipedia.settings.PreferenceMultiLine> - <org.wikipedia.settings.PreferenceMultiLine - android:title="@string/terms_of_use_description"> - <intent android:action="android.intent.action.VIEW" - android:data="@string/terms_of_use_url" - /> - </org.wikipedia.settings.PreferenceMultiLine> - </PreferenceCategory> </android.support.v7.preference.PreferenceScreen> \ No newline at end of file diff --git a/app/src/main/res/xml/preferences_about.xml b/app/src/main/res/xml/preferences_about.xml new file mode 100644 index 0000000..15c5d3b --- /dev/null +++ b/app/src/main/res/xml/preferences_about.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8"?> +<android.support.v7.preference.PreferenceScreen + xmlns:android="http://schemas.android.com/apk/res/android"> + + <PreferenceCategory android:title="@string/about_activity_title"> + <org.wikipedia.settings.PreferenceMultiLine + android:key="about" + android:title="@string/about_description"> + <intent android:action="android.intent.action.VIEW" + android:targetClass="org.wikipedia.settings.AboutActivity" + android:targetPackage="org.wikipedia" + /> + </org.wikipedia.settings.PreferenceMultiLine> + <org.wikipedia.settings.PreferenceMultiLine + android:title="@string/wikipedia_app_faq"> + <intent android:action="android.intent.action.VIEW" + android:data="https://m.mediawiki.org/wiki/Wikimedia_Apps/Android_FAQ" + /> + </org.wikipedia.settings.PreferenceMultiLine> + <org.wikipedia.settings.PreferenceMultiLine + android:title="@string/privacy_policy_description"> + <intent android:action="android.intent.action.VIEW" + android:data="@string/privacy_policy_url" + /> + </org.wikipedia.settings.PreferenceMultiLine> + <org.wikipedia.settings.PreferenceMultiLine + android:title="@string/terms_of_use_description"> + <intent android:action="android.intent.action.VIEW" + android:data="@string/terms_of_use_url" + /> + </org.wikipedia.settings.PreferenceMultiLine> + </PreferenceCategory> + +</android.support.v7.preference.PreferenceScreen> \ No newline at end of file diff --git a/app/src/main/res/xml/preferences_zero.xml b/app/src/main/res/xml/preferences_zero.xml new file mode 100644 index 0000000..b77b4cb --- /dev/null +++ b/app/src/main/res/xml/preferences_zero.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8"?> +<android.support.v7.preference.PreferenceScreen + xmlns:android="http://schemas.android.com/apk/res/android"> + + <PreferenceCategory android:title="@string/zero_wikipedia_zero_heading"> + <SwitchPreferenceCompat + android:key="zero_warn_when_leaving" + android:title="@string/zero_warn_when_leaving" + android:defaultValue="true" + android:summary="@string/zero_warn_when_leaving_summary" + /> + <org.wikipedia.settings.PreferenceMultiLine + android:title="@string/zero_webpage_title"> + <intent android:action="android.intent.action.VIEW" + android:data="@string/zero_webpage_url" + /> + </org.wikipedia.settings.PreferenceMultiLine> + </PreferenceCategory> + +</android.support.v7.preference.PreferenceScreen> \ No newline at end of file -- To view, visit https://gerrit.wikimedia.org/r/318092 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I456ba77f7eeebccd249d455e3ad4cf369f322a29 Gerrit-PatchSet: 1 Gerrit-Project: apps/android/wikipedia Gerrit-Branch: master Gerrit-Owner: Dbrant <dbr...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits