Merge "Stop screensaver on incoming phone call." into jb-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
460847c70d
@ -51,6 +51,7 @@ import android.os.ServiceManager;
|
|||||||
import android.os.UserId;
|
import android.os.UserId;
|
||||||
import android.os.Vibrator;
|
import android.os.Vibrator;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.service.dreams.IDreamManager;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.AtomicFile;
|
import android.util.AtomicFile;
|
||||||
@ -148,6 +149,8 @@ public class NotificationManagerService extends INotificationManager.Stub
|
|||||||
private AtomicFile mPolicyFile;
|
private AtomicFile mPolicyFile;
|
||||||
private HashSet<String> mBlockedPackages = new HashSet<String>();
|
private HashSet<String> mBlockedPackages = new HashSet<String>();
|
||||||
|
|
||||||
|
private IDreamManager mSandman;
|
||||||
|
|
||||||
private static final int DB_VERSION = 1;
|
private static final int DB_VERSION = 1;
|
||||||
|
|
||||||
private static final String TAG_BODY = "notification-policy";
|
private static final String TAG_BODY = "notification-policy";
|
||||||
@ -634,6 +637,8 @@ public class NotificationManagerService extends INotificationManager.Stub
|
|||||||
void systemReady() {
|
void systemReady() {
|
||||||
mAudioService = IAudioService.Stub.asInterface(
|
mAudioService = IAudioService.Stub.asInterface(
|
||||||
ServiceManager.getService(Context.AUDIO_SERVICE));
|
ServiceManager.getService(Context.AUDIO_SERVICE));
|
||||||
|
mSandman = IDreamManager.Stub.asInterface(
|
||||||
|
ServiceManager.getService("dreams"));
|
||||||
|
|
||||||
// no beeping until we're basically done booting
|
// no beeping until we're basically done booting
|
||||||
mSystemReady = true;
|
mSystemReady = true;
|
||||||
@ -972,6 +977,16 @@ public class NotificationManagerService extends INotificationManager.Stub
|
|||||||
| Notification.FLAG_NO_CLEAR;
|
| Notification.FLAG_NO_CLEAR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Stop screensaver if the notification has a full-screen intent.
|
||||||
|
// (like an incoming phone call)
|
||||||
|
if (notification.fullScreenIntent != null && mSandman != null) {
|
||||||
|
try {
|
||||||
|
mSandman.awaken();
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
// noop
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (notification.icon != 0) {
|
if (notification.icon != 0) {
|
||||||
StatusBarNotification n = new StatusBarNotification(pkg, id, tag,
|
StatusBarNotification n = new StatusBarNotification(pkg, id, tag,
|
||||||
r.uid, r.initialPid, score, notification);
|
r.uid, r.initialPid, score, notification);
|
||||||
|
Reference in New Issue
Block a user