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
Unknown Object (File)
Sat, Sep 7, 1:14 AM
Unknown Object (File)
Wed, Aug 28, 6:54 PM
Unknown Object (File)
Wed, Aug 28, 10:33 AM
Unknown Object (File)
Mon, Aug 26, 7:48 AM
Unknown Object (File)
Aug 20 2024, 11:20 AM
Unknown Object (File)
Aug 19 2024, 9:03 AM
Unknown Object (File)
Aug 11 2024, 1:13 AM
Unknown Object (File)
Aug 11 2024, 1:13 AM
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