Closed
Bug 1130372
Opened 10 years ago
Closed 10 years ago
Onboarding screen still showing behind externally opened url
Categories
(Firefox for Android Graveyard :: General, defect)
Tracking
(firefox37 affected, firefox38 verified, firefox39 verified, firefox40 verified, fennec38+)
RESOLVED
FIXED
Firefox 39
People
(Reporter: mhaigh, Assigned: bhargavch, Mentored)
Details
(Whiteboard: [good next bug][lang=java])
Attachments
(1 file, 1 obsolete file)
|
955 bytes,
patch
|
mhaigh
:
review+
Sylvestre
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
Steps to reproduce:
- clear data from fennec
- open & observe first run screen
- switch to twitter app
- open url in fennec
- notice page load
- press back button
- observe first run screen flash as fennec
Expected:
First run should hide when an external url is loaded
Updated•10 years ago
|
tracking-fennec: --- → ?
| Reporter | ||
Updated•10 years ago
|
Summary: First run screen still showing behind externally opened url → Onboarding screen still showing behind externally opened url
Comment 2•10 years ago
|
||
Technically a regression, but the old version used Dialogs which would get dismissed by Android. Thanks for filing!
This should be as simple as adding another call to hideFirstrun() on page loads (and perhaps other places).
I'll mentor, or just fix this.
Mentor: liuche
Flags: needinfo?(liuche)
Whiteboard: [good next bug]
Updated•10 years ago
|
Whiteboard: [good next bug] → [good next bug][lang=java]
Comment 3•10 years ago
|
||
(In reply to Chenxia Liu [:liuche] from comment #2)
> This should be as simple as adding another call to hideFirstrun() on page
> loads (and perhaps other places).
We should still be getting into onNewIntent, so I would try to fix this in the "external URL being passed to Fennec" phase, and not the "when a pageload occurs" phase.
Comment 4•10 years ago
|
||
Finding a contributor would be fine, but let's make sure this is fixed soon.
Assignee: nobody → liuche
tracking-fennec: ? → 38+
| Assignee | ||
Comment 5•10 years ago
|
||
Hi, I want to work on this bug. I was able to reproduce it using the steps given by Martyn in comment 0. I also observed that fennec is still in the recent activity stack after pressing the back button, it is a bug right? we except fennec to close after we press back button on loading an external url.
Flags: needinfo?(liuche)
Comment 6•10 years ago
|
||
Actually, I'm not sure I see this bug anymore. The bug as reported is that the first run screen (which you can see if you open up Fennec for the first time from the launch icon) was flashed before the external url is launched.
Martyn, do you still see this bug? I can't repro on a N9, N7, N4.
Flags: needinfo?(liuche) → needinfo?(mhaigh)
| Assignee | ||
Comment 7•10 years ago
|
||
(In reply to Chenxia Liu [:liuche] from comment #6)
> Actually, I'm not sure I see this bug anymore. The bug as reported is that
> the first run screen (which you can see if you open up Fennec for the first
> time from the launch icon) was flashed before the external url is launched.
>
> Martyn, do you still see this bug? I can't repro on a N9, N7, N
The bug reciprocation steps say the first run screen is flashed after (not before) pressing back button on loading an external URL. Also fennec data has to be cleared every time to reciprocate it. Hope I was helpful.. Can u reciprocate it now?
Flags: needinfo?(liuche)
| Assignee | ||
Comment 8•10 years ago
|
||
Hi, I created a patch based on the suggestions from comment 2 by chenxia and comment 3 by mark finkle. I am hiding the firstrun pane using hideFirstrunPager() method inside onNewIntent method when the user is loading an external url. The patch worked.
Attachment #8571948 -
Flags: review?(mark.finkle)
| Reporter | ||
Comment 9•10 years ago
|
||
Bug still showing in nightly - looks like Bhargav has this one :)
Flags: needinfo?(mhaigh)
Comment 10•10 years ago
|
||
Comment on attachment 8571948 [details] [diff] [review]
Bug_1130372_-_Onboarding_screen_still_showing_behind_externally_opened_url_r=mfinkle.patch
Seems OK to me, but Chenxia is a better reviewer.
Attachment #8571948 -
Flags: review?(mark.finkle) → review?(liuche)
Updated•10 years ago
|
Assignee: liuche → bhargav.chippada19
Flags: needinfo?(liuche)
Comment 11•10 years ago
|
||
Comment on attachment 8571948 [details] [diff] [review]
Bug_1130372_-_Onboarding_screen_still_showing_behind_externally_opened_url_r=mfinkle.patch
Review of attachment 8571948 [details] [diff] [review]:
-----------------------------------------------------------------
Sorry for the delay!
I think this looks okay, but while trying to apply this patch and test it, I found that the patch is malformed. There seems to be a lot of metadata that is unnecessary, and the patch is using relative paths, not absolute ones. Since you already have the changes, try making a mercurial patch - take a look at https://developer.mozilla.org/en-US/docs/Mercurial_FAQ#How_can_I_generate_a_patch_for_somebody_else_to_check-in_for_me.3F
Also, for the commit message, it should have the bug number, the description, and the reviewer.
Bug 1130372 - Onboarding screen still showing behind externally opened url. r=liuche
Flag me for review again when you have an updated patch - I'll test and review it.
Thanks!
::: ../../../../mobile/android/base/BrowserApp.java
@@ +3313,5 @@
> mBrowserToolbar.cancelEdit();
>
> + // Hide firstrun-pane if the user is loading a URL from an external app.
> + if (hideFirstrunPager()) {
> + Telemetry.sendUIEvent(TelemetryContract.Event.CANCEL, TelemetryContract.Method.INTENT, "firstrun-pane");
UITelemetry is meant to record events where the user interacts with the UI - we don't want to record that they cancelled the first run screen if it was automatically hidden. We shouldn't record a telemetry event for this.
Attachment #8571948 -
Flags: review?(liuche) → feedback+
Comment 12•10 years ago
|
||
(In reply to Chenxia Liu [:liuche] from comment #11)
> UITelemetry is meant to record events where the user interacts with the UI -
> we don't want to record that they cancelled the first run screen if it was
> automatically hidden. We shouldn't record a telemetry event for this.
Yeah, I guess that makes sense. I was thinking about whether logging telemetry makes snese or not, but I think you're right. Let's not log it.
Also, you made me ask a new question:
Instead of hiding the first-run pager when opening an external Intent, can we skip creating/showing the first-run pager altogether? Maybe we can't, but I thought avoiding the work of showing & then hiding would be better.
| Assignee | ||
Comment 13•10 years ago
|
||
I removed Telemetry like you suggested and the patch is in the right format too :)
Attachment #8571948 -
Attachment is obsolete: true
Attachment #8574282 -
Flags: review?(liuche)
| Assignee | ||
Comment 14•10 years ago
|
||
Hi, Following are the reproduction steps for a potential bug:
- kill all fennec activities from recent activity stack
- Open twitter app
- Open url in fennec
- notice page load
- press back button
- We will return to twitter app
- U will see fennec app still in recent activity stack
(On clicking that fennec activity it will open the fennec homepage)
Expected: fennec shouldn't be in the recent activity stack right?
Should i file this bug?
Flags: needinfo?(liuche)
Comment 15•10 years ago
|
||
Thanks for the patch, Bhargav - I'll take a look at it today.
I think there's a misunderstanding about this bug - we don't mind Fennec being in the recent activities list at all, that is completely fine and expected. This bug is for the introduction screen (you can see the mocks in bug 1063844) being displayed or flashed briefly when Fennec is being launched from another app. When a user opens Fennec from Twitter to read a link, they don't want to see the introduction screen, they want to see the link - so Fennec shouldn't display (or flash) that screen.
Flags: needinfo?(liuche)
Comment 16•10 years ago
|
||
Comment on attachment 8574282 [details] [diff] [review]
Bug_1130372_Onboarding_screen_still_showing_behind_externally_opened_url_r=liuche.patch
Review of attachment 8574282 [details] [diff] [review]:
-----------------------------------------------------------------
I can't repro the original bug on any of my devices, and I don't think this is doing anything that isn't already being done, so I'm going to pass this review to Martyn - we already check for Intent action not being a VIEW action and don't show the firstrun screen ( http://mxr.mozilla.org/mozilla-central/source/mobile/android/base/BrowserApp.java#853 ). This patch is doing an explicit check in order to hide the firstrun in onNewIntent(), but under the same conditions, we shouldn't have shown it in the first place.
Martyn, can you repro and verify that this patch does fix the bug?
Bhargav, sorry for the back and forth!
Attachment #8574282 -
Flags: review?(liuche) → review?(mhaigh)
| Reporter | ||
Comment 17•10 years ago
|
||
Comment on attachment 8574282 [details] [diff] [review]
Bug_1130372_Onboarding_screen_still_showing_behind_externally_opened_url_r=liuche.patch
Review of attachment 8574282 [details] [diff] [review]:
-----------------------------------------------------------------
No longer seeing the onboarding screen with this patch.
Attachment #8574282 -
Flags: review?(mhaigh) → review+
Comment 18•10 years ago
|
||
Oh ****, this fell through the cracks - landing it now.
https://hg.mozilla.org/integration/fx-team/rev/d9b8636d515b
Comment 19•10 years ago
|
||
Comment on attachment 8574282 [details] [diff] [review]
Bug_1130372_Onboarding_screen_still_showing_behind_externally_opened_url_r=liuche.patch
Approval Request Comment
[Feature/regressing bug #]: First run experience
[User impact if declined]: Opening Firefox for the first time through an external link will flash the first run screen.
[Describe test coverage new/current, TreeHerder]: local testing
[Risks and why]: very low, one additional call to hide the first run UI
[String/UUID change made/needed]: none
Attachment #8574282 -
Flags: approval-mozilla-aurora?
Updated•10 years ago
|
status-firefox38:
--- → affected
status-firefox39:
--- → affected
Comment 20•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 39
Updated•10 years ago
|
Attachment #8574282 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 21•10 years ago
|
||
Comment 22•10 years ago
|
||
Verified as fixed using:
Device: Nexus 4 (Android 4.4)
Builds: Firefox for Android 40.0a1 (2015-04-23), Firefox for Android 39.0a2 (2015-04-23) and Firefox for Android 38 Beta 6
status-firefox37:
--- → affected
status-firefox40:
--- → verified
Updated•5 years ago
|
Product: Firefox for Android → Firefox for Android Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•