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

Commit d882ce19 authored by Winson Chung's avatar Winson Chung
Browse files

Ensure that the IME switcher button is always touchable

Bug: 134521910
Test: Manual, plug in external keyboard and ensure the IME
      switcher is tappable

Change-Id: Ic76fc3f85f2862a628810888b651ecaa284a4a5f
parent f5671d39
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -238,7 +238,19 @@ public class NavigationBarView extends FrameLayout implements
            info.setTouchableInsets(InternalInsetsInfo.TOUCHABLE_INSETS_FRAME);
            return;
        }

        info.setTouchableInsets(InternalInsetsInfo.TOUCHABLE_INSETS_REGION);
        ButtonDispatcher imeSwitchButton = getImeSwitchButton();
        if (imeSwitchButton.getVisibility() == VISIBLE) {
            // If the IME is not up, but the ime switch button is visible, then make sure that
            // button is touchable
            int[] loc = new int[2];
            View buttonView = imeSwitchButton.getCurrentView();
            buttonView.getLocationInWindow(loc);
            info.touchableRegion.set(loc[0], loc[1], loc[0] + buttonView.getWidth(),
                    loc[1] + buttonView.getHeight());
            return;
        }
        info.touchableRegion.setEmpty();
    };