Плагин чата не понимает фокус по вкладкам

По сути, плагин чата не учитывает, активна ли вкладка браузера в данный момент.

Влияние

Потеря уведомлений и отсутствие счетчика непрочитанных в заголовке вкладки.

Шаги для воспроизведения

Тестировалось в Firefox на версии 3.5.0.beta2-dev

  1. Пользователи A и B вошли в Discourse и обмениваются сообщениями через плагин чата.
  2. Пользователь A открыл чат, но в другой вкладке.
  3. Пользователь B отправляет сообщение пользователю A.
  4. В вкладке пользователя A на короткое время появляется «(1)», указывающая на новое сообщение, но через секунду она исчезает.
  5. Пользователь A не получает уведомление на рабочем столе.

Примечание: Если у пользователя A окно чата не открыто, но он всё ещё находится в Discourse, значок «(1)» в заголовке отображается корректно, и появляется системное уведомление.

Ожидаемое поведение

Если вкладка не видна или не активна (независимо от того, является ли она вкладкой №29 или скрыта за несколькими другими окнами), я, как пользователь, хочу получать уведомление.


Спасибо!

2 лайка

Привет, спасибо за отчет.

У меня есть несколько вопросов, которые помогут в отладке.

  • В этой ситуации открыт ли Discourse в активной вкладке (без открытого чата)?

  • Вы используете полноэкранный режим чата или режим панели?

Под уведомлением на рабочем столе в данном случае подразумевается зеленая метка на иконке чата или что-то другое?

1 лайк

Проблем нет:

Для пользователя A активной в браузере является другая вкладка (например, Google). Во вкладке Discourse, которая не находится в фокусе браузера, открыт чат.

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

Уведомление на рабочем столе — это push-уведомление, которое приходит через операционную систему.

1 лайк

Обновление: я подтвердил, что проблема возникает как в полноэкранном режиме, так и в режиме боковой панели.

В Chrome поведение также отличается: сначала отображается (3), затем число уменьшается до (2).

Кроме того, в обоих браузерах иногда обновление не происходит в течение 30 секунд (до следующего запроса опроса, согласно отладчику сети). Но, возможно, эта часть связана просто с проблемами интернет-соединения.

Я записал видео, демонстрирующее проблему, оно прикреплено:

  • 0:08 — проблема получения в Firefox
  • 0:32 — проблема получения в Chrome
  • 0:50 — проблема медленного обновления