From 484d2888680e18e6ad8c3fcc51e3b70a705a096e Mon Sep 17 00:00:00 2001 From: Eric Laurent Date: Tue, 8 Dec 2009 09:05:45 -0800 Subject: Fix issue 2299360: Change in in-call volume affects the Bluetooth in-call volume and vice versa. Add a separate system settings entry for bluetooth SCO volume. --- .../android/providers/settings/DatabaseHelper.java | 25 +++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'packages/SettingsProvider') diff --git a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java index e28e915..ac2da97 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java @@ -71,7 +71,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 = 43; + private static final int DATABASE_VERSION = 44; private Context mContext; @@ -539,6 +539,24 @@ public class DatabaseHelper extends SQLiteOpenHelper { upgradeVersion = 43; } + if (upgradeVersion == 43) { + /* + * This upgrade stores bluetooth volume separately from voice volume + */ + db.beginTransaction(); + try { + SQLiteStatement stmt = db.compileStatement("INSERT OR IGNORE INTO system(name,value)" + + " VALUES(?,?);"); + loadSetting(stmt, Settings.System.VOLUME_BLUETOOTH_SCO, + AudioManager.DEFAULT_STREAM_VOLUME[AudioManager.STREAM_BLUETOOTH_SCO]); + stmt.close(); + db.setTransactionSuccessful(); + } finally { + db.endTransaction(); + } + upgradeVersion = 44; + } + if (upgradeVersion != currentVersion) { Log.w(TAG, "Got stuck trying to upgrade from version " + upgradeVersion + ", must wipe the settings provider"); @@ -691,6 +709,11 @@ public class DatabaseHelper extends SQLiteOpenHelper { stmt, Settings.System.VOLUME_NOTIFICATION, AudioManager.DEFAULT_STREAM_VOLUME[AudioManager.STREAM_NOTIFICATION]); + loadSetting( + stmt, + Settings.System.VOLUME_BLUETOOTH_SCO, + AudioManager.DEFAULT_STREAM_VOLUME[AudioManager.STREAM_BLUETOOTH_SCO]); + loadSetting(stmt, Settings.System.MODE_RINGER, AudioManager.RINGER_MODE_NORMAL); -- cgit v1.1