По сути, плагин чата не учитывает, активна ли вкладка браузера в данный момент.
Влияние
Потеря уведомлений и отсутствие счетчика непрочитанных в заголовке вкладки.
Шаги для воспроизведения
Тестировалось в Firefox на версии 3.5.0.beta2-dev
Пользователи A и B вошли в Discourse и обмениваются сообщениями через плагин чата.
Пользователь A открыл чат, но в другой вкладке.
Пользователь B отправляет сообщение пользователю A.
В вкладке пользователя A на короткое время появляется «(1)», указывающая на новое сообщение, но через секунду она исчезает.
Пользователь A не получает уведомление на рабочем столе.
Примечание: Если у пользователя A окно чата не открыто, но он всё ещё находится в Discourse, значок «(1)» в заголовке отображается корректно, и появляется системное уведомление.
Ожидаемое поведение
Если вкладка не видна или не активна (независимо от того, является ли она вкладкой №29 или скрыта за несколькими другими окнами), я, как пользователь, хочу получать уведомление.
Для пользователя A активной в браузере является другая вкладка (например, Google). Во вкладке Discourse, которая не находится в фокусе браузера, открыт чат.
Я на 90% уверен, что видел это в обоих сценариях, но мне нужно будет вернуться и повторно протестировать, чтобы точно знать, в каком именно (отвечаю сейчас, чтобы хотя бы сразу поделиться другой информацией).
Уведомление на рабочем столе — это push-уведомление, которое приходит через операционную систему.
Обновление: я подтвердил, что проблема возникает как в полноэкранном режиме, так и в режиме боковой панели.
В Chrome поведение также отличается: сначала отображается (3), затем число уменьшается до (2).
Кроме того, в обоих браузерах иногда обновление не происходит в течение 30 секунд (до следующего запроса опроса, согласно отладчику сети). Но, возможно, эта часть связана просто с проблемами интернет-соединения.
Я записал видео, демонстрирующее проблему, оно прикреплено: