Bug 1206559, forward PuppetWidget::SetFocus request to the parent process, r=smaug

This commit is contained in:
Neil Deakin 2015-10-06 09:14:49 -04:00
parent 44f95f432c
commit 8760ec0272
3 changed files with 8 additions and 8 deletions

View File

@ -7252,13 +7252,11 @@ nsGlobalWindow::FocusOuter(ErrorResult& aError)
}
return;
}
if (nsCOMPtr<nsITabChild> child = do_GetInterface(mDocShell)) {
child->SendRequestFocus(canFocus);
return;
}
if (canFocus) {
// if there is no parent, this must be a toplevel window, so raise the
// window if canFocus is true
// window if canFocus is true. If this is a child process, the raise
// window request will get forwarded to the parent by the puppet widget.
aError = fm->SetActiveWindow(this);
}
}

View File

@ -32,7 +32,7 @@ skip-if = (toolkit == 'gonk' && debug) #debug-only failure
[test_bug562447.html]
[test_bug563642.html]
[test_bug564115.html]
skip-if = buildapp == 'mulet' || (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) || toolkit == 'android' || e10s #TIMED_OUT # b2g-debug(times out on window.open and focus event) b2g-desktop(times out on window.open and focus event)
skip-if = buildapp == 'mulet' || (buildapp == 'b2g' && (toolkit != 'gonk' || debug)) || toolkit == 'android' #TIMED_OUT # b2g-debug(times out on window.open and focus event) b2g-desktop(times out on window.open and focus event)
[test_bug571352.html]
skip-if = (os == 'mac' && os_version == '10.10') || buildapp == 'mulet' || buildapp == 'b2g' || toolkit == 'android' #TIMED_OUT # OS X 10.10 - bug 947690, b2g(shift-click multi-select not working?) b2g-debug(shift-click multi-select not working?) b2g-desktop(shift-click multi-select not working?)
[test_bug572406.html]

View File

@ -257,8 +257,10 @@ PuppetWidget::ConfigureChildren(const nsTArray<Configuration>& aConfigurations)
NS_IMETHODIMP
PuppetWidget::SetFocus(bool aRaise)
{
// XXX/cjones: someone who knows about event handling needs to
// decide how this should work.
if (aRaise && mTabChild) {
mTabChild->SendRequestFocus(true);
}
return NS_OK;
}