| Index: chrome/browser/resources/input_window_dialog.js
|
| diff --git a/chrome/browser/resources/input_window_dialog.js b/chrome/browser/resources/input_window_dialog.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..74174607e7c3b29b644654b19728b6067d6def61
|
| --- /dev/null
|
| +++ b/chrome/browser/resources/input_window_dialog.js
|
| @@ -0,0 +1,78 @@
|
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +cr.define('inputWindowDialog', function() {
|
| + 'use strict';
|
| +
|
| + /**
|
| + * Disables the controls while the dialog is busy.
|
| + */
|
| + function disableControls() {
|
| + $('cancel').disabled = true;
|
| + $('ok').disabled = true;
|
| + }
|
| +
|
| + /**
|
| + * Close the dialog and pass a result value to the dialog close handler.
|
| + * @param {boolean} result The value to pass to the dialog close handler.
|
| + */
|
| + function closeWithResult(result) {
|
| + disableControls();
|
| + var value = [result];
|
| + if (result) {
|
| + value.push($('name').value);
|
| + }
|
| + var json = JSON.stringify(value);
|
| + chrome.send('DialogClose', [json]);
|
| + }
|
| +
|
| + /**
|
| + * Inserts translated strings on loading.
|
| + */
|
| + function initialize() {
|
| + i18nTemplate.process(document, templateData);
|
| +
|
| + var args = JSON.parse(chrome.dialogArguments);
|
| + $('name-label').textContent = args.label;
|
| + $('name').value = args.contents;
|
| +
|
| + $('cancel').onclick = function() {
|
| + closeWithResult(false);
|
| + }
|
| +
|
| + $('ok').onclick = function() {
|
| + if (!$('ok').disabled) {
|
| + closeWithResult(true);
|
| + }
|
| + }
|
| +
|
| + $('name').oninput = function() {
|
| + var name = $('name').value;
|
| + chrome.send('validate', [name]);
|
| + }
|
| +
|
| + document.body.onkeydown = function(evt) {
|
| + if (evt.keyCode == 13) { // Enter key
|
| + $('ok').onclick();
|
| + } else if (evt.keyCode == 27) { // Escape key
|
| + $('cancel').onclick();
|
| + }
|
| + }
|
| + }
|
| +
|
| + /**
|
| + * Called in response to validate request.
|
| + * @param {boolean} valid The result of validate request.
|
| + */
|
| + function ackValidation(valid) {
|
| + $('ok').disabled = !valid;
|
| + }
|
| +
|
| + return {
|
| + initialize: initialize,
|
| + ackValidation: ackValidation,
|
| + };
|
| +});
|
| +
|
| +document.addEventListener('DOMContentLoaded', inputWindowDialog.initialize);
|
|
|