From e8402008bcea58fa27bd59e8f6427533e5212ae5 Mon Sep 17 00:00:00 2001 From: John Zhen Mo Date: Tue, 20 Feb 2018 05:45:12 -0800 Subject: [PATCH] -Added debug preference settings for debug and beta builds. -Removed leak canary toggle on app menu. -Added leak canary settings to debug preference. -Removed/renamed leak canary related strings. --- .../java/org/schabi/newpipe/MainActivity.java | 36 ------------------- .../settings/DebugSettingsFragment.java | 12 +++++++ .../settings/MainSettingsFragment.java | 8 +++++ app/src/main/res/menu/debug_menu.xml | 12 ------- app/src/main/res/values-it/strings.xml | 7 ++-- app/src/main/res/values-nb-rNO/strings.xml | 3 -- app/src/main/res/values-nl/strings.xml | 8 ++--- app/src/main/res/values-pt-rBR/strings.xml | 3 -- app/src/main/res/values-sk/strings.xml | 4 --- app/src/main/res/values-tr/strings.xml | 3 -- app/src/main/res/values/settings_keys.xml | 1 + app/src/main/res/values/strings.xml | 8 ++--- app/src/main/res/xml/debug_settings.xml | 13 +++++++ app/src/main/res/xml/main_settings.xml | 6 ++++ 14 files changed, 48 insertions(+), 76 deletions(-) create mode 100644 app/src/main/java/org/schabi/newpipe/settings/DebugSettingsFragment.java delete mode 100644 app/src/main/res/menu/debug_menu.xml create mode 100644 app/src/main/res/xml/debug_settings.xml diff --git a/app/src/main/java/org/schabi/newpipe/MainActivity.java b/app/src/main/java/org/schabi/newpipe/MainActivity.java index e696f867f..573479ea7 100644 --- a/app/src/main/java/org/schabi/newpipe/MainActivity.java +++ b/app/src/main/java/org/schabi/newpipe/MainActivity.java @@ -20,7 +20,6 @@ package org.schabi.newpipe; -import android.annotation.SuppressLint; import android.content.Intent; import android.content.SharedPreferences; import android.net.Uri; @@ -28,7 +27,6 @@ import android.os.Bundle; import android.os.Handler; import android.os.Looper; import android.preference.PreferenceManager; -import android.support.annotation.NonNull; import android.support.design.widget.NavigationView; import android.support.v4.app.Fragment; import android.support.v4.view.GravityCompat; @@ -264,22 +262,6 @@ public class MainActivity extends AppCompatActivity { } } - @SuppressLint("ShowToast") - private void onHeapDumpToggled(@NonNull MenuItem item) { - final boolean isHeapDumpEnabled = !item.isChecked(); - - PreferenceManager.getDefaultSharedPreferences(this).edit() - .putBoolean(getString(R.string.allow_heap_dumping_key), isHeapDumpEnabled).apply(); - item.setChecked(isHeapDumpEnabled); - - final String heapDumpNotice; - if (isHeapDumpEnabled) { - heapDumpNotice = getString(R.string.enable_leak_canary_notice); - } else { - heapDumpNotice = getString(R.string.disable_leak_canary_notice); - } - Toast.makeText(getApplicationContext(), heapDumpNotice, Toast.LENGTH_SHORT).show(); - } /*////////////////////////////////////////////////////////////////////////// // Menu //////////////////////////////////////////////////////////////////////////*/ @@ -301,10 +283,6 @@ public class MainActivity extends AppCompatActivity { inflater.inflate(R.menu.main_menu, menu); } - if (DEBUG) { - getMenuInflater().inflate(R.menu.debug_menu, menu); - } - ActionBar actionBar = getSupportActionBar(); if (actionBar != null) { actionBar.setDisplayHomeAsUpEnabled(false); @@ -315,17 +293,6 @@ public class MainActivity extends AppCompatActivity { return true; } - @Override - public boolean onPrepareOptionsMenu(Menu menu) { - MenuItem heapDumpToggle = menu.findItem(R.id.action_toggle_heap_dump); - if (heapDumpToggle != null) { - final boolean isToggled = PreferenceManager.getDefaultSharedPreferences(this) - .getBoolean(getString(R.string.allow_heap_dumping_key), false); - heapDumpToggle.setChecked(isToggled); - } - return super.onPrepareOptionsMenu(menu); - } - @Override public boolean onOptionsItemSelected(MenuItem item) { if (DEBUG) Log.d(TAG, "onOptionsItemSelected() called with: item = [" + item + "]"); @@ -346,9 +313,6 @@ public class MainActivity extends AppCompatActivity { case R.id.action_history: NavigationHelper.openHistory(this); return true; - case R.id.action_toggle_heap_dump: - onHeapDumpToggled(item); - return true; default: return super.onOptionsItemSelected(item); } diff --git a/app/src/main/java/org/schabi/newpipe/settings/DebugSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/DebugSettingsFragment.java new file mode 100644 index 000000000..0956f47d6 --- /dev/null +++ b/app/src/main/java/org/schabi/newpipe/settings/DebugSettingsFragment.java @@ -0,0 +1,12 @@ +package org.schabi.newpipe.settings; + +import android.os.Bundle; + +import org.schabi.newpipe.R; + +public class DebugSettingsFragment extends BasePreferenceFragment { + @Override + public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { + addPreferencesFromResource(R.xml.debug_settings); + } +} diff --git a/app/src/main/java/org/schabi/newpipe/settings/MainSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/MainSettingsFragment.java index 728da0ae5..5e07e2b12 100644 --- a/app/src/main/java/org/schabi/newpipe/settings/MainSettingsFragment.java +++ b/app/src/main/java/org/schabi/newpipe/settings/MainSettingsFragment.java @@ -3,11 +3,19 @@ package org.schabi.newpipe.settings; import android.os.Bundle; import android.support.v7.preference.Preference; +import org.schabi.newpipe.BuildConfig; import org.schabi.newpipe.R; public class MainSettingsFragment extends BasePreferenceFragment { + public static final boolean DEBUG = !BuildConfig.BUILD_TYPE.equals("release"); + @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { addPreferencesFromResource(R.xml.main_settings); + + if (!DEBUG) { + final Preference debug = findPreference(getString(R.string.debug_pref_screen_key)); + getPreferenceScreen().removePreference(debug); + } } } diff --git a/app/src/main/res/menu/debug_menu.xml b/app/src/main/res/menu/debug_menu.xml deleted file mode 100644 index 448f9cf23..000000000 --- a/app/src/main/res/menu/debug_menu.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index afdb6efd0..25cba8191 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -395,9 +395,6 @@ Carattere normale Carattere più grande - Controllo delle perdite di memoria abilitato, l\'applicazione può non rispondere mentre effettua il dumping dell\'heap - Controllo delle perdite di memoria disabilitato -A breve qualcosa si troverà qui ;D + A breve qualcosa si troverà qui ;D - - + diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml index 9f8762827..c214f5bd1 100644 --- a/app/src/main/res/values-nb-rNO/strings.xml +++ b/app/src/main/res/values-nb-rNO/strings.xml @@ -382,7 +382,4 @@ Mindre skrift Normal skrift Større skrift - - Oppsyn med minnelekasjer påslått, programmet kan slutte å svare under haug-dumping - Oppsyn med minnelekasjer slått av diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index bb9e07f2c..8ed57a2bf 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -391,9 +391,5 @@ te openen in pop-upmodus Normaal lettertype Groter lettertype - Controleren op geheugenlekken ingeschakeld, tijdens heapdumping kan de app tijdelijk niet reageren - Controleren op geheugenlekken uitgeschakeld -Hier zal binnenkort iets verschijnen ;D - - - + Hier zal binnenkort iets verschijnen ;D + diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 81a7456a9..5203e6b6b 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -368,7 +368,4 @@ abrir em modo popup Fonte menor Fonte normal Maior fonte - - Monitoramento de vazamentos de memória habilitado, o aplicativo pode ficar sem responder quando estiver descarregando pilha de memória - Monitoramento de vazamentos de memória desabilitado diff --git a/app/src/main/res/values-sk/strings.xml b/app/src/main/res/values-sk/strings.xml index 347724f85..e620d55ba 100644 --- a/app/src/main/res/values-sk/strings.xml +++ b/app/src/main/res/values-sk/strings.xml @@ -391,8 +391,4 @@ otvorenie okna na popredí Menšie Písmo Normálne Písmo Väčšie Písmo - - Monitorovanie pretečenia - Monitorovanie pretečenia pamäte je povolené, pri hromadnom zbere môže aplikácia prestať reagovať - Monitorovanie pretečenia pamäte je vypnuté diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 37542a332..a704f8c10 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -384,7 +384,4 @@ Küçük Yazı Tipi Olağan Yazı Tipi Büyük Yazı Tipi - - Bellek sızıntısı gözlemleme etkinleştirildi, uygulama yığın atımı sırasında yanıtsız kalabilir - Bellek sızıntısı gözlemleme devre dışı diff --git a/app/src/main/res/values/settings_keys.xml b/app/src/main/res/values/settings_keys.xml index ee784b5f7..f5b6802e8 100644 --- a/app/src/main/res/values/settings_keys.xml +++ b/app/src/main/res/values/settings_keys.xml @@ -84,6 +84,7 @@ last_orientation_landscape_key + debug_pref_screen_key allow_heap_dumping_key diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 184219bad..10f9272af 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -98,6 +98,7 @@ Popup Appearance Other + Debug Playing in background Playing in popup mode Queued on background player @@ -412,8 +413,7 @@ Normal Font Larger Font - - LeakCanary - Memory leak monitoring enabled, app may become unresponsive when heap dumping - Memory leak monitoring disabled + + Enable LeakCanary + Memory leak monitoring may cause app to become unresponsive when heap dumping diff --git a/app/src/main/res/xml/debug_settings.xml b/app/src/main/res/xml/debug_settings.xml new file mode 100644 index 000000000..9b0fd00d6 --- /dev/null +++ b/app/src/main/res/xml/debug_settings.xml @@ -0,0 +1,13 @@ + + + + + + diff --git a/app/src/main/res/xml/main_settings.xml b/app/src/main/res/xml/main_settings.xml index 300265557..a0767844f 100644 --- a/app/src/main/res/xml/main_settings.xml +++ b/app/src/main/res/xml/main_settings.xml @@ -28,4 +28,10 @@ android:fragment="org.schabi.newpipe.settings.ContentSettingsFragment" android:icon="?attr/language" android:title="@string/content"/> + +