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

What's new implementation #3441

Merged
merged 1 commit into from Jun 17, 2020
Merged

What's new implementation #3441

merged 1 commit into from Jun 17, 2020

Conversation

keianhzo
Copy link
Collaborator

@keianhzo keianhzo self-assigned this May 29, 2020
@bluemarvin bluemarvin added this to the #11 polish milestone May 29, 2020
@bluemarvin
Copy link
Contributor

org mozilla vrbrowser-20200529-123739
It looks like Report an Issue is slightly offset to the right.

@bluemarvin
Copy link
Contributor

How do I get the what's new button to show in the navigation bar?

@keianhzo
Copy link
Collaborator Author

keianhzo commented Jun 2, 2020

@bluemarvin I've updated the PR. You should see the what's new icon in the URL bar every time you run FxR from AS as it generates a new version code. Subsequent runs from the Oculus Library shouldn't show it.

@bluemarvin
Copy link
Contributor

So it looks like the first time FxR is run and the setting settings_key_app_version doesn't exist, the what's new button in the nav bar is not shown. To reproduce:

  1. Quit FxR
  2. adb shell pm clear org.mozilla.vrbrowser
  3. Launch FxR

Actual:
No What's New button

Expected:
What's New button is in the nav bar.

@keianhzo
Copy link
Collaborator Author

keianhzo commented Jun 3, 2020

@bluemarvin fixed

Copy link
Contributor

@bluemarvin bluemarvin left a comment

Choose a reason for hiding this comment

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

I wonder if it would be better to key off the URL for what's new instead of the version number. That way if we have a dot release and don't updated the what's new url, the button isn't shown again?

@keianhzo
Copy link
Collaborator Author

keianhzo commented Jun 4, 2020

@bluemarvin I thought we wanted what's new for every release. If we don't we might need to do some manual update based what's new like what you proposed but we will need to remember to always update the URL whenever we want the button to be shown.

@bluemarvin
Copy link
Contributor

@bluemarvin I thought we wanted what's new for every release. If we don't we might need to do some manual update based what's new like what you proposed but we will need to remember to always update the URL whenever we want to button to be shown.

My concern is we aren't great at updating what is new. So would rather we only show the button when we actually have something new to show and I don't really want to show the button for dot releases since bug fixes really aren't worth the users time. I guess ideally it would dynamically check but that probably too much effort for this issue.

@keianhzo
Copy link
Collaborator Author

keianhzo commented Jun 8, 2020

@bluemarvin An alternative would be to only show the button for major releases and leave out the dot releases. Would that be a good compromise?

Show what's new on first run
@keianhzo
Copy link
Collaborator Author

keianhzo commented Jun 12, 2020

@bluemarvin @Softvision-RemusDranca I've updated the PR with the new flow.

Now we user a romote JSON to show/hide the What's new button. The remote properties JSON lives in https://mixedreality.mozilla.org/FirefoxReality/props.json (at least until we have a app specific backend for FxR). This JSON would contain any remote properties that we would want to sync with the app in a dictionary by version. At the moment the only property is the What's New URL. The app will sync the remote properties at startup, if the remote properties cannot be retrieved the cached ones are used (if existing), otherwise the remote ones will be persisted locally. In any case when the remote properties are updated, any consumers will be notified.

QA: When should What's New be displayed?

  • The first app start after install
  • If the what's new button (from settings/navigation bar) hasn't been clicked before && the remote properties JSON has an entry for that version.
  • If the what's new button (from settings/navigation bar) has been clicked before && the app version is different from the one when the what's new button was last clicked && the remote properties JSON has an entry for that version.
  • Otherwise the button should remain hidden

@keianhzo keianhzo requested a review from bluemarvin June 12, 2020 09:14
@keianhzo keianhzo added the QA Attention QA label Jun 12, 2020
@Softvision-GeluHaiduc
Copy link

@keianhzo I have some follow-up questions regarding the behavior:

  • After clicking the “What’s New” button from settings/navigation bar does the button disappear from the settings menu as well or just from the navigation bar? Or does only the blue dot from the button in settings disappear?
  • Is it possible to have multiple What's New URL on a single version of the app?
  • How are dot releases treated in the JSON file? Is the What's New URL from V11 going to work in V11.1, for example, or will there be a new version added in the JSON file for the dot release?

@keianhzo
Copy link
Collaborator Author

After clicking the “What’s New” button from settings/navigation bar does the button disappear from the settings menu as well or just from the navigation bar? Or does only the blue dot from the button in settings disappear?

Only the navigation bar should dissappear, the Settings one should stay but without the badge.

Is it possible to have multiple What's New URL on a single version of the app?

No, there is only one URL per version.

How are dot releases treated in the JSON file? Is the What's New URL from V11 going to work in V11.1, for example, or will there be a new version added in the JSON file for the dot release?

We can show What's New for any version the only condition is that the app version matches one in the JSON file, it can be a major or a dot.

@bluemarvin bluemarvin merged commit d3d2abf into master Jun 17, 2020
@bluemarvin bluemarvin deleted the whats_new branch June 17, 2020 23:59
@Softvision-GeluHaiduc
Copy link

I have verified this feature with multiple builds installed on the Oculus Go, HTC Vive Focus Plus, Pico Neo2 and Pico G2 4K headsets. Every issue found was logged, fixed and verified.
Given this I will remove the QA label.

@Softvision-GeluHaiduc Softvision-GeluHaiduc removed the QA Attention QA label Jun 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants