• Robert Knight's avatar
    Prevent side-by-side state getting out of sync between Guest and Integration · 79484cdd
    Robert Knight authored
    Both the `Guest` and `HTMLIntegration` maintained separate state for whether
    side-by-side mode was active or not. These states could get out of sync if the
    side-by-side feature flag was disabled when the guest first called
    `fitSideBySide` and then later enabled, as a result of the user logging into a
    different profile. In that case side-by-side would be enabled from the
    integration's perspective, but `Guest._sideBySideActive` would remain false.
    
    More generally this mismatch could occur in future if, for any reason, the
    integration decided to disable side-by-side outside of the context of a call to
    `fitSideBySide`.
    
    The result of this error was that clicking somewhere in the page would cause the
    sidebar to close, because the Guest thought that side-by-side was disabled, even
    though it was actually active.
    79484cdd
guest.ts 26.5 KB