Asegúrate de que la opción Abrir todos los enlaces externos en una nueva pestaña esté marcada en /my/preferences/interface en las opciones de interfaz Otras (De todos modos, parece ser la configuración predeterminada).
Busca cualquier publicación con un enlace externo: ejemplos aleatorios en meta y en try.
Haz clic en el primer enlace externo que encuentres en esa publicación (preferiblemente el mismo).
Se abre en una nueva pestaña, bien.
PERO:
Asegúrate de que la opción Abrir todos los enlaces externos en una nueva pestaña esté marcada en /my/preferences/interface en las opciones de interfaz Otras (De todos modos, parece ser la configuración predeterminada).
Abre la misma publicación que en la prueba anterior.
Selecciona cualquier texto en esta publicación (1+ letra, 1+ palabra, cualquier selección servirá): deberías ver un botón flotante Citar.
Haz clic en el primer enlace externo que encuentres en esa publicación.
Ahora el enlace externo se abre en la pestaña actual, en lugar de una nueva pestaña.
En realidad, simplemente puedes probar con esta publicación aquí:
Puedo confirmar. No estoy completamente seguro de que valga la pena arreglarlo, ya que parece un caso extremo, donde el usuario está buscando problemas.
Si no tienes las habilidades para enviar una PR (no creo que las tenga), entonces simplemente usar control-clic para abrir en una nueva pestaña funcionará, no es difícil de automatizar y resolverá el problema en todos los sitios, incluso en aquellos que no abren enlaces en nuevas pestañas.
Usaría Ctrl+clic, pero tenemos esta buena opción, llamada Abrir todos los enlaces externos en una nueva pestaña.
Pero lo que esta opción realmente hace es Abrir enlaces externos aleatorios en una nueva pestaña.
Me llevó meses, si no años, identificar un esquema de reproducción.
Me pareció realmente aleatorio.
¿Quizás eliminar esta opción, para un comportamiento coherente?
Recuerdo que intenté configurar un entorno de desarrollo de Discourse para una simple PR de problema de CSS.
Pero, si mal no recuerdo, me di por vencido porque mi PC era demasiado viejo y no pude instalar ni ejecutar todos los requisitos.
Encontré mi intento anterior fallido de instalar un entorno de desarrollo de Discourse. Mi PC Linux personal era demasiado antiguo y mi portátil profesional con Windows no tenía activado el hyper threading.
Mi nuevo portátil profesional ahora aparentemente tiene hyper threading así que veré si puedo seguir las nuevas instrucciones, sin derechos de administrador.
wmic CPU Get NumberOfCores,NumberOfLogicalProcessors muestra más núcleos lógicos que núcleos físicos.
Espero que ayude, aún no lo he probado realmente pero parece que funciona bien.
Editar: user-select: text debería añadirse al enlace porque no solo el texto seleccionado .cooked lo afecta, sino todo el texto seleccionado en el sitio. He cambiado el código.
Gracias Sam, lo estoy probando más de cerca antes de enviarlo y parece que esto no es suficiente, desafortunadamente. Esta solución solo funciona con Chrome.
Aquí está el fragmento de código que causa el error (de app/assets/javascripts/discourse/app/lib/click-track.js)
// Cancelar clic si se activa como parte de la selección.
const selection = window.getSelection();
if (selection.type === "Range" || selection.rangeCount > 0) {
if (selectedText() !== "") {
return true;
}
}
Eliminar este código resuelve el problema y no parece romper las pruebas (tengo algunas pruebas fallando antes y después del cambio por alguna razón, pero aparentemente ninguna nueva).
Así que me pregunto si este código hace algo útil, porque una cosa que ciertamente no hace es lo que dice que hace, de lo contrario, el informante del error no experimentaría ningún seguimiento de enlaces al ‘seleccionar + hacer clic’, pero esa no es su queja.
¿Alguien puede compartir qué se supone que debe lograr este código?
Recuerdo vagamente que había una solución alternativa para un navegador específico, ¿quizás intentar en Safari/Firefox/Chrome con una selección para ver si alguna la activa?
Solo tengo acceso a la plataforma de Windows para probar.
esta corrección se puede probar fácilmente ya que el archivo se puede pegar en su totalidad en la consola.
@sam ¿sabes qué archivo deberíamos pegar en la consola después de cargar una página de tema? @Aleksey_Bogdanov ¿podría dar ese archivo y yo podría pegarlo en mis consolas de Vivaldi, Firefox, Android 9 Kiwi de Windows, y tú podrías pegarlo en tu Safari de iOS, Mac OS?