From e7e624f05ecc3e7ae5f56caf3314e3a80c1a38a3 Mon Sep 17 00:00:00 2001 From: Leon Wimbes <12753781+LeWimbes@users.noreply.github.com> Date: Wed, 13 Nov 2024 19:43:38 +0100 Subject: [PATCH] Enable External Links Without Modifier (#2983) * make external links usable without modifier --------- Co-authored-by: Jonathan Kelley --- packages/router/src/components/link.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/router/src/components/link.rs b/packages/router/src/components/link.rs index 75b688c55..956c207e1 100644 --- a/packages/router/src/components/link.rs +++ b/packages/router/src/components/link.rs @@ -198,13 +198,13 @@ pub fn Link(props: LinkProps) -> Element { if !event.modifiers().is_empty() { return; } - // only handle left clicks + // Only handle left clicks if event.trigger_button() != Some(dioxus_elements::input_data::MouseButton::Primary) { return; } // todo(jon): this is extra hacky for no reason - we should fix prevent default on Links - if do_default && is_external && cfg!(target_arch = "wasm32") { + if do_default && is_external { return; } @@ -232,7 +232,7 @@ pub fn Link(props: LinkProps) -> Element { // If the event is a click with the left mouse button and no modifiers, prevent the default action // and navigate to the href with client side routing router.include_prevent_default().then_some( - "if (event.button === 0 && !event.ctrlKey && !event.metaKey && !event.shiftKey && !event.altKey) { event.preventDefault() }" + "if (event.button === 0 && !event.ctrlKey && !event.metaKey && !event.shiftKey && !event.altKey) { event.preventDefault() }" ) };