| Index: third_party/google_input_tools/src/chrome/os/inputview/imewindows/accents.js
|
| diff --git a/third_party/google_input_tools/src/chrome/os/inputview/imewindows/accents.js b/third_party/google_input_tools/src/chrome/os/inputview/imewindows/accents.js
|
| index 1cdfce4f71c0ff7adc5a2776ffe40a2eb7a36856..8a89e889fae53f7a7e7ca786495cb35771eb78a2 100644
|
| --- a/third_party/google_input_tools/src/chrome/os/inputview/imewindows/accents.js
|
| +++ b/third_party/google_input_tools/src/chrome/os/inputview/imewindows/accents.js
|
| @@ -14,13 +14,17 @@
|
| goog.provide('i18n.input.chrome.inputview.Accents');
|
|
|
| goog.require('goog.dom');
|
| +goog.require('goog.dom.TagName');
|
| +goog.require('goog.dom.classlist');
|
| goog.require('goog.math.Coordinate');
|
| goog.require('goog.style');
|
| +goog.require('i18n.input.chrome.inputview.Css');
|
| goog.require('i18n.input.chrome.inputview.util');
|
|
|
|
|
| goog.scope(function() {
|
| var Accents = i18n.input.chrome.inputview.Accents;
|
| +var Css = i18n.input.chrome.inputview.Css;
|
|
|
|
|
| /**
|
| @@ -56,12 +60,14 @@ Accents.highlightItem_ = function(x, y, offset) {
|
| var highlightedItem = Accents.getHighlightedItem_(x, y, offset);
|
| if (Accents.highlightedItem_ != highlightedItem) {
|
| if (Accents.highlightedItem_) {
|
| - Accents.highlightedItem_.classList.remove('highlight');
|
| + goog.dom.classlist.remove(Accents.highlightedItem_,
|
| + i18n.input.chrome.inputview.Css.ELEMENT_HIGHLIGHT);
|
| }
|
| Accents.highlightedItem_ = highlightedItem;
|
| if (Accents.highlightedItem_ &&
|
| Accents.highlightedItem_.textContent.trim()) {
|
| - Accents.highlightedItem_.classList.add('highlight');
|
| + goog.dom.classlist.add(Accents.highlightedItem_,
|
| + i18n.input.chrome.inputview.Css.ELEMENT_HIGHLIGHT);
|
| }
|
| }
|
| };
|
| @@ -77,7 +83,7 @@ Accents.highlightItem_ = function(x, y, offset) {
|
| Accents.getHighlightedItem_ = function(x, y, offset) {
|
| var dom = goog.dom.getDomHelper();
|
| var row = null;
|
| - var rows = dom.getElementsByClass('accent-row');
|
| + var rows = dom.getElementsByClass(i18n.input.chrome.inputview.Css.ACCENT_ROW);
|
| for (var i = 0; i < rows.length; i++) {
|
| var coordinate = goog.style.getClientPosition(rows[i]);
|
| var size = goog.style.getSize(rows[i]);
|
| @@ -121,39 +127,45 @@ Accents.getHighlightedItem_ = function(x, y, offset) {
|
| */
|
| Accents.setAccents_ = function(accents, numOfColumns, numOfRows, width,
|
| height, startKeyIndex) {
|
| - var container = document.createElement('div');
|
| + var TagName = goog.dom.TagName;
|
| + var dom = goog.dom.getDomHelper();
|
| + var container = dom.createDom(TagName.DIV, Css.ACCENT_CONTAINER);
|
| + goog.dom.setProperties(container, {
|
| + 'id' : 'container'
|
| + });
|
| container.id = 'container';
|
| - container.classList.add('accent-container');
|
|
|
| var orderedAccents = Accents.reorderAccents_(accents, numOfColumns, numOfRows,
|
| startKeyIndex);
|
| var row = null;
|
| for (var i = 0; i < orderedAccents.length; i++) {
|
| - var keyElem = document.createElement('div');
|
| + var keyElem = dom.createDom(TagName.DIV, Css.ACCENT_KEY);
|
| // Even if this is an empty key, we still need to add textDiv. Otherwise,
|
| // the keys have layout issues.
|
| - var textDiv = document.createElement('div');
|
| - textDiv.textContent =
|
| - i18n.input.chrome.inputview.util.getVisibleCharacter(
|
| - orderedAccents[i]);
|
| - textDiv.style.lineHeight = height + 'px';
|
| - keyElem.appendChild(textDiv);
|
| + var textDiv = dom.createElement(TagName.DIV);
|
| + var text = i18n.input.chrome.inputview.util.getVisibleCharacter(
|
| + orderedAccents[i]);
|
| + textDiv.textContent = text;
|
| + // If accent is a word use a smaller font size.
|
| + goog.dom.classlist.add(textDiv, text.length > 1 ? Css.FONT_SMALL :
|
| + Css.FONT);
|
| +
|
| + goog.style.setStyle(textDiv, 'lineHeight', height + 'px');
|
| + dom.appendChild(keyElem, textDiv);
|
| if (!orderedAccents[i]) {
|
| - keyElem.classList.add('empty-key');
|
| + goog.dom.classlist.add(keyElem, Css.ACCENT_EMPTY_KEY);
|
| }
|
| - keyElem.style.width = width + 'px';
|
| - keyElem.style.height = height + 'px';
|
| + goog.style.setSize(keyElem, width, height);
|
| if (i % numOfColumns == 0) {
|
| if (row) {
|
| container.appendChild(row);
|
| }
|
| - row = document.createElement('div');
|
| - row.classList.add('accent-row');
|
| + row = dom.createDom(TagName.DIV, Css.ACCENT_ROW);
|
| }
|
| - row.appendChild(keyElem);
|
| + dom.appendChild(row, keyElem);
|
| }
|
| - container.appendChild(row);
|
| - document.body.appendChild(container);
|
| + dom.appendChild(container, row);
|
| + dom.appendChild(document.body, container);
|
| };
|
|
|
|
|
|
|