Handle DOMException when embedded in an iframe of different origin

Fixes #932
This commit is contained in:
Nick O'Leary 2016-07-06 13:28:51 +01:00
parent 691b083364
commit c5753a013c
1 changed files with 13 additions and 4 deletions

View File

@ -2162,10 +2162,19 @@ RED.view = (function() {
}
function focusView() {
var scrollX = window.parent.window.scrollX;
var scrollY = window.parent.window.scrollY;
$("#chart").focus();
window.parent.window.scrollTo(scrollX,scrollY);
try {
// Workaround for browser unexpectedly scrolling iframe into full
// view - record the parent scroll position and restore it after
// setting the focus
var scrollX = window.parent.window.scrollX;
var scrollY = window.parent.window.scrollY;
$("#chart").focus();
window.parent.window.scrollTo(scrollX,scrollY);
} catch(err) {
// In case we're iframed into a page of a different origin, just focus
// the view following the inevitable DOMException
$("#chart").focus();
}
}
/**