In sostanza, il plugin della chat non tiene conto se la scheda del browser è attualmente focalizzata/attiva.
Impatto
Notifiche perse e conteggio non letto mancante nella barra del titolo.
Passaggi di riproduzione
Testato in Firefox sull’ultima versione 3.5.0.beta2-dev
Utente A + B è loggato in Discourse e si scambia messaggi diretti utilizzando il plugin della chat.
L’utente A ha la chat aperta, ma in un’altra scheda.
L’utente B invia un messaggio all’utente A.
La scheda dell’utente A mostra brevemente “(1)” per indicare il nuovo messaggio, ma lo nasconde rapidamente un secondo dopo.
L’utente A non riceve una notifica desktop.
Nota: Se l’utente A non ha la finestra della chat aperta ma è comunque su Discourse, il “(1)” nella barra del titolo rimane correttamente e viene visualizzata una notifica di sistema.
Comportamento atteso
Se la scheda non è visibile/focalizzata (sia perché è la scheda #29 o è nascosta dietro diverse altre finestre), come utente voglio ricevere una notifica.
Per l’Utente A, la scheda attiva del browser è qualcos’altro (es: google). All’interno della scheda di Discourse, che non è attiva nel browser, la chat è aperta.
Sono sicuro al 90% di averlo visto in entrambi gli scenari, ma dovrò tornare indietro e ri-testare per sapere con certezza quale dei due (sto rispondendo ora in modo da poter condividere almeno le altre informazioni subito)
La notifica desktop è la notifica push che arriva attraverso il sistema operativo.
Aggiornamento, ho confermato che si verifica sia in modalità a schermo intero che in modalità cassetto.
Il comportamento è diverso anche in Chrome: mostra un (3) che poi scende a (2).
Inoltre, in entrambi i browser, a volte semplicemente non viene trasmesso per 30 secondi (fino alla prossima richiesta di polling secondo il debugger di rete). Ma forse quella parte è solo un problema di connessione Internet.
Ho realizzato un video che dimostra il problema, allegato: