From 757e959eb276ed535cfddb0dea8897c56441c644 Mon Sep 17 00:00:00 2001 From: Amr Bashir Date: Tue, 11 Jul 2023 15:11:23 +0300 Subject: [PATCH] feat: respect `base` tag's `target` attribute, closes #7285 (#7344) * feat: respect `base` tag's `target` attribute, closes #7285 * Update core.js * fix condition --- .changes/core-base-links-target.md | 5 +++++ core/tauri/scripts/core.js | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 .changes/core-base-links-target.md diff --git a/.changes/core-base-links-target.md b/.changes/core-base-links-target.md new file mode 100644 index 000000000..231383077 --- /dev/null +++ b/.changes/core-base-links-target.md @@ -0,0 +1,5 @@ +--- +'tauri': 'minor:enhance' +--- + +Open links externally when `` exists diff --git a/core/tauri/scripts/core.js b/core/tauri/scripts/core.js index 0ac489544..ad2196c17 100644 --- a/core/tauri/scripts/core.js +++ b/core/tauri/scripts/core.js @@ -91,13 +91,14 @@ document.querySelector('body').addEventListener( 'click', function (e) { - var target = e.target + let target = e.target + const baseTarget = document.querySelector('head base')?.target while (target != null) { if (target.matches('a')) { if ( target.href && (['http://', 'https://', 'mailto:', 'tel:'].some(v => target.href.startsWith(v))) && - target.target === '_blank' + (target.target === '_blank' || (!target.target && baseTarget === "_blank")) ) { window.__TAURI_INVOKE__('tauri', { __tauriModule: 'Shell',