-
Notifications
You must be signed in to change notification settings - Fork 79
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
feat(onboarding): hook metrics to the new onboarding #17058
base: master
Are you sure you want to change the base?
Conversation
Jenkins BuildsClick to see older builds (47)
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
|
||
onCurrentItemChanged: { | ||
if (!!stack.currentItem && !!stack.currentItem.pageName) { | ||
root.pageNavigated(stack.currentItem.pageName) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think @micieslak just removed the pageName
😆
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, you re-added it... there should be a way to extract it from the class/instance name imo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The only way I saw to do it was to use stack.currentItem.toString()
and then run a regex on it to isolate the class name.
That sounded quite dirty and I read that the format could change from one OS to the other, so I preferred to stick to something that we know will work 100% of the time.
Let me know if there is a way to get it cleanly that I missed.
@@ -16,6 +16,8 @@ OnboardingPage { | |||
property alias infoText: infoText | |||
property alias buttons: buttonsWrapper.children | |||
|
|||
pageName: "KeycardBasePage" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not needed here
77b5d44
to
bb284bd
Compare
dbedf7a
to
d2d7fe9
Compare
bb284bd
to
5b2d30f
Compare
d2d7fe9
to
0e412d4
Compare
0e412d4
to
aa5321c
Compare
3a0e9b9
to
c13a96b
Compare
c13a96b
to
8537b0a
Compare
50391c9
to
476e752
Compare
35bea58
to
668777f
Compare
What does the PR do
Fixes #17047
Hooks the same old metrics we had previously to the new onboarding.
The only difference is we cannot easily track the flow during page navigation because the flow is often jsut sent at the end. Anyway, I think mobile also doesn't give it and it's easy to infer the flow from the page name.
I added a required property to the OnboardinPages so that we cna get the page name and send it. If it's not set on some page, we just don't send a metric.
Affected areas
Onboarding metrics
Architecture compliance
My PR is consistent with this document: Status Desktop Architecture Guide
Impact on end user
None, it works as before
How to test
messageType=AsyncAddCentralizedMetricIfEnabledTaskArg
.Risk
Tick one:
The only difference is the pages are not named the same as before, but that's expected since we changed the whole design.