dialog behaviour fixes

This commit is contained in:
Andrew Dolgov 2010-11-17 10:12:50 +03:00
parent 76657c46b8
commit 439caa8b93
3 changed files with 38 additions and 27 deletions

View file

@ -2,7 +2,6 @@ var hotkeys_enabled = true;
var notify_silent = false;
var last_progress_point = 0;
var sanity_check_done = false;
var dialogs = [];
/* add method to remove element from array */
@ -392,10 +391,9 @@ function closeInfoBox(cleanup) {
try {
enableHotkeys();
var dialog = dialogs.pop();
dialog = dijit.byId("infoBox");
if (dialog)
dialog.hide();
if (dialog) dialog.hide();
} catch (e) {
//exception_error("closeInfoBox", e);
@ -438,9 +436,10 @@ function infobox_submit_callback2(transport) {
function infobox_callback2(transport) {
try {
var dialog = false;
if (dijit.byId("infoBox")) {
dialogs.pop();
dijit.byId("infoBox").destroy();
dialog = dijit.byId("infoBox");
}
//console.log("infobox_callback2");
@ -464,28 +463,28 @@ function infobox_callback2(transport) {
content = transport.responseText;
}
var dialog = new dijit.Dialog({
title: title,
id: 'infoBox',
style: "width: 600px",
onCancel: function() {
dialogs.remove(this);
return true;
},
onExecute: function() {
dialogs.remove(this);
return true;
},
onClose: function() {
dialogs.remove(this);
return true;
},
content: content});
if (!dialog) {
dialog = new dijit.Dialog({
title: title,
id: 'infoBox',
style: "width: 600px",
onCancel: function() {
return true;
},
onExecute: function() {
return true;
},
onClose: function() {
return true;
},
content: content});
} else {
dialog.attr('title', title);
dialog.attr('content', content);
}
dialog.show();
dialogs.push(dialog);
notify("");
} catch (e) {
exception_error("infobox_callback2", e);

View file

@ -1230,7 +1230,13 @@ function pref_hotkey_handler(e) {
closeInfoBox();
}
if (dialogs.length > 0 || !hotkeys_enabled) {
var dialog = dijit.byId("infoBox");
var dialog_visible = false;
if (dialog)
dialog_visible = Element.visible(dialog.domNode);
if (dialog_visible || !hotkeys_enabled) {
console.log("hotkeys disabled");
return;
}

View file

@ -743,7 +743,13 @@ function hotkey_handler(e) {
closeInfoBox();
}
if (dialogs.length > 0 || !hotkeys_enabled) {
var dialog = dijit.byId("infoBox");
var dialog_visible = false;
if (dialog)
dialog_visible = Element.visible(dialog.domNode);
if (dialog_visible || !hotkeys_enabled) {
console.log("hotkeys disabled");
return;
}