character_walker.js revision cedac228d2dd51db4b79ea1e72c7f249408ee061
1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5/**
6 * @fileoverview A class for walking one character at a time.
7 */
8
9
10goog.provide('cvox.CharacterWalker');
11
12goog.require('cvox.AbstractSelectionWalker');
13goog.require('cvox.TraverseContent');
14
15/**
16 * @constructor
17 * @extends {cvox.AbstractSelectionWalker}
18 */
19cvox.CharacterWalker = function() {
20  cvox.AbstractSelectionWalker.call(this);
21  this.grain = cvox.TraverseContent.kCharacter;
22};
23goog.inherits(cvox.CharacterWalker, cvox.AbstractSelectionWalker);
24
25/**
26 * @override
27 */
28cvox.CharacterWalker.prototype.getDescription = function(prevSel, sel) {
29  var desc = goog.base(this, 'getDescription', prevSel, sel);
30  desc.forEach(function(item) {
31    if (!item.personality) {
32      item.personality = {};
33    }
34    item.personality['phoneticCharacters'] = true;
35  });
36  return desc;
37};
38
39/**
40 * @override
41 */
42cvox.CharacterWalker.prototype.getGranularityMsg = function() {
43  return cvox.ChromeVox.msgs.getMsg('character_granularity');
44};
45