Closed Bug 1644943 Opened 4 years ago Closed 4 years ago

Expose a single nsIWebProgress on top-level CanonicalBrowsingContext and preserve it across navigations

Categories

(Core :: DOM: Navigation, task)

task

Tracking

()

RESOLVED FIXED
mozilla79
Fission Milestone M6a
Tracking Status
firefox79 --- fixed

People

(Reporter: mattwoodrow, Assigned: mattwoodrow)

References

Details

Attachments

(1 file)

Currently the code for <browser> handles attaching webprogress listeners to an in-process docshell, or creating a RemoteWebProgressManager to handle OOP browsers.

We should be able to handle this internally on CanonicalBrowsingContext, so that it never needs to be changed.

Assignee: nobody → matt.woodrow

I think at this point we can remove all of RemoteWebProgressManager, some/all of the TabProgressListener recreations, and probably a bunch more.

We need this soon for a non-Fission bug, too.

M6a

Type: defect → task
Fission Milestone: --- → M6a
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/26231891f004 Create single webprogress for CanonicalBrowsingContext, regardless of process the browser element contents are in. r=nika,kmag,Gijs

Backed out changeset 26231891f004 (bug 1644943) for browser_backforward_userinteraction.js and browser_sessionHistory.js failures.

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&searchStr=linux%2C18.04%2Cx64%2Casan%2Copt%2Cmochitests&fromchange=9cb0de45cc862420703f2d0bf1e9c9b09d54a058&tochange=82becb1f6eae3ab6f222735a5cf77b700eeaf453&selectedTaskRun=aFobB3CsTheCqJForRM97g.0

Backout link: https://hg.mozilla.org/integration/autoland/rev/82becb1f6eae3ab6f222735a5cf77b700eeaf453

Failures logs:
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306426539&repo=autoland&lineNumber=3239

