Problem mit dem Chat auf iPads mit iOS 12.5

Ich liebe das Plugin. Tolle Arbeit.

Ich habe ein Problem mit Discourse Chat auf iPads mit iOS 12.5 gefunden. Ich erkenne an, dass Discourse den Support dafür im Januar einstellen wird, aber da es derzeit noch „unterstützt“ wird, wollte ich es melden.

Das Problem äußert sich als UI-Problem, aber es scheint tiefer zu gehen.

Das UI-Problem

Der Texteingabebereich ist nicht hoch genug. Dies macht das Platzieren des Cursors in diesem Bereich sehr schwierig.

Siehe hier…

Vergrößert…

Das Usability-Problem

Das andere Problem, das damit zusammenhängen könnte, ist, dass selbst wenn Sie den Cursor in den Bereich setzen, dies nicht signalisiert, dass die Chat-Nachricht gelesen wurde. Die blaue/grüne Lesebestätigung am oberen Bildschirmrand bleibt bestehen, auch wenn Sie den Chat-Kanal besucht haben. Dies macht die Nutzung des Chats offensichtlich schwierig, da Sie niemanden auf eine Nachricht aufmerksam machen können, da die Anzeige immer aktiv ist.

Inkonsistenz

Diese Probleme treten beide meistens auf, aber ich habe auch – gelegentlich – Umstände gesehen, unter denen der Texteingabebereich normal erscheint und das Platzieren des Cursors dort die Lesebestätigung löscht.

Ich kann kein Muster für diese Inkonsistenz finden, aber es könnte mit den Unterschieden zwischen persönlichem Chat und Kanälen zusammenhängen – aber das könnte auch ein falscher Fährtenleger sein (Wortspiel beabsichtigt).

Der Grund, warum dies für mich ein so großes Problem darstellt, ist, dass diese Instanz von Discourse in einer Schule von 10-12 Benutzern verwendet wird, denen allen iPads gegeben wurden. Ich habe gebeten, diese aufzurüsten, aber sie sind alt und maximal iOS ~12.5. Mir wurde gesagt, dass wir noch eine Weile damit auskommen müssen – was sicherlich nach Januar ein Problem für mich sein wird.

Danke!

1 „Gefällt mir“

Obwohl ich sehe, dass dies in eine UX-Diskussionskategorie und nicht in einen Fehler verschoben wurde, wollte ich betonen, dass dies kein reines Benutzeroberflächen-/kosmetisches Problem ist.

Wie oben erwähnt, wird die Chat-Benachrichtigungsanzeige nicht gelöscht, selbst wenn der Kanal besucht und der Cursor in den Texteingabebereich gesetzt wird.

Es ist, als ob ein focus-Ereignis oder ein ähnliches Ereignis nicht ausgelöst wird.

Danke!

Support für iOS 12.5 endet im Januar. Discourse 3.0 ist die letzte Version, die es unterstützen wird, danach sehen die Benutzer die schreibgeschützte Ansicht.

Da der Chat derzeit in einem Plugin untergebracht ist, bin ich mir nicht sicher, wie viel Aufwand betrieben wird, um den Chat auf so alten Geräten nur für 3-4 Monate zu unterstützen. Vielleicht kann eines der Teammitglieder dazu etwas sagen.

Danke für die Antwort, @Stephen.

Ja, das kann ich verstehen – und ich habe ihr bevorstehendes Ende der Lebensdauer im Eröffnungsposting erwähnt. Ich suchte wirklich nach einer formellen Position, damit ich einige Pläne machen konnte.

Ich würde auch gerne wissen, was damit verbunden ist. Ich kann mir vorstellen, dass die Unterstützung einer so alten Plattform einfach zu schwierig sein könnte, aber wenn es eine einfache Lösung wäre, würde ich sie gerne implementiert sehen. Ich würde mich auch freuen, zu helfen – wenn es in meinen begrenzten Fähigkeiten liegt.

Ein paar Anmerkungen.

Wenn Sie sagen „nur 3-4 Monate“, würde ich vorschlagen, dass es möglich (wenn auch vielleicht nicht wünschenswert) wäre, Discourse und das Chat-Plugin an bestimmte Versionen zu binden und länger als das „glücklich“ zu betreiben.

Offensichtlich müsste ich die Auswirkungen der Nichtannahme von Sicherheitsupdates berücksichtigen, aber die Budgets in britischen Schulen sind sehr knapp und ein Upgrade der iPads vor, sagen wir, Juli nächsten Jahres ist unwahrscheinlich.

