Изменилась ли позиция прочитанного поста в теме?

Здравствуйте,

Я заметил, что когда я перехожу к теме, где я ранее прочитал несколько сообщений, чтение не продолжается с того места, где я остановился.

Теперь, кажется, позиция чтения определяется последним видимым на экране сообщением, а не первым видимым.

Демо: В видео я прокручиваю до 14-го сообщения и возвращаюсь к списку тем. Затем я открываю тему снова, и она переходит к 18-му сообщению вместо 15-го.

Да, что-то изменилось, потому что должно также прокручиваться к последней просмотренной строке. Я думаю, что перенесу это в bug.

Редактирование: Похоже, что переход к последней просмотренной строке происходит после завершения анимации подсветки сообщения.
Это связано с тем, что последняя просмотренная строка отображается только после завершения анимации подсветки (или загрузки сообщения).

Спасибо :slightly_smiling_face:

3 лайка

Да, я и несколько участников моего сообщества это заметили. Это началось после того, как мы включили боковую панель.

Здравствуйте,

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

Спасибо :slightly_smiling_face:

2 лайка

Это происходит в двух из моих экземпляров. Возможно, это связано с боковой панелью? До её активации всё работало нормально, теперь пользователи сообщают об этой проблеме.

За последние пару дней я тоже получаю от пользователей сообщения об этой проблеме сразу после включения боковой панели.

Нет, я думаю, что дело не в боковой панели. Возможно, это частично из-за этого коммита DEV: Asyncify loadTopicView (#18585) · discourse/discourse@2c5e8f1 · GitHub? Потому что, похоже, элементы темы (сообщения, строка «последний раз посещал» и т. д.) загружаются с небольшой задержкой, и я думаю, именно поэтому иногда происходит переход к случайным сообщениям. Но я не уверен :slightly_smiling_face:

1 лайк

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

Активирован ли в вашем экземпляре боковой панель?

К сведению: я уведомил всех соответствующих инженеров об этой проблеме и добавил эту тему в наш внутренний список отслеживания; мы поставили это в приоритет.

6 лайков

Полагаю, так и должно работать? При клике на тему в списке вы переходите к первому непрочитанному сообщению*, а не к вашему предыдущему положению. Вы можете вернуться к месту, где остановились, используя навигацию «назад/вперёд» в браузере.

(* — существуют настройки, которые немного меняют это поведение, например, настройка категории navigate_to_first_post_after_read, которая при включении перенаправляет вас к первому сообщению, если в теме не осталось непрочитанных сообщений)

Да, прокрутка к маркеру «последнего визита» работает с ошибками. Она не сработает, если сразу после него есть небольшие сообщения (например, «X месяцев спустя») или удалённые сообщения. Я работаю над исправлением.

Эта ошибка отслеживается по адресу Discourse jumps back 20 posts in post history when navigating to new topic.

Возможно, она уже исправлена в FIX: Correctly reset `controllerReady` prop by cvx · Pull Request #18727 · discourse/discourse · GitHub

2 лайка

@Don, ты всё ещё можешь воспроизвести проблему?

1 лайк

Привет, Сэм,

Нет, после отмены коммита у меня всё в порядке.


Первое, о чём я упомянул, вероятно, не является проблемой :arrow_down_small:

Как сказал Ярек, так это и работает.

Кажется, я перепутал это с просмотром темы без авторизации? Когда я выхожу из системы, оно переходит к следующему посту, а не к последнему видимому посту.

1 лайк