Ciao, penso che questo sia meno un bug e più un comportamento inaspettato…
Su Mac ho l’abitudine di usare ⌘+Click per aprire i link in nuove schede. Quando lo faccio su “Scorciatoie da tastiera” nel menu hamburger, si apre una nuova scheda che non mostra le scorciatoie da tastiera.
La navigazione per quel “link” è gestita all’interno dell’app. Ho messo link tra virgolette perché non è davvero un link, dato che non punta a nessun indirizzo specifico
<a class="widget-link keyboard-shortcuts-link" href="" title="Scorciatoie da tastiera">
<span class="d-label">Scorciatoie da tastiera</span>
</a>
Notate come l’attributo href sia vuoto?
Si apre semplicemente una finestra modale o una finestra di dialogo. Quindi, non è possibile aprire quel link in una nuova scheda e far apparire quella finestra modale.
Ciao, capisco. Volevo semplicemente segnalare che si tratta di un comportamento inaspettato dal punto di vista dell’utente, perché visivamente “Scorciatoie da tastiera” appare esattamente come un link. Se ci fosse un modo per offrire un segnale che il processo di “apertura in una nuova scheda” non funzionerà, sarebbe ideale. Credo che questo non debba essere una priorità, ovviamente — non immagino che molte persone si trovino in questa situazione.
Per completezza, rimuovere completamente l’attributo href (invece di impostarlo su una stringa vuota, che è un riferimento al documento corrente) dovrebbe impedire che il link venga aperto in una nuova scheda, almeno nella maggior parte dei browser.
Va bene, un tag anchor senza href è valido in HTML5.
Il problema nel rimuoverlo è che verrebbe escluso dall’indice di tabulazione, il che significa che non sarebbe possibile raggiungere quel link tramite tastiera o altri metodi di input alternativi.
Sento che questo sia un leggero miglioramento rispetto all’apertura di una nuova scheda, ma risulta comunque strano che non accada nulla quando provo ad aprire quel link in una nuova scheda… soprattutto perché è l’unico link nel menu che si comporta in questo modo.
Idealmente, dovremmo aprire il modal della tastiera in ogni caso. In /widgets/link.js.es6 abbiamo
click(e) {
if (wantsNewWindow(e)) {
return;
}
...
Quindi sembra che stiamo impedendo che accada qualsiasi cosa al click se viene richiesta una nuova finestra/scheda?.. Mi chiedo se possiamo fare una piccola riorganizzazione lì per poter aprire il modal indipendentemente dai tasti modificatori.