| Index: chrome/browser/resources/options2/language_add_language_overlay.js
|
| diff --git a/chrome/browser/resources/options2/language_add_language_overlay.js b/chrome/browser/resources/options2/language_add_language_overlay.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..9fa856d2a310d5583aa546382f82724019cd2dbe
|
| --- /dev/null
|
| +++ b/chrome/browser/resources/options2/language_add_language_overlay.js
|
| @@ -0,0 +1,73 @@
|
| +// 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.
|
| +
|
| +///////////////////////////////////////////////////////////////////////////////
|
| +// AddLanguageOverlay class:
|
| +
|
| +cr.define('options', function() {
|
| + const OptionsPage = options.OptionsPage;
|
| +
|
| + /**
|
| + * Encapsulated handling of ChromeOS add language overlay page.
|
| + * @constructor
|
| + */
|
| + function AddLanguageOverlay() {
|
| + OptionsPage.call(this, 'addLanguage',
|
| + localStrings.getString('add_button'),
|
| + 'add-language-overlay-page');
|
| + }
|
| +
|
| + cr.addSingletonGetter(AddLanguageOverlay);
|
| +
|
| + AddLanguageOverlay.prototype = {
|
| + // Inherit AddLanguageOverlay from OptionsPage.
|
| + __proto__: OptionsPage.prototype,
|
| +
|
| + /**
|
| + * Initializes AddLanguageOverlay page.
|
| + * Calls base class implementation to starts preference initialization.
|
| + */
|
| + initializePage: function() {
|
| + // Call base class implementation to starts preference initialization.
|
| + OptionsPage.prototype.initializePage.call(this);
|
| +
|
| + // Set up the cancel button.
|
| + $('add-language-overlay-cancel-button').onclick = function(e) {
|
| + OptionsPage.closeOverlay();
|
| + };
|
| +
|
| + // Create the language list with which users can add a language.
|
| + var addLanguageList = $('add-language-overlay-language-list');
|
| + var languageListData = templateData.languageList;
|
| + for (var i = 0; i < languageListData.length; i++) {
|
| + var language = languageListData[i];
|
| + var displayText = language.displayName;
|
| + // If the native name is different, add it.
|
| + if (language.displayName != language.nativeDisplayName) {
|
| + displayText += ' - ' + language.nativeDisplayName;
|
| + }
|
| +
|
| + if (cr.isChromeOS) {
|
| + var button = document.createElement('button');
|
| + button.className = 'link-button';
|
| + button.textContent = displayText;
|
| + button.languageCode = language.code;
|
| + var li = document.createElement('li');
|
| + li.languageCode = language.code;
|
| + li.appendChild(button);
|
| + addLanguageList.appendChild(li);
|
| + } else {
|
| + var option = document.createElement('option');
|
| + option.value = language.code;
|
| + option.textContent = displayText;
|
| + addLanguageList.appendChild(option);
|
| + }
|
| + }
|
| + },
|
| + };
|
| +
|
| + return {
|
| + AddLanguageOverlay: AddLanguageOverlay
|
| + };
|
| +});
|
|
|