| Index: chrome/browser/resources/keyboard/ime.js
|
| diff --git a/chrome/browser/resources/keyboard/ime.js b/chrome/browser/resources/keyboard/ime.js
|
| deleted file mode 100644
|
| index 3652bf0a7262129ea746f686d0f5ee823aae6723..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/resources/keyboard/ime.js
|
| +++ /dev/null
|
| @@ -1,282 +0,0 @@
|
| -// 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.
|
| -
|
| -/**
|
| - * @fileoverview An input method UI implementation
|
| - */
|
| -
|
| -/**
|
| - * Const variables
|
| - */
|
| -const IME_KEYBOARD_HEIGHT = 300;
|
| -const IME_HEIGHT = 48;
|
| -const IME_VMARGIN = 12;
|
| -const IME_HMARGIN = 16;
|
| -const IME_FONTSIZE = IME_HEIGHT - IME_VMARGIN * 2;
|
| -const IME_MAX_CANDIDATES = 20;
|
| -
|
| -/**
|
| - * Creates a new button element.
|
| - * @param {Object=} opt_propertyBag Optional properties.
|
| - * @constructor
|
| - * @extends {HTMLButtonElement}
|
| - */
|
| -var Button = cr.ui.define('button');
|
| -
|
| -Button.prototype = {
|
| - __proto__: HTMLButtonElement.prototype,
|
| - /**
|
| - * Initialized the button element.
|
| - */
|
| - decorate: function() {
|
| - this.className = 'ime button';
|
| -
|
| - this.style.height = IME_HEIGHT + 'px';
|
| - this.style.paddingTop =
|
| - this.style.paddingBottom = IME_VMARGIN + 'px';
|
| - this.style.paddingLeft =
|
| - this.style.paddingRight = IME_HMARGIN + 'px';
|
| - this.style.fontSize = IME_FONTSIZE + 'px';
|
| -
|
| - this.tabIndex = -1;
|
| - this.text = '';
|
| - },
|
| -
|
| - /**
|
| - * Returns the text of the button
|
| - * @return {string}
|
| - */
|
| - get text() {
|
| - return this.innerHTML;
|
| - },
|
| -
|
| - /**
|
| - * Sets the HTML of the button
|
| - * @param {string} text in button in HTML format. If text is empty, the
|
| - * button will be hidden.
|
| - * @return {void}
|
| - */
|
| - set text(text) {
|
| - this.innerHTML = text;
|
| - if (text) {
|
| - this.style.display = 'inline-block';
|
| - } else {
|
| - this.style.display = 'none';
|
| - }
|
| - },
|
| -};
|
| -
|
| -/**
|
| - * An input method UI
|
| - * @param {Object=} opt_propertyBag Optional properties.
|
| - * @constructor
|
| - * @extends {HTMLDivElement}
|
| - */
|
| -var ImeUi = cr.ui.define('div');
|
| -
|
| -ImeUi.prototype = {
|
| - __proto__: HTMLDivElement.prototype,
|
| -
|
| - /**
|
| - * Initialized the button element.
|
| - */
|
| - decorate: function() {
|
| - this.className = 'ime panel';
|
| - this.style.height = IME_HEIGHT + 'px';
|
| -
|
| - this.auxiliary_ = new Button();
|
| - this.auxiliary_.className += ' auxiliary';
|
| - this.appendChild(this.auxiliary_);
|
| -
|
| - var that = this;
|
| - this.pageUp_ = new Button({'text': ' « '});
|
| - this.pageUp_.onclick = function() {
|
| - that.pageUp();
|
| - };
|
| -
|
| - this.pageDown_ = new Button({'text': ' » '});
|
| - this.pageDown_.onclick = function() {
|
| - that.pageDown();
|
| - };
|
| -
|
| - this.appendChild(this.pageUp_);
|
| -
|
| - // Create candidates
|
| - this.candidates_ = [];
|
| - /**
|
| - * Creates a candidate element. We need this function to create a new scope
|
| - * for each candidate buttons, so that they may have different value of
|
| - * index.
|
| - * @param {number} index
|
| - */
|
| - function createCandidateButton(index) {
|
| - candidate = new Button();
|
| - candidate.className += ' candidate';
|
| - that.candidates_.push(candidate);
|
| - that.appendChild(candidate);
|
| - candidate.onclick = function() {
|
| - that.candidateClicked(index);
|
| - };
|
| - }
|
| - for (var i = 0; i < IME_MAX_CANDIDATES; i++) {
|
| - createCandidateButton(i);
|
| - }
|
| -
|
| - this.appendChild(this.pageDown_);
|
| - this.update();
|
| - },
|
| -
|
| - /**
|
| - * Returns true if Ime Ui is visible.
|
| - * @return {boolean}
|
| - */
|
| - get visible() {
|
| - return this.style.display != 'none';
|
| - },
|
| -
|
| - /**
|
| - * Sets the input cursor location.
|
| - * @param {number} x The x of the input cursor coordinates.
|
| - * @param {number} y The y of the input cursor coordinates.
|
| - * @param {number} w The width of the input cursor.
|
| - * @param {number} h The height of the input cursor.
|
| - * @return {void}
|
| - */
|
| - setCursorLocation: function(x, y, w, h) {
|
| - // Currently we do nothing.
|
| - },
|
| -
|
| - /**
|
| - * Updates the auxiliary text.
|
| - * @param {string} text The auxiliary text.
|
| - * @return {void}
|
| - */
|
| - updateAuxiliaryText: function(text) {
|
| - this.auxiliary_.text = text;
|
| - this.update();
|
| - },
|
| -
|
| - /**
|
| - * Updates the lookup table.
|
| - * @param {Object} table The lookup table.
|
| - * @return {void}
|
| - */
|
| - updateLookupTable : function(table) {
|
| - if (table.visible) {
|
| - for (var i = 0;
|
| - i < IME_MAX_CANDIDATES && i < table.candidates.length; i++) {
|
| - this.candidates_[i].text = table.candidates[i];
|
| - }
|
| - for (; i < IME_MAX_CANDIDATES; i++) {
|
| - this.candidates_[i].text = '';
|
| - }
|
| - } else {
|
| - for (var i = 0; i < this.candidates_.length; i++) {
|
| - this.candidates_[i].text = '';
|
| - }
|
| - }
|
| - this.table_ = table;
|
| - this.update();
|
| - },
|
| -
|
| - update : function() {
|
| - var visible =
|
| - (this.table_ && this.table_.visible) || this.auxiliary_.text_;
|
| -
|
| - if (visible == this.visible) {
|
| - return;
|
| - }
|
| -
|
| - if (visible) {
|
| - chrome.experimental.input.setKeyboardHeight(
|
| - IME_KEYBOARD_HEIGHT + IME_HEIGHT);
|
| - this.style.display = 'inline-block';
|
| - } else {
|
| - this.style.display = 'none';
|
| - chrome.experimental.input.setKeyboardHeight(IME_KEYBOARD_HEIGHT);
|
| - }
|
| - // TODO(penghuang) Adjust the width of all items in ImeUi to fill the width
|
| - // of keyboard.
|
| - },
|
| -
|
| - /**
|
| - * Candidate is clicked.
|
| - * @param {number} index The index of the candidate.
|
| - * @return {void}
|
| - */
|
| - candidateClicked: function(index) {
|
| - chrome.experimental.input.ui.candidateClicked(index, 1);
|
| - },
|
| -
|
| - /**
|
| - * Go to the previous page of the lookup table.
|
| - * @return {void}
|
| - */
|
| - pageUp: function() {
|
| - chrome.experimental.input.ui.pageUp();
|
| - },
|
| -
|
| - /**
|
| - * Go to the next page of the lookup table.
|
| - * @return {void}
|
| - */
|
| - pageDown: function() {
|
| - chrome.experimental.input.ui.pageDown();
|
| - },
|
| -};
|
| -
|
| -var imeui = null;
|
| -
|
| -/**
|
| - * Initialize Ime Ui
|
| - * @param {Element} element The html element which will contain the ImeUi.
|
| - * @return {void}
|
| - */
|
| -function initIme(element) {
|
| - if (imeui) {
|
| - // ime ui has been initialized.
|
| - return;
|
| - }
|
| -
|
| - try {
|
| - // Register self to receive input method UI events.
|
| - chrome.experimental.input.ui.register();
|
| - } catch (e) {
|
| - // The ime is not enabled in chromium.
|
| - return;
|
| - }
|
| -
|
| - imeui = new ImeUi();
|
| -
|
| - element.appendChild(imeui);
|
| -
|
| - // new row
|
| - var clearingDiv = document.createElement('div');
|
| - clearingDiv.style.clear = 'both';
|
| - element.appendChild(clearingDiv);
|
| -
|
| - // Install events handlers.
|
| - chrome.experimental.input.ui.onSetCursorLocation.addListener(
|
| - function(x, y, w, h) {
|
| - imeui.setCursorLocation(x, y, w, h);
|
| - });
|
| - chrome.experimental.input.ui.onUpdateAuxiliaryText.addListener(
|
| - function(text) {
|
| - imeui.updateAuxiliaryText(text);
|
| - });
|
| - chrome.experimental.input.ui.onUpdateLookupTable.addListener(
|
| - function(table) {
|
| - imeui.updateLookupTable(table);
|
| - });
|
| -}
|
| -
|
| -/**
|
| - * Updates Ime Ui. It should be called when window is resized.
|
| - * @return {void}
|
| - */
|
| -function updateIme() {
|
| - if (imeui) {
|
| - imeui.update();
|
| - }
|
| -}
|
|
|