diff options
Diffstat (limited to 'services/java/com')
3 files changed, 15 insertions, 4 deletions
diff --git a/services/java/com/android/server/accessibility/ScreenMagnifier.java b/services/java/com/android/server/accessibility/ScreenMagnifier.java index 51ccd47..6f3fec3 100644 --- a/services/java/com/android/server/accessibility/ScreenMagnifier.java +++ b/services/java/com/android/server/accessibility/ScreenMagnifier.java @@ -376,8 +376,9 @@ public final class ScreenMagnifier implements EventStreamTransformation { } if (event.getActionMasked() == MotionEvent.ACTION_UP) { clear(); - final float scale = mMagnificationController.getScale(); + float scale = mMagnificationController.getScale(); if (scale != getPersistedScale()) { + scale = Math.min(Math.max(scale, MIN_SCALE), MAX_SCALE); persistScale(scale); } if (mPreviousState == STATE_VIEWPORT_DRAGGING) { diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java index b1a2a2a..bffd0bc 100644 --- a/services/java/com/android/server/am/ActivityManagerService.java +++ b/services/java/com/android/server/am/ActivityManagerService.java @@ -1423,7 +1423,7 @@ public final class ActivityManagerService extends ActivityManagerNative context.setTheme(android.R.style.Theme_Holo); m.mContext = context; m.mFactoryTest = factoryTest; - m.mMainStack = new ActivityStack(m, context, true); + m.mMainStack = new ActivityStack(m, context, true, thr.mLooper); m.mBatteryStatsService.publish(context); m.mUsageStatsService.publish(context); @@ -1444,6 +1444,7 @@ public final class ActivityManagerService extends ActivityManagerNative static class AThread extends Thread { ActivityManagerService mService; + Looper mLooper; boolean mReady = false; public AThread() { @@ -1461,6 +1462,7 @@ public final class ActivityManagerService extends ActivityManagerNative synchronized (this) { mService = m; + mLooper = Looper.myLooper(); notifyAll(); } diff --git a/services/java/com/android/server/am/ActivityStack.java b/services/java/com/android/server/am/ActivityStack.java index 4bcb339..a728a4c 100755 --- a/services/java/com/android/server/am/ActivityStack.java +++ b/services/java/com/android/server/am/ActivityStack.java @@ -49,6 +49,7 @@ import android.os.Binder; import android.os.Bundle; import android.os.Handler; import android.os.IBinder; +import android.os.Looper; import android.os.Message; import android.os.ParcelFileDescriptor; import android.os.PowerManager; @@ -306,11 +307,17 @@ final class ActivityStack { } } - final Handler mHandler = new Handler() { + final Handler mHandler; + + final class ActivityStackHandler extends Handler { //public Handler() { // if (localLOGV) Slog.v(TAG, "Handler started!"); //} + public ActivityStackHandler(Looper looper) { + super(looper); + } + @Override public void handleMessage(Message msg) { switch (msg.what) { case SLEEP_TIMEOUT_MSG: { @@ -410,7 +417,8 @@ final class ActivityStack { } }; - ActivityStack(ActivityManagerService service, Context context, boolean mainStack) { + ActivityStack(ActivityManagerService service, Context context, boolean mainStack, Looper looper) { + mHandler = new ActivityStackHandler(looper); mService = service; mContext = context; mMainStack = mainStack; |