From fe1579e251e2f7df5c06feeea2a65e9ccfe69caa Mon Sep 17 00:00:00 2001 From: mincheli Date: Mon, 7 Dec 2020 15:07:10 +0800 Subject: [PATCH] Not need to show magnification switch UI when magnification scale is changed In the new design, we show the magnification switch UI when the touch interaction starts, ends or cancels. We don't need to notify showing the switch UI when the scale is changed because the new design includes the case for scale changes. So we can remove the implementation of onMagnificationScaleChanged. Bug: 172631612 Test: atest FullScreenMagnificationGestureHandlerTest MagnificationControllerTest Change-Id: I245b611d8a6a50aeff008257cbb87dfed8fd8962 --- ...FullScreenMagnificationGestureHandler.java | 1 - .../MagnificationController.java | 10 ------- .../MagnificationGestureHandler.java | 8 +----- .../WindowMagnificationGestureHandler.java | 1 - ...ScreenMagnificationGestureHandlerTest.java | 3 --- .../MagnificationControllerTest.java | 26 ------------------- 6 files changed, 1 insertion(+), 48 deletions(-) diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandler.java b/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandler.java index 7483ff3ef3f43..8dc9db53b77f1 100644 --- a/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandler.java +++ b/services/accessibility/java/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandler.java @@ -395,7 +395,6 @@ public class FullScreenMagnificationGestureHandler extends MagnificationGestureH if (DEBUG_PANNING_SCALING) Slog.i(mLogTag, "Scaled content to: " + scale + "x"); mFullScreenMagnificationController.setScale(mDisplayId, scale, pivotX, pivotY, false, AccessibilityManagerService.MAGNIFICATION_GESTURE_HANDLER_ID); - mListener.onMagnificationScaleChanged(mDisplayId, getMode()); return /* handled: */ true; } diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java index df88ceb95d9e1..48390fdbc760e 100644 --- a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java +++ b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationController.java @@ -84,16 +84,6 @@ public class MagnificationController implements WindowMagnificationManager.Callb public void onPerformScaleAction(int displayId, float scale) { getWindowMagnificationMgr().setScale(displayId, scale); getWindowMagnificationMgr().persistScale(displayId); - onMagnificationScaleChanged(displayId, - Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_WINDOW); - } - - @Override - public void onMagnificationScaleChanged(int displayId, int mode) { - if (mMagnificationCapabilities != Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_ALL) { - return; - } - getWindowMagnificationMgr().showMagnificationButton(displayId, mode); } /** diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationGestureHandler.java b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationGestureHandler.java index 386d0bbf35ec4..f8a675d1849ef 100644 --- a/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationGestureHandler.java +++ b/services/accessibility/java/com/android/server/accessibility/magnification/MagnificationGestureHandler.java @@ -61,13 +61,7 @@ public abstract class MagnificationGestureHandler extends BaseEventStreamTransfo /** Interface for listening to the magnification scaling gesture. */ public interface ScaleChangedListener { - /** - * Called when the magnification scale is changed by users. - * - * @param displayId The logical display id - * @param mode The magnification mode - */ - void onMagnificationScaleChanged(int displayId, int mode); + } protected final ScaleChangedListener mListener; diff --git a/services/accessibility/java/com/android/server/accessibility/magnification/WindowMagnificationGestureHandler.java b/services/accessibility/java/com/android/server/accessibility/magnification/WindowMagnificationGestureHandler.java index 7f26b27559002..c6a5ed8067f4d 100644 --- a/services/accessibility/java/com/android/server/accessibility/magnification/WindowMagnificationGestureHandler.java +++ b/services/accessibility/java/com/android/server/accessibility/magnification/WindowMagnificationGestureHandler.java @@ -115,7 +115,6 @@ public class WindowMagnificationGestureHandler extends MagnificationGestureHandl @Override public void setScale(int displayId, float scale) { mWindowMagnificationMgr.setScale(displayId, scale); - mListener.onMagnificationScaleChanged(displayId, getMode()); } @Override diff --git a/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java b/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java index c038a0f339045..531f513b00e8f 100644 --- a/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java +++ b/services/tests/servicestests/src/com/android/server/accessibility/magnification/FullScreenMagnificationGestureHandlerTest.java @@ -42,7 +42,6 @@ import android.content.Context; import android.graphics.PointF; import android.os.Handler; import android.os.Message; -import android.provider.Settings; import android.util.DebugUtils; import android.view.InputDevice; import android.view.MotionEvent; @@ -554,8 +553,6 @@ public class FullScreenMagnificationGestureHandlerTest { check(mMgh.mCurrentState == mMgh.mPanningScalingState, state); check(mMgh.mPanningScalingState.mScaling, state); - verify(mMockScaleChangedListener).onMagnificationScaleChanged(DISPLAY_0, - Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_FULLSCREEN); } break; default: throw new IllegalArgumentException("Illegal state: " + state); } diff --git a/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java b/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java index cba618bf94b8f..d8b19d3d7ad20 100644 --- a/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java +++ b/services/tests/servicestests/src/com/android/server/accessibility/magnification/MagnificationControllerTest.java @@ -278,32 +278,6 @@ public class MagnificationControllerTest { verify(mWindowMagnificationManager).setScale(eq(TEST_DISPLAY), eq(newScale)); verify(mWindowMagnificationManager).persistScale(eq(TEST_DISPLAY)); - verify(mMagnificationController).onMagnificationScaleChanged(eq(TEST_DISPLAY), - eq(MODE_WINDOW)); - } - - @Test - public void onMagnificationScaleChanged_capabilitiesAllMode_showMagnificationButton() - throws RemoteException { - mMagnificationController.setMagnificationCapabilities( - Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_ALL); - - mMagnificationController.onMagnificationScaleChanged(TEST_DISPLAY, MODE_WINDOW); - - verify(mWindowMagnificationManager).showMagnificationButton(eq(TEST_DISPLAY), - eq(MODE_WINDOW)); - } - - @Test - public void onMagnificationScaleChanged_capabilitiesNotAllMode_notShowMagnificationButton() - throws RemoteException { - mMagnificationController.setMagnificationCapabilities( - Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_FULLSCREEN); - - mMagnificationController.onMagnificationScaleChanged(TEST_DISPLAY, MODE_WINDOW); - - verify(mWindowMagnificationManager, never()).showMagnificationButton(eq(TEST_DISPLAY), - eq(MODE_WINDOW)); } private void setMagnificationEnabled(int mode) throws RemoteException {