Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to classic - iOS - The survey is skipped after tapping "Switch to Expensify classic" #51526

Closed
1 of 8 tasks
lanitochka17 opened this issue Oct 26, 2024 · 8 comments
Closed
1 of 8 tasks
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2

Comments

@lanitochka17
Copy link

lanitochka17 commented Oct 26, 2024

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Version Number: 9.0.54-0
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team

Issue found when executing PR #51376

Action Performed:

  1. Open New.Expensify hybrid mobile app
  2. Sign in to the account
  3. Navigate to Settings tab
  4. Tap "Switch to Expensify Classic"

Expected Result:

A survey opens asking for a reason to switch to classic app after tapping "Switch to Expensify classic"

Actual Result:

The survey is skipped, user redirected to the classic app

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android: Standalone
  • Android: HybridApp
  • Android: mWeb Chrome
  • iOS: Standalone
  • iOS: HybridApp
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Add any screenshot/video evidence
Bug6646164_1729895154369.Switch_to_classic_iOS.mp4

View all open jobs on GitHub

@lanitochka17 lanitochka17 added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Oct 26, 2024
Copy link

melvin-bot bot commented Oct 26, 2024

Triggered auto assignment to @strepanier03 (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

@lanitochka17
Copy link
Author

@strepanier03 FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

@twilight2294
Copy link
Contributor

Proposal

Please re-state the problem that we are trying to solve in this issue.

The survey is skipped after tapping "Switch to Expensify classic"

What is the root cause of that problem?

We directly navigate to OD in hybrid app:

translationKey: 'exitSurvey.goToExpensifyClassic',
icon: Expensicons.ExpensifyLogoNew,
...(NativeModules.HybridAppModule
? {
action: () => {
NativeModules.HybridAppModule.closeReactNativeApp(false, true);
setInitialURL(undefined);
},
}
: {
action() {

That is why survey is skipped

What changes do you think we should make in order to solve the problem?

We should navigate to the survey link regardless of hybrid app or New App. and then on the confirmation page of the survey we should decide the switching based on the type of app:

                {
                    translationKey: 'exitSurvey.goToExpensifyClassic',
                    icon: Expensicons.ExpensifyLogoNew,
                              action() {
                                  resetExitSurveyForm(() => Navigation.navigate(ROUTES.SETTINGS_EXIT_SURVEY_REASON));
                              },
                },

Then on confirmation page of exist survey:

<Button
success
large
text={translate('exitSurvey.goToExpensifyClassic')}
pressOnEnter
onPress={() => {
ExitSurvey.switchToOldDot();
Navigation.dismissModal();
Link.openOldDotLink(CONST.OLDDOT_URLS.INBOX);
}}

            <Button
                success
                large
                text={translate('exitSurvey.goToExpensifyClassic')}
                pressOnEnter
                onPress={() => {
                    ExitSurvey.switchToOldDot();
                    Navigation.dismissModal();
                    if (NativeModules.HybridAppModule) {
                        NativeModules.HybridAppModule.closeReactNativeApp(false, true);
                        setInitialURL(undefined);
                    } else {
                        Link.openOldDotLink(CONST.OLDDOT_URLS.INBOX);
                    }
                }}
                isDisabled={isOffline}
            />

What alternative solutions did you explore? (Optional)

@melvin-bot melvin-bot bot added the Overdue label Oct 28, 2024
Copy link

melvin-bot bot commented Oct 30, 2024

@strepanier03 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@strepanier03
Copy link
Contributor

I'll test this tomorrow, running out of steam today.

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Oct 31, 2024
@Nodebrute
Copy link
Contributor

@strepanier03 Looks like this is intentional #47856

cc: @war-in

@war-in
Copy link
Contributor

war-in commented Nov 4, 2024

Hi 👋
The entire discussion can be found in the PR linked above ⬆️
Also, this is the comment where we decided to remove the survey from the HybridApp

cc @AndrewGable since he has a context on internal discussions 🙏

@AndrewGable
Copy link
Contributor

Yes we decided to remove this survey and it's expected behavior. @danielrvidal and @anmurali are discussing a cross platform solution in the #convert room and will open up a new issue to handle this, so we can close this one.

@melvin-bot melvin-bot bot removed the Overdue label Nov 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2
Projects
None yet
Development

No branches or pull requests

6 participants