Closed
Bug 570969
Opened 15 years ago
Closed 15 years ago
[f10s] Remove isRootWindow and use currentInnerWindowId instead
Categories
(Firefox for Android Graveyard :: General, defect)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: vingtetun, Assigned: vingtetun)
Details
Attachments
(1 file, 1 obsolete file)
16.12 KB,
patch
|
mfinkle
:
review+
|
Details | Diff | Splinter Review |
No description provided.
Attachment #450120 -
Flags: review?(mark.finkle)
Assignee | ||
Comment 1•15 years ago
|
||
btw I don't really like:
+ windowId: aWebProgress.DOMWindow.QueryInterface(Ci.nsIInterfaceRequestor).getInterface(Ci.nsIDOMWindowUtils).currentInnerWindowID,
so if you have a better idea it would be nice!
Comment 2•15 years ago
|
||
Comment on attachment 450120 [details] [diff] [review]
Patch
>diff -r d0c2030cc255 chrome/content/bindings/browser.js
Change all sendAsyncMessage calls to sendSyncMessage in this file.
>diff -r d0c2030cc255 chrome/content/bindings/browser.xml
>+ <field name="currentInnerWindowId">null</field>
>+
Let's just call it contentWindowId
> <field name="_webProgress"><![CDATA[
>+ get DOMWindow() { throw "DOMWindow: Not Remoteable" },
>+ isLoadingDocument: false,
Change to:
get isLoadingDocument() { throw "isLoadingDocument: Not Remoteable"; },
Change in remote-browser too
> case "WebProgress:LocationChange":
>- if (json.isRootWindow) {
>+ let currentURI = this._browser._ios.newURI(json.location, null, null);
>+
>+ args = [
>+ { windowId: json.windowId, browser: this._browser },
>+ {},
>+ currentURI
>+ ];
Not sure why, but I like using "locationURI" instead of "currentURI". Change in remote-browser too
> ]]></field>
You added back _webProgress, but also add back the "webProgress" property. I don't want people to use browser._webProgress
>diff -r d0c2030cc255 chrome/content/browser.js
> onStateChange: function onStateChange(aWebProgress, aRequest, aStateFlags, aStatus) {
> // ignore notification that aren't about the main document (iframes, etc)
>- if (aWebProgress.DOMWindow != this._tab.browser.contentWindow)
>+ if (aWebProgress.windowId != this._tab.browser.currentInnerWindowId)
Change to this._tab.browser.contentWindowId
> onLocationChange: function onLocationChange(aWebProgress, aRequest, aLocationURI) {
> // ignore notification that aren't about the main document (iframes, etc)
>- if (aWebProgress.DOMWindow != this._tab.browser.contentWindow)
>+ if (aWebProgress.windowId != this._tab.browser.currentInnerWindowId)
Change to this._tab.browser.contentWindowId
> this._listener = new ProgressController(this);
>- browser.webProgress.addProgressListener(this._listener, flags);
>+ browser._webProgress.addProgressListener(this._listener, flags);
No, leave this alone.
Attachment #450120 -
Flags: review?(mark.finkle) → review-
Assignee | ||
Comment 3•15 years ago
|
||
This patch address comments and also correct a little bug found during debugging
Assignee: nobody → 21
Attachment #450120 -
Attachment is obsolete: true
Attachment #450134 -
Flags: review?(mark.finkle)
Comment 4•15 years ago
|
||
Comment on attachment 450134 [details] [diff] [review]
Patch v0.2
But we still fail tests without changing sendAsyncMessage to sendSyncMessage in bindings/browser.js.
r+ with that change. we can figure out why async is failing in a followup.
Attachment #450134 -
Flags: review?(mark.finkle) → review+
Assignee | ||
Comment 5•15 years ago
|
||
Updated•15 years ago
|
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•