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

Commit 20c81528 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Refactor magnification keyboard control to new gantry flag" into main

parents e5238aa8 52626393
Loading
Loading
Loading
Loading
+1 −3
Original line number Original line Diff line number Diff line
@@ -21,8 +21,6 @@ import static android.view.MotionEvent.ACTION_SCROLL;
import static android.view.WindowManager.LayoutParams.TYPE_ACCESSIBILITY_MAGNIFICATION_OVERLAY;
import static android.view.WindowManager.LayoutParams.TYPE_ACCESSIBILITY_MAGNIFICATION_OVERLAY;
import static android.view.WindowManager.LayoutParams.TYPE_MAGNIFICATION_OVERLAY;
import static android.view.WindowManager.LayoutParams.TYPE_MAGNIFICATION_OVERLAY;


import static com.android.hardware.input.Flags.enableTalkbackAndMagnifierKeyGestures;

import android.accessibilityservice.AccessibilityTrace;
import android.accessibilityservice.AccessibilityTrace;
import android.annotation.MainThread;
import android.annotation.MainThread;
import android.annotation.NonNull;
import android.annotation.NonNull;
@@ -758,7 +756,7 @@ class AccessibilityInputFilter extends InputFilter implements EventStreamTransfo
            addFirstEventHandler(Display.DEFAULT_DISPLAY, mMouseKeysInterceptor);
            addFirstEventHandler(Display.DEFAULT_DISPLAY, mMouseKeysInterceptor);
        }
        }


        if (enableTalkbackAndMagnifierKeyGestures() && isAnyMagnificationEnabled()) {
        if (Flags.enableMagnificationKeyboardControl() && isAnyMagnificationEnabled()) {
            mMagnificationKeyHandler = new MagnificationKeyHandler(
            mMagnificationKeyHandler = new MagnificationKeyHandler(
                    mAms.getMagnificationController());
                    mAms.getMagnificationController());
            addFirstEventHandler(Display.DEFAULT_DISPLAY, mMagnificationKeyHandler);
            addFirstEventHandler(Display.DEFAULT_DISPLAY, mMagnificationKeyHandler);
+2 −1
Original line number Original line Diff line number Diff line
@@ -20,6 +20,7 @@ import android.view.Display;
import android.view.KeyEvent;
import android.view.KeyEvent;


import com.android.server.accessibility.BaseEventStreamTransformation;
import com.android.server.accessibility.BaseEventStreamTransformation;
import com.android.server.accessibility.Flags;


/*
/*
 * A class that listens to key presses used to control magnification.
 * A class that listens to key presses used to control magnification.
@@ -79,7 +80,7 @@ public class MagnificationKeyHandler extends BaseEventStreamTransformation {


    @Override
    @Override
    public void onKeyEvent(KeyEvent event, int policyFlags) {
    public void onKeyEvent(KeyEvent event, int policyFlags) {
        if (!com.android.hardware.input.Flags.enableTalkbackAndMagnifierKeyGestures()) {
        if (!Flags.enableMagnificationKeyboardControl()) {
            // Send to the rest of the handlers.
            // Send to the rest of the handlers.
            super.onKeyEvent(event, policyFlags);
            super.onKeyEvent(event, policyFlags);
            return;
            return;
+6 −6
Original line number Original line Diff line number Diff line
@@ -20,13 +20,13 @@ import static android.view.Display.DEFAULT_DISPLAY;
import static android.view.DisplayAdjustments.DEFAULT_DISPLAY_ADJUSTMENTS;
import static android.view.DisplayAdjustments.DEFAULT_DISPLAY_ADJUSTMENTS;
import static android.view.WindowManagerPolicyConstants.FLAG_PASS_TO_USER;
import static android.view.WindowManagerPolicyConstants.FLAG_PASS_TO_USER;


import static com.android.hardware.input.Flags.FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_AUTOCLICK;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_AUTOCLICK;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_CONTROL_SCREEN_MAGNIFIER;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_CONTROL_SCREEN_MAGNIFIER;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_FILTER_KEY_EVENTS;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_FILTER_KEY_EVENTS;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_INJECT_MOTION_EVENTS;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_INJECT_MOTION_EVENTS;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_TOUCH_EXPLORATION;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_TOUCH_EXPLORATION;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_TRIGGERED_SCREEN_MAGNIFIER;
import static com.android.server.accessibility.AccessibilityInputFilter.FLAG_FEATURE_TRIGGERED_SCREEN_MAGNIFIER;
import static com.android.server.accessibility.Flags.FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL;


import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNotNull;
@@ -191,7 +191,7 @@ public class AccessibilityInputFilterTest {
    }
    }


    @Test
    @Test
    @RequiresFlagsEnabled(FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES)
    @RequiresFlagsEnabled(FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL)
    public void testEventHandler_shouldIncreaseAndHaveCorrectOrderAfterOnDisplayAdded() {
    public void testEventHandler_shouldIncreaseAndHaveCorrectOrderAfterOnDisplayAdded() {
        prepareLooper();
        prepareLooper();


@@ -248,7 +248,7 @@ public class AccessibilityInputFilterTest {
    }
    }


    @Test
    @Test
    @RequiresFlagsEnabled(FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES)
    @RequiresFlagsEnabled(FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL)
    public void testEventHandler_shouldHaveCorrectOrderForEventStreamTransformation() {
    public void testEventHandler_shouldHaveCorrectOrderForEventStreamTransformation() {
        prepareLooper();
        prepareLooper();


@@ -274,7 +274,7 @@ public class AccessibilityInputFilterTest {
    }
    }


    @Test
    @Test
    @RequiresFlagsDisabled(FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES)
    @RequiresFlagsDisabled(FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL)
    public void testEventHandler_shouldHaveCorrectOrderForEventStreamTransformation_noMagKeys() {
    public void testEventHandler_shouldHaveCorrectOrderForEventStreamTransformation_noMagKeys() {
        prepareLooper();
        prepareLooper();


@@ -455,7 +455,7 @@ public class AccessibilityInputFilterTest {
    }
    }


    @Test
    @Test
    @RequiresFlagsEnabled(FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES)
    @RequiresFlagsEnabled(FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL)
    public void testEnabledFeatures_windowMagnificationMode_expectedMagnificationKeyHandler() {
    public void testEnabledFeatures_windowMagnificationMode_expectedMagnificationKeyHandler() {
        prepareLooper();
        prepareLooper();
        doReturn(Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_WINDOW).when(
        doReturn(Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_WINDOW).when(
@@ -468,7 +468,7 @@ public class AccessibilityInputFilterTest {
    }
    }


    @Test
    @Test
    @RequiresFlagsEnabled(FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES)
    @RequiresFlagsEnabled(FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL)
    public void testEnabledFeatures_fullscreenMagnificationMode_expectedMagnificationKeyHandler() {
    public void testEnabledFeatures_fullscreenMagnificationMode_expectedMagnificationKeyHandler() {
        prepareLooper();
        prepareLooper();
        doReturn(Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_FULLSCREEN).when(
        doReturn(Settings.Secure.ACCESSIBILITY_MAGNIFICATION_MODE_FULLSCREEN).when(
+2 −2
Original line number Original line Diff line number Diff line
@@ -16,7 +16,7 @@


package com.android.server.accessibility.magnification;
package com.android.server.accessibility.magnification;


import static com.android.hardware.input.Flags.FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES;
import static com.android.server.accessibility.Flags.FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL;
import static com.android.server.accessibility.magnification.MagnificationController.PAN_DIRECTION_DOWN;
import static com.android.server.accessibility.magnification.MagnificationController.PAN_DIRECTION_DOWN;
import static com.android.server.accessibility.magnification.MagnificationController.PAN_DIRECTION_LEFT;
import static com.android.server.accessibility.magnification.MagnificationController.PAN_DIRECTION_LEFT;
import static com.android.server.accessibility.magnification.MagnificationController.PAN_DIRECTION_RIGHT;
import static com.android.server.accessibility.magnification.MagnificationController.PAN_DIRECTION_RIGHT;
@@ -50,7 +50,7 @@ import org.mockito.MockitoAnnotations;
 * Tests for {@link MagnificationKeyHandler}.
 * Tests for {@link MagnificationKeyHandler}.
 */
 */
@RunWith(AndroidJUnit4.class)
@RunWith(AndroidJUnit4.class)
@RequiresFlagsEnabled(FLAG_ENABLE_TALKBACK_AND_MAGNIFIER_KEY_GESTURES)
@RequiresFlagsEnabled(FLAG_ENABLE_MAGNIFICATION_KEYBOARD_CONTROL)
public class MagnificationKeyHandlerTest {
public class MagnificationKeyHandlerTest {


    @Rule
    @Rule