From 479e7c427ab5850c51aefc1b90fb9a7e962901c6 Mon Sep 17 00:00:00 2001 From: SSimco <37044560+SSimco@users.noreply.github.com> Date: Thu, 15 Jun 2023 06:53:22 +0300 Subject: [PATCH] Add dialog to confirm exit in emulation activity --- .../info/cemu/Cemu/EmulationActivity.java | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/android/app/src/main/java/info/cemu/Cemu/EmulationActivity.java b/src/android/app/src/main/java/info/cemu/Cemu/EmulationActivity.java index 16f878e6..91392daf 100644 --- a/src/android/app/src/main/java/info/cemu/Cemu/EmulationActivity.java +++ b/src/android/app/src/main/java/info/cemu/Cemu/EmulationActivity.java @@ -1,11 +1,13 @@ package info.cemu.Cemu; +import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; import androidx.core.view.WindowCompat; import androidx.core.view.WindowInsetsAnimationCompat; import androidx.core.view.WindowInsetsCompat; import androidx.core.view.WindowInsetsControllerCompat; +import android.content.DialogInterface; import android.os.Bundle; import info.cemu.Cemu.databinding.ActivityEmulationBinding; @@ -38,6 +40,24 @@ public class EmulationActivity extends AppCompatActivity { } } + @Override + public void onBackPressed() { + showExitConfirmationDialog(); + } + + private void showExitConfirmationDialog() { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("Exit Confirmation"); + builder.setMessage("Are you sure you want to exit?"); + builder.setPositiveButton("Yes", (dialog, which) -> { + finishAffinity(); + System.exit(0); + }); + builder.setNegativeButton("No", (dialog, which) -> dialog.cancel()); + AlertDialog dialog = builder.create(); + dialog.show(); + } + void setFullscreen() { WindowCompat.setDecorFitsSystemWindows(getWindow(), false); WindowInsetsControllerCompat controller = new WindowInsetsControllerCompat(getWindow(), getWindow().getDecorView());