summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorBrian Colonna <bcolonna@google.com>2013-03-29 11:52:42 -0400
committerBrian Colonna <bcolonna@google.com>2013-03-29 18:35:43 -0400
commitb1b9a8ac07ea7d438eda613f4c798dd8b10a66ce (patch)
tree842924f02503946c4cde9d1cc21817b2a4d3af48 /tools
parentda160ec313d844b09818a91463631440a1b8a09c (diff)
downloadframeworks_base-b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce.zip
frameworks_base-b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce.tar.gz
frameworks_base-b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce.tar.bz2
FUL now restarts when flipping tablet 180 (bug 7484464)
When a tablet rotates, FUL must be stopped and restarted in a new position. 90 degree rotations cause a configuration change, causing FUL to be automatically reconstructed in the new location. However, a 180 degree rotation is not a configuration change, so FUL was not restarting. A 180 degree rotation happens more often than one might think. If you set the tablet down and later picked it up in the opposite orientation, FUL would not work prior to this fix. This change adds a rotation watcher to KeyguardFaceUnlockView. It watches for 180 degree rotations and stops and restarts FUL accordingly. The rotation watcher callback must be unregistered when KeyguardFaceUnlockView is recreated (as during 90 degree rotation changes), otherwise the number of rotation watcher callbacks will keep growing and they will never go away. This is a problem not just because there are many callbacks hanging around, but also because the old callbacks end up trying to access biometric unlock views that no longer exist, resulting in crashes. So, a simple function was added to the window manager to unregister a rotation watcher. Change-Id: Ie1ef20a9a22b8f4e39918987dff2b8ad444fcfd1
Diffstat (limited to 'tools')
-rw-r--r--tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java b/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
index 6fbe32f..434b131 100644
--- a/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
+++ b/tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java
@@ -449,6 +449,10 @@ public class IWindowManagerImpl implements IWindowManager {
}
@Override
+ public void removeRotationWatcher(IRotationWatcher arg0) throws RemoteException {
+ }
+
+ @Override
public boolean waitForWindowDrawn(IBinder token, IRemoteCallback callback) {
return false;
}