import com.android.systemui.recents.events.activity.DockedTopTaskEvent;
import com.android.systemui.recents.events.activity.RecentsActivityStartingEvent;
import com.android.systemui.recents.events.ui.RecentsDrawnEvent;
+import com.android.systemui.recents.misc.ForegroundThread;
/**
* An implementation of the system user's Recents interface to be called remotely by secondary
@Override
public void updateRecentsVisibility(boolean visible) {
- mImpl.onVisibilityChanged(mContext, visible);
+ ForegroundThread.getHandler().post(() -> {
+ mImpl.onVisibilityChanged(mContext, visible);
+ });
}
@Override
public void startScreenPinning(int taskId) {
- mImpl.onStartScreenPinning(mContext, taskId);
+ ForegroundThread.getHandler().post(() -> {
+ mImpl.onStartScreenPinning(mContext, taskId);
+ });
}
@Override
}
public void showPrompt(int taskId, boolean allowCancel) {
- clearPrompt();
+ try {
+ clearPrompt();
+ } catch (IllegalArgumentException e) {
+ // If the call to show the prompt fails due to the request window not already being
+ // attached, then just ignore the error since we will be re-adding it below.
+ }
this.taskId = taskId;