mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Make ApplicationBuilder.quit more realistic
Signed-off-by: Sebastian Malton <sebastian@malton.name>
This commit is contained in:
parent
b96e115e17
commit
6ce833c606
@ -71,7 +71,6 @@ import createClusterInjectable from "../../../main/create-cluster/create-cluster
|
||||
import { onLoadOfApplicationInjectionToken } from "../../../main/start-main-application/runnable-tokens/on-load-of-application-injection-token";
|
||||
import currentLocationInjectable from "../../api/current-location.injectable";
|
||||
import lensProxyPortInjectable from "../../../main/lens-proxy/lens-proxy-port.injectable";
|
||||
import { runManyFor } from "../../../common/runnable/run-many-for";
|
||||
import { beforeQuitOfBackEndInjectionToken } from "../../../main/start-main-application/runnable-tokens/before-quit-of-back-end-injection-token";
|
||||
import catalogEntityRegistryInjectable from "../../api/catalog/entity/registry.injectable";
|
||||
import { KubernetesCluster, LensKubernetesClusterStatus } from "../../../common/catalog-entities";
|
||||
@ -79,6 +78,9 @@ import listNamespacesForInjectable from "../../../common/cluster/list-namespaces
|
||||
import requestApiResourcesInjectable from "../../../common/cluster/request-api-resources.injectable";
|
||||
import { object } from "../../utils";
|
||||
import requestNamespaceListPermissionsForInjectable from "../../../common/cluster/request-namespace-list-permissions.injectable";
|
||||
import { beforeQuitOfFrontEndInjectionToken } from "../../../main/start-main-application/runnable-tokens/before-quit-of-front-end-injection-token";
|
||||
import { runManySyncFor } from "../../../common/runnable/run-many-sync-for";
|
||||
import type { MemoryHistory } from "history";
|
||||
|
||||
type Callback = (di: DiContainer) => void | Promise<void>;
|
||||
|
||||
@ -283,11 +285,19 @@ export const getApplicationBuilder = () => {
|
||||
</>
|
||||
));
|
||||
},
|
||||
|
||||
send: (arg) => {
|
||||
sendToWindow(windowId, arg);
|
||||
},
|
||||
canGoBack: () => {
|
||||
const history = windowDi.inject(historyInjectable) as MemoryHistory;
|
||||
|
||||
return history.canGo(-1);
|
||||
},
|
||||
canGoForward: () => {
|
||||
const history = windowDi.inject(historyInjectable) as MemoryHistory;
|
||||
|
||||
return history.canGo(1);
|
||||
},
|
||||
reload: () => {
|
||||
throw new Error("Tried to reload application window which is not implemented yet.");
|
||||
},
|
||||
@ -741,9 +751,11 @@ export const getApplicationBuilder = () => {
|
||||
},
|
||||
|
||||
quit() {
|
||||
const runMany = runManyFor(builder.mainDi);
|
||||
const beforeQuitOfBackEnd = runMany(beforeQuitOfBackEndInjectionToken);
|
||||
const runManySync = runManySyncFor(builder.mainDi);
|
||||
const beforeQuitOfFrontEnd = runManySync(beforeQuitOfFrontEndInjectionToken);
|
||||
const beforeQuitOfBackEnd = runManySync(beforeQuitOfBackEndInjectionToken);
|
||||
|
||||
beforeQuitOfFrontEnd();
|
||||
beforeQuitOfBackEnd();
|
||||
},
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user