-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathbackground.html
49 lines (45 loc) · 1.56 KB
/
background.html
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
44
45
46
47
48
49
<script src="jquery.min.js"></script>
<script src="extensioner.js"></script>
<script>
var groupExtCount = {};
var groups = [];
function reload() {
chrome.management.getAll(function(extensionList) {
groups = loadGroups();
groupExtCount = enabledExtensionsForGroups(groups, extensionList);
chrome.omnibox.setDefaultSuggestion({description:'Enter a group name'});
});
}
chrome.omnibox.onInputStarted.addListener(function() {
reload();
});
chrome.omnibox.onInputChanged.addListener(function(text, cb) {
var result = [];
for(var a = 0; a < groups.length; a++) {
if(groups[a].name.toLowerCase().indexOf(text.toLowerCase()) >= 0) {
var description = groups[a].name.replace(text, '<match>' + text + '</match>');
var enable = groupExtCount[groups[a].name] == 0;
description += ' <dim>' + (enable ? 'enable' : 'disable') + ' group</dim>';
result.push({
content: groups[a].name,
description: description
});
if(groups[a].name == text) {
chrome.omnibox.setDefaultSuggestion({description:(enable ? 'Enable' : 'Disable') + ' group %s'});
} else {
chrome.omnibox.setDefaultSuggestion({description:'Enter a group name'});
}
}
}
cb(result);
});
chrome.omnibox.onInputEntered.addListener(function(text) {
for(var a = 0; a < groups.length; a++) {
if(groups[a].name == text) {
enableExtensions(groups[a].extensions, groupExtCount[groups[a].name] == 0);
return;
}
}
reload();
});
</script>