Conversation
Generated by 🚫 dangerJS |
|
You can trigger optional UI/connected tests for these changes by visiting CircleCI here. |
|
You can test the changes on this Pull Request by downloading the APK here. |
b988c2a to
16172d2
Compare
|
Testing build 78558 and it's looking great! I understand this is a draft but I wanted to do some exploratory testing to make sure I have WPiOS aligned with this. There are some differences between the platforms in how @-mentions was implemented that carry over now into x-posts. I'll list the ones I've noticed here since now would be a good time to unify this:
I think the above should be added to WPiOS, for both @-mentions and xposts, so I created wordpress-mobile/WordPress-iOS#15148. A couple of things I noticed some of which you might be already aware of:
|
94a834c to
c7365b8
Compare
|
👋 @guarani ! Thanks so much for doing such thorough testing! 🙇 I've made some code changes and would appreciate if you would give the latest build another run through to see if there are any remaining issues.
I don't think you'll see this anymore, but if you do, let's see if we can pull the stacktrace for the crash. |
|
Tested build 80467 and it's looking good!
I haven't seen this on the new build, so it looks to be resolved. Common use cases are working great:
I've noticed a couple of differences between the app an mobile and the web (although I'm quite sure they're not unique to the Android implementation, it's likely the same on the iOS side):
Mobile-specific:
Android-specific:
There's a lot here that I know applies to iOS as well (and some points I haven't tested on iOS yet), so I'll be looking into some of these as part of the iOS implementation as well. |
aecae5e to
e9d2adc
Compare
|
Thanks so much for the thorough review @guarani ! 🙇
I'm having some trouble recreating this issue. I have two P2 sites, one was created with my A8c account and the other was created with a random non-A8c account. I added both accounts to both P2s, and both accounts can cross-post from either P2 to the other for me. Let me know if you see where I got my setup wrong. Even if this is an issue, it sounds like the app's behavior would be the correct behavior. Do you agree?
I'm not sure exactly what you mean here. Would you mind explaining this a bit more for me?
Good catch. It looks to me like this is just an issue at the beginning of a line that is not the first line in the block. Basically, we were only checking if the trigger key was at the beginning of the text or following a space. I updated the gutenberg code to also check if the previous character was a
Another good catch 🙂 . I've pushed an update (a4d5b4a) that is certainly not a perfect fix, but it does make the UI usable in landscape mode. I think this should be good enough for our initial release, but let me know what you think (also, pinging @iamthomasbishop since you may have thoughts about this). |
I factored out the A8c-aspect of this particular issue by reproducing using non-a8c accounts. As you suggested via DM, I'd say this is a bug on the web side (the mobile behavior looks correct). Here's what I did:
I saw the following behavior:
I think the next step here would be to report this as a bug in Gutenberg Calypso, do you agree?
Sorry for the confusion. From what I can see, if I am a Super Admin on a Multisite network, on the web (both in Calypso Gutenberg and P2 frontends), I can xpost to any of the sites on the network, even if I'm not a member (admin/editor/subscriber/etc) of that site. On mobile however, I can only xpost to sites where I'm a member of the site.
Thanks a lot for making a fix!
Awesome! From the gif it looks like a great improvement. |
@mchowning Those were my exact my thoughts when seeing your example gif. Does this also apply to the at-mentions UI? I'm assuming yes but wanted to make sure 😄 |
That's right @iamthomasbishop . Both the problem and the better-but-certainly-not-ideal-fix apply to both the at-mentions and xpost UIs. Also, fwiw, the landscape UI works fine on a tablet, so this was only an issue on phone screens (where I assume using landscape mode would be much less common). |
2e79c3b to
74a3075
Compare
|
Temporarily updating this pr to target the UPDATE: now switched back to |
|
Tests cases are all looking great for me, including landscape mode, and cross posts/mentions after new lines in multiline blocks. I'll take another day or two to give the code updates in this PR and related PRs a good review. From what I've looked at so far, code looks great, awesome job on this feature. |
|
@mchowning I had a good look at the code across all three repos and do not have any remaining concerns. (One question on FluxC PR, but it's minor and if anything just potential for reducing minor code duplication, if that) I did extra testing around edge cases coming on and offline, and different cases with xposts and mentions where having one matching result or none and the feature produced the expected outcomes each time. And I tested with one site that had a suggestion list that didnt block the whole screen, and that was dismissable as expected, so everything is looking good. Switching between landscape and portrait in different states with the suggestions activity open looked good as well. Before I approve, can you confirm if there is another change coming related to tracking user behavior? If not, I'll approve. Again, super well executed, was a pleasure to review. 💯 ⭐ |
|
Thanks for doing such a thorough job testing this PR @cameronvoell !
There are additional changes for tracking, but I'm keeping them in a separate PR because I didn't want to complicate this already-too-big PR. |
cameronvoell
left a comment
There was a problem hiding this comment.
As mentioned in prior comments, change is looking good!
guarani
left a comment
There was a problem hiding this comment.
Tested build 88253:
- Happy Path
- No Internet Connection (suggestions previously cached)
- No Internet Connection (NO suggestions previously cached for this site)
- Site That Has No Xpost Suggestions
- @-mentions smoke tested and no issues found
- Comments smoke tested and no issues found
Everything working great! Thanks @mchowning!
Looks like the only pending item here is to either add an item to the release notes to enable this only for dev builds.
|
Thanks for the review Paul!
I don't think there's any need to limit this to dev builds, so I updated the release notes. Let me know if you have any concerns about that. |
Adding Tracks Event for Suggestions UI
Since both PRs are now approved, I went ahead an merged the analytics PR into this branch (91cb68b) so we will just have a single merge to |
|
Gave this a quick test with the latest apk and all looks good! Merging now. |




Related PRs: FluxC, gutenberg-mobile, and gutenberg.
Adding xpost suggestions support when typing a "+" or selecting xposts from the format toolbar in the Gutenberg editor.
To Test
1. XPosting
a. Happy Path
+character at the beginning of the block or after a space; or (b) long-press the@button on the format bar and select xpost from the bottom sheet.b. No Internet Connection (suggestions previously cached)
c. No Internet Connection (NO suggestions previously cached for this site)
d. Site That Has No Xpost Suggestions
2. @-mentions
The code underlying @-mentions was substantially refactored in this PR, so we should do some general testing of @-mentions as well. The @-mentions code is largely shared with xposting, so we don't have to cover every edge case for both suggestion UIs, but the one difference between the two implementations is how the suggestions are downloaded (@-mentions still uses an old db and download mechanism). For that reason, the area where there is the most risk of @-mentions might having an issue that does not exist with xposting is with regard to the actual downloading and persisting of the suggestions.
3. Comments
The changes in this PR also involved very minor refactorings to some of the methods used for @-mentions in comments. For that reason, it would be worthwhile to add a few @-mentions to Reader comments to verify there have been no regressions.
Remaining Task
PR submission checklist:
RELEASE-NOTES.txtif necessary.