Page MenuHomePhabricator

[web] Make chatCreation state "sticky" between nav changes
ClosedPublic

Authored by ashoat on Apr 13 2023, 10:22 AM.
Tags
None
Referenced Files
F3702958: D7429.id25167.diff
Tue, Jan 7, 7:32 PM
F3702957: D7429.id25133.diff
Tue, Jan 7, 7:32 PM
F3702940: D7429.id.diff
Tue, Jan 7, 7:32 PM
F3702918: D7429.diff
Tue, Jan 7, 7:29 PM
Unknown Object (File)
Dec 7 2024, 8:58 PM
Unknown Object (File)
Dec 7 2024, 8:58 PM
Unknown Object (File)
Nov 26 2024, 5:54 PM
Unknown Object (File)
Nov 10 2024, 1:39 PM
Subscribers

Details

Summary

Currently, chatMode is a pure function of the URL. This is however inconsistent with how activeChatThreadID works, which will stick around based on the previous value of navInfo when the value cannot be determined based on the URL.

This inconsistency leads the bug described in ENG-2824. In that case, the activeChatThreadID stays around when the user switches to the calendar and back, but the chatMode gets reset, which leads to unexpected behavior.

To address this, I think we should make chatMode and activeChatThreadID consistent. In this diff, I took the approach of making them both "sticky".

We could also consider resetting activeChatThreadID at the same time we reset chatMode, so the user would have to reopen the chat creation flow after going to the calendar and back. I figured my approach was a better product experience, though.

Test Plan
  1. Open chat creation flow on web
  2. Go to calendar and then back to chat
  3. Make sure the chat creation flow is still open

Diff Detail

Repository
rCOMM Comm
Lint
Lint Not Applicable
Unit
Tests Not Applicable