aboutsummaryrefslogtreecommitdiff
path: root/ext/bg/js/search.js
diff options
context:
space:
mode:
authorsiikamiika <siikamiika@users.noreply.github.com>2019-10-27 15:46:27 +0200
committersiikamiika <siikamiika@users.noreply.github.com>2019-10-27 15:46:27 +0200
commit48776145d6bdb8aff82e82546583c790353e75b6 (patch)
tree738b1557aa7362948b7c52e8673fc514858a53a0 /ext/bg/js/search.js
parentd3f51690f8bb236d1ba3c79c20b3a60d3e62dc52 (diff)
add workaround to Chrome clipboard.readText
For some reason this doesn't work on Firefox, so keep using the new API for Firefox
Diffstat (limited to 'ext/bg/js/search.js')
-rw-r--r--ext/bg/js/search.js14
1 files changed, 13 insertions, 1 deletions
diff --git a/ext/bg/js/search.js b/ext/bg/js/search.js
index a09ca822..dca4e8fa 100644
--- a/ext/bg/js/search.js
+++ b/ext/bg/js/search.js
@@ -17,6 +17,12 @@
*/
+let IS_FIREFOX = null;
+(async () => {
+ const {browser} = await apiGetEnvironmentInfo();
+ IS_FIREFOX = ['firefox', 'firefox-mobile'].includes(browser);
+})();
+
class DisplaySearch extends Display {
constructor() {
super(document.querySelector('#spinner'), document.querySelector('#content'));
@@ -235,7 +241,13 @@ class DisplaySearch extends Display {
startClipboardMonitor() {
this.clipboardMonitorIntervalId = setInterval(async () => {
- const curText = (await navigator.clipboard.readText()).trim();
+ let curText = null;
+ // TODO get rid of this and figure out why apiClipboardGet doesn't work on Firefox
+ if (IS_FIREFOX) {
+ curText = (await navigator.clipboard.readText()).trim();
+ } else if (IS_FIREFOX === false) {
+ curText = (await apiClipboardGet()).trim();
+ }
if (curText && (curText !== this.clipboardPrevText)) {
if (this.isWanakanaEnabled()) {
this.query.value = window.wanakana.toKana(curText);