Выбор реакций отображается за пределами экрана на мобильных устройствах

У нас возникла очень похожая проблема на ту, что описана здесь:

Выборщик реакций отображается за пределами области просмотра.

С помощью инструментов отладки я смог определить, что ему присваивается element.style {left: 89.6562px; top: 2375.19px; }. Поскольку это стиль элемента, мне не удалось повлиять на это, изменяя какой-либо другой CSS.

Если я изменю размер своего экрана, сделав его, например, 3000 пикселей в высоту, я смогу увидеть выборщик именно там.

Мы установили, что плагин Jira не является виновником здесь: Unable to use reactions on IOS/Mobile - #23 by Don

Мы используем компонент темы пользовательских реакций: Custom Discourse Reactions - #14 by Don. Однако я не понимаю, как это может вызывать такой эффект.

К сожалению, я не могу предоставить полный список плагинов, которые у нас есть в данный момент, так как у меня нет прав администратора.

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

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

После того как мне на это указали, я заметил, что

  • a) Reactions — это плагин, поэтому отключение всех плагинов устранило проблему, но не очень полезно ^^;
  • b) Что ещё важнее: без тем всё работает нормально.

Единственная тема, которая должна как-то взаимодействовать с Reactions, — это

Reactions точно работали корректно несколько недель назад, и эта тема не менялась уже годы.

Либо она странно взаимодействует с недавним обновлением Discourse, либо что-то сломалось в нашей конфигурации. Я попробую уточнить детали.

Я провёл дополнительное расследование:

Мне кажется, что именно этот коммит в ядре Discourse стал причиной сбоя:

А именно этот фрагмент:

похоже, конфликтует со стилями из компонента темы:

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

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

Я только что создал там issue.

Компонент темы обновлён, проблема решена.