2 * Copyright (c) 2011 The Chromium Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file.
9 function speakSelection() {
10 var focused = document.activeElement;
14 selectedText = focused.value.substring(
15 focused.selectionStart, focused.selectionEnd);
19 if (selectedText == undefined) {
20 var sel = window.getSelection();
21 var selectedText = sel.toString();
23 chrome.extension.sendRequest({'speak': selectedText});
26 function onExtensionMessage(request) {
27 if (request['speakSelection'] != undefined) {
28 if (!document.hasFocus()) {
32 } else if (request['key'] != undefined) {
33 speakKeyStr = request['key'];
37 function initContentScript() {
38 chrome.extension.onRequest.addListener(onExtensionMessage);
39 chrome.extension.sendRequest({'init': true}, onExtensionMessage);
41 document.addEventListener('keydown', function(evt) {
42 if (!document.hasFocus()) {
45 var keyStr = keyEventToString(evt);
46 if (keyStr == speakKeyStr && speakKeyStr.length > 0) {
48 evt.stopPropagation();