Временная шкала перекрывает «Рекомендуемые темы»

Привет.
На коротких темах временная шкала накладывается на раздел «Предлагаемые темы»:


Думаю, временную шкалу можно скрыть для тем без ответов, либо минимальная высота контейнера сообщений должна быть примерно такой же, как у временной шкалы?

4 лайка

Если я не ошибаюсь, это проблема, которая существует уже давно и характерна для коротких экранов и тем в одну строку, но, возможно, мы регрессировали? :thinking:

Это также происходит, когда контент достаточно длинный и над сообщением есть какой-то контент

Однозначно наблюдаю это.

@awesomerobot напомнил, что мы, кажется, раньше скрывали временную шкалу для тем с одним постом. Возможно, поэтому мы видим это чаще, или это действительно регрессия? В любом случае, в данном случае все элементы временной шкалы дублируются в элементах управления в нижней части первого (и единственного) поста…

1 лайк

Да, я думаю, что мы скрывали это с 2016 года: UX: Hide all timeline controls when fewer than 3 posts · discourse/discourse@b9f8264 · GitHub

До недавнего времени таймлайн скрывал

@j.jaffeux, не могло ли ваше недавнее изменение вызвать регресс?

3 лайка

Определённо стоит скрывать ленту, если есть только ОДИН пост. Три — это уже слишком. А один…

1 лайк

Главная проблема с одним большим постом заключается в том, что когда он действительно полезен, как этот, он работает некорректно. Мы не поддерживаем навигацию посередине огромного поста, поэтому это становится очень, очень, очень, очень запутанным. Это гораздо хуже, чем просто проблема отображения.

2 лайка

Делайте это на основе длины поста плюс отдельный пост… Нам ведь не нужна вертикальная временная шкала для однострочного поста в одной теме, верно?

Абсолютно нет, но нам нужно исправить реализацию, я думаю, в этом и суть.

Если бы мне пришлось выбирать между безусловным удалением или сохранением для редких очень длинных отдельных постов, я бы выбрал безусловное удаление.

Однако, если мы исправим базовую реализацию, я полностью поддержу сохранение этого для потрясающего руководства @Johani — это было бы очень полезно.

Логика должна быть такой:

если в теме одна запись И если эта запись содержит менее .. 1000* символов .. полностью скрывать ленту времени

Даже две записи по одному предложению, вероятно, безопасны, верно?

  • но что, если все они состоят из отдельных символов, переносов строк и т. д.? Не знаю. Думаю, приблизительной проверки будет достаточно, нам не стоит беспокоиться о безумных крайних случаях.
1 лайк

Конечно, мы можем что-то сделать здесь, даже используя только CSS. Но в этом случае нам нужно исправить полосу прокрутки.

Иначе, возможно, стоит просто изменить логику на если 1 пост, то скрыть ленту, что ещё проще.

Если только этот единственный пост не является чудовищным текстом из 30 000 символов — мы не хотим, чтобы он был скрыт, так что.. нет.

Мы действительно хотим, чтобы это было скрыто… извините… в этом и суть. Если мы не исправим эту проблему:

Я перетаскиваю таймлайн вниз:

Он всё ещё находится вверху. :crying_cat_face:

Однако эта полоса прокрутки работает как ожидалось, если использовать нативную полосу прокрутки браузера:

Если оставить её для тем с одним огромным постом, она просто не будет работать правильно, что очень сбивает с толку. Поэтому мы должны это исправить.

1 лайк

Понятно, нам нужны хорошие неформальные тестовые сценарии, чтобы убедиться, что мы охватили те, которые нам важны.

1 лайк

Нет, это не тот коммит.

Скорее всего, соответствующий коммит — это:

Так что до этого коммита логика была несколько дублирована и отличалась, а также вызывала появление пустого (но видимого) виджета timeline-controls.

Разберусь с этим сегодня.

3 лайка

Моя попытка исправить наложение временной шкалы находится здесь:

Это не исправляет то, что вы описали: при клике или перетаскивании на временной шкале не меняется позиция прокрутки окна. Я быстро посмотрел, как это сделать, и считаю, что это должна быть отдельная задача. Так было всегда, и изменение этого поведения имеет множество последствий.

Если у нас есть только один пост, я теперь буду проверять его высоту и скрывать скроллер, если она меньше 1000 пикселей.

Это соответствует посту примерно такой длины:

Пример с коротким постом:

Этот коммит также исправляет другую ошибку, из-за которой кнопка администратора темы отображалась в неправильном положении при полной перезагрузке страницы:

Так:

Вместо этого положения после исправления:

Я также проверил, что два поста с минимальным количеством контента не накладываются друг на друга:

На мобильных устройствах ничего меняться не должно.

4 лайка

Отлично, спасибо, Жоффрей :smiling_cat_with_heart_eyes:

2 лайка

Это уже слито, пример можно увидеть в действии в этой теме (по крайней мере, пока там только один пост):

3 лайка

Эта тема была автоматически закрыта через 5 дней. Новые ответы больше не принимаются.