Last Comment Bug 653091 - Updating from 04/26 nightly to 04/27 corrupts the application user interface
: Updating from 04/26 nightly to 04/27 corrupts the application user interface
Status: VERIFIED FIXED
:
Product: Fennec Graveyard
Classification: Graveyard
Component: General (show other bugs)
: Trunk
: ARM Android
: P1 major (vote)
: ---
Assigned To: Mark Finkle (:mfinkle) (use needinfo?)
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-04-27 05:06 PDT by Anna (Waverley)
Modified: 2011-07-14 22:20 PDT (History)
9 users (show)
See Also:
QA Whiteboard:
Iteration: ---
Points: ---


Attachments
Corrupted application (25.15 KB, image/png)
2011-04-27 05:06 PDT, Anna (Waverley)
no flags Details
patch (1.32 KB, patch)
2011-04-27 06:41 PDT, Mark Finkle (:mfinkle) (use needinfo?)
mbrubeck: review+
Details | Diff | Splinter Review
sidebar patch (2.79 KB, patch)
2011-04-28 23:46 PDT, Mark Finkle (:mfinkle) (use needinfo?)
mbrubeck: review+
Details | Diff | Splinter Review

Description Anna (Waverley) 2011-04-27 05:06:02 PDT
Created attachment 528569 [details]
Corrupted application

Build ID: Mozilla /5.0 (Android;Linux armv7l;rv:6.0a1) Gecko/20110427 Firefox/6.0a1 Fennec /6.0a1

Devices: LG Optimus 2X(Android 2.2), Google Nexus S (Android 2.3.1), HTC Desire Z (Android 2.2)

1. Update fennec from 04/26 nightly to 04/27 nightly by clicking on the check for update button from about:fennec

Actual results:
The application is installed but after launching fennec the page about:home is displayed as in the attached screenshot.

Expected results: The nightly build should be successfully installed and the application should work properly.

Note:
1. One can not pan the webpage.
2. One has to rotate the device from portrait to landscape in order for about:home to be correctly displayed.
3. If you kill the application, install an add-on or change the language (so that fennec has to restart), the behavior is the same (the one seen in the screenshot)
Comment 1 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-27 05:45:01 PDT
Looks like something we landed yesterday is causing a JS error, and that is breaking the UI.
Comment 2 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-27 06:16:20 PDT
I just built and installed using the most recent code. It installed and ran fine.

Can we try a recent tinderbox build?
Comment 3 Aaron Train [:aaronmt] 2011-04-27 06:23:33 PDT
Device: Nexus One

I can reproduce this after a restart of language. I can get out of this state by changing orientation
Comment 4 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-27 06:41:33 PDT
Created attachment 528580 [details] [diff] [review]
patch

I found a few issues that this patch fixes:
* Use MOZ_SAFE_BROWSING=
* Add nsUrlClassifierHashCompleter.js to package-manifest
* Make package-manifest more like desktop (removed the MOZ_SAFE_BROWSING check)
Comment 5 Aaron Train [:aaronmt] 2011-04-27 09:04:29 PDT
Seems to work fine now with the patch above on a recent tinderbox build with http://hg.mozilla.org/mozilla-central/rev/79b0eb0dcdb7
Comment 6 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-27 09:05:49 PDT
pushed:
http://hg.mozilla.org/mozilla-central/rev/79b0eb0dcdb7
Comment 7 Anna (Waverley) 2011-04-28 05:53:45 PDT
I can still reproduce this issue on 04/28 nightly build.

Build Id: Mozilla /5.0 (Android;Linux armv7l;rv:6.0a1) Gecko/20110428 Firefox/6.0a1 Fennec /6.0a1 

Devices: LG Optimus 2X (Android 2.2), HTC Desire Z (Android 2.2)

