From 365ba2c9b8ae47f5f70044d1c74485f0b4150068 Mon Sep 17 00:00:00 2001 From: "dietrich%mozilla.com" Date: Fri, 8 Sep 2006 23:11:23 +0000 Subject: [PATCH] Bug 349961 Remove use of explicit native wrappers in session restore service (for zeniko, r=dietrich) git-svn-id: svn://10.0.0.236/trunk@209486 18797224-902f-48f8-a5cc-f745e15eee43 --- .../sessionstore/src/nsSessionStore.js | 23 ++++++++----------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/mozilla/browser/components/sessionstore/src/nsSessionStore.js b/mozilla/browser/components/sessionstore/src/nsSessionStore.js index 72d54bab650..154de8f4444 100644 --- a/mozilla/browser/components/sessionstore/src/nsSessionStore.js +++ b/mozilla/browser/components/sessionstore/src/nsSessionStore.js @@ -880,16 +880,15 @@ SessionStoreService.prototype = { * @param aPanel * TabPanel reference * @param aTextarea - * HTML content element (without an XPCNativeWrapper applied) + * HTML content element * @returns bool */ _saveTextData: function sss_saveTextData(aPanel, aTextarea) { - var wrappedTextarea = XPCNativeWrapper(aTextarea); - var id = wrappedTextarea.id ? "#" + wrappedTextarea.id : - wrappedTextarea.name; + var id = aTextarea.id ? "#" + aTextarea.id : + aTextarea.name; if (!id - || !(wrappedTextarea instanceof Ci.nsIDOMHTMLTextAreaElement - || wrappedTextarea instanceof Ci.nsIDOMHTMLInputElement)) { + || !(aTextarea instanceof Ci.nsIDOMHTMLTextAreaElement + || aTextarea instanceof Ci.nsIDOMHTMLInputElement)) { return false; // nothing to save } @@ -904,7 +903,7 @@ SessionStoreService.prototype = { } // determine the frame we're in and encode it into the textarea's ID - var content = wrappedTextarea.ownerDocument.defaultView; + var content = aTextarea.ownerDocument.defaultView; while (content != content.top) { var frames = content.parent.frames; for (var i = 0; i < frames.length && frames[i] != content; i++); @@ -913,7 +912,7 @@ SessionStoreService.prototype = { } // mark this element for saving - aPanel.__SS_text[aTextarea] = { id: id, element: wrappedTextarea }; + aPanel.__SS_text[aTextarea] = { id: id, element: aTextarea }; return true; }, @@ -967,7 +966,7 @@ SessionStoreService.prototype = { } tabData.text = text.join(" "); - updateRecursively(XPCNativeWrapper(aBrowser.contentWindow), tabData.entries[tabData.index - 1]); + updateRecursively(aBrowser.contentWindow, tabData.entries[tabData.index - 1]); } catch (ex) { debug(ex); } // get as much data as possible, ignore failures (might succeed the next time) }, this); @@ -1458,11 +1457,9 @@ SessionStoreService.prototype = { } } - var content = XPCNativeWrapper(aEvent.originalTarget).defaultView; - if (this.currentURI.spec == "about:config") { - //XXXzeniko why ever this doesn't work with an XPCNativeWrapper... + var content = aEvent.originalTarget.defaultView; + if (this.currentURI.spec == "about:config") content = aEvent.originalTarget.defaultView; - } restoreTextDataAndScrolling(content, this.__SS_restore_data, ""); // notify the tabbrowser that this document has been completely restored