Index: chrome/third_party/chromevox/extensions/searchvox/search_tools.js |
diff --git a/chrome/third_party/chromevox/extensions/searchvox/search_tools.js b/chrome/third_party/chromevox/extensions/searchvox/search_tools.js |
deleted file mode 100644 |
index 5025abe508ee6714a9463e989d4ea8cd24db40ed..0000000000000000000000000000000000000000 |
--- a/chrome/third_party/chromevox/extensions/searchvox/search_tools.js |
+++ /dev/null |
@@ -1,206 +0,0 @@ |
-// Copyright 2013 Google Inc. All Rights Reserved. |
- |
-/** |
- * @fileoverview Uses ChromeVox API to access the search tools menu. |
- * @author peterxiao@google.com (Peter Xiao) |
- */ |
- |
-goog.provide('cvox.SearchTool'); |
- |
-goog.require('cvox.ChromeVox'); |
-goog.require('cvox.DomUtil'); |
-goog.require('cvox.Search'); |
-goog.require('cvox.SearchConstants'); |
-goog.require('cvox.SearchUtil'); |
- |
-/** |
- * @constructor |
- */ |
-cvox.SearchTool = function() { |
-}; |
- |
-/** |
- * Index of the current menu in focus. |
- * @type {number} |
- */ |
-cvox.SearchTool.menuIndex; |
- |
-/** |
- * Array of menus. |
- * @type {Array.<Node>} |
- */ |
-cvox.SearchTool.menus = []; |
- |
-/** |
- * Index of the current menu item in focus. |
- * @type {number} |
- */ |
-cvox.SearchTool.menuItemIndex; |
- |
-/** |
- * Array of menu items for the current menu. |
- * @type {Array.<Node>} |
- */ |
-cvox.SearchTool.menuItems = []; |
- |
-/** |
- * Id of the clear button. |
- * @type {string} |
- */ |
-cvox.SearchTool.CLEAR_ID = 'hdtb_rst'; |
- |
-/** |
- * Toggles a menu open / close by simulating a click. |
- */ |
-cvox.SearchTool.toggleMenu = function() { |
- var menu = cvox.SearchTool.menus[cvox.SearchTool.menuIndex]; |
- var menuDiv = menu.previousSibling; |
- cvox.DomUtil.clickElem(menuDiv, false, false, false); |
-}; |
- |
-/** |
- * Syncs the first item in the current menu to ChromeVox. |
- */ |
-cvox.SearchTool.syncToMenu = function() { |
- cvox.SearchTool.menuItemIndex = 0; |
- cvox.SearchTool.toggleMenu(); |
- cvox.SearchTool.populateMenuItems(); |
- cvox.SearchTool.syncToMenuItem(); |
-}; |
- |
-/** |
- * Syncs the current menu item to ChromeVox. |
- */ |
-cvox.SearchTool.syncToMenuItem = function() { |
- var menuItem = cvox.SearchTool.menuItems[cvox.SearchTool.menuItemIndex]; |
- cvox.ChromeVox.syncToNode(menuItem, true); |
-}; |
- |
-/** |
- * Fills in menuItems with the current menu's items. |
- */ |
-cvox.SearchTool.populateMenuItems = function() { |
- var menu = cvox.SearchTool.menus[cvox.SearchTool.menuIndex]; |
- cvox.SearchTool.menuItems = []; |
- /* For now, we just special case on the clear button. */ |
- if (menu.id !== cvox.SearchTool.CLEAR_ID) { |
- var MENU_ITEM_SELECTOR = '.hdtbItm'; |
- var menuItemNodeList = menu.querySelectorAll(MENU_ITEM_SELECTOR); |
- for (var i = 0; i < menuItemNodeList.length; i++) { |
- cvox.SearchTool.menuItems.push(menuItemNodeList.item(i)); |
- } |
- } else { |
- cvox.SearchTool.menuItems = []; |
- cvox.SearchTool.menuItems.push(menu); |
- } |
-}; |
- |
-/** |
- * Fills in menus with the menus of the page. |
- */ |
-cvox.SearchTool.populateMenus = function() { |
- var MENU_SELECTOR = '.hdtbU'; |
- var menuDivs = document.querySelectorAll(MENU_SELECTOR); |
- for (var i = 0; i < menuDivs.length; i++) { |
- cvox.SearchTool.menus.push(menuDivs.item(i)); |
- } |
- |
- var clearDiv = document.getElementById(cvox.SearchTool.CLEAR_ID); |
- if (clearDiv) { |
- cvox.SearchTool.menus.push(clearDiv); |
- } |
-}; |
- |
-/** |
- * Switches focus to the tools interface, giving keyboard access. |
- */ |
-cvox.SearchTool.activateTools = function() { |
- var MENU_BAR_SELECTOR = '#hdtbMenus'; |
- var menuBar = document.querySelector(MENU_BAR_SELECTOR); |
- var MENUS_OPEN_CLASS = 'hdtb-td-o'; |
- menuBar.className = MENUS_OPEN_CLASS; |
- |
- cvox.SearchTool.populateMenus(); |
- cvox.SearchTool.menuIndex = 0; |
- cvox.SearchTool.syncToMenu(); |
-}; |
- |
-/** |
- * Goes to the link of the current menu item action. |
- */ |
-cvox.SearchTool.gotoMenuItem = function() { |
- var menuItem = cvox.SearchTool.menuItems[cvox.SearchTool.menuItemIndex]; |
- var LOCATION_INPUT_ID = '#lc-input'; |
- var input = menuItem.querySelector(LOCATION_INPUT_ID); |
- /* Special case for setting location. */ |
- if (input) { |
- input.focus(); |
- return; |
- } |
- |
- /* Custom Date Range. */ |
- var CDR_ID = 'cdr_opt'; |
- switch (menuItem.id) { |
- case cvox.SearchTool.CLEAR_ID: |
- window.location = menuItem.dataset.url; |
- break; |
- case CDR_ID: |
- var CDR_LINK_SELECTOR = '#cdrlnk'; |
- var cdrLink = menuItem.querySelector(CDR_LINK_SELECTOR); |
- cvox.DomUtil.clickElem(cdrLink, false, false, false); |
- cvox.SearchTool.toggleMenu(); |
- break; |
- default: |
- window.location = cvox.SearchUtil.extractURL(menuItem); |
- break; |
- } |
-}; |
- |
-/** |
- * Handles key events for the tools interface. |
- * @param {Event} evt Keydown event. |
- * @return {boolean} True if key was handled, false otherwise. |
- */ |
-cvox.SearchTool.keyhandler = function(evt) { |
- if (cvox.SearchUtil.isSearchWidgetActive()) { |
- return false; |
- } |
- |
- switch (evt.keyCode) { |
- case cvox.SearchConstants.KeyCode.UP: |
- cvox.SearchTool.menuItemIndex = cvox.SearchUtil.subOneWrap( |
- cvox.SearchTool.menuItemIndex, cvox.SearchTool.menuItems.length); |
- cvox.SearchTool.syncToMenuItem(); |
- break; |
- |
- case cvox.SearchConstants.KeyCode.DOWN: |
- cvox.SearchTool.menuItemIndex = cvox.SearchUtil.addOneWrap( |
- cvox.SearchTool.menuItemIndex, cvox.SearchTool.menuItems.length); |
- cvox.SearchTool.syncToMenuItem(); |
- break; |
- |
- case cvox.SearchConstants.KeyCode.LEFT: |
- cvox.SearchTool.toggleMenu(); |
- cvox.SearchTool.menuIndex = cvox.SearchUtil.subOneWrap( |
- cvox.SearchTool.menuIndex, cvox.SearchTool.menus.length); |
- cvox.SearchTool.syncToMenu(); |
- break; |
- |
- case cvox.SearchConstants.KeyCode.RIGHT: |
- cvox.SearchTool.toggleMenu(); |
- cvox.SearchTool.menuIndex = cvox.SearchUtil.addOneWrap( |
- cvox.SearchTool.menuIndex, cvox.SearchTool.menus.length); |
- cvox.SearchTool.syncToMenu(); |
- break; |
- |
- case cvox.SearchConstants.KeyCode.ENTER: |
- cvox.SearchTool.gotoMenuItem(); |
- break; |
- |
- default: |
- return false; |
- } |
- evt.preventDefault(); |
- evt.stopPropagation(); |
- return true; |
-}; |