Reopening the bug ...
Comment 8 Aaron Train [:aaronmt] 2011-04-28 06:24:29 PDT
(In reply to comment #7)
> I can still reproduce this issue on 04/28 nightly build.
> 
> Build Id: Mozilla /5.0 (Android;Linux armv7l;rv:6.0a1) Gecko/20110428
> Firefox/6.0a1 Fennec /6.0a1 
> 
> Devices: LG Optimus 2X (Android 2.2), HTC Desire Z (Android 2.2)
> 
> Reopening the bug ...

Weird. Not seeing it on my 04/28 nightly.
Comment 9 Aaron Train [:aaronmt] 2011-04-28 06:38:49 PDT
(In reply to comment #8)
> (In reply to comment #7)
> > I can still reproduce this issue on 04/28 nightly build.
> > 
> > Build Id: Mozilla /5.0 (Android;Linux armv7l;rv:6.0a1) Gecko/20110428
> > Firefox/6.0a1 Fennec /6.0a1 
> > 
> > Devices: LG Optimus 2X (Android 2.2), HTC Desire Z (Android 2.2)
> > 
> > Reopening the bug ...
> 
> Weird. Not seeing it on my 04/28 nightly.

Scratch that, seeing it after language and or addon installation restart.
Comment 10 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-28 06:58:16 PDT
(In reply to comment #9)

> Scratch that, seeing it after language and or addon installation restart.

Any errors in the console?
Comment 11 Aaron Train [:aaronmt] 2011-04-28 07:45:59 PDT
One error, this.children.firstChild is null @ /content/tabs.xml
Comment 12 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-28 08:50:27 PDT
(In reply to comment #11)
> One error, this.children.firstChild is null @ /content/tabs.xml

That isn't fatal. I see it a lot in my desktop builds.
Comment 13 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-28 23:42:43 PDT
(In reply to comment #12)
> (In reply to comment #11)
> > One error, this.children.firstChild is null @ /content/tabs.xml
> 
> That isn't fatal. I see it a lot in my desktop builds.

OK, this isn't fatal but it was a red flag. I found that when the sessionstore restored the previous session (crashes or restarts), the sidebar was not hidden correctly. The sidebar width wasn't calculated correctly because there was no tab in the sidebar soon enough.

Restoring session adds tabs a bit later than the normal code path. I played with adding a dummy about:blank tab before restoring session and it seems to fix the error and hide the sidebar correctly.

Patch coming up
Comment 14 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-28 23:46:01 PDT
Created attachment 529045 [details] [diff] [review]
sidebar patch

The patch:
* adds a dummy tab before restoring the session
* listens for the "sessionstore-windows-restored" notification so we know the restore is finished, at which point we remove the dummy tab.
* we ignoreUndo on the dummy tab so it doesn't cause the undo UI to kick in

I tested this on desktop and found no sidebar issues during startup.
I tested on Android and it work OK for a normal start. It also worked OK for a restart after an add-on install.
Comment 15 Matt Brubeck (:mbrubeck) 2011-04-29 06:53:55 PDT
Comment on attachment 529045 [details] [diff] [review]
sidebar patch

r=mrbubeck

Please add a comment explaining why the dummy tab is needed.
Comment 16 Doug Turner (:dougt) 2011-04-29 08:34:45 PDT
is there a plan to get automated tests to check that version to version updating works?
Comment 17 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-29 08:41:05 PDT
(In reply to comment #16)
> is there a plan to get automated tests to check that version to version
> updating works?

Note here that the _update_ worked. The restart after the update caused the UI to not layout correctly. But even then, the app was useable.
Comment 18 Mark Finkle (:mfinkle) (use needinfo?) 2011-04-29 08:43:48 PDT
pushed dummy tab fix with comment:
http://hg.mozilla.org/mozilla-central/rev/70c451a2a7f9
Comment 19 Aaron Train [:aaronmt] 2011-05-02 07:31:08 PDT
Verified fixed 
Mozilla/5.0 (Android; Linux armv7l; rv:6.0a1) Gecko/20110502 Firefox/6.0a1 Fennec/6.0a1

Note You need to log in before you can comment on or make changes to this bug.