Problem
Two improvements to the SignIn page refactor.
From @mateuuszzzzz :
This PR is continuation of changes started by @war-in. Initially our linking setup on HybridApp required different implementation than standalone NewDot. This PR is another step towards unifying it between apps by introducing our custom ReactNativeHybridApp.getInitialURL method.
Previous approach had 2 main drawbacks:
Anything related to deeplinks requires separate handling on HybridApp, which makes it hard for external contributors to work on such issues.
Adding a new deeplink "scenario" in HybridApp is usually difficult and can easily break existing linking functionality.
There have been many attempts to use React Native's Linking.getInitialURL in HybridApp. However, our brownfield setup differs significantly from a plain React Native app, making this method unreliable in our case, as it frequently causes race conditions, which are the root cause of the issues mentioned in point 2.
Note: This PR will also be crucial for fixing issues related to opening public rooms (those problems stem from race conditions specific to the current linking setup in HybridApp, e.g. we try to access ONYXKEYS.SESSION before it's available and function that handles deeplinks executes wrong branch that leads to sign-out).
Upwork Automation - Do Not Edit
- Upwork Job URL: https://www.upwork.com/jobs/~021942685477550914739
- Upwork Job ID: 1942685477550914739
- Last Price Increase: 2025-07-30
Issue Owner
Current Issue Owner: @
Issue Owner
Current Issue Owner: @CortneyOfstad
Problem
Two improvements to the SignIn page refactor.
From @mateuuszzzzz :
This PR is continuation of changes started by @war-in. Initially our linking setup on HybridApp required different implementation than standalone NewDot. This PR is another step towards unifying it between apps by introducing our custom ReactNativeHybridApp.getInitialURL method.
Previous approach had 2 main drawbacks:
Anything related to deeplinks requires separate handling on HybridApp, which makes it hard for external contributors to work on such issues.
Adding a new deeplink "scenario" in HybridApp is usually difficult and can easily break existing linking functionality.
There have been many attempts to use React Native's Linking.getInitialURL in HybridApp. However, our brownfield setup differs significantly from a plain React Native app, making this method unreliable in our case, as it frequently causes race conditions, which are the root cause of the issues mentioned in point 2.
Note: This PR will also be crucial for fixing issues related to opening public rooms (those problems stem from race conditions specific to the current linking setup in HybridApp, e.g. we try to access ONYXKEYS.SESSION before it's available and function that handles deeplinks executes wrong branch that leads to sign-out).
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @Issue Owner
Current Issue Owner: @CortneyOfstad