Loading packages/SystemUI/src/com/android/systemui/accessibility/MagnificationImpl.java +7 −3 Original line number Diff line number Diff line Loading @@ -100,17 +100,20 @@ public class MagnificationImpl implements Magnification, CommandQueue.Callbacks private final WindowMagnifierCallback mWindowMagnifierCallback; private final SysUiState mSysUiState; private final SecureSettings mSecureSettings; private final ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; WindowMagnificationControllerSupplier(Context context, Handler handler, WindowMagnifierCallback windowMagnifierCallback, DisplayManager displayManager, SysUiState sysUiState, SecureSettings secureSettings) { SecureSettings secureSettings, ViewCaptureAwareWindowManager viewCaptureAwareWindowManager) { super(displayManager); mContext = context; mHandler = handler; mWindowMagnifierCallback = windowMagnifierCallback; mSysUiState = sysUiState; mSecureSettings = secureSettings; mViewCaptureAwareWindowManager = viewCaptureAwareWindowManager; } @Override Loading @@ -137,7 +140,8 @@ public class MagnificationImpl implements Magnification, CommandQueue.Callbacks mSecureSettings, scvhSupplier, new SfVsyncFrameCallbackProvider(), WindowManagerGlobal::getWindowSession); WindowManagerGlobal::getWindowSession, mViewCaptureAwareWindowManager); } } Loading Loading @@ -267,7 +271,7 @@ public class MagnificationImpl implements Magnification, CommandQueue.Callbacks mA11yLogger = a11yLogger; mWindowMagnificationControllerSupplier = new WindowMagnificationControllerSupplier(context, mHandler, mWindowMagnifierCallback, displayManager, sysUiState, secureSettings); displayManager, sysUiState, secureSettings, viewCaptureAwareWindowManager); mFullscreenMagnificationControllerSupplier = new FullscreenMagnificationControllerSupplier( context, displayManager, mHandler, mExecutor, iWindowManager); mMagnificationSettingsSupplier = new SettingsSupplier(context, Loading packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java +7 −3 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ import android.widget.ImageView; import androidx.annotation.UiThread; import androidx.core.math.MathUtils; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.internal.accessibility.common.MagnificationConstants; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; Loading Loading @@ -126,6 +127,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold private final SurfaceControl.Transaction mTransaction; private final WindowManager mWm; private final ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; private float mScale; private int mSettingsButtonIndex = MagnificationSize.DEFAULT; Loading Loading @@ -258,7 +260,8 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold SecureSettings secureSettings, Supplier<SurfaceControlViewHost> scvhSupplier, SfVsyncFrameCallbackProvider sfVsyncFrameProvider, Supplier<IWindowSession> globalWindowSessionSupplier) { Supplier<IWindowSession> globalWindowSessionSupplier, ViewCaptureAwareWindowManager viewCaptureAwareWindowManager) { mContext = context; mHandler = handler; mAnimationController = animationController; Loading @@ -280,6 +283,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold mWm = context.getSystemService(WindowManager.class); mWindowBounds = new Rect(mWm.getCurrentWindowMetrics().getBounds()); mViewCaptureAwareWindowManager = viewCaptureAwareWindowManager; mResources = mContext.getResources(); mScale = secureSettings.getFloatForUser( Loading Loading @@ -510,7 +514,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold mHandler.removeCallbacks(mMirrorViewRunnable); mMirrorView.removeOnLayoutChangeListener(mMirrorViewLayoutChangeListener); if (!Flags.createWindowlessWindowMagnifier()) { mWm.removeView(mMirrorView); mViewCaptureAwareWindowManager.removeView(mMirrorView); } mMirrorView = null; } Loading Loading @@ -722,7 +726,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold return v.onApplyWindowInsets(insets); }); mWm.addView(mMirrorView, params); mViewCaptureAwareWindowManager.addView(mMirrorView, params); SurfaceHolder holder = mMirrorSurfaceView.getHolder(); holder.addCallback(this); Loading packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationAnimationControllerTest.java +9 −3 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ import android.window.InputTransferToken; import androidx.test.filters.LargeTest; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; Loading Loading @@ -112,6 +113,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { SysUiState mSysUiState; @Mock SecureSettings mSecureSettings; @Mock ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; private SpyWindowMagnificationController mController; private WindowMagnificationController mSpyController; private WindowMagnificationAnimationController mWindowMagnificationAnimationController; Loading Loading @@ -164,7 +167,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { mSysUiState, mSecureSettings, scvhSupplier, mSfVsyncFrameProvider); mSfVsyncFrameProvider, mViewCaptureAwareWindowManager); mSpyController = mController.getSpyController(); } Loading Loading @@ -1015,7 +1019,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { SysUiState sysUiState, SecureSettings secureSettings, Supplier<SurfaceControlViewHost> scvhSupplier, SfVsyncFrameCallbackProvider sfVsyncFrameProvider) { SfVsyncFrameCallbackProvider sfVsyncFrameProvider, ViewCaptureAwareWindowManager viewCaptureAwareWindowManager) { super( context, handler, Loading @@ -1027,7 +1032,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { secureSettings, scvhSupplier, sfVsyncFrameProvider, WindowManagerGlobal::getWindowSession); WindowManagerGlobal::getWindowSession, viewCaptureAwareWindowManager); mSpyController = Mockito.mock(WindowMagnificationController.class); } Loading packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java +11 −1 Original line number Diff line number Diff line Loading @@ -92,6 +92,8 @@ import androidx.test.InstrumentationRegistry; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; import com.android.app.viewcapture.ViewCapture; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; Loading @@ -107,6 +109,8 @@ import com.android.systemui.utils.os.FakeHandler; import com.google.common.util.concurrent.AtomicDouble; import kotlin.Lazy; import org.junit.After; import org.junit.Assume; import org.junit.Before; Loading Loading @@ -150,6 +154,8 @@ public class WindowMagnificationControllerTest extends SysuiTestCase { private SurfaceControl.Transaction mTransaction = new SurfaceControl.Transaction(); @Mock private SecureSettings mSecureSettings; @Mock private Lazy<ViewCapture> mLazyViewCapture; private long mWaitAnimationDuration; private long mWaitBounceEffectDuration; Loading Loading @@ -226,6 +232,9 @@ public class WindowMagnificationControllerTest extends SysuiTestCase { when(mContext.getSharedPreferences( eq("window_magnification_preferences"), anyInt())) .thenReturn(mSharedPreferences); ViewCaptureAwareWindowManager viewCaptureAwareWindowManager = new ViewCaptureAwareWindowManager(mWindowManager, mLazyViewCapture, /* isViewCaptureEnabled= */ false); mWindowMagnificationController = new WindowMagnificationController( mContext, Loading @@ -238,7 +247,8 @@ public class WindowMagnificationControllerTest extends SysuiTestCase { mSecureSettings, /* scvhSupplier= */ () -> null, mSfVsyncFrameProvider, /* globalWindowSessionSupplier= */ () -> mWindowSessionSpy); /* globalWindowSessionSupplier= */ () -> mWindowSessionSpy, viewCaptureAwareWindowManager); verify(mMirrorWindowControl).setWindowDelegate( any(MirrorWindowControl.MirrorWindowDelegate.class)); Loading packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerWindowlessMagnifierTest.java +5 −1 Original line number Diff line number Diff line Loading @@ -90,6 +90,7 @@ import androidx.test.InstrumentationRegistry; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; import com.android.systemui.animation.AnimatorTestRule; Loading Loading @@ -144,6 +145,8 @@ public class WindowMagnificationControllerWindowlessMagnifierTest extends SysuiT private SurfaceControl.Transaction mTransaction; @Mock private SecureSettings mSecureSettings; @Mock private ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; private long mWaitAnimationDuration; private long mWaitBounceEffectDuration; Loading Loading @@ -240,7 +243,8 @@ public class WindowMagnificationControllerWindowlessMagnifierTest extends SysuiT mSecureSettings, scvhSupplier, /* sfVsyncFrameProvider= */ null, /* globalWindowSessionSupplier= */ null); /* globalWindowSessionSupplier= */ null, mViewCaptureAwareWindowManager); verify(mMirrorWindowControl).setWindowDelegate( any(MirrorWindowControl.MirrorWindowDelegate.class)); Loading Loading
packages/SystemUI/src/com/android/systemui/accessibility/MagnificationImpl.java +7 −3 Original line number Diff line number Diff line Loading @@ -100,17 +100,20 @@ public class MagnificationImpl implements Magnification, CommandQueue.Callbacks private final WindowMagnifierCallback mWindowMagnifierCallback; private final SysUiState mSysUiState; private final SecureSettings mSecureSettings; private final ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; WindowMagnificationControllerSupplier(Context context, Handler handler, WindowMagnifierCallback windowMagnifierCallback, DisplayManager displayManager, SysUiState sysUiState, SecureSettings secureSettings) { SecureSettings secureSettings, ViewCaptureAwareWindowManager viewCaptureAwareWindowManager) { super(displayManager); mContext = context; mHandler = handler; mWindowMagnifierCallback = windowMagnifierCallback; mSysUiState = sysUiState; mSecureSettings = secureSettings; mViewCaptureAwareWindowManager = viewCaptureAwareWindowManager; } @Override Loading @@ -137,7 +140,8 @@ public class MagnificationImpl implements Magnification, CommandQueue.Callbacks mSecureSettings, scvhSupplier, new SfVsyncFrameCallbackProvider(), WindowManagerGlobal::getWindowSession); WindowManagerGlobal::getWindowSession, mViewCaptureAwareWindowManager); } } Loading Loading @@ -267,7 +271,7 @@ public class MagnificationImpl implements Magnification, CommandQueue.Callbacks mA11yLogger = a11yLogger; mWindowMagnificationControllerSupplier = new WindowMagnificationControllerSupplier(context, mHandler, mWindowMagnifierCallback, displayManager, sysUiState, secureSettings); displayManager, sysUiState, secureSettings, viewCaptureAwareWindowManager); mFullscreenMagnificationControllerSupplier = new FullscreenMagnificationControllerSupplier( context, displayManager, mHandler, mExecutor, iWindowManager); mMagnificationSettingsSupplier = new SettingsSupplier(context, Loading
packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java +7 −3 Original line number Diff line number Diff line Loading @@ -80,6 +80,7 @@ import android.widget.ImageView; import androidx.annotation.UiThread; import androidx.core.math.MathUtils; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.internal.accessibility.common.MagnificationConstants; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; Loading Loading @@ -126,6 +127,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold private final SurfaceControl.Transaction mTransaction; private final WindowManager mWm; private final ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; private float mScale; private int mSettingsButtonIndex = MagnificationSize.DEFAULT; Loading Loading @@ -258,7 +260,8 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold SecureSettings secureSettings, Supplier<SurfaceControlViewHost> scvhSupplier, SfVsyncFrameCallbackProvider sfVsyncFrameProvider, Supplier<IWindowSession> globalWindowSessionSupplier) { Supplier<IWindowSession> globalWindowSessionSupplier, ViewCaptureAwareWindowManager viewCaptureAwareWindowManager) { mContext = context; mHandler = handler; mAnimationController = animationController; Loading @@ -280,6 +283,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold mWm = context.getSystemService(WindowManager.class); mWindowBounds = new Rect(mWm.getCurrentWindowMetrics().getBounds()); mViewCaptureAwareWindowManager = viewCaptureAwareWindowManager; mResources = mContext.getResources(); mScale = secureSettings.getFloatForUser( Loading Loading @@ -510,7 +514,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold mHandler.removeCallbacks(mMirrorViewRunnable); mMirrorView.removeOnLayoutChangeListener(mMirrorViewLayoutChangeListener); if (!Flags.createWindowlessWindowMagnifier()) { mWm.removeView(mMirrorView); mViewCaptureAwareWindowManager.removeView(mMirrorView); } mMirrorView = null; } Loading Loading @@ -722,7 +726,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold return v.onApplyWindowInsets(insets); }); mWm.addView(mMirrorView, params); mViewCaptureAwareWindowManager.addView(mMirrorView, params); SurfaceHolder holder = mMirrorSurfaceView.getHolder(); holder.addCallback(this); Loading
packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationAnimationControllerTest.java +9 −3 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ import android.window.InputTransferToken; import androidx.test.filters.LargeTest; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; Loading Loading @@ -112,6 +113,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { SysUiState mSysUiState; @Mock SecureSettings mSecureSettings; @Mock ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; private SpyWindowMagnificationController mController; private WindowMagnificationController mSpyController; private WindowMagnificationAnimationController mWindowMagnificationAnimationController; Loading Loading @@ -164,7 +167,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { mSysUiState, mSecureSettings, scvhSupplier, mSfVsyncFrameProvider); mSfVsyncFrameProvider, mViewCaptureAwareWindowManager); mSpyController = mController.getSpyController(); } Loading Loading @@ -1015,7 +1019,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { SysUiState sysUiState, SecureSettings secureSettings, Supplier<SurfaceControlViewHost> scvhSupplier, SfVsyncFrameCallbackProvider sfVsyncFrameProvider) { SfVsyncFrameCallbackProvider sfVsyncFrameProvider, ViewCaptureAwareWindowManager viewCaptureAwareWindowManager) { super( context, handler, Loading @@ -1027,7 +1032,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { secureSettings, scvhSupplier, sfVsyncFrameProvider, WindowManagerGlobal::getWindowSession); WindowManagerGlobal::getWindowSession, viewCaptureAwareWindowManager); mSpyController = Mockito.mock(WindowMagnificationController.class); } Loading
packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerTest.java +11 −1 Original line number Diff line number Diff line Loading @@ -92,6 +92,8 @@ import androidx.test.InstrumentationRegistry; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; import com.android.app.viewcapture.ViewCapture; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; Loading @@ -107,6 +109,8 @@ import com.android.systemui.utils.os.FakeHandler; import com.google.common.util.concurrent.AtomicDouble; import kotlin.Lazy; import org.junit.After; import org.junit.Assume; import org.junit.Before; Loading Loading @@ -150,6 +154,8 @@ public class WindowMagnificationControllerTest extends SysuiTestCase { private SurfaceControl.Transaction mTransaction = new SurfaceControl.Transaction(); @Mock private SecureSettings mSecureSettings; @Mock private Lazy<ViewCapture> mLazyViewCapture; private long mWaitAnimationDuration; private long mWaitBounceEffectDuration; Loading Loading @@ -226,6 +232,9 @@ public class WindowMagnificationControllerTest extends SysuiTestCase { when(mContext.getSharedPreferences( eq("window_magnification_preferences"), anyInt())) .thenReturn(mSharedPreferences); ViewCaptureAwareWindowManager viewCaptureAwareWindowManager = new ViewCaptureAwareWindowManager(mWindowManager, mLazyViewCapture, /* isViewCaptureEnabled= */ false); mWindowMagnificationController = new WindowMagnificationController( mContext, Loading @@ -238,7 +247,8 @@ public class WindowMagnificationControllerTest extends SysuiTestCase { mSecureSettings, /* scvhSupplier= */ () -> null, mSfVsyncFrameProvider, /* globalWindowSessionSupplier= */ () -> mWindowSessionSpy); /* globalWindowSessionSupplier= */ () -> mWindowSessionSpy, viewCaptureAwareWindowManager); verify(mMirrorWindowControl).setWindowDelegate( any(MirrorWindowControl.MirrorWindowDelegate.class)); Loading
packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationControllerWindowlessMagnifierTest.java +5 −1 Original line number Diff line number Diff line Loading @@ -90,6 +90,7 @@ import androidx.test.InstrumentationRegistry; import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.filters.LargeTest; import com.android.app.viewcapture.ViewCaptureAwareWindowManager; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; import com.android.systemui.animation.AnimatorTestRule; Loading Loading @@ -144,6 +145,8 @@ public class WindowMagnificationControllerWindowlessMagnifierTest extends SysuiT private SurfaceControl.Transaction mTransaction; @Mock private SecureSettings mSecureSettings; @Mock private ViewCaptureAwareWindowManager mViewCaptureAwareWindowManager; private long mWaitAnimationDuration; private long mWaitBounceEffectDuration; Loading Loading @@ -240,7 +243,8 @@ public class WindowMagnificationControllerWindowlessMagnifierTest extends SysuiT mSecureSettings, scvhSupplier, /* sfVsyncFrameProvider= */ null, /* globalWindowSessionSupplier= */ null); /* globalWindowSessionSupplier= */ null, mViewCaptureAwareWindowManager); verify(mMirrorWindowControl).setWindowDelegate( any(MirrorWindowControl.MirrorWindowDelegate.class)); Loading