Nochmals vielen Dank für Ihre Gedanken.

tl;dr Ich habe eine Theme-Komponente erstellt, die das Problem scheinbar umgeht, möchte aber das verwendete CSS / den Ansatz validieren lassen.

Update

Ein Update dazu. Ich habe eine einfache Theme-Komponente erstellt, die ich morgen live testen werde, aber sie scheint Discourse Chat unter iOS 12.5 funktionsfähig zu machen.

Ein Dank geht an die guten Leute von BrowserStack, die mir im Rahmen ihres Open-Source-Programms freundlicherweise Debugging-Zugriff auf ein cloudbasiertes iPad mit 12.x gewährt haben.

Obwohl diese Lösung machbar erscheint, würde ich eine Überprüfung durch jemanden mit echten CSS-Kenntnissen wirklich zu schätzen wissen, da ich mich bisher nur durch Raten und Googeln durchgearbeitet habe.

Was ist passiert?

Ich erwähnte, dass das Problem eher ‘zufällig’ schien. Es stellt sich heraus, dass die Größe des Chat-Composer-Eingabefeldes umgekehrt proportional zur gesamten Höhe des scrollbaren Textes (nicht nur des sichtbaren Textes) im Nachrichten-Container-div des Chats ist.

Wenn also nicht viele Nachrichten in einem bestimmten Kanal vorhanden sind, erscheint die Höhe des Chat-Composers normal. Je mehr Nachrichten im Kanal erscheinen, desto kleiner wird die Höhe des Chat-Composers.

Zusätzliches Problem

Zusätzlich zum schrumpfenden textarea-Problem bemerkte ich auch, dass der Button “Zurück zu den Kanälen” (Pfeil nach links / kleiner als) leicht dejustiert war.

Die Lösung?

Für den Button “Zurück zu den Kanälen” sorgt das folgende CSS dafür, dass er wieder richtig ausgerichtet ist…

div.topic-chat-float-container .chat-drawer .topic-chat-drawer-header {
    align-items: center;
}

Siehe…

Mit BrowserStack konnte ich den schrumpfenden Chat-Composer-Container div ansprechen. Ich fand heraus, dass, wenn ich dieses CSS anwende…

.chat-composer-container {
    flex-shrink: 0;
}

…wird die Höhe des Chat-Composer-Containers unabhängig von der Größe des Chat-Inhalts beibehalten.

So…

Ich bin gerne bereit, die Theme-Komponente für meine iPad-Benutzer auf 12.5 zu pflegen, möchte aber einfach wissen, ob dieser CSS-Ansatz gültig / optimal / gefährlich ist.

Danke!

2 „Gefällt mir“

Gute Arbeit!

Dazu kann ich im Moment nichts sagen, aber ich habe es auf meiner Liste, die von Ihnen aufgeworfenen Fragen allgemeiner zu diskutieren, damit wir hier mit etwas mehr Klarheit antworten können. Es kann jedoch noch ein oder zwei Wochen dauern, bis wir endgültig darauf antworten können.

2 „Gefällt mir“

Meine allgemeine Sorge ist, dass dies langfristig nicht machbar ist

Sobald wir die Unterstützung von Core im Januar einstellen, kann JS ausfallen und dies wird in einer Theme-Komponente nicht behoben werden können

2 „Gefällt mir“

Ja, das ergibt Sinn.

Für mich wird das ein mittelfristiges Pflaster sein, um ins nächste Haushaltsjahr zu kommen, wenn die Schule hoffentlich meine Benutzer fähigere iPads bekommen kann.

Tatsächlich würde ich es einfach ignorieren, wenn Discourse Chat bei unseren Benutzern nicht so gut angekommen wäre, aber es spielt eine perfekte Rolle in einigen der Prozesse, die wir automatisiert haben.

Ich hoffe, im Januar eine funktionierende Commit-ID für Chat und Discourse in app.yml zu pinnen und dann zu versuchen, über die Runden zu kommen.

2 „Gefällt mir“

Vielen Dank für die Kontextualisierung. Ja, das ergibt durchaus Sinn. Ich wünschte, es wäre einfacher, diese Geräte zu unterstützen, oder dass Apple Browser unabhängig von iOS aktualisieren würde.

Android hat dieses Problem nicht … es ist ein echtes „Apple-Problem“.

2 „Gefällt mir“