diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/MainActivity.java b/android/TerminalApp/java/com/android/virtualization/terminal/MainActivity.java
index 14973e1..bc5d037 100644
--- a/android/TerminalApp/java/com/android/virtualization/terminal/MainActivity.java
+++ b/android/TerminalApp/java/com/android/virtualization/terminal/MainActivity.java
@@ -472,20 +472,17 @@
 
     @Override
     public void onAccessibilityStateChanged(boolean enabled) {
-        updateKeyboardContainerVisibility();
         connectToTerminalService();
     }
 
     private void updateKeyboardContainerVisibility() {
-        boolean accessibilityEnabled = mAccessibilityManager.isEnabled();
         boolean imeVisible =
                 this.getWindow()
                         .getDecorView()
                         .getRootWindowInsets()
                         .isVisible(WindowInsets.Type.ime());
         View keyboardContainer = findViewById(R.id.keyboard_container);
-        keyboardContainer.setVisibility(
-                accessibilityEnabled || !imeVisible ? View.GONE : View.VISIBLE);
+        keyboardContainer.setVisibility(!imeVisible ? View.GONE : View.VISIBLE);
     }
 
     @Override
