Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a4ca0a81 authored by Candice Lo's avatar Candice Lo
Browse files

(refactor) Updating the field name mIsFullscreenMagnificationActivated

Updating the field name and method names since it is used for indicating the activation of the fullscreen magnification instead of the border status. Therefore, we won't mix up border drawing process with fullscreen magnification activation.

Bug: 291891390
Test: atest frameworks/base/services/tests/servicestests/src/com/android/server/accessibility/magnification
Flag: N/A
Change-Id: I378764c633d2cb97e248b0f5eaad4f4e27cd4caf
parent 63405659
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -541,7 +541,7 @@ public class FullScreenMagnificationController implements
                    callback.onFullScreenMagnificationActivationState(
                            mDisplayId, mMagnificationActivated);
                });
                mControllerCtx.getWindowManager().setForceShowMagnifiableBounds(
                mControllerCtx.getWindowManager().setFullscreenMagnificationActivated(
                        mDisplayId, activated);
            }

+21 −20
Original line number Diff line number Diff line
@@ -523,14 +523,15 @@ final class AccessibilityController {
                || mWindowsForAccessibilityObserver.size() > 0);
    }

    void setForceShowMagnifiableBounds(int displayId, boolean show) {
    void setFullscreenMagnificationActivated(int displayId, boolean activated) {
        if (mAccessibilityTracing.isTracingEnabled(FLAGS_MAGNIFICATION_CALLBACK)) {
            mAccessibilityTracing.logTrace(TAG + ".setForceShowMagnifiableBounds",
                    FLAGS_MAGNIFICATION_CALLBACK, "displayId=" + displayId + "; show=" + show);
            mAccessibilityTracing.logTrace(TAG + ".setFullscreenMagnificationActivated",
                    FLAGS_MAGNIFICATION_CALLBACK,
                    "displayId=" + displayId + "; activated=" + activated);
        }
        final DisplayMagnifier displayMagnifier = mDisplayMagnifiers.get(displayId);
        if (displayMagnifier != null) {
            displayMagnifier.setForceShowMagnifiableBounds(show);
            displayMagnifier.setFullscreenMagnificationActivated(activated);
            displayMagnifier.showMagnificationBoundsIfNeeded();
        }
    }
@@ -624,7 +625,7 @@ final class AccessibilityController {

        private final long mLongAnimationDuration;

        private boolean mForceShowMagnifiableBounds = false;
        private boolean mIsFullscreenMagnificationActivated = false;

        private final MagnificationSpec mMagnificationSpec = new MagnificationSpec();

@@ -675,25 +676,25 @@ final class AccessibilityController {
            if (!mHandler.hasMessages(
                    MyHandler.MESSAGE_SHOW_MAGNIFIED_REGION_BOUNDS_IF_NEEDED)) {
                mMagnifedViewport.setMagnifiedRegionBorderShown(
                        isForceShowingMagnifiableBounds(), true);
                        isFullscreenMagnificationActivated(), true);
            }
        }

        void setForceShowMagnifiableBounds(boolean show) {
        void setFullscreenMagnificationActivated(boolean activated) {
            if (mAccessibilityTracing.isTracingEnabled(FLAGS_MAGNIFICATION_CALLBACK)) {
                mAccessibilityTracing.logTrace(LOG_TAG + ".setForceShowMagnifiableBounds",
                        FLAGS_MAGNIFICATION_CALLBACK, "show=" + show);
                mAccessibilityTracing.logTrace(LOG_TAG + ".setFullscreenMagnificationActivated",
                        FLAGS_MAGNIFICATION_CALLBACK, "activated=" + activated);
            }
            mForceShowMagnifiableBounds = show;
            mMagnifedViewport.setMagnifiedRegionBorderShown(show, true);
            mIsFullscreenMagnificationActivated = activated;
            mMagnifedViewport.setMagnifiedRegionBorderShown(activated, true);
        }

        boolean isForceShowingMagnifiableBounds() {
        boolean isFullscreenMagnificationActivated() {
            if (mAccessibilityTracing.isTracingEnabled(FLAGS_MAGNIFICATION_CALLBACK)) {
                mAccessibilityTracing.logTrace(LOG_TAG + ".isForceShowingMagnifiableBounds",
                mAccessibilityTracing.logTrace(LOG_TAG + ".isFullscreenMagnificationActivated",
                        FLAGS_MAGNIFICATION_CALLBACK);
            }
            return mForceShowMagnifiableBounds;
            return mIsFullscreenMagnificationActivated;
        }

        void onWindowLayersChanged() {
@@ -733,7 +734,7 @@ final class AccessibilityController {
                        + AppTransition.appTransitionOldToString(transition)
                        + " displayId: " + displayId);
            }
            final boolean isMagnifierActivated = isForceShowingMagnifiableBounds();
            final boolean isMagnifierActivated = isFullscreenMagnificationActivated();
            if (isMagnifierActivated) {
                switch (transition) {
                    case WindowManager.TRANSIT_OLD_ACTIVITY_OPEN:
@@ -758,7 +759,7 @@ final class AccessibilityController {
                Slog.i(LOG_TAG, "Window transition: " + WindowManager.transitTypeToString(type)
                        + " displayId: " + displayId);
            }
            final boolean isMagnifierActivated = isForceShowingMagnifiableBounds();
            final boolean isMagnifierActivated = isFullscreenMagnificationActivated();
            if (isMagnifierActivated) {
                // All opening/closing situations.
                switch (type) {
@@ -782,7 +783,7 @@ final class AccessibilityController {
                        + AppTransition.appTransitionOldToString(transition)
                        + " displayId: " + windowState.getDisplayId());
            }
            final boolean isMagnifierActivated = isForceShowingMagnifiableBounds();
            final boolean isMagnifierActivated = isFullscreenMagnificationActivated();
            final int type = windowState.mAttrs.type;
            switch (transition) {
                case WindowManagerPolicy.TRANSIT_ENTER:
@@ -1114,12 +1115,12 @@ final class AccessibilityController {
            }

            void onDisplaySizeChanged() {
                // If we are showing the magnification border, hide it immediately so
                // If fullscreen magnification is activated, hide the border immediately so
                // the user does not see strange artifacts during display size changed caused by
                // rotation or folding/unfolding the device. In the rotation case, the screenshot
                // used for rotation already has the border. After the rotation is complete
                // we will show the border.
                if (isForceShowingMagnifiableBounds()) {
                if (isFullscreenMagnificationActivated()) {
                    setMagnifiedRegionBorderShown(false, false);
                    final long delay = (long) (mLongAnimationDuration
                            * mService.getWindowAnimationScaleLocked());
@@ -1490,7 +1491,7 @@ final class AccessibilityController {

                    case MESSAGE_SHOW_MAGNIFIED_REGION_BOUNDS_IF_NEEDED : {
                        synchronized (mService.mGlobalLock) {
                            if (isForceShowingMagnifiableBounds()) {
                            if (isFullscreenMagnificationActivated()) {
                                mMagnifedViewport.setMagnifiedRegionBorderShown(true, true);
                                mService.scheduleAnimationLocked();
                            }
+3 −4
Original line number Diff line number Diff line
@@ -409,13 +409,12 @@ public abstract class WindowManagerInternal {
    public abstract void setMagnificationSpec(int displayId, MagnificationSpec spec);

    /**
     * Set by the accessibility framework to indicate whether the magnifiable regions of the display
     * should be shown.
     * Set by the accessibility framework to indicate whether fullscreen magnification is activated.
     *
     * @param displayId The logical display id.
     * @param show {@code true} to show magnifiable region bounds, {@code false} to hide
     * @param activated The activation of fullscreen magnification
     */
    public abstract void setForceShowMagnifiableBounds(int displayId, boolean show);
    public abstract void setFullscreenMagnificationActivated(int displayId, boolean activated);

    /**
     * Obtains the magnification regions.
+3 −2
Original line number Diff line number Diff line
@@ -7839,10 +7839,11 @@ public class WindowManagerService extends IWindowManager.Stub
        }

        @Override
        public void setForceShowMagnifiableBounds(int displayId, boolean show) {
        public void setFullscreenMagnificationActivated(int displayId, boolean activated) {
            synchronized (mGlobalLock) {
                if (mAccessibilityController.hasCallbacks()) {
                    mAccessibilityController.setForceShowMagnifiableBounds(displayId, show);
                    mAccessibilityController
                            .setFullscreenMagnificationActivated(displayId, activated);
                } else {
                    throw new IllegalStateException("Magnification callbacks not set!");
                }
+1 −1
Original line number Diff line number Diff line
@@ -1265,7 +1265,7 @@ public class FullScreenMagnificationControllerTest {
                DISPLAY_0, scale, Float.NaN, Float.NaN, true, SERVICE_ID_1);

        checkActivatedAndMagnifying(/* activated= */ true, /* magnifying= */ false, DISPLAY_0);
        verify(mMockWindowManager).setForceShowMagnifiableBounds(DISPLAY_0, true);
        verify(mMockWindowManager).setFullscreenMagnificationActivated(DISPLAY_0, true);
    }

    @Test