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

Commit cd5a61a2 authored by Yuhan Yang's avatar Yuhan Yang
Browse files

Expand autoclick panel when init

screencast: go/screencast-njyxndm5odc1ota3ntg0mhwymzgzodm1mc1moa

Bug: 421231351
Test: atest AutoclickTypePanelTest
Flag: com.android.server.accessibility.enable_mouse_key_enhancement
Change-Id: I6bed5d179855c79942a1a30c104d6a73eefadb25
parent f2c6db3d
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -130,7 +130,7 @@ public class AutoclickTypePanel {
    private final ClickPanelControllerInterface mClickPanelController;

    // Whether the panel is expanded or not.
    private boolean mExpanded = false;
    private boolean mExpanded = true;

    // Whether autoclick is paused.
    private boolean mPaused = false;
@@ -347,10 +347,9 @@ public class AutoclickTypePanel {
        // The pause button calls `togglePause()` directly so it does not need extra logic.
        mPauseButton.setOnClickListener(v -> togglePause());

        collapsePanelWithClickType(AUTOCLICK_TYPE_LEFT_CLICK);

        setSelectedClickType(AUTOCLICK_TYPE_LEFT_CLICK);
        // Remove spacing between buttons when initialized.
        adjustPanelSpacing(/* isExpanded= */ false);
        adjustPanelSpacing(/* isExpanded= */ true);
    }

    /** Reset panel as collapsed state and only displays selelcted button. */
+19 −22
Original line number Diff line number Diff line
@@ -122,39 +122,40 @@ public class AutoclickTypePanelTest {
    }

    @Test
    public void AutoclickTypePanel_initialState_expandedFalse() {
        assertThat(mAutoclickTypePanel.getExpansionStateForTesting()).isFalse();
    public void autoclickTypePanel_initialState_expandedTrue() {
        assertThat(mAutoclickTypePanel.getExpansionStateForTesting()).isTrue();
    }

    @Test
    public void AutoclickTypePanel_initialState_correctButtonVisibility() {
        // On initialization, only left button is visible.
    public void autoclickTypePanel_initialState_correctButtonVisibility() {
        // On initialization, all buttons are visible.
        assertThat(mLeftClickButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mRightClickButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mDoubleClickButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mDragButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mScrollButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mLongPressButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mRightClickButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mDoubleClickButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mDragButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mScrollButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mLongPressButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mPauseButton.getVisibility()).isEqualTo(View.VISIBLE);
    }

    @Test
    public void AutoclickTypePanel_initialState_correctButtonStyle() {
    public void autoclickTypePanel_initialState_correctButtonStyle() {
        verifyButtonHasSelectedStyle(mLeftClickButton);
    }

    @Test
    public void togglePanelExpansion_onClick_expandedTrue() {
        // On clicking left click button, the panel is expanded and all buttons are visible.
        // On clicking left click button, the panel is collapsed and only left click
        // button is visible.
        mLeftClickButton.callOnClick();

        assertThat(mAutoclickTypePanel.getExpansionStateForTesting()).isTrue();
        assertThat(mAutoclickTypePanel.getExpansionStateForTesting()).isFalse();
        assertThat(mLeftClickButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mRightClickButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mDoubleClickButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mDragButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mScrollButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mLongPressButton.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(mRightClickButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mDoubleClickButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mDragButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mScrollButton.getVisibility()).isEqualTo(View.GONE);
        assertThat(mLongPressButton.getVisibility()).isEqualTo(View.GONE);

        // Pause button is always visible.
        assertThat(mPauseButton.getVisibility()).isEqualTo(View.VISIBLE);
@@ -162,8 +163,7 @@ public class AutoclickTypePanelTest {

    @Test
    public void togglePanelExpansion_onClickAgain_expandedFalse() {
        // By first click, the panel is expanded.
        mLeftClickButton.callOnClick();
        // On init, the panel is expanded.
        assertThat(mAutoclickTypePanel.getExpansionStateForTesting()).isTrue();

        // Clicks any button in the expanded state, the panel is expected to collapse
@@ -195,9 +195,6 @@ public class AutoclickTypePanelTest {

    @Test
    public void togglePanelExpansion_selectButton_correctActiveClickType() {
        // By first click, the panel is expanded.
        mLeftClickButton.callOnClick();

        // Clicks any button in the expanded state to select a type button.
        mScrollButton.callOnClick();