summaryrefslogtreecommitdiffstats
path: root/toolkit/content
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/content')
-rw-r--r--toolkit/content/browser-content.js29
-rw-r--r--toolkit/content/jar.mn2
-rw-r--r--toolkit/content/widgets/findbar.xml5
3 files changed, 34 insertions, 2 deletions
diff --git a/toolkit/content/browser-content.js b/toolkit/content/browser-content.js
index 2276f8a0d..e1114672c 100644
--- a/toolkit/content/browser-content.js
+++ b/toolkit/content/browser-content.js
@@ -841,6 +841,35 @@ var FindBar = {
fakeEvent[k] = event[k];
}
}
+#ifdef MC_PALEMOON
+ let findBarId = "FindToolbar";
+ // The FindBar is in the chrome window's context, not in tabbrowser
+ // - see also bug 537013
+ let chromeWin = null;
+ try {
+ chromeWin = content
+ .QueryInterface(Ci.nsIInterfaceRequestor)
+ .getInterface(Ci.nsIWebNavigation)
+ .QueryInterface(Ci.nsIDocShellTreeItem)
+ .rootTreeItem
+ .QueryInterface(Ci.nsIInterfaceRequestor)
+ .getInterface(Ci.nsIDOMWindow)
+ .QueryInterface(Ci.nsIDOMChromeWindow);
+ } catch (e) {
+ Cu.reportError(
+ "The FindBar - the chrome window's context was not detected:\n" + e);
+ }
+ if (chromeWin && chromeWin.document.getElementById(findBarId)) {
+ try {
+ chromeWin.document.getElementById(findBarId)
+ .browser = Services.wm.getMostRecentWindow("navigator:browser")
+ .gBrowser.mCurrentBrowser;
+ } catch (e) {
+ Cu.reportError(
+ "The FindBar - cannot set the property 'browser':\n" + e);
+ }
+ }
+#endif
// sendSyncMessage returns an array of the responses from all listeners
let rv = sendSyncMessage("Findbar:Keypress", {
diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
index e1d432cb3..c11d3abed 100644
--- a/toolkit/content/jar.mn
+++ b/toolkit/content/jar.mn
@@ -39,7 +39,7 @@ toolkit.jar:
content/global/plugins.html
content/global/plugins.css
content/global/browser-child.js
- content/global/browser-content.js
+* content/global/browser-content.js
* content/global/buildconfig.html
content/global/contentAreaUtils.js
#ifndef MOZ_FENNEC
diff --git a/toolkit/content/widgets/findbar.xml b/toolkit/content/widgets/findbar.xml
index b92fb1d05..c312a6a25 100644
--- a/toolkit/content/widgets/findbar.xml
+++ b/toolkit/content/widgets/findbar.xml
@@ -282,6 +282,7 @@
return this._browser;
]]></getter>
<setter><![CDATA[
+ let prefsvc = this._prefsvc;
if (this._browser) {
if (this._browser.messageManager) {
this._browser.messageManager.removeMessageListener("Findbar:Keypress", this);
@@ -300,7 +301,9 @@
this._browser.messageManager.addMessageListener("Findbar:Mouseup", this);
this._browser.finder.addResultListener(this);
- this._findField.value = this._browser._lastSearchString;
+ if (prefsvc.getBoolPref("findbar.termPerTab") == true) {
+ this._findField.value = this._browser._lastSearchString;
+ }
}
return val;
]]></setter>