DeskClock : Move default action for flip and shake to overlay
The current default action for flip and shake when alarm comes
is hardcoded. Move it to overlay, so we can config it easily
and overrided by device settings.
Also change the default action for flip to dismiss alarm.
Change-Id: I18a1850b7bf5f9342b121f6a9c930b3a05d40ed1
diff --git a/res/values/config.xml b/res/values/config.xml
index 9884671..9187cc5 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -23,6 +23,15 @@
<bool name="config_requiresScreenSaver">true</bool>
<bool name="config_dockAppEnabled">true</bool>
<bool name="config_rotateAlarmAlert">false</bool>
+ <!-- Default action for flip (turn face down) during alarm
+ 0 means no action, 1 means snooze
+ 2 means dismiss. -->
+ <integer name="config_defaultActionFlip">2</integer>
+ <!-- Default action for shake during alarm
+ 0 means no action, 1 means snooze
+ 2 means dismiss. -->
+ <integer name="config_defaultActionShake">0</integer>
+
<item type="integer" name="timer_column_count">1</item>
<!-- Number of world clocks in a row, for the clock tab. -->
<item type="integer" name="world_clocks_per_row">1</item>
diff --git a/res/xml/settings.xml b/res/xml/settings.xml
index 37f0e04..235906a 100644
--- a/res/xml/settings.xml
+++ b/res/xml/settings.xml
@@ -71,7 +71,7 @@
android:dialogTitle="@string/flip_action_title"
android:entries="@array/volume_button_setting_entries"
android:entryValues="@array/volume_button_setting_values"
- android:defaultValue="0" />
+ android:defaultValue="@integer/config_defaultActionFlip" />
<ListPreference
android:key="shake_action"
@@ -79,7 +79,7 @@
android:dialogTitle="@string/shake_action_title"
android:entries="@array/volume_button_setting_entries"
android:entryValues="@array/volume_button_setting_values"
- android:defaultValue="0" />
+ android:defaultValue="@integer/config_defaultActionShake" />
<SwitchPreference
android:key="show_status_bar_icon"
diff --git a/src/com/android/deskclock/alarms/AlarmService.java b/src/com/android/deskclock/alarms/AlarmService.java
index d972b45..3160800 100755
--- a/src/com/android/deskclock/alarms/AlarmService.java
+++ b/src/com/android/deskclock/alarms/AlarmService.java
@@ -81,9 +81,6 @@
private static final int ALARM_SNOOZE = 1;
private static final int ALARM_DISMISS = 2;
- // default action for flip and shake
- private static final String DEFAULT_ACTION = Integer.toString(ALARM_NO_ACTION);
-
/** Binder given to AlarmActivity */
private final IBinder mBinder = new Binder();
@@ -276,10 +273,12 @@
// set up for flip and shake actions
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
- mFlipAction = Integer.parseInt(prefs.getString(
- SettingsActivity.KEY_FLIP_ACTION, DEFAULT_ACTION));
- mShakeAction = Integer.parseInt(prefs.getString(
- SettingsActivity.KEY_SHAKE_ACTION, DEFAULT_ACTION));
+ String action = prefs.getString(SettingsActivity.KEY_FLIP_ACTION, null);
+ mFlipAction = (action != null) ? Integer.parseInt(action) :
+ getResources().getInteger(R.integer.config_defaultActionFlip);
+ action = prefs.getString(SettingsActivity.KEY_SHAKE_ACTION, null);
+ mShakeAction = (action != null) ? Integer.parseInt(action) :
+ getResources().getInteger(R.integer.config_defaultActionShake);
}
@Override