1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Add LensRendererExtension.navigate (#1345)

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen 2020-11-12 10:30:57 +02:00 committed by GitHub
parent deb4773b44
commit 4222359bd6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 4 deletions

View File

@ -5,6 +5,7 @@ import type {
} from "./registries"
import { observable } from "mobx";
import { LensExtension } from "./lens-extension"
import { ipcRenderer } from "electron"
export class LensRendererExtension extends LensExtension {
@observable.shallow globalPages: PageRegistration[] = []
@ -15,4 +16,8 @@ export class LensRendererExtension extends LensExtension {
@observable.shallow statusBarItems: StatusBarRegistration[] = []
@observable.shallow kubeObjectDetailItems: KubeObjectDetailRegistration[] = []
@observable.shallow kubeObjectMenuItems: KubeObjectMenuRegistration[] = []
navigate(location: string) {
ipcRenderer.emit("renderer:navigate", location)
}
}

View File

@ -122,7 +122,7 @@ export class WindowManager extends Singleton {
async navigate(url: string, frameId?: number) {
await this.ensureMainWindow();
this.sendToView({
channel: "menu:navigate",
channel: "renderer:navigate",
frameId: frameId,
data: [url],
})
@ -131,7 +131,7 @@ export class WindowManager extends Singleton {
reload() {
const frameId = clusterStore.getById(this.activeClusterId)?.frameId;
if (frameId) {
this.sendToView({ channel: "menu:reload", frameId });
this.sendToView({ channel: "renderer:reload", frameId });
} else {
webContents.getFocusedWebContents()?.reload();
}

View File

@ -110,12 +110,12 @@ if (process.isMainFrame) {
}
// Handle navigation via IPC (e.g. from top menu)
ipcRenderer.on("menu:navigate", (event, location: LocationDescriptor) => {
ipcRenderer.on("renderer:navigate", (event, location: LocationDescriptor) => {
logger.info(`[IPC]: ${event.type} ${JSON.stringify(location)}`, event);
navigate(location);
});
// Reload dashboard window
ipcRenderer.on("menu:reload", () => {
ipcRenderer.on("renderer:reload", () => {
location.reload();
});