-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathextension.js
43 lines (38 loc) · 1015 Bytes
/
extension.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
browser.browserAction.onClicked.addListener(runSpeedReader);
function runSpeedReader() {
browser.storage.sync.get('speed-reader-settings').then(e => {
const settings = {
fontFamily: 'monospace',
backgroundColor: 'hsl(0, 0%, 15%)',
textColor: 'hsl(0, 0%, 90%)',
middleLetterColor: 'hsl(25, 50%, 50%)',
fontSize: '30px',
fullScreen: false,
width: '90%',
height: 'auto',
speedIncrement: 50,
intialSpeed: 400,
wordAmount: 1,
...(e['speed-reader-settings'] || {})
};
browser.tabs.executeScript({
code: `
window.speedReaderSettings = ${JSON.stringify(settings)};
`
});
browser.tabs.executeScript({
file: '/build/speed-reader.js'
});
});
}
// context menu
browser.contextMenus.create({
id: "speed-reader",
title: "Speed Reader",
contexts: ["selection"]
});
browser.contextMenus.onClicked.addListener((info) => {
if (info.menuItemId == "speed-reader") {
runSpeedReader();
}
});