summaryrefslogtreecommitdiffstats
path: root/packages/SettingsProvider
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2012-05-07 17:43:49 -0700
committerEric Laurent <elaurent@google.com>2012-05-08 15:10:37 -0700
commitbffc3d1bd33eb2d8e00a9f8b6261d815db503311 (patch)
treea1479697fba70c0d8bbb608f4bb9a612781b9f3f /packages/SettingsProvider
parentc2182c67d65619041956849c346d67e77010ab7e (diff)
downloadframeworks_base-bffc3d1bd33eb2d8e00a9f8b6261d815db503311.zip
frameworks_base-bffc3d1bd33eb2d8e00a9f8b6261d815db503311.tar.gz
frameworks_base-bffc3d1bd33eb2d8e00a9f8b6261d815db503311.tar.bz2
Silent and Vibrate mode clean up
Clean up related to new Vibration policy. The vibrate behavior is now only derived from: - presence of a vibrator on the device - current ringer mode selected: NORMAL, VIBRATE or SILENT If no vibrator is present the ringer mode can only be NORMAL or SILENT. The control of ringer mode via volume keys when volume keys control the "master" stream type (RING on phones, MUSIC on tablets) is as follows: If a vibrator is present: VOL- and volume equals 1: NORMAL => VIBRATE VOL- and volume equals 0 and not continuous press: VIBRATE => SILENT VOL+ and in SILENT mode: SILENT => VIBRATE VOL+ and in VIBRATE mode: VIBRATE => NORMAL, volume = 1 If no vibrator is present: VOL- and volume equals 0 and not continuous press: NORMAL => SILENT VOL+ and in SILENT mode: SILENT => NORMAL, volume = 0 VIBRATE_ON and VIBRATE_IN_SILENT settings are not stored/retreived any more. AudioService checks and corrects ringer mode and stream volumes if necessary when reading from DB at boot time. Also: Added dump for stream volumes in AudioService. Added device names missing in AudioSystem for USB accessory and USB device. Issue: 6036529 Issue: 6414950 Issue: 6448163 Change-Id: I77fb821ec63e4e566320cac2701b4ac466e86aef
Diffstat (limited to 'packages/SettingsProvider')
-rw-r--r--packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java24
-rw-r--r--packages/SettingsProvider/src/com/android/providers/settings/SettingsHelper.java15
2 files changed, 18 insertions, 21 deletions
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
index abf713b..ee3b53f 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java
@@ -63,7 +63,7 @@ public class DatabaseHelper extends SQLiteOpenHelper {
// database gets upgraded properly. At a minimum, please confirm that 'upgradeVersion'
// is properly propagated through your change. Not doing so will result in a loss of user
// settings.
- private static final int DATABASE_VERSION = 76;
+ private static final int DATABASE_VERSION = 77;
private Context mContext;
@@ -1031,6 +1031,23 @@ public class DatabaseHelper extends SQLiteOpenHelper {
upgradeVersion = 76;
}
+ /************* The following are Jelly Bean changes ************/
+
+ if (upgradeVersion == 76) {
+ // Removed VIBRATE_IN_SILENT setting
+ db.beginTransaction();
+ try {
+ db.execSQL("DELETE FROM system WHERE name='"
+ + Settings.System.VIBRATE_IN_SILENT + "'");
+ db.setTransactionSuccessful();
+ } finally {
+ db.endTransaction();
+ }
+
+ upgradeVersion = 77;
+ }
+
+
// *** Remember to update DATABASE_VERSION above!
if (upgradeVersion != currentVersion) {
@@ -1311,8 +1328,6 @@ public class DatabaseHelper extends SQLiteOpenHelper {
loadSetting(stmt, Settings.System.MODE_RINGER,
AudioManager.RINGER_MODE_NORMAL);
- loadVibrateSetting(db, false);
-
// By default:
// - ringtones, notification, system and music streams are affected by ringer mode
// on non voice capable devices (tablets)
@@ -1433,9 +1448,6 @@ public class DatabaseHelper extends SQLiteOpenHelper {
loadUISoundEffectsSettings(stmt);
- loadBooleanSetting(stmt, Settings.System.VIBRATE_IN_SILENT,
- R.bool.def_vibrate_in_silent);
-
loadIntegerSetting(stmt, Settings.System.POINTER_SPEED,
R.integer.def_pointer_speed);
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsHelper.java
index 3e7d86a..18e7faa 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsHelper.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsHelper.java
@@ -43,9 +43,6 @@ public class SettingsHelper {
private IContentService mContentService;
private IPowerManager mPowerManager;
- private boolean mSilent;
- private boolean mVibrate;
-
public SettingsHelper(Context context) {
mContext = context;
mAudioManager = (AudioManager) context
@@ -119,18 +116,6 @@ public class SettingsHelper {
}
}
- private void setRingerMode() {
- if (mSilent) {
- mAudioManager.setRingerMode(mVibrate ? AudioManager.RINGER_MODE_VIBRATE :
- AudioManager.RINGER_MODE_SILENT);
- } else {
- mAudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
- mAudioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER,
- mVibrate ? AudioManager.VIBRATE_SETTING_ON
- : AudioManager.VIBRATE_SETTING_OFF);
- }
- }
-
byte[] getLocaleData() {
Configuration conf = mContext.getResources().getConfiguration();
final Locale loc = conf.locale;