| Index: Source/devtools/front_end/ui/Dialog.js
|
| diff --git a/Source/devtools/front_end/ui/Dialog.js b/Source/devtools/front_end/ui/Dialog.js
|
| index a7ddbdcf7e375c972368df1f4b681d0672babbe6..c7b9da357475892ff3c499034b7713dbd0dd3554 100644
|
| --- a/Source/devtools/front_end/ui/Dialog.js
|
| +++ b/Source/devtools/front_end/ui/Dialog.js
|
| @@ -32,11 +32,13 @@
|
| * @constructor
|
| * @param {!Element} relativeToElement
|
| * @param {!WebInspector.DialogDelegate} delegate
|
| + * @param {boolean=} modal
|
| */
|
| -WebInspector.Dialog = function(relativeToElement, delegate)
|
| +WebInspector.Dialog = function(relativeToElement, delegate, modal)
|
| {
|
| this._delegate = delegate;
|
| this._relativeToElement = relativeToElement;
|
| + this._modal = modal;
|
|
|
| this._glassPane = new WebInspector.GlassPane(/** @type {!Document} */ (relativeToElement.ownerDocument));
|
| WebInspector.GlassPane.DefaultFocusedViewStack.push(this);
|
| @@ -71,12 +73,13 @@ WebInspector.Dialog.currentInstance = function()
|
| /**
|
| * @param {?Element} relativeToElement
|
| * @param {!WebInspector.DialogDelegate} delegate
|
| + * @param {boolean=} modal
|
| */
|
| -WebInspector.Dialog.show = function(relativeToElement, delegate)
|
| +WebInspector.Dialog.show = function(relativeToElement, delegate, modal)
|
| {
|
| if (WebInspector.Dialog._instance)
|
| return;
|
| - WebInspector.Dialog._instance = new WebInspector.Dialog(relativeToElement || WebInspector.Dialog.modalHostView().element, delegate);
|
| + WebInspector.Dialog._instance = new WebInspector.Dialog(relativeToElement || WebInspector.Dialog.modalHostView().element, delegate, modal);
|
| }
|
|
|
| WebInspector.Dialog.hide = function()
|
| @@ -105,8 +108,13 @@ WebInspector.Dialog.prototype = {
|
| this._glassPane.dispose();
|
| },
|
|
|
| + /**
|
| + * @param {!Event} event
|
| + */
|
| _onGlassPaneFocus: function(event)
|
| {
|
| + if (this._modal)
|
| + return;
|
| this._hide();
|
| },
|
|
|
| @@ -130,6 +138,8 @@ WebInspector.Dialog.prototype = {
|
| if (event.keyCode === WebInspector.KeyboardShortcut.Keys.Enter.code)
|
| this._delegate.onEnter(event);
|
|
|
| + this._delegate.onKeyDown(event);
|
| +
|
| if (!event.handled && this._closeKeys.indexOf(event.keyCode) >= 0) {
|
| this._hide();
|
| event.consume(true);
|
| @@ -178,8 +188,16 @@ WebInspector.DialogDelegate.prototype = {
|
|
|
| focus: function() { },
|
|
|
| + /**
|
| + * @param {!KeyboardEvent} event
|
| + */
|
| onEnter: function(event) { },
|
|
|
| + /**
|
| + * @param {!KeyboardEvent} event
|
| + */
|
| + onKeyDown: function(event) { },
|
| +
|
| willHide: function() { },
|
|
|
| __proto__: WebInspector.Object.prototype
|
|
|