Área de edição do novo tópico é pequena para usuários mobile

Olá, estou pensando se é possível não ter a área incerta, que está emoldurada em vermelho, por padrão para o celular?
Qual arquivo/parte devo alterar?
Obrigado.

1 curtida

O principal problema que você tem é com o nível de zoom/tamanho do texto no seu telefone e/ou no seu navegador.

Esta é a aparência da minha tela ao responder a você no meu Pixel 6a (um telefone pequeno!)

Você pode ocultar a barra de ferramentas com o botão de hambúrguer.

2 curtidas

Mas… há mais :wink:

  • edição rápida não funciona em imagens :man_facepalming: então: of = if

Embora a captura de tela na OP seja uma edição de tópico, eu acho, e o título do tópico, a caixa de categoria e a caixa de tags também ocupam espaço extra em comparação com uma resposta.

2 curtidas

sim, para responder está ok, mas para um novo tópico é pequeno

2 curtidas

Há também um tópico UX existente com mais discussões, se você quiser adicionar suas opiniões a ele:

3 curtidas

Você pode ocultar a barra de ferramentas de formatação (a área em sua moldura vermelha) clicando no ícone de hambúrguer (3 linhas horizontais) no canto superior direito.

1 curtida

Sim, você está certo. mas nem todo novo usuário sabe disso. isso pode ser um problema de UX.

Você pode tentar este pequeno script. Adicione-o ao seu tema ou a um novo componente HTML na aba Head.

Ele oculta a barra de ferramentas com as seguintes condições:

  • Apenas para novos tópicos / edição do primeiro post do tópico / rascunho do tópico
  • Visualização móvel
  • Se o usuário não tiver uma preferência salva. [1]

O código não interfere nas preferências do usuário.

<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 (
    // Novo tópico / Edição do primeiro post / Rascunho do tópico 
    context._isNewTopic &&
    // A barra de ferramentas não está oculta
    context.showToolbar &&
    // Apenas visualização móvel
    context.site.mobileView &&
    // Não sobrescrever a preferência do usuário
    context.keyValueStore.get("toolbar-enabled") === undefined
  );
}

function updateShowToolBar(value) {
  serviceComposer._wasToolbarEnabled = !value;
  // Oculta a barra de ferramentas sem lembrar o estado no navegador do usuário.
  serviceComposer._toolbarEnabled = value;
  // Atualiza o getter computado
  serviceComposer.notifyPropertyChange("showToolbar");
}

api.modifyClass("component:composer-editor", {
  pluginId: "composer-editor-toolbar",

  @observes("composer.action")
  _composerSwitchAction() {
    // Lida com a situação ao alternar de uma resposta para um novo tópico
    // sem fechar o 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);

    // Restaura a barra de ferramentas se ela for manualmente oculta.
    if (serviceComposer._wasToolbarEnabled) {
      updateShowToolBar(true);
    }
  },
});

</script>

  1. Assim que um usuário clicar no alternador, o navegador lembrará o estado ↩︎

2 curtidas

Olá Arkshine, obrigado pela sua resposta.

Eu adicionei na aba head do meu tema, mas não está funcionando.
Eu fiz da maneira errada?

1 curtida

Onde isso é necessário? Tocar no hambúrguer faz isso nativamente — pelo menos nos iPhones.

1 curtida

Então, se não houver sites suficientes exibidos porque você definiu o tamanho do texto e da interface muito grandes, isso é um problema do Chrome/Safari e a culpa é do Google/Apple?! :rofl:

Basta alterar suas preferências de interface no seu telefone e pronto!

Acho que estamos discutindo muitas informações repetidas de Such a tiny window to edit here on a cell phone

Vamos encerrar esta discussão e concentrar a conversa lá.

4 curtidas