Ciao, sto pensando se sia possibile non mostrare l’area racchiusa in un riquadro rosso per impostazione predefinita su mobile?
Quale file/parte dovrei cambiare?
Grazie.
Sebbene lo screenshot nell’OP sia un’edizione di argomento, penso, e anche il titolo dell’argomento, la categoria e le caselle dei tag occupano spazio extra rispetto a una risposta.
sì per rispondere va bene ma per un nuovo argomento è piccolo
C’è anche un argomento UX esistente con ulteriori discussioni, se desideri aggiungere i tuoi pensieri:
È possibile nascondere la barra degli strumenti di formattazione (l’area nel riquadro rosso) facendo clic sull’icona hamburger (3 linee orizzontali) in alto a destra.
Sì, hai ragione. ma non tutti i nuovi utenti lo sanno. questo può causare un problema di UX.
Puoi provare questo piccolo script. Aggiungilo al tuo tema o a un nuovo componente HTML nella scheda Head.
Nasconde la barra degli strumenti con le seguenti condizioni:
- Solo per nuovi argomenti / modifica del primo post dell’argomento / bozza dell’argomento
- Vista mobile
- se l’utente non ha preferenze salvate. [1]
Il codice non interferisce con le preferenze dell’utente.
<script type="text/discourse-plugin" version="0.8">
const { on, observes } = require("discourse-common/utils/decorators");
const serviceComposer = api.container.lookup("service:composer");
function canUpdateToolbar(context) {
return (
// Nuovo argomento / Modifica primo post / Bozza argomento
context._isNewTopic &&
// La barra degli strumenti non è nascosta
context.showToolbar &&
// Solo vista mobile
context.site.mobileView &&
// Non sovrascrivere le preferenze dell'utente
context.keyValueStore.get("toolbar-enabled") === undefined
);
}
function updateShowToolBar(value) {
serviceComposer._wasToolbarEnabled = !value;
// Nasconde la barra degli strumenti senza ricordare lo stato nel browser dell'utente.
serviceComposer._toolbarEnabled = value;
// Aggiorna il getter calcolato
serviceComposer.notifyPropertyChange("showToolbar");
}
api.modifyClass("component:composer-editor", {
pluginId: "composer-editor-toolbar",
@observes("composer.action")
_composerSwitchAction() {
// Gestisce la situazione quando si passa da una risposta a un nuovo argomento
// senza chiudere il composer.
if (canUpdateToolbar(this)) {
updateShowToolBar(false);
}
},
@on("didInsertElement")
_composerEditorInit() {
this.appEvents.one(`${this.composerEventPrefix}:will-open`, () => {
if (canUpdateToolbar(this)) {
updateShowToolBar(false);
}
});
this._super(...arguments);
},
@on("willDestroyElement")
_composerClosed() {
this._super(...arguments);
// Ripristina la barra degli strumenti se è nascosta manualmente.
if (serviceComposer._wasToolbarEnabled) {
updateShowToolBar(true);
}
},
});
</script>
Una volta che un utente fa clic sull’interruttore, il browser ricorda lo stato ↩︎
Ciao Arkshine, grazie per la tua risposta,
l’ho aggiunto nella scheda head del mio tema ma non funziona.
Ho fatto nel modo sbagliato?
Dove è necessario? Toccando l’hamburger lo fa nativamente, almeno su iPhone.
Penso che stiamo discutendo molte informazioni ripetute da Such a tiny window to edit here on a cell phone
Chiudiamo questa discussione e concentriamo la conversazione lì.




