VmTerminalApp: Prevent snackbar from hiding UX

Bug: 379132449
Test: Manually
Change-Id: I8796e1b98127887cad5513ea6b4818edb8c7b2d4
diff --git a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.java b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.java
index 4d8c00a..0446866 100644
--- a/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.java
+++ b/android/TerminalApp/java/com/android/virtualization/terminal/InstallerActivity.java
@@ -40,14 +40,12 @@
 import com.google.android.material.snackbar.Snackbar;
 
 import java.lang.ref.WeakReference;
-import java.util.concurrent.ExecutorService;
 
 public class InstallerActivity extends BaseActivity {
     private static final String TAG = "LinuxInstaller";
 
     private static final long ESTIMATED_IMG_SIZE_BYTES = FileUtils.parseSize("550MB");
 
-    private ExecutorService mExecutorService;
     private CheckBox mWaitForWifiCheckbox;
     private TextView mInstallButton;
 
@@ -92,11 +90,7 @@
         super.onResume();
 
         if (Build.isDebuggable() && InstallUtils.payloadFromExternalStorageExists()) {
-            Snackbar.make(
-                            findViewById(android.R.id.content),
-                            "Auto installing",
-                            Snackbar.LENGTH_LONG)
-                    .show();
+            showSnackbar("Auto installing", Snackbar.LENGTH_LONG);
             requestInstall();
         }
     }
@@ -125,13 +119,17 @@
         return mInstallCompleted.block(timeoutMillis);
     }
 
+    private void showSnackbar(String message, int length) {
+        Snackbar snackbar = Snackbar.make(findViewById(android.R.id.content), message, length);
+        snackbar.setAnchorView(mWaitForWifiCheckbox);
+        snackbar.show();
+    }
+
     public void handleCriticalError(Exception e) {
         if (Build.isDebuggable()) {
-            Snackbar.make(
-                            findViewById(android.R.id.content),
-                            e.getMessage() + ". File a bugreport to go/ferrochrome-bug",
-                            Snackbar.LENGTH_INDEFINITE)
-                    .show();
+            showSnackbar(
+                    e.getMessage() + ". File a bugreport to go/ferrochrome-bug",
+                    Snackbar.LENGTH_INDEFINITE);
         }
         Log.e(TAG, "Internal error", e);
         finishWithResult(RESULT_CANCELED);
@@ -207,8 +205,7 @@
     @MainThread
     private void handleError(String displayText) {
         if (Build.isDebuggable()) {
-            Snackbar.make(findViewById(android.R.id.content), displayText, Snackbar.LENGTH_LONG)
-                    .show();
+            showSnackbar(displayText, Snackbar.LENGTH_LONG);
         }
         setInstallEnabled(true);
     }