¿Cómo hacer que el tema oscuro automático sea igual que el tema oscuro seleccionado?

Tenemos un tema oscuro que se ve así:

Cuando seleccionamos el tema en el perfil del usuario, se ve como arriba, como se esperaba.

Sin embargo, cuando se habilita automáticamente a través de la opción del perfil “Habilitar esquema de color de modo oscuro automático”, se ve así:

Hace que la mayor parte de la interfaz de usuario sea oscura, pero toma el CSS del tema claro, lo que significa que el encabezado termina así.

¿Hay alguna manera de hacer que Discourse elija estrictamente el tema oscuro, incluido el CSS, etc., cuando se selecciona automáticamente?


Para información, estas son nuestras opciones de Tema claro:

Y opciones de tema oscuro:

3 Me gusta

Parece que estás usando 2 paletas de colores diferentes. Joplin Default y Simple Dark. ¿Son diferentes?

3 Me gusta

Sí, el tema Predeterminado con el tema de color Predeterminado de Joplin es el tema claro, y el otro es el tema oscuro. Supongo que es normal que tengan dos temas de color diferentes.

2 Me gusta

¡Muchas disculpas! Esta es un área confusa en nuestra interfaz de administración y actualmente estamos trabajando para mejorarla. Espero estar haciéndolo bien, pero permítanme explicar la funcionalidad actual a mi manera.

Un cambio es que solo hablaremos de “paleta de colores” y ya no de “esquema de colores”. Eso cambiará pronto en la interfaz de usuario. Por ahora, paleta y esquema son lo mismo.

Para aprovechar la compatibilidad con el modo oscuro en Discourse, he tenido la mejor experiencia con lo siguiente:

  • tener solo un tema habilitado
  • especificar la paleta de colores del modo claro en la configuración del tema habilitado
  • especificar la paleta de colores del modo oscuro en la configuración del sitio default dark mode color scheme id.
  • se respeta la configuración del sistema operativo en modo oscuro de sus miembros
  • el componente de tema de alternancia de modo oscuro funciona para alternar entre modo claro/oscuro
  • sus miembros pueden ver las opciones de modo claro y oscuro en sus preferencias de usuario (y no ven el selector de temas porque solo hay un tema)

Si ha personalizado su tema oscuro más allá de la paleta de colores utilizada y no desea que las personas usen el tema en modo claro con colores oscuros, entonces no puede usar el selector de modo oscuro. Debería:

  • tener dos temas habilitados
  • el tema en modo claro tiene colores claros
  • el tema en modo oscuro tiene colores oscuros
  • la configuración default dark mode color scheme id no está especificada
  • la configuración del sistema operativo en modo oscuro de sus miembros NO se respeta
  • el componente de tema de alternancia de modo oscuro no funciona
  • en sus preferencias de usuario, sus miembros pueden elegir su tema preferido

Y finalmente, si solo desea un tema claro u oscuro, simplemente habilite un tema y una paleta, y no especifique ninguna paleta en la configuración del sitio default dark mode color scheme id.

4 Me gusta

Gracias por tu respuesta. En realidad tenemos tres temas diferentes, y dos de ellos están personalizados con CSS (para cambiar la cabecera para Halloween, Navidad). Así que, si entiendo correctamente, con esta configuración no es posible que el tema oscuro automático funcione correctamente, ¿es correcto?

No es lo ideal, pero supongo que podría vivir con esto. Quizás necesitemos cambiar nuestras cabeceras para que la cabecera en modo claro funcione también en modo oscuro.

2 Me gusta

No, si no ofreces paletas de colores claras y oscuras. Sí, si lo haces.

2 Me gusta

Tengo varias paletas de colores, las principales son “Joplin Default” (usada en el tema claro predeterminado) y “Simple Dark” (usada en el tema oscuro predeterminado).

¿Hay algo que deba configurar aquí para solucionar el problema que mencioné en la publicación principal?

Dime cuáles son las paletas de colores predeterminadas de claro y oscuro en la configuración de un foro. Establece claro como predeterminado en la configuración de los temas. Empieza a usar el selector. Eso es todo.
Las dificultades comienzan cuando un usuario cambia las paletas de colores en la configuración personal. Es decir… el sistema es terrible, pero es difícil de entender. Y mi opinión es que tenemos demasiadas soluciones alternativas con la configuración de colores aquí, allá y en todas partes. Las paletas solo deben configurarse en los temas. Claro, eso limita la opción del usuario para elegir colores, pero…

2 Me gusta

¿Cómo personalizaste el encabezado? El problema es que la personalización de tu encabezado depende del tema seleccionado, pero el interruptor de oscuro/claro solo cambia la paleta de colores. El resultado es el mismo si seleccionas la paleta oscura en combinación con el tema claro en tus preferencias.

El Versatile Banner utiliza diferentes imágenes de fondo y colores dependiendo de si una paleta de colores clara u oscura está activa. Podrías hacer algo similar para tu encabezado.

Sí, la cabecera se establece a través de los CSS personalizados de cada tema. ¿Hay alguna forma de identificar si la paleta de colores actual es oscura o clara?

Intenté lo siguiente:

@media (prefers-color-scheme: dark) {
  .d-header {
    background-image: url(https://imgur.com/LdcvIcp.png); /* Imagen de fondo oscura */
  }
}

Pero eso no funcionó mientras la paleta de colores oscura estaba activa, y para estar seguro, probé lo mismo con @media (prefers-color-scheme: light) y funciona. Así que parece que la paleta de colores oscura se identifica de alguna manera como un esquema de color claro. ¿Alguna otra forma de saber que la paleta de colores actual es la oscura?

Miré el HTML y busqué “dark”, pero no apareció nada útil. Esperaba que pudiera haber un selector superior como .is-dark-theme que me lo indicara.

1 me gusta

¿Funciona la forma en que el banner versátil cambia el fondo? Podrías instalar el componente, agregar una imagen de fondo para el modo oscuro y probar usando la vista previa.

Luego podrías usar dark-light-choose que se explicó, por ejemplo, en Update themes and plugins to support automatic dark mode - #5 by pmusaraj y también se usa para el banner.

2 Me gusta