¿Cómo mostrar siempre la barra lateral como panel de menú?

En una comunidad he habilitado la barra lateral y ajustado la vista del panel de la siguiente manera:

Siempre me gustaría usar ese menú de panel y no cambiar entre panel y barra lateral dependiendo del ancho de la vista. ¿Hay alguna declaración simple para lograr eso?

2 Me gusta

Por ahora, no es fácilmente configurable a través de SiteSetting.

El comportamiento está controlado por NarrowDesktop

La solución potencial sería crear un plugin que sobrescriba la función isNarrowDesktopView para que siempre devuelva true.

Algo como initializers/always-narrow-view.js

import NarrowDesktop from "discourse/lib/narrow-desktop";

export default {
  name: "always-narrow-view",

  initialize(container) {
    NarrowDesktop.isNarrowDesktopView = () => true;
  }
}
3 Me gusta

¡Gracias Kris! :sunny:

Lo envolví en un componente temático y hasta ahora parece funcionar a la perfección :sparkles:

Seguiré jugando y probándolo un poco más…

2 Me gusta

Me encanta cómo funciona esto para diseños de página completa, ofreciendo un generoso menú lateral sin romper el diseño:

Lamentablemente, me di cuenta de que también cambia el menú de usuario para que siempre se deslice. Esa no es una buena experiencia. Supongo que se volverá más complicado desacoplar el comportamiento.

Como nota al margen, vi que el panel del menú de usuario tiene las clases:
.user-menu.revamped.menu-panel.slide-in
Pero el panel del menú lateral solo tiene las clases:
.revamped.menu-panel.slide-in
Creo que podría ser útil tener también una clase dedicada .sidebar-menu allí.

1 me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.