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

Unified Dashboard: Quick Start Support #19318

Conversation

zwarm
Copy link
Contributor

@zwarm zwarm commented Oct 5, 2023

Parent #19270

This PR refactors quick start to support the more menu

Main Changes

  • Add QuickStartMenuStep
  • Update QuickStartRepository to include a new mutableLiveData<QuickStartMenuStep?> which will be observed in MySiteViewModel and passed along to QuickLinksItemViewModelSlice and used to show the More focus point
  • Update to show the "tap more menu" snackbar message
  • Show the QS focus pt in the More menu on the correct item
  • Update QuickStartRepository.setActiveTask to take in a boolean indicating if this is being called from the more menu. This prevents it from looping again through task being set to pending instead of active
  • Implement a stop-gap solution to support showing a snackbar message in the More Menu. Added a "compose" callback within SnackbarSequencer that will post the snackbar back to listeners. This will be picked up in MenuActivity; which will create a lightweight message to be displayed.
  • Include a delay in MediaGridFragment and PublicizeListFragment show snackbar methods to account for the fact that the EventBus message gets there very quickly.

NOTES:

  • By the time the callback is invoked within SnackbarSequencer, the icon has already been merged with the message and there is no opportunity to pull it out.
  • The quick start next task won't prompt the user when in the more view. It is expected that the user tap the quick start card to continue if they had to leave for the More Menu. Perhaps we can move the order of the tasks, so the More menu taps are last?
  • A non-stop gap solution would include completely rewriting the sequencer and the data classes, so that compose and traditional snackbars can be handled properly. Perhaps a SnackbarManager interface an two implementations:ComposeSnackbarManager and TraditionalSnackbarManager. The managers would implement their own logic for creating snackbars, but use the single queue in SnackbarSequencer. The type of data class in the queue should change to something more generic so both managers can create the proper snackbar.

To test:

  • Install the app (fresh install)
  • Login and select a site
  • When prompted with the quick start dialog, select "Show me around"
  • ✅ Go through the Quick Start Card and make sure the focus points are correct

Regression Notes

  1. Potential unintended areas of impact
    Quick Start does not work properly

  2. What I did to test those areas of impact (or what existing automated tests I relied on)
    Manual testing and added new unit tests

  3. What automated tests I added (or what prevented me from doing so)
    N/A

PR submission checklist:

  • I have completed the Regression Notes.
  • I have considered adding accessibility improvements for my changes.
  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

UI Changes testing checklist: N/A

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 5, 2023

WordPress📲 You can test the changes from this Pull Request in WordPress by scanning the QR code below to install the corresponding build.
App NameWordPress WordPress
FlavorJalapeno
Build TypeDebug
Versionpr19318-52326d1
Commit52326d1
Direct Downloadwordpress-prototype-build-pr19318-52326d1.apk
Note: Google Login is not supported on these builds.

@wpmobilebot
Copy link
Contributor

wpmobilebot commented Oct 5, 2023

Jetpack📲 You can test the changes from this Pull Request in Jetpack by scanning the QR code below to install the corresponding build.
App NameJetpack Jetpack
FlavorJalapeno
Build TypeDebug
Versionpr19318-52326d1
Commit52326d1
Direct Downloadjetpack-prototype-build-pr19318-52326d1.apk
Note: Google Login is not supported on these builds.

@zwarm zwarm changed the title Unified Dashboard: Quick Start adjustments Unified Dashboard: Quick Start Support Oct 6, 2023
@peril-wordpress-mobile
Copy link

peril-wordpress-mobile bot commented Oct 6, 2023

Warnings
⚠️ PR is not assigned to a milestone.

Generated by 🚫 dangerJS

@zwarm zwarm marked this pull request as ready for review October 6, 2023 20:12
zwarm added 4 commits October 9, 2023 15:00
…ckbars, so a hook is needed to properly show.This is a lightweight implementation to support unified dashboard quick start.
…ng into the composeSnackbarCallback in SnackbarSequencer
Copy link
Contributor

@AjeshRPai AjeshRPai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @zwarm

I have tested the quick start tasks and everything looks good to me. I can see as you mentioned that the icon is not shown as you mentioned + quick start wont prompt the user when in the more view.

We can re-visit this later and try to fix it. Approving and merging this PR

@AjeshRPai AjeshRPai merged commit ab0351c into UI-Modernization-Remove-tabs-and-update-quick-links-layout Oct 10, 2023
@AjeshRPai AjeshRPai deleted the issue/18893-unified-dashboard-quick-start branch October 10, 2023 13:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants