summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
Diffstat (limited to 'ext')
-rw-r--r--ext/bg/import.html2
-rw-r--r--ext/bg/js/import.js13
-rw-r--r--ext/bg/js/options.js10
-rw-r--r--ext/bg/js/yomichan.js2
4 files changed, 21 insertions, 6 deletions
diff --git a/ext/bg/import.html b/ext/bg/import.html
index 47483c25..85841eee 100644
--- a/ext/bg/import.html
+++ b/ext/bg/import.html
@@ -15,7 +15,7 @@
<p>Importing dictionary data, this can take a while...</p>
<div class="progress">
- <div class="progress-bar" style="width: 0%" />
+ <div class="progress-bar progress-bar-striped" style="width: 0%">0%</div>
</div>
</div>
diff --git a/ext/bg/js/import.js b/ext/bg/js/import.js
index 905b4580..ebc7c7be 100644
--- a/ext/bg/js/import.js
+++ b/ext/bg/js/import.js
@@ -17,7 +17,16 @@
*/
-chrome.runtime.onMessage.addListener(({state, progress}, sender, callback) => {
- $('.progress-bar').css('width', progress + '%');
+function api_setProgress({state, progress}) {
+ const str = `${progress}%`;
+ $('.progress-bar').css('width', str).text(str);
+}
+
+chrome.runtime.onMessage.addListener(({action, params}, sender, callback) => {
+ const method = this['api_' + action];
+ if (typeof(method) === 'function') {
+ method.call(this, params);
+ }
+
callback();
});
diff --git a/ext/bg/js/options.js b/ext/bg/js/options.js
index 290b5b05..83eb1f0a 100644
--- a/ext/bg/js/options.js
+++ b/ext/bg/js/options.js
@@ -47,9 +47,15 @@ function sanitizeOptions(options) {
}
function loadOptions() {
- return new Promise((resolve, reject) => chrome.storage.sync.get(null, resolve));
+ return new Promise((resolve, reject) => {
+ chrome.storage.sync.get(null, opts => {
+ resolve(sanitizeOptions(opts));
+ });
+ });
}
function saveOptions(opts) {
- return new Promise((resolve, reject) => chrome.storage.sync.set(sanitizeOptions(opts), resolve));
+ return new Promise((resolve, reject) => {
+ chrome.storage.sync.set(sanitizeOptions(opts), resolve);
+ });
}
diff --git a/ext/bg/js/yomichan.js b/ext/bg/js/yomichan.js
index bec34691..24ddf92d 100644
--- a/ext/bg/js/yomichan.js
+++ b/ext/bg/js/yomichan.js
@@ -54,7 +54,7 @@ class Yomichan {
}
if (this.importTabId !== null) {
- chrome.tabs.sendMessage(this.importTabId, {state, progress}, () => null);
+ this.tabInvoke(this.importTabId, 'setProgress', {state, progress});
}
if (state === 'end') {