diff --git a/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx b/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx
index 6ab4e4e88a..01cf35eec8 100644
--- a/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx
+++ b/src/renderer/components/delete-cluster-dialog/delete-cluster-dialog.tsx
@@ -20,7 +20,7 @@
*/
import styles from "./delete-cluster-dialog.module.css";
-import { makeObservable, observable } from "mobx";
+import { computed, makeObservable, observable } from "mobx";
import { observer } from "mobx-react";
import React from "react";
@@ -122,6 +122,18 @@ export class DeleteClusterDialog extends React.Component {
this.onClose();
}
+ @computed get disableDelete() {
+ const { cluster, config } = dialogState;
+ const noContextsAvailable = config.contexts.filter(context => context.name !== cluster.contextName).length == 0;
+ const newContextNotSelected = this.newCurrentContext === "";
+
+ if (noContextsAvailable) {
+ return false;
+ }
+
+ return this.showContextSwitch && newContextNotSelected;
+ }
+
isCurrentContext() {
return dialogState.config.currentContext == dialogState.cluster.contextName;
}
@@ -142,6 +154,7 @@ export class DeleteClusterDialog extends React.Component {