Peculiaridades com tema de largura total e #reply-control com 100% de largura

Olá, descobri que meus usuários realmente odeiam as margens amplas esquerda e direita que o Discourse usa por padrão. Então, eu estava usando GitHub - programmersforum-reborn/discourse-wide-posts: Increases post width junto com estes ajustes adicionais de CSS:

:root {
    --d-max-width: 1900px;
    --topic-body-width: 1244px;
}

Uma atualização recente do Discourse parece ter quebrado o GitHub - programmersforum-reborn/discourse-wide-posts: Increases post width, e o painel do compositor de largura total estava saindo do lado esquerdo da tela. Então, desativei o discourse-wide-posts e instalei o GitHub - discourse/discourse-full-width-component: Make Discourse occupy the full browser width, que apenas reduz a margem esquerda, além desses ajustes de CSS para reduzir a margem direita e também tornar o painel do compositor de largura total:

body.has-sidebar-page #reply-control.show-preview:not(.fullscreen), #reply-control {
    max-width: 100%;
    margin-left: 0;
}
:root {
    --d-max-width: 1900px;
    --topic-body-width: 1244px;
}

Mas há algumas peculiaridades. A maioria delas pode ser reproduzida aqui no Discourse Meta com os temas Default (full-width) ou Fully Theme.

Primeiramente, sem meus ajustes de CSS mencionados anteriormente para #reply-control, o painel salta dependendo do nível de zoom:





Além disso, em níveis de zoom normais, o div sidebar-wrapper ajusta sua altura de acordo com a altura do painel do compositor abaixo dele, mas após uma certa largura da janela do navegador algo muda e ele começa a ser cortado sem forma de rolar até o final da barra lateral (verifique a largura da imagem da captura de tela para ver onde isso acontece aproximadamente):




Finalmente, com a regra --topic-body-width: 1244px;, ao visualizar um tópico, os itens da barra lateral se deslocam para cima durante o tempo que leva para carregar um novo bloco de posts em threads longas ao pular para uma posição diferente no controle deslizante da linha do tempo de posts, e então retornam à sua posição normal após o carregamento. Isso é bastante distrativo, e parece ter começado a acontecer desde esta atualização que me exigiu refazer minhas configurações de largura personalizadas. Se eu mudar a regra CSS para --topic-body-width: 100%;, então os itens da barra lateral permanecem no lugar durante os deslocamentos da linha do tempo, mas durante o tempo em que o indicador de carregamento giratório aparece, a linha do tempo se desloca para a esquerda (provavelmente para o --topic-body-width padrão do Discourse?) e então volta abruptamente para sua posição normal perto da margem direita. Existe alguma solução alternativa para isso? Possivelmente uma regra de largura que eu possa adicionar à coisa giratória do carregador? Não consigo pegá-la com o inspetor HTML porque é muito breve.

Por favor, me avise se precisar de mais alguma informação para depurar isso. Obrigado!

1 curtida