pocket-casts-android icon indicating copy to clipboard operation
pocket-casts-android copied to clipboard

Gravatar native Quick Editor

Open hamorillo opened this issue 4 months ago • 3 comments

Description

With the new Gravatar SDK release, we can use the native Quick Editor (QE), which allows an easy avatar change without needing the browser (except for the OAuth authorization).

Currently, we are using the web version; this PR is replacing it with the native version included within the Gravatar SDK.

Note: We must add the "official" gravatarAppId in the secrets.

Testing Instructions

To test the OAuth Flow, you need a gravatarAppId in your secret.properties. You can create and configure your test app following this. Let me know if you need help.

  1. Enable GRAVATAR_NATIVE_QUICK_EDITOR feature flag under Profile -> Settings -> Beta features
  2. Tap on the Profile tab
  3. Tap on Change avatar
  4. Verify Gravatar OAuth flow is opened in the browser
  5. Complete the OAuth flow
  6. You should be back on the app, and the QE should show your avatars
  7. Modify your avatar
  8. Close the QE and verify the new avatar is already shown in your account
  9. Tap on Change avatar
  10. OAuth flow should be presented again
  11. Modify/upload your avatar
  12. Close the QE and verify the new avatar is already shown in your account
  13. Sign out from PocketCast
  14. Login again with the same account
  15. Tap on the Profile tab
  16. Tap on Change avatar
  17. OAuth flow should be presented again
  18. Return to PocketCast
  19. Disable GRAVATAR_NATIVE_QUICK_EDITOR feature flag under Profile -> Settings -> Beta features
  20. Tap on the Profile tab
  21. Tap on Change avatar
  22. Browser with the web QE should be opened (previous behavior)

Screenshots or Screencast

imageimage

Checklist

  • [x] If this is a user-facing change, I have added an entry in CHANGELOG.md
  • [x] Ensure the linter passes (./gradlew spotlessApply to automatically apply formatting/linting)
  • [x] I have considered whether it makes sense to add tests for my changes
  • [x] All strings that need to be localized are in modules/services/localization/src/main/res/values/strings.xml
  • [ ] Any jetpack compose components I added or changed are covered by compose previews
  • [ ] I have updated (or requested that someone edit) the spreadsheet to reflect any new or changed analytics.

I have tested any UI changes...

  • [ ] with different themes
  • [ ] with a landscape orientation
  • [ ] with the device set to have a large display and font size
  • [ ] for accessibility with TalkBack

hamorillo avatar Oct 21 '24 11:10 hamorillo