Closed Bug 597421 Opened 14 years ago Closed 14 years ago

Progress Line status inconsistent between background indicator and foreground indicator (can see when switching to tab)

Categories

(Firefox :: Tabbed Browser, defect)

defect
Not set
normal

Tracking

()

RESOLVED INVALID
Tracking Status
blocking2.0 --- final+

People

(Reporter: c.ascheberg, Assigned: Margaret)

References

Details

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Windows NT 6.0; rv:2.0b7pre) Gecko/20100917 Firefox/4.0b7pre
Build Identifier: Mozilla/5.0 (Windows NT 6.0; rv:2.0b7pre) Gecko/20100917 Firefox/4.0b7pre

The status of the Progress Line below the location bar only seems to be updated on status changes, so when switching to a tab that is still loading, the Progress Line is at first always showing 0% progress, no matter what the actual progress is.

There is no such problem with the Progress Line above the tabs.

Reproducible: Always

Steps to Reproduce:
1. load website, like http://arewefastyet.com/
2. switch to another tab
3. watch Progress Line status on the tab
4. switch back to previous tab while its still loading (best when its slow/hanging at some point)
5. compare status of Progress Line below location bar to the previously shown status
Actual Results:  
Progress Line below location bar is showing 0% progress, it will only be updated to the correct status when the status changes.

Expected Results:  
Progress Line should immediately show the correct current progress status.
Blocks: 578028
Version: unspecified → Trunk
Component: Theme → Tabbed Browser
QA Contact: theme → tabbed.browser
Status: UNCONFIRMED → NEW
blocking2.0: --- → ?
Ever confirmed: true
This could end up looking really bad if we get a slow loading website; should poll for current position when we switch.
blocking2.0: ? → final+
Summary: Progress Line status wrong when switching to loading tab → Progress Line status inconsistent between background indicator and foreground indicator (can see when switching to tab)
Assignee: nobody → margaret.leibovic
Here's what it looks like: http://screencast.com/t/NmI0NGVhNT
I can reproduce this using a http proxy to slow down my connection, but I'm still trying to figure out exactly what's going wrong. It seems like the wrong value of listener.mTotalProgress is getting passed to the onUpdateCurrentBrowser listener here: http://mxr.mozilla.org/mozilla-central/source/browser/base/content/tabbrowser.xml#805. I'm going to keep digging, but I'm welcome to suggestions if anyone knows what's going on here.
Attached patch patchSplinter Review
Missing a parameter!
Attachment #479211 - Flags: review?(gavin.sharp)
Blocks: 477261, 327604
No longer blocks: 578028
OS: Windows Vista → All
Hardware: x86 → All
Another good testcase, should one want to test this, is to do a MXR search on the tab that you intend to load in the background. That takes forever.
Comment on attachment 479211 [details] [diff] [review]
patch

It would be nice to have a test for this. We'd need to either load a resource from the test server and somehow enforce that we receive multiple progress events (and do the tab switching in between them), or fake that by making calls to onProgressChange manually, but with that I think it should be doable.
Attachment #479211 - Flags: review?(gavin.sharp) → review+
(In reply to comment #8)
> Comment on attachment 479211 [details] [diff] [review]
> patch
> 
> It would be nice to have a test for this. We'd need to either load a resource
> from the test server and somehow enforce that we receive multiple progress
> events (and do the tab switching in between them), or fake that by making calls
> to onProgressChange manually, but with that I think it should be doable.

Do you want me to make a test before I land this, or just make the test later?
Bug 602964 makes this invalid.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: