diff options
author | Danesh M <daneshm90@gmail.com> | 2014-12-19 14:51:39 -0800 |
---|---|---|
committer | Danesh M <daneshm90@gmail.com> | 2014-12-19 14:51:39 -0800 |
commit | 1b409dfd9b6a26807d6f3ff7aaeca3018c9534ca (patch) | |
tree | 9c6f9aeceed1fccc87855a1ad2a2370e48b2aa72 | |
parent | 1d5af43ed6664bd809e70031dab35bed542cc65d (diff) | |
download | android_packages_apps_DeskClock-1b409dfd9b6a26807d6f3ff7aaeca3018c9534ca.tar.gz android_packages_apps_DeskClock-1b409dfd9b6a26807d6f3ff7aaeca3018c9534ca.tar.bz2 android_packages_apps_DeskClock-1b409dfd9b6a26807d6f3ff7aaeca3018c9534ca.zip |
DeskClock : If volume actions are set, always show activity
We need an upfront activity to handle the volume key presses.
Change-Id: I29ee97e13c71195532732b9f5a13e8129840a928
-rwxr-xr-x | src/com/android/deskclock/alarms/AlarmService.java | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/com/android/deskclock/alarms/AlarmService.java b/src/com/android/deskclock/alarms/AlarmService.java index 374a0b0ee..95d2d1744 100755 --- a/src/com/android/deskclock/alarms/AlarmService.java +++ b/src/com/android/deskclock/alarms/AlarmService.java @@ -66,6 +66,7 @@ public class AlarmService extends Service { private static final int ALARM_NO_ACTION = 0; private static final int ALARM_SNOOZE = 1; private static final int ALARM_DISMISS = 2; + private String mVolumeBehavior; /** * Utility method to help start alarm properly. If alarm is already firing, it @@ -170,7 +171,23 @@ public class AlarmService extends Service { AlarmAlertWakeLock.acquireCpuWakeLock(this); mCurrentAlarm = instance; - AlarmNotifications.showAlarmNotification(this, mCurrentAlarm); + + switch (mVolumeBehavior) { + case SettingsActivity.VOLUME_BEHAVIOR_SNOOZE: + case SettingsActivity.VOLUME_BEHAVIOR_DISMISS: + Intent fullScreenIntent = AlarmInstance.createIntent(this, AlarmActivity.class, + instance.mId); + // set action, so we can be different then content pending intent + fullScreenIntent.setAction("fullscreen_activity"); + fullScreenIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | + Intent.FLAG_ACTIVITY_NO_USER_ACTION); + startActivity(fullScreenIntent); + break; + default: + AlarmNotifications.showAlarmNotification(this, mCurrentAlarm); + break; + } + mInitialCallState = mTelephonyManager.getCallState(); mTelephonyManager.listen(mPhoneStateListener, PhoneStateListener.LISTEN_CALL_STATE); boolean inCall = mInitialCallState != TelephonyManager.CALL_STATE_IDLE; @@ -205,6 +222,8 @@ public class AlarmService extends Service { SettingsActivity.KEY_FLIP_ACTION, DEFAULT_ACTION)); mShakeAction = Integer.parseInt(prefs.getString( SettingsActivity.KEY_SHAKE_ACTION, DEFAULT_ACTION)); + mVolumeBehavior = prefs.getString(SettingsActivity.KEY_VOLUME_BEHAVIOR, + SettingsActivity.DEFAULT_VOLUME_BEHAVIOR); } @Override |