summaryrefslogtreecommitdiffstats
path: root/core/java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/app/ActivityManagerNative.java27
-rw-r--r--core/java/android/app/IActivityManager.java3
2 files changed, 30 insertions, 0 deletions
diff --git a/core/java/android/app/ActivityManagerNative.java b/core/java/android/app/ActivityManagerNative.java
index 83acb4d..bb62c9e 100644
--- a/core/java/android/app/ActivityManagerNative.java
+++ b/core/java/android/app/ActivityManagerNative.java
@@ -1772,6 +1772,7 @@ public abstract class ActivityManagerNative extends Binder implements IActivityM
IUserSwitchObserver observer = IUserSwitchObserver.Stub.asInterface(
data.readStrongBinder());
registerUserSwitchObserver(observer);
+ reply.writeNoException();
return true;
}
@@ -1780,12 +1781,24 @@ public abstract class ActivityManagerNative extends Binder implements IActivityM
IUserSwitchObserver observer = IUserSwitchObserver.Stub.asInterface(
data.readStrongBinder());
unregisterUserSwitchObserver(observer);
+ reply.writeNoException();
return true;
}
case REQUEST_BUG_REPORT_TRANSACTION: {
data.enforceInterface(IActivityManager.descriptor);
requestBugReport();
+ reply.writeNoException();
+ return true;
+ }
+
+ case INPUT_DISPATCHING_TIMED_OUT_TRANSACTION: {
+ data.enforceInterface(IActivityManager.descriptor);
+ int pid = data.readInt();
+ boolean aboveSystem = data.readInt() != 0;
+ long res = inputDispatchingTimedOut(pid, aboveSystem);
+ reply.writeNoException();
+ reply.writeLong(res);
return true;
}
@@ -4082,5 +4095,19 @@ class ActivityManagerProxy implements IActivityManager
reply.recycle();
}
+ public long inputDispatchingTimedOut(int pid, boolean aboveSystem) throws RemoteException {
+ Parcel data = Parcel.obtain();
+ Parcel reply = Parcel.obtain();
+ data.writeInterfaceToken(IActivityManager.descriptor);
+ data.writeInt(pid);
+ data.writeInt(aboveSystem ? 1 : 0);
+ mRemote.transact(INPUT_DISPATCHING_TIMED_OUT_TRANSACTION, data, reply, 0);
+ reply.readException();
+ long res = reply.readInt();
+ data.recycle();
+ reply.recycle();
+ return res;
+ }
+
private IBinder mRemote;
}
diff --git a/core/java/android/app/IActivityManager.java b/core/java/android/app/IActivityManager.java
index 3124671..da844ef 100644
--- a/core/java/android/app/IActivityManager.java
+++ b/core/java/android/app/IActivityManager.java
@@ -363,6 +363,8 @@ public interface IActivityManager extends IInterface {
public void requestBugReport() throws RemoteException;
+ public long inputDispatchingTimedOut(int pid, boolean aboveSystem) throws RemoteException;
+
/*
* Private non-Binder interfaces
*/
@@ -616,4 +618,5 @@ public interface IActivityManager extends IInterface {
int UNREGISTER_USER_SWITCH_OBSERVER_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+155;
int GET_RUNNING_USER_IDS_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+156;
int REQUEST_BUG_REPORT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+157;
+ int INPUT_DISPATCHING_TIMED_OUT_TRANSACTION = IBinder.FIRST_CALL_TRANSACTION+158;
}