summaryrefslogtreecommitdiffstats
path: root/java/com/android/dialer/app/settings/DialerSettingsActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/app/settings/DialerSettingsActivity.java')
-rw-r--r--java/com/android/dialer/app/settings/DialerSettingsActivity.java21
1 files changed, 15 insertions, 6 deletions
diff --git a/java/com/android/dialer/app/settings/DialerSettingsActivity.java b/java/com/android/dialer/app/settings/DialerSettingsActivity.java
index cbd9e7950..24e5fe8aa 100644
--- a/java/com/android/dialer/app/settings/DialerSettingsActivity.java
+++ b/java/com/android/dialer/app/settings/DialerSettingsActivity.java
@@ -102,7 +102,6 @@ public class DialerSettingsActivity extends AppCompatPreferenceActivity {
Header soundSettingsHeader = new Header();
soundSettingsHeader.titleRes = R.string.sounds_and_vibration_title;
- soundSettingsHeader.fragment = SoundSettingsFragment.class.getName();
soundSettingsHeader.id = R.id.settings_header_sounds_and_vibration;
target.add(soundSettingsHeader);
@@ -271,22 +270,32 @@ public class DialerSettingsActivity extends AppCompatPreferenceActivity {
&& getResources().getBoolean(R.bool.config_sort_order_user_changeable);
}
+ /**
+ * For the "sounds and vibration" setting, we go directly to the system sound settings fragment.
+ * This helps since:
+ * <li>We don't need a separate Dialer sounds and vibrations fragment, as everything we need is
+ * present in the system sounds fragment.
+ * <li>OEM's e.g Moto that support dual sim ring-tones no longer need to update the dialer sound
+ * and settings fragment.
+ *
+ * <p>For all other settings, we launch our our preferences fragment.
+ */
@Override
public void onHeaderClick(Header header, int position) {
if (header.id == R.id.settings_header_sounds_and_vibration) {
- // If we don't have the permission to write to system settings, go to system sound
- // settings instead. Otherwise, perform the super implementation (which launches our
- // own preference fragment.
+
if (!Settings.System.canWrite(this)) {
Toast.makeText(
this,
getResources().getString(R.string.toast_cannot_write_system_settings),
Toast.LENGTH_SHORT)
.show();
- startActivity(new Intent(Settings.ACTION_SOUND_SETTINGS));
- return;
}
+
+ startActivity(new Intent(Settings.ACTION_SOUND_SETTINGS));
+ return;
}
+
super.onHeaderClick(header, position);
}