From b4e66c9779dcfd723656b01e89d8e20a421bc1ca Mon Sep 17 00:00:00 2001 From: mirivlad Date: Sun, 21 Jun 2026 16:18:45 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20mouse=20navigation=20=E2=80=94=20redirec?= =?UTF-8?q?t=20workspace=20back/forward=20to=20Files=20buttons,=20remove?= =?UTF-8?q?=20xinput=20monitor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - onNavigateBack/Forward now check for currentView === 'workspace' first and delegate to Files plugin's up/forward buttons (breadcrumb/Fwd nav) - Fall back to navigationStack for cross-view navigation - Removed mouse_monitor.go (xinput test-xi2) — causes phantom X windows, superseded by GTK-level vendor patch - Removed startMouseMonitor call from App.Startup --- frontend/src/App.svelte | 16 ++++++++++++++++ internal/api/app.go | 1 - 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index c618d9d..a519c48 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -216,10 +216,26 @@ } function onNavigateBack(e) { + if (currentView === 'workspace') { + const upBtn = document.querySelector('[data-files-action="up"]'); + if (upBtn) { + upBtn.click(); + e?.preventDefault?.(); + return; + } + } if (navigateBack()) e?.preventDefault?.(); } function onNavigateForward(e) { + if (currentView === 'workspace') { + const fwdBtn = document.querySelector('[data-files-action="forward"]'); + if (fwdBtn) { + fwdBtn.click(); + e?.preventDefault?.(); + return; + } + } if (navigateForward()) e?.preventDefault?.(); } diff --git a/internal/api/app.go b/internal/api/app.go index 7b6823a..11acf09 100644 --- a/internal/api/app.go +++ b/internal/api/app.go @@ -113,7 +113,6 @@ func (a *App) ensureWorkbench() *coreworkbench.Router { func (a *App) Startup(ctx context.Context) { a.ctx = ctx log.Printf("[api] App.Startup: initialized with %d plugins", len(a.plugins)) - startMouseMonitor(ctx) } func (a *App) findPlugin(pluginID string) (*plugin.Plugin, error) {