Don't save sidebar elements in tab focus memory (bug 254056). r=neil, sr=ben.
git-svn-id: svn://10.0.0.236/trunk@232647 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
parent
fb421c4931
commit
e63b7f7a40
@ -539,8 +539,38 @@
|
||||
return;
|
||||
|
||||
if (this.mCurrentBrowser) {
|
||||
this.mCurrentBrowser.focusedWindow = document.commandDispatcher.focusedWindow;
|
||||
this.mCurrentBrowser.focusedElement = document.commandDispatcher.focusedElement;
|
||||
// Only save the focused element if it is in our content window
|
||||
// or in an ancestor window.
|
||||
var focusedWindow = document.commandDispatcher.focusedWindow;
|
||||
var saveFocus = false;
|
||||
|
||||
if (focusedWindow.top == window.content) {
|
||||
saveFocus = true;
|
||||
} else {
|
||||
var contentWindow = window;
|
||||
|
||||
while (contentWindow) {
|
||||
if (contentWindow == focusedWindow) {
|
||||
saveFocus = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if (contentWindow.parent == contentWindow) {
|
||||
break;
|
||||
}
|
||||
|
||||
contentWindow = contentWindow.parent;
|
||||
}
|
||||
}
|
||||
|
||||
if (saveFocus) {
|
||||
// Preserve the currently-focused element or DOM window for
|
||||
// this tab.
|
||||
|
||||
this.mCurrentBrowser.focusedWindow = focusedWindow;
|
||||
this.mCurrentBrowser.focusedElement = document.commandDispatcher.focusedElement;
|
||||
}
|
||||
|
||||
if (this.mCurrentBrowser.focusedElement) {
|
||||
// Clear focus outline before we draw on top of it
|
||||
this.mCurrentBrowser.focusedElement.blur();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user