diff options
4 files changed, 23 insertions, 5 deletions
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index 483c39d98ae1..f50dc8ddd262 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -21206,6 +21206,8 @@ public class View implements Drawable.Callback, KeyEvent.Callback, mCurrentAnimation = null; if ((mViewFlags & TOOLTIP) == TOOLTIP) { + removeCallbacks(mTooltipInfo.mShowTooltipRunnable); + removeCallbacks(mTooltipInfo.mHideTooltipRunnable); hideTooltip(); } diff --git a/services/core/java/com/android/server/StorageManagerService.java b/services/core/java/com/android/server/StorageManagerService.java index a3137a66144a..af0e61e9f6d4 100644 --- a/services/core/java/com/android/server/StorageManagerService.java +++ b/services/core/java/com/android/server/StorageManagerService.java @@ -1357,6 +1357,21 @@ class StorageManagerService extends IStorageManager.Stub } } + /** + * This method checks if the volume is public and the volume is visible and the volume it is + * trying to mount doesn't have the same mount user id as the current user being maintained by + * StorageManagerService and change the mount Id. The checks are same as + * {@link StorageManagerService#maybeRemountVolumes(int)} + * @param VolumeInfo object to consider for changing the mountId + */ + private void updateVolumeMountIdIfRequired(VolumeInfo vol) { + synchronized (mLock) { + if (!vol.isPrimary() && vol.isVisible() && vol.getMountUserId() != mCurrentUserId) { + vol.mountUserId = mCurrentUserId; + } + } + } + private boolean supportsBlockCheckpoint() throws RemoteException { enforcePermission(android.Manifest.permission.MOUNT_FORMAT_FILESYSTEMS); return mVold.supportsBlockCheckpoint(); @@ -1468,13 +1483,14 @@ class StorageManagerService extends IStorageManager.Stub } @Override - public void onVolumeStateChanged(String volId, final int newState) { + public void onVolumeStateChanged(String volId, final int newState, final int userId) { synchronized (mLock) { final VolumeInfo vol = mVolumes.get(volId); if (vol != null) { final int oldState = vol.state; vol.state = newState; final VolumeInfo vInfo = new VolumeInfo(vol); + vInfo.mountUserId = userId; final SomeArgs args = SomeArgs.obtain(); args.arg1 = vInfo; args.argi1 = oldState; @@ -2322,7 +2338,7 @@ class StorageManagerService extends IStorageManager.Stub if (isMountDisallowed(vol)) { throw new SecurityException("Mounting " + volId + " restricted by policy"); } - + updateVolumeMountIdIfRequired(vol); mount(vol); } diff --git a/services/core/java/com/android/server/os/NativeTombstoneManager.java b/services/core/java/com/android/server/os/NativeTombstoneManager.java index 45192b7bcdbe..88f70cf21959 100644 --- a/services/core/java/com/android/server/os/NativeTombstoneManager.java +++ b/services/core/java/com/android/server/os/NativeTombstoneManager.java @@ -363,7 +363,7 @@ public final class NativeTombstoneManager { return false; } - if (Math.abs(exitInfo.getTimestamp() - mTimestampMs) > 5000) { + if (Math.abs(exitInfo.getTimestamp() - mTimestampMs) > 10000) { return false; } diff --git a/services/core/java/com/android/server/policy/PhoneWindowManager.java b/services/core/java/com/android/server/policy/PhoneWindowManager.java index 95ab464ce04a..441ce317d357 100644 --- a/services/core/java/com/android/server/policy/PhoneWindowManager.java +++ b/services/core/java/com/android/server/policy/PhoneWindowManager.java @@ -5857,10 +5857,10 @@ public class PhoneWindowManager implements WindowManagerPolicy { pw.println(endcallBehaviorToString(mEndcallBehavior)); pw.print(prefix); // TODO(b/117479243): handle it in InputPolicy - pw.print("mDisplayHomeButtonHandlers="); + pw.println("mDisplayHomeButtonHandlers="); for (int i = 0; i < mDisplayHomeButtonHandlers.size(); i++) { final int key = mDisplayHomeButtonHandlers.keyAt(i); - pw.println(mDisplayHomeButtonHandlers.get(key)); + pw.print(prefix); pw.print(" "); pw.println(mDisplayHomeButtonHandlers.get(key)); } pw.print(prefix); pw.print("mKeyguardOccluded="); pw.print(isKeyguardOccluded()); pw.print(" mKeyguardOccludedChanged="); pw.print(mKeyguardOccludedChanged); |