Loading packages/SystemUI/res/values/strings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -2390,6 +2390,8 @@ <string name="magnification_mode_switch_state_window">Magnify part of screen</string> <!-- Click action label for magnification settings panel. [CHAR LIMIT=NONE] --> <string name="magnification_open_settings_click_label">Open magnification settings</string> <!-- Click action label for magnification settings panel. [CHAR LIMIT=NONE] --> <string name="magnification_close_settings_click_label">Close magnification settings</string> <!-- Label of the corner of a rectangle that you can tap and drag to resize the magnification area. [CHAR LIMIT=NONE] --> <string name="magnification_drag_corner_to_resize">Drag corner to resize</string> Loading packages/SystemUI/src/com/android/systemui/accessibility/MagnificationSettingsController.java +4 −3 Original line number Diff line number Diff line Loading @@ -87,14 +87,15 @@ public class MagnificationSettingsController implements ComponentCallbacks { } /** * Shows magnification settings panel {@link WindowMagnificationSettings}. * Toggles the visibility of magnification settings panel {@link WindowMagnificationSettings}. * We show the panel if it is not visible. Otherwise, hide the panel. */ void showMagnificationSettings() { void toggleSettingsPanelVisibility() { if (!mWindowMagnificationSettings.isSettingPanelShowing()) { onConfigurationChanged(mContext.getResources().getConfiguration()); mContext.registerComponentCallbacks(this); } mWindowMagnificationSettings.showSettingPanel(); mWindowMagnificationSettings.toggleSettingsPanelVisibility(); } void closeMagnificationSettings() { Loading packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnification.java +4 −4 Original line number Diff line number Diff line Loading @@ -171,7 +171,7 @@ public class WindowMagnification implements CoreStartable, CommandQueue.Callback mModeSwitchesController.setClickListenerDelegate( displayId -> mHandler.post(() -> { showMagnificationSettingsPanel(displayId); toggleSettingsPanelVisibility(displayId); })); } Loading Loading @@ -254,11 +254,11 @@ public class WindowMagnification implements CoreStartable, CommandQueue.Callback } @MainThread void showMagnificationSettingsPanel(int displayId) { void toggleSettingsPanelVisibility(int displayId) { final MagnificationSettingsController magnificationSettingsController = mMagnificationSettingsSupplier.get(displayId); if (magnificationSettingsController != null) { magnificationSettingsController.showMagnificationSettings(); magnificationSettingsController.toggleSettingsPanelVisibility(); } } Loading Loading @@ -335,7 +335,7 @@ public class WindowMagnification implements CoreStartable, CommandQueue.Callback @Override public void onClickSettingsButton(int displayId) { mHandler.post(() -> { showMagnificationSettingsPanel(displayId); toggleSettingsPanelVisibility(displayId); }); } }; Loading packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java +12 −2 Original line number Diff line number Diff line Loading @@ -221,6 +221,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold private boolean mAllowDiagonalScrolling = false; private boolean mEditSizeEnable = false; private boolean mSettingsPanelVisibility = false; @Nullable private final MirrorWindowControl mMirrorWindowControl; Loading Loading @@ -1399,6 +1400,8 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold return; } mSettingsPanelVisibility = settingsPanelIsShown; mDragView.setBackground(mContext.getResources().getDrawable(settingsPanelIsShown ? R.drawable.accessibility_window_magnification_drag_handle_background_change : R.drawable.accessibility_window_magnification_drag_handle_background)); Loading Loading @@ -1439,12 +1442,19 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold private class MirrorWindowA11yDelegate extends View.AccessibilityDelegate { private CharSequence getClickAccessibilityActionLabel() { return mSettingsPanelVisibility ? mContext.getResources().getString( R.string.magnification_close_settings_click_label) : mContext.getResources().getString( R.string.magnification_open_settings_click_label); } @Override public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(host, info); final AccessibilityAction clickAction = new AccessibilityAction( AccessibilityAction.ACTION_CLICK.getId(), mContext.getResources().getString( R.string.magnification_open_settings_click_label)); AccessibilityAction.ACTION_CLICK.getId(), getClickAccessibilityActionLabel()); info.addAction(clickAction); info.setClickable(true); info.addAction( Loading packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationSettings.java +8 −0 Original line number Diff line number Diff line Loading @@ -311,6 +311,14 @@ class WindowMagnificationSettings implements MagnificationGestureDetector.OnGest mCallback.onSettingsPanelVisibilityChanged(/* shown= */ false); } public void toggleSettingsPanelVisibility() { if (!mIsVisible) { showSettingPanel(); } else { hideSettingPanel(); } } public void showSettingPanel() { showSettingPanel(true); } Loading Loading
packages/SystemUI/res/values/strings.xml +2 −0 Original line number Diff line number Diff line Loading @@ -2390,6 +2390,8 @@ <string name="magnification_mode_switch_state_window">Magnify part of screen</string> <!-- Click action label for magnification settings panel. [CHAR LIMIT=NONE] --> <string name="magnification_open_settings_click_label">Open magnification settings</string> <!-- Click action label for magnification settings panel. [CHAR LIMIT=NONE] --> <string name="magnification_close_settings_click_label">Close magnification settings</string> <!-- Label of the corner of a rectangle that you can tap and drag to resize the magnification area. [CHAR LIMIT=NONE] --> <string name="magnification_drag_corner_to_resize">Drag corner to resize</string> Loading
packages/SystemUI/src/com/android/systemui/accessibility/MagnificationSettingsController.java +4 −3 Original line number Diff line number Diff line Loading @@ -87,14 +87,15 @@ public class MagnificationSettingsController implements ComponentCallbacks { } /** * Shows magnification settings panel {@link WindowMagnificationSettings}. * Toggles the visibility of magnification settings panel {@link WindowMagnificationSettings}. * We show the panel if it is not visible. Otherwise, hide the panel. */ void showMagnificationSettings() { void toggleSettingsPanelVisibility() { if (!mWindowMagnificationSettings.isSettingPanelShowing()) { onConfigurationChanged(mContext.getResources().getConfiguration()); mContext.registerComponentCallbacks(this); } mWindowMagnificationSettings.showSettingPanel(); mWindowMagnificationSettings.toggleSettingsPanelVisibility(); } void closeMagnificationSettings() { Loading
packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnification.java +4 −4 Original line number Diff line number Diff line Loading @@ -171,7 +171,7 @@ public class WindowMagnification implements CoreStartable, CommandQueue.Callback mModeSwitchesController.setClickListenerDelegate( displayId -> mHandler.post(() -> { showMagnificationSettingsPanel(displayId); toggleSettingsPanelVisibility(displayId); })); } Loading Loading @@ -254,11 +254,11 @@ public class WindowMagnification implements CoreStartable, CommandQueue.Callback } @MainThread void showMagnificationSettingsPanel(int displayId) { void toggleSettingsPanelVisibility(int displayId) { final MagnificationSettingsController magnificationSettingsController = mMagnificationSettingsSupplier.get(displayId); if (magnificationSettingsController != null) { magnificationSettingsController.showMagnificationSettings(); magnificationSettingsController.toggleSettingsPanelVisibility(); } } Loading Loading @@ -335,7 +335,7 @@ public class WindowMagnification implements CoreStartable, CommandQueue.Callback @Override public void onClickSettingsButton(int displayId) { mHandler.post(() -> { showMagnificationSettingsPanel(displayId); toggleSettingsPanelVisibility(displayId); }); } }; Loading
packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationController.java +12 −2 Original line number Diff line number Diff line Loading @@ -221,6 +221,7 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold private boolean mAllowDiagonalScrolling = false; private boolean mEditSizeEnable = false; private boolean mSettingsPanelVisibility = false; @Nullable private final MirrorWindowControl mMirrorWindowControl; Loading Loading @@ -1399,6 +1400,8 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold return; } mSettingsPanelVisibility = settingsPanelIsShown; mDragView.setBackground(mContext.getResources().getDrawable(settingsPanelIsShown ? R.drawable.accessibility_window_magnification_drag_handle_background_change : R.drawable.accessibility_window_magnification_drag_handle_background)); Loading Loading @@ -1439,12 +1442,19 @@ class WindowMagnificationController implements View.OnTouchListener, SurfaceHold private class MirrorWindowA11yDelegate extends View.AccessibilityDelegate { private CharSequence getClickAccessibilityActionLabel() { return mSettingsPanelVisibility ? mContext.getResources().getString( R.string.magnification_close_settings_click_label) : mContext.getResources().getString( R.string.magnification_open_settings_click_label); } @Override public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) { super.onInitializeAccessibilityNodeInfo(host, info); final AccessibilityAction clickAction = new AccessibilityAction( AccessibilityAction.ACTION_CLICK.getId(), mContext.getResources().getString( R.string.magnification_open_settings_click_label)); AccessibilityAction.ACTION_CLICK.getId(), getClickAccessibilityActionLabel()); info.addAction(clickAction); info.setClickable(true); info.addAction( Loading
packages/SystemUI/src/com/android/systemui/accessibility/WindowMagnificationSettings.java +8 −0 Original line number Diff line number Diff line Loading @@ -311,6 +311,14 @@ class WindowMagnificationSettings implements MagnificationGestureDetector.OnGest mCallback.onSettingsPanelVisibilityChanged(/* shown= */ false); } public void toggleSettingsPanelVisibility() { if (!mIsVisible) { showSettingPanel(); } else { hideSettingPanel(); } } public void showSettingPanel() { showSettingPanel(true); } Loading