Closed
Bug 734913
Opened 13 years ago
Closed 13 years ago
Start throbber in initialization
Categories
(Firefox for Android Graveyard :: General, defect, P3)
Firefox for Android Graveyard
General
Tracking
(blocking-fennec1.0 soft, fennec+)
RESOLVED
FIXED
Firefox 14
People
(Reporter: wesj, Assigned: bnicholson)
References
Details
Attachments
(1 file)
2.68 KB,
patch
|
mfinkle
:
review+
|
Details | Diff | Splinter Review |
Whenever we decide to restore a session, we know the user is going to be waiting a bit for things to appear. Often they wait a bit staring at gray, and then we kick off the throbber telling them they can wait some more while we download something.
We should kick off the throbber early as we can so it feels less like the app is hung and more like one long network load.
Comment 1•13 years ago
|
||
We need to be careful though. We used to do this for every pageload too, but some pageloads result in errors and the throbber never turned off.
![]() |
||
Comment 2•13 years ago
|
||
nom'd for triage. sounds like more discussion is needed.
blocking-fennec1.0: --- → ?
Updated•13 years ago
|
Assignee: nobody → bnicholson
tracking-fennec: --- → +
blocking-fennec1.0: ? → -
Priority: -- → P3
Reporter | ||
Comment 3•13 years ago
|
||
Can I re-nom this to soft block? I would much rather users blame our slowness of crappy network connections than us (even though its probably our fault).
blocking-fennec1.0: - → ?
Reporter | ||
Comment 4•13 years ago
|
||
We should do this same thing if we get an external url, or anytime we get a url in java really. Loading a new foreground tab? Start the throbber.
Updated•13 years ago
|
blocking-fennec1.0: ? → soft
Assignee | ||
Updated•13 years ago
|
Summary: Start throbber when we decide to use session restore → Start throbber in initialization
Assignee | ||
Comment 5•13 years ago
|
||
Patch that immediately starts the throbber in initialization if we're loading a page. In addition to session restore, this also shows the throbber if we're loading an external link from twitter, the home page, etc.
Attachment #616700 -
Flags: review?(mark.finkle)
Comment 6•13 years ago
|
||
Comment on attachment 616700 [details] [diff] [review]
patch
>+ boolean isExternalURL = passedUri != null && !passedUri.equals("about:home");
>+
nit: remove the blank line
Notes: After landing, we need to watch this patch for a few reasons:
* The throbber is know to cause performance issues. This turns on the throbber duing startup, which could slowdown the startup speed. Watch the Ts and the rawfennecstart graphs here (http://mrcote.info/phonedash/#)
* The throbber could never turn off. There might be a case where we turn on the throbber, but because of an error/exception, the code to turn it off never gets fired. This doesn't happen now because we only turn it on if we start necko activity.
Attachment #616700 -
Flags: review?(mark.finkle) → review+
Assignee | ||
Comment 7•13 years ago
|
||
Comment 8•13 years ago
|
||
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 14
![]() |
||
Comment 9•13 years ago
|
||
(In reply to Mark Finkle (:mfinkle) from comment #6)
> Notes: After landing, we need to watch this patch for a few reasons:
> * The throbber is know to cause performance issues. This turns on the
> throbber duing startup, which could slowdown the startup speed. Watch the Ts
> and the rawfennecstart graphs here (http://mrcote.info/phonedash/#)
Sure enough, I see a bump in the phonedash throbber start times: About 200 ms for nexus 1/droid pro/nexus s; there is very little change for the GS2's. Throbber stop times seem unchanged.
![]() |
||
Comment 10•13 years ago
|
||
(In reply to Geoff Brown [:gbrown] from comment #9)
> Sure enough, I see a bump in the phonedash throbber start times: About 200
> ms for nexus 1/droid pro/nexus s; there is very little change for the GS2's.
> Throbber stop times seem unchanged.
The phonedash throbber stop times may have been incorrect at the time of that comment. In particular, throbber stop times were < throbber start times.
The current graph shows throbber stop times > throbber start times and now there is a visible regression in both throbber start and throbber stop times on April 24th, especially for Nexus S.
In discussion with jmaher and mfinkle today, it was determined that multiple "throbber start" and "throbber stop" messages are found in logcat output for a single run; in this case, the graph shows the time associated with the *latest* start time and the *latest* stop time. The choice of latest start time is incorrect / non-optimal, but does not account for the regression: a "real" regression is suspected.
![]() |
||
Comment 11•13 years ago
|
||
I verified S1/S2 results manually with the following procedure, on a Galaxy S:
- start Fennec with -d 'file://mnt/sdcard/simple30K.jpg'
- obtain last / latest "throbber start" from logcat
- compare to start time, taken as ActivityManager message for Fennec start
- quit Fennec
- repeat 10 times for current nightly
- repeat 10 times for current nightly with one change:
- mBrowserToolbar.setProgressVisibility(isExternalURL || mRestoreSession);
+ // mBrowserToolbar.setProgressVisibility(isExternalURL || mRestoreSession);
Results:
- average time with early throbber start: 2780 ms
- average time without early throbber start: 2310 ms
I conclude that the earlier throbber start increases startup time, on certain phones including the Galaxy S, Nexus 1, Droid Pro, and Nexus S. There is very little affect on the GS2.
Personally, I like the "feel" of the earlier throbber start and think we should consider keeping this change, despite the performance regression.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 12•13 years ago
|
||
Bug 748994 reclaimed some of the regression. We want the perceived performance improvement this bug delivers. So this should be 'fixed' now.
Status: REOPENED → RESOLVED
Closed: 13 years ago → 13 years ago
Depends on: 748994
Resolution: --- → FIXED
Updated•4 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
•