diff --git a/app/src/main/java/com/limelight/PcView.java b/app/src/main/java/com/limelight/PcView.java
index d04a9e61..30eb382f 100644
--- a/app/src/main/java/com/limelight/PcView.java
+++ b/app/src/main/java/com/limelight/PcView.java
@@ -567,12 +567,17 @@ public class PcView extends Activity implements AdapterFragmentCallbacks {
LimeLog.info("Ignoring delete PC request from monkey");
return true;
}
- if (managerBinder == null) {
- Toast.makeText(PcView.this, getResources().getString(R.string.error_manager_not_running), Toast.LENGTH_LONG).show();
- return true;
- }
- managerBinder.removeComputer(computer.details.name);
- removeComputer(computer.details);
+ UiHelper.displayDeletePcConfirmationDialog(this, computer.details, new Runnable() {
+ @Override
+ public void run() {
+ if (managerBinder == null) {
+ Toast.makeText(PcView.this, getResources().getString(R.string.error_manager_not_running), Toast.LENGTH_LONG).show();
+ return;
+ }
+ managerBinder.removeComputer(computer.details.name);
+ removeComputer(computer.details);
+ }
+ }, null);
return true;
case APP_LIST_ID:
diff --git a/app/src/main/java/com/limelight/utils/UiHelper.java b/app/src/main/java/com/limelight/utils/UiHelper.java
index 592def20..75cfd554 100644
--- a/app/src/main/java/com/limelight/utils/UiHelper.java
+++ b/app/src/main/java/com/limelight/utils/UiHelper.java
@@ -12,6 +12,7 @@ import android.view.View;
import android.view.WindowManager;
import com.limelight.R;
+import com.limelight.nvstream.http.ComputerDetails;
import com.limelight.preferences.PreferenceConfiguration;
import java.util.Locale;
@@ -135,4 +136,32 @@ public class UiHelper {
.setNegativeButton(parent.getResources().getString(R.string.no), dialogClickListener)
.show();
}
+
+ public static void displayDeletePcConfirmationDialog(Activity parent, ComputerDetails computer, final Runnable onYes, final Runnable onNo) {
+ DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ switch (which){
+ case DialogInterface.BUTTON_POSITIVE:
+ if (onYes != null) {
+ onYes.run();
+ }
+ break;
+
+ case DialogInterface.BUTTON_NEGATIVE:
+ if (onNo != null) {
+ onNo.run();
+ }
+ break;
+ }
+ }
+ };
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(parent);
+ builder.setMessage(parent.getResources().getString(R.string.delete_pc_msg))
+ .setTitle(computer.name)
+ .setPositiveButton(parent.getResources().getString(R.string.yes), dialogClickListener)
+ .setNegativeButton(parent.getResources().getString(R.string.no), dialogClickListener)
+ .show();
+ }
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e43b60b7..71e4561d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -83,6 +83,7 @@
Lost connection to PC
Details
Help
+ Are you sure you want to delete this PC?
Connecting to PC…