Make chrome's refreshdriver to drive also content refreshdriver

NEW
Assigned to

Status

()

Core
Layout
5 years ago
5 years ago

People

(Reporter: smaug, Assigned: smaug)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments, 2 obsolete attachments)

.
Why?

So initially one of the reasons we didn't do this was that it wouldn't be compatible with where we eventually wanted to end up for e10s.  Bug 577607 might have others.

Is the idea here that there would still be 2 separate refresh drivers, at least?  And that you'd do something for the background tab case?  (That seems like it might be complicated.)
The patch will use parent's refresh driver if there is one, and otherwise use what we have now.
The parent driver will tell child driver when to call the callbacks.
The idea is to have less stuff in the eventloop.

Also, this way we could slow down content in case we're doing something heavy in the parent.

Background tab handling won't be changed at all.
Created attachment 658118 [details] [diff] [review]
patch

https://tbpl.mozilla.org/?tree=Try&rev=dfb9de97dc04

Finally found the silly mistake in the patch which caused dragging tab
to a new window to break refreshing in certain cases.
Created attachment 658141 [details] [diff] [review]
v4

https://tbpl.mozilla.org/?tree=Try&rev=2183eab2ae41

Update times also in the child driver.
Created attachment 658415 [details] [diff] [review]
v5

https://tbpl.mozilla.org/?tree=Try&rev=e96701e41f43

This should fix the test_transitions failures. Need to make sure we use the
right time everywhere.
Attachment #658118 - Attachment is obsolete: true
Attachment #658141 - Attachment is obsolete: true
I wasn't aware of bug 731974. Perhaps this bug should become WONTFIX, because bug 731974
ends up driving multiple refresh drivers using same timer.
Or maybe the timer behavior from bug 731974 should be implemented on top of this patch.
Created attachment 658517 [details] [diff] [review]
WIP - single shot timer

...but I guess vlad will fix the patch in the other bug.
You need to log in before you can comment on or make changes to this bug.