Модальное окно предпросмотра темы

Спасибо, что спросил. Проблема была связана с тем, что я отключил «онлайн-статус». Я его включил, и теперь модальные окна появляются :ok_hand:

Теперь компонент темы работает, но только через кнопку «Развернуть». Проблема с функциональностью строки, похоже, на этот раз связана с темой Horizon.

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

1 лайк

Я не понимаю, что здесь происходит…

Тема с одним постом, но длина списка тем не имеет значения. Когда я открываю эту тему, я вижу вот это:

Но так как я уже прочитал её, я ожидаю увидеть вот этот вариант:

Или самое начало, которого я никогда не получаю:

У меня неправильные ожидания, или я упускаю что-то совершенно очевидное? Я использую чистую тему без других компонентов, а на устройстве — iPad/iPhone (PWA, Safari и Hub, всё работает одинаково).

правка

Я попробовал с более «чистым» аккаунтом, и, как и ожидалось, открылся самый первый пост. Значит, предыдущая ситуация актуальна только при открытии темы, которая уже была прочитана.

1 лайк

Привет :waving_hand:

Я добавил поддержку вложенных представлений. FEATURE: Adds nested view support - Pull Request #3 - VaperinaDEV/discourse-topic-preview-modal - GitHub

4 лайка

Спасибо, @Jagster, вот исправление: FIX: Enhance topic-post visibility for scroll positioning · VaperinaDEV/discourse-topic-preview-modal@697868d · GitHub

3 лайка

Привет :waving_hand:

К сожалению, я не могу воспроизвести эту проблему…

Я добавил это: FEATURE: Adds enabled_on setting - Pull Request #4 - VaperinaDEV/discourse-topic-preview-modal - GitHub

4 лайка

Вау, большое спасибо, Дон :slight_smile:

1 лайк

Я заметил проблему: модальное окно предпросмотра темы некорректно работает в теме Horizon, когда включён параметр «topic card high context» (карточка темы с высоким контекстом). Это намеренное решение или баг?

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

1 лайк

Кроме того, при открытии предпросмотра из раздела «Связанные/рекомендуемые темы» в нижней части страницы темы, нажатие на «Открыть полную тему» внутри модального окна не приводит к переходу на целевую страницу.

1 лайк

Я могу это подтвердить. В настоящее время обходным решением является выбор поведения кнопки (вместо поведения строки по умолчанию).

1 лайк

Спасибо, ах, вот чего не хватало! Я не заметил проблему, потому что этот параметр был отключен… извини @satonotdead :confused:

Так что проблема заключалась в том, что в режиме «topic card high context» Horizon не отображает плагин-отверстие topic-list-item-before, из-за чего компонент темы не мог работать.

Я перенес его в другое плагин-отверстие, теперь всё работает нормально.

Спасибо, я это исправил.

Хм, я об этом думаю. Как ты себе это представляешь? Должно ли это работать и на /latest (проверяя точную категорию темы) или только внутри выбранной категории? Должны ли рекомендации тем в этой категории также сохранять модальное окно?



> ./support --coffee

3 лайка

Привет, @Damian_Boon :waving_hand:

Я исправил эту проблему здесь: FIX: Prevent parent topic navigation from bypassing preview modal · VaperinaDEV/discourse-topic-preview-modal@8902af9 · GitHub

Теперь модальное окно должно работать и с темой в стиле Reddit.

3 лайка

Теперь всё работает, босс, спасибо!

1 лайк

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

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

Таким образом, даже если вы прокрутили ленту до самого конца, к последнему сообщению, вы можете просто потянуть футер вниз, чтобы закрыть модальное окно, не needing прокручивать всё обратно к началу или тянуться к верхней части окна.

Мне кажется, для такого типа модальных окон это ощущается более естественно.

4 лайка

Мне приходится не согласиться, так как я пользуюсь этим уже больше недели. Управлять телефоном одной рукой очень удобно, и учитывая, что 90% пользователей просто потребляют контент, этот вариант идеален и сайт становится очень простым в использовании. Я также добавил анимированный таймер на 3 секунды с сообщением, расположенным в 5 пикселях над модальным окном, который объясняет, что именно этот жест используется для закрытия. Попробуйте это немного, и вы увидите, насколько хорошо это работает, не требуя от большого пальца больших движений.

Кроме того, если вы решите остановиться на этом варианте, будет ли это переключатель для включения или отключения?

1 лайк

Я протестировал это, однако есть одна проблема: этот жест также используется в Safari на iOS для перехода «назад». Из-за этого часто возникает ситуация, когда вместо закрытия диалогового окна вы попадаете на предыдущую веб-страницу.

1 лайк

Вы имеете в виду, что свайп вправо на iPhone не закрывает модальное окно, а возвращает на предыдущую страницу?

Да, я воспроизвёл это здесь, надеюсь, вы видите, что я имею в виду

1 лайк

Ах, как же это больно. Я протестировал это на старом iPhone, и всё работало идеально. Снова за стартом.

Привет :waving_hand:

Я много думал об этом и добавил три настраиваемых опции:

  • None: без дополнительного жеста закрытия
  • Grip: в футере отображается визуальный элемент для захвата
  • Gesture: модальное окно можно закрыть, проведя вниз, если оно находится вверху, или вверх, если оно находится внизу. На мобильных устройствах нативный жест или кнопка «Назад» также закрывают модальное окно.

Я пытался сделать его работу примерно так, как работают модальные окна с комментариями в Facebook.

Самая интересная часть — обработка нативного жеста «Назад». Вместо того чтобы уводить пользователя от списка тем, модальное окно перехватывает действие «Назад» и закрывается, сохраняя позицию пользователя в списке.

6 лайков

Новый iPad: модальное окно закрывается только жестом свайпа вверх. Если сделать свайп слева направо, внутри модального окна ничего не происходит, а снаружи он работает как обычное действие «назад», и я оказываюсь на главной странице автора.

1 лайк