[task 2020-06-15T23:34:08.387Z] 23:34:08     INFO - TEST-START | browser/components/sessionstore/test/browser_send_async_message_oom.js
[task 2020-06-15T23:34:08.530Z] 23:34:08     INFO - GECKO(2549) | MEMORY STAT | vsize 20975583MB | residentFast 1709MB
[task 2020-06-15T23:34:08.531Z] 23:34:08     INFO - TEST-OK | browser/components/sessionstore/test/browser_send_async_message_oom.js | took 145ms
[task 2020-06-15T23:34:08.567Z] 23:34:08     INFO - checking window state
[task 2020-06-15T23:34:08.590Z] 23:34:08     INFO - TEST-START | browser/components/sessionstore/test/browser_sessionHistory.js
[task 2020-06-15T23:37:08.625Z] 23:37:08     INFO - TEST-INFO | started process screentopng
[task 2020-06-15T23:37:09.026Z] 23:37:09     INFO - TEST-INFO | screentopng: exit 0
[task 2020-06-15T23:37:09.026Z] 23:37:09     INFO - Buffered messages logged at 23:34:08
[task 2020-06-15T23:37:09.028Z] 23:37:09     INFO - Entering test bound test_load_start
[task 2020-06-15T23:37:09.029Z] 23:37:09     INFO - Buffered messages logged at 23:34:09
[task 2020-06-15T23:37:09.030Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | url is correct - 
[task 2020-06-15T23:37:09.031Z] 23:37:09     INFO - Leaving test bound test_load_start
[task 2020-06-15T23:37:09.032Z] 23:37:09     INFO - Entering test bound test_hashchange
[task 2020-06-15T23:37:09.034Z] 23:37:09     INFO - Console message: [JavaScript Error: "The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol." {file: "http://example.com/browser/browser/components/sessionstore/test/file_sessionHistory_hashchange.html" line: 0}]
[task 2020-06-15T23:37:09.034Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | there is one shistory entry - 
[task 2020-06-15T23:37:09.035Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | there are two shistory entries - 
[task 2020-06-15T23:37:09.036Z] 23:37:09     INFO - Leaving test bound test_hashchange
[task 2020-06-15T23:37:09.037Z] 23:37:09     INFO - Entering test bound test_pageshow
[task 2020-06-15T23:37:09.037Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | correct url after going back - 
[task 2020-06-15T23:37:09.038Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | first history entry is selected - 
[task 2020-06-15T23:37:09.039Z] 23:37:09     INFO - Leaving test bound test_pageshow
[task 2020-06-15T23:37:09.039Z] 23:37:09     INFO - Entering test bound test_subframes
[task 2020-06-15T23:37:09.040Z] 23:37:09     INFO - Buffered messages logged at 23:34:10
[task 2020-06-15T23:37:09.045Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | there is one shistory entry - 
[task 2020-06-15T23:37:09.046Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | the entry has one child - 
[task 2020-06-15T23:37:09.047Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | there now are two shistory entries - 
[task 2020-06-15T23:37:09.047Z] 23:37:09     INFO - TEST-PASS | browser/components/sessionstore/test/browser_sessionHistory.js | the second entry has one child - 
[task 2020-06-15T23:37:09.048Z] 23:37:09     INFO - Buffered messages logged at 23:35:38
[task 2020-06-15T23:37:09.049Z] 23:37:09     INFO - Longer timeout required, waiting longer...  Remaining timeouts: 1
[task 2020-06-15T23:37:09.050Z] 23:37:09     INFO - Buffered messages finished
[task 2020-06-15T23:37:09.051Z] 23:37:09     INFO - TEST-UNEXPECTED-FAIL | browser/components/sessionstore/test/browser_sessionHistory.js | Test timed out - 
[task 2020-06-15T23:37:09.052Z] 23:37:09     INFO - GECKO(2549) | MEMORY STAT | vsize 20975647MB | residentFast 1685MB
[task 2020-06-15T23:37:09.053Z] 23:37:09     INFO - TEST-OK | browser/components/sessionstore/test/browser_sessionHistory.js | took 180053ms
[task 2020-06-15T23:37:09.054Z] 23:37:09     INFO - Not taking screenshot here: see the one that was previously logged
[task 2020-06-15T23:37:09.055Z] 23:37:09     INFO - TEST-UNEXPECTED-FAIL | browser/components/sessionstore/test/browser_sessionHistory.js | Found a tab after previous test timed out: data:text/html;charset=utf-8,<iframe src=http%3A//example.com/ name=t></iframe><a id=a1 href=http%3A//example.com/1 target=t>clickme</a><a id=a2 href=http%3A//example.com/%23 target=t>clickme</a> - 
[task 2020-06-15T23:37:09.056Z] 23:37:09     INFO - checking window state

https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306423841&repo=autoland&lineNumber=2783

...
[task 2020-06-15T23:10:06.360Z] 23:10:06     INFO - Clicking the forward button, expecting to load https://example.com/browser/docshell/test/browser/dummy_page.html?entry=4 
[task 2020-06-15T23:10:06.360Z] 23:10:06     INFO - Loaded https://example.com/browser/docshell/test/browser/dummy_page.html?entry=4 
[task 2020-06-15T23:10:06.360Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | https://example.com/browser/docshell/test/browser/dummy_page.html?entry=4: back button is not disabled - 
[task 2020-06-15T23:10:06.361Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | https://example.com/browser/docshell/test/browser/dummy_page.html?entry=4: forward button is not disabled - 
[task 2020-06-15T23:10:06.361Z] 23:10:06     INFO - waiting for the history menu to open
[task 2020-06-15T23:10:06.362Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | history menu opened - 
[task 2020-06-15T23:10:06.362Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | Has the expected number of contextMenu entries - 
[task 2020-06-15T23:10:06.363Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.363Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.364Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.364Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.365Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.365Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.366Z] 23:10:06     INFO - Clicking the forward button, expecting to load https://example.com/browser/docshell/test/browser/dummy_page.html?entry=5 
[task 2020-06-15T23:10:06.366Z] 23:10:06     INFO - Loaded https://example.com/browser/docshell/test/browser/dummy_page.html?entry=5 
[task 2020-06-15T23:10:06.370Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | https://example.com/browser/docshell/test/browser/dummy_page.html?entry=5: back button is not disabled - 
[task 2020-06-15T23:10:06.370Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | https://example.com/browser/docshell/test/browser/dummy_page.html?entry=5: forward button is  disabled - 
[task 2020-06-15T23:10:06.371Z] 23:10:06     INFO - waiting for the history menu to open
[task 2020-06-15T23:10:06.371Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | history menu opened - 
[task 2020-06-15T23:10:06.372Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | Has the expected number of contextMenu entries - 
[task 2020-06-15T23:10:06.372Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.373Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.373Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.374Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.374Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.374Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | contextMenu node has the correct uri - 
[task 2020-06-15T23:10:06.375Z] 23:10:06     INFO - Leaving test bound test_followLink
[task 2020-06-15T23:10:06.375Z] 23:10:06     INFO - Entering test bound test_iframe_pushState
[task 2020-06-15T23:10:06.375Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | https://example.com/browser/docshell/test/browser/dummy_iframe_page.html?entry=0: back button is  disabled - 
[task 2020-06-15T23:10:06.376Z] 23:10:06     INFO - TEST-PASS | docshell/test/browser/browser_backforward_userinteraction.js | https://example.com/browser/docshell/test/browser/dummy_iframe_page.html?entry=0: forward button is  disabled - 
[task 2020-06-15T23:10:06.376Z] 23:10:06     INFO - Doing a pushState, expecting to load https://example.com/browser/docshell/test/browser/dummy_page.html?sub_entry=1 in an iframe
[task 2020-06-15T23:10:06.376Z] 23:10:06     INFO - Buffered messages finished
[task 2020-06-15T23:10:06.378Z] 23:10:06     INFO - TEST-UNEXPECTED-FAIL | docshell/test/browser/browser_backforward_userinteraction.js | Test timed out - 
[task 2020-06-15T23:10:06.378Z] 23:10:06     INFO - GECKO(3265) | MEMORY STAT vsizeMaxContiguous not supported in this build configuration.
[task 2020-06-15T23:10:06.379Z] 23:10:06     INFO - GECKO(3265) | MEMORY STAT heapAllocated not supported in this build configuration.
[task 2020-06-15T23:10:06.379Z] 23:10:06     INFO - GECKO(3265) | MEMORY STAT | vsize 20975433MB | residentFast 1215MB
[task 2020-06-15T23:10:06.379Z] 23:10:06     INFO - TEST-OK | docshell/test/browser/browser_backforward_userinteraction.js | took 90225ms
[task 2020-06-15T23:10:06.380Z] 23:10:06     INFO - Not taking screenshot here: see the one that was previously logged
[task 2020-06-15T23:10:06.380Z] 23:10:06     INFO - TEST-UNEXPECTED-FAIL | docshell/test/browser/browser_backforward_userinteraction.js | Found a tab after previous test timed out: https://example.com/browser/docshell/test/browser/dummy_iframe_page.html?entry=0 - 
[task 2020-06-15T23:10:06.380Z] 23:10:06     INFO - checking window state
Flags: needinfo?(matt.woodrow)
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/f56d5efc5e43 Create single webprogress for CanonicalBrowsingContext, regardless of process the browser element contents are in. r=nika,kmag,Gijs
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ffe294ce39df Create single webprogress for CanonicalBrowsingContext, regardless of process the browser element contents are in. r=nika,kmag,Gijs
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla79
Blocks: 1646582
Flags: needinfo?(matt.woodrow)
See Also: → 1646611
Regressions: 1664542
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: