// Copyright 2014 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 A JavaScript class for walking lines. */ goog.provide('cvox.StructuralLineWalker'); goog.require('cvox.AbstractSelectionWalker'); goog.require('cvox.TraverseContent'); /** * @constructor * @extends {cvox.AbstractSelectionWalker} */ cvox.StructuralLineWalker = function() { goog.base(this); this.grain = cvox.TraverseContent.kLine; }; goog.inherits(cvox.StructuralLineWalker, cvox.AbstractSelectionWalker); /** * @override */ cvox.StructuralLineWalker.prototype.getGranularityMsg = function() { return cvox.ChromeVox.msgs.getMsg('structural_line'); }; /** * @override */ cvox.StructuralLineWalker.prototype.getDescription = function(prevSel, sel) { var desc = goog.base(this, 'getDescription', prevSel, sel); desc[0].text = cvox.DomUtil.getPrefixText( sel.absStart().node, sel.absStart().index) + desc[0].text; return desc; }; /** * @override */ cvox.StructuralLineWalker.prototype.getBraille = function(prevSel, sel) { var braille = goog.base(this, 'getBraille', prevSel, sel); var objNode = this.objWalker_.sync(sel).absStart().node; var node = sel.absStart().node; var prevNode = prevSel.absEnd().node; // Show only the visible line in braille for DOM ranges. This overrides any // labels computed for the node. // //