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

Commit 8257afd2 authored by Gavin Williams's avatar Gavin Williams
Browse files

a11y: Autoclick change pause button text on click

When the pause button is clicked and its icon is changed to a resume
button, its corresponding text needs to update with it.

Screenshot: b/411187719#comment2

Bug: b/411187719
Test: AutoclickTypePanelTest
Flag: com.android.server.accessibility.enable_autoclick_indicator
Change-Id: If2a9763076cfca5d3c2249c643d8181a8f2e841d
parent a02ae06a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -6229,6 +6229,8 @@
    <string name="accessibility_autoclick_long_press">Long press</string>
    <!-- Label for autoclick pause button [CHAR LIMIT=NONE] -->
    <string name="accessibility_autoclick_pause">Pause</string>
    <!-- Label for autoclick resume button [CHAR LIMIT=NONE] -->
    <string name="accessibility_autoclick_resume">Resume</string>
    <!-- Label for autoclick position button [CHAR LIMIT=NONE] -->
    <string name="accessibility_autoclick_position">Position</string>
    <!-- Label for autoclick scroll up button [CHAR LIMIT=NONE] -->
+1 −0
Original line number Diff line number Diff line
@@ -5837,6 +5837,7 @@
  <java-symbol type="string" name="accessibility_autoclick_scroll" />
  <java-symbol type="string" name="accessibility_autoclick_long_press" />
  <java-symbol type="string" name="accessibility_autoclick_pause" />
  <java-symbol type="string" name="accessibility_autoclick_resume" />
  <java-symbol type="string" name="accessibility_autoclick_position" />
  <java-symbol type="dimen" name="accessibility_autoclick_type_panel_button_spacing" />
  <java-symbol type="dimen" name="accessibility_autoclick_type_panel_button_size" />
+6 −0
Original line number Diff line number Diff line
@@ -389,8 +389,14 @@ public class AutoclickTypePanel {

        ImageButton imageButton = (ImageButton) mPauseButton.getChildAt(/* index= */ 0);
        if (mPaused) {
            String resumeText = mContext.getString(R.string.accessibility_autoclick_resume);
            mPauseButton.setTooltipText(resumeText);
            imageButton.setContentDescription(resumeText);
            imageButton.setImageDrawable(mResumeButtonDrawable);
        } else {
            String pauseText = mContext.getString(R.string.accessibility_autoclick_pause);
            mPauseButton.setTooltipText(pauseText);
            imageButton.setContentDescription(pauseText);
            imageButton.setImageDrawable(mPauseButtonDrawable);
        }
    }
+11 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@ import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View;
import android.view.WindowManager;
import android.widget.ImageButton;
import android.widget.LinearLayout;

import androidx.annotation.NonNull;
@@ -302,13 +303,23 @@ public class AutoclickTypePanelTest {

    @Test
    public void pauseButton_onClick() {
        String resumeText = mTestableContext.getString(R.string
                .accessibility_autoclick_resume);
        String pauseText = mTestableContext.getString(R.string
                .accessibility_autoclick_pause);
        ImageButton imageButton = (ImageButton) mPauseButton.getChildAt(/* index= */ 0);

        mPauseButton.callOnClick();
        assertThat(mPaused).isTrue();
        assertThat(mAutoclickTypePanel.isPaused()).isTrue();
        assertThat(imageButton.getContentDescription().toString()).isEqualTo(resumeText);
        assertThat(mPauseButton.getTooltipText().toString()).isEqualTo(resumeText);

        mPauseButton.callOnClick();
        assertThat(mPaused).isFalse();
        assertThat(mAutoclickTypePanel.isPaused()).isFalse();
        assertThat(imageButton.getContentDescription().toString()).isEqualTo(pauseText);
        assertThat(mPauseButton.getTooltipText().toString()).isEqualTo(pauseText);
    }

    @Test