From d68b9bbd0de999a808952f3904dcb1e7db00f426 Mon Sep 17 00:00:00 2001 From: aNNiMON Date: Sat, 20 Dec 2025 12:37:51 +0200 Subject: [PATCH] Fix opening internal links on mobile devices --- src/DOMProcessor.ts | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/DOMProcessor.ts b/src/DOMProcessor.ts index b1fac7d..159fe8e 100644 --- a/src/DOMProcessor.ts +++ b/src/DOMProcessor.ts @@ -1,4 +1,4 @@ -import { App, MarkdownPostProcessorContext } from "obsidian"; +import { App, MarkdownPostProcessorContext, Platform } from "obsidian"; export interface DOMProcessor { process(element: HTMLElement, ctx: MarkdownPostProcessorContext): HTMLElement; @@ -22,11 +22,17 @@ export class InternalLinkProcessor implements DOMProcessor { element.querySelectorAll("a[data-href].internal-link").forEach((link) => { const href = link.getAttribute("data-href"); if (!href) return; - link.addEventListener("click", (e) => { + link.addEventListener("click", (e: Event) => { e.preventDefault(); const newTab = this.shouldOpenInNewTab(e); this.app.workspace.openLinkText(href, ctx.sourcePath, newTab); }); + if (!Platform.isDesktopApp) { + link.addEventListener("contextmenu", (e: Event) => { + e.preventDefault(); + this.app.workspace.openLinkText(href, ctx.sourcePath, true); + }); + } }); return element; }