Enable External Links Without Modifier (#2983)

* make external links usable without modifier

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
This commit is contained in:
Leon WimbesandJonathan Kelley authored and GitHub committed 2024-11-13 13:43:38 -05:00
1 parent 21465390f8
commit e7e624f05e
1 file changed
+3 -3
+3 -3
View File
@@ -198,13 +198,13 @@ pub fn Link(props: LinkProps) -> Element {
if !event.modifiers().is_empty() { if !event.modifiers().is_empty() {
return; return;
} }
// only handle left clicks // Only handle left clicks
if event.trigger_button() != Some(dioxus_elements::input_data::MouseButton::Primary) { if event.trigger_button() != Some(dioxus_elements::input_data::MouseButton::Primary) {
return; return;
} }
// todo(jon): this is extra hacky for no reason - we should fix prevent default on Links // 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; 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 // 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 // and navigate to the href with client side routing
router.include_prevent_default().then_some( 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() }"
) )
}; };