From 5a2835c6848bf016dcf2482d1552f7d69b967918 Mon Sep 17 00:00:00 2001 From: Erin Schnabel Date: Mon, 23 Dec 2024 14:52:17 -0500 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20file=20name=20in=20view=20title?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/reveal/revealPreviewView.ts | 7 ++++++- src/slidesExtended-Plugin.ts | 9 +++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/reveal/revealPreviewView.ts b/src/reveal/revealPreviewView.ts index 047c72e..0067aee 100644 --- a/src/reveal/revealPreviewView.ts +++ b/src/reveal/revealPreviewView.ts @@ -4,6 +4,7 @@ import { type Menu, type WorkspaceLeaf, } from "obsidian"; +import type { SlidesExtendedPlugin } from "src/slidesExtended-Plugin"; import type { Options, SlidesExtendedSettings } from "../@types"; import { YamlParser } from "../yaml/yamlParser"; @@ -16,16 +17,19 @@ export class RevealPreviewView extends ItemView { private urlRegex = /#\/(\d*)(?:\/(\d*))?(?:\/(\d*))?/; private yaml: YamlParser; + private plugin: SlidesExtendedPlugin; constructor( leaf: WorkspaceLeaf, home: URL, + plugin: SlidesExtendedPlugin, settings: SlidesExtendedSettings, onCloseListener: () => void, ) { super(leaf); this.home = home; this.yaml = new YamlParser(settings); + this.plugin = plugin; this.onCloseListener = onCloseListener; this.addAction("globe", "Open in browser", () => { @@ -238,7 +242,8 @@ export class RevealPreviewView extends ItemView { } getDisplayText() { - return "Slide preview"; + const name = this.plugin.getTargetName(); + return name ? `Preview: ${name}` : "Slide preview"; } getIcon() { diff --git a/src/slidesExtended-Plugin.ts b/src/slidesExtended-Plugin.ts index 48a94aa..6d0a804 100644 --- a/src/slidesExtended-Plugin.ts +++ b/src/slidesExtended-Plugin.ts @@ -46,6 +46,7 @@ export class SlidesExtendedPlugin extends Plugin { new RevealPreviewView( leaf, this.url, + this, this.settings, this.hideView.bind(this), ), @@ -146,6 +147,14 @@ export class SlidesExtendedPlugin extends Plugin { return null; } + getTargetName(): string { + console.log("target", this.target); + if (!this.target) { + return ""; + } + return this.target.name; + } + onChange(file: TAbstractFile) { if (!this.settings.autoReload) { return;