(解決)takker99/HelpLineをFirefoxで使うと段階的キーワード検索が使えない?
突貫工事と書いているのでそこはまだなのかもしれない
Pull Requestを出すのがいいのかな
もし修正していただけるなら助かりますが、無理していただかなくても大丈夫ですtakker.icon
どこでミスったんだろうか……takker.icon
単に書き換えただけなのだが……うーん
ぱっと見、問題ないように見えますね基素.icon
code:diff
//
// ユーザがメニューを選択したとき呼ばれるもの
//
-chrome.omnibox.onInputEntered.addListener(function(text) {
+browser.omnibox.onInputEntered.addListener(async (text) => {
if(text.match(/^http/)){
- window.open(text) // location.href = は動かない
+ browser.tabs.update({ url: text });
} else {
- .then(response => response.text())
+ const data = await response.text();
- .then(data => {
- if(data.match("GoQuick Login")){
- window.open(https://google.com/search?q=${text})
- }
- else {
- }
- })
+ browser.tabs.update({
+ url: data.match("GoQuick Login")
+ ? https://google.com/search?q=${text}
+ : http://goquick.org/${text},
+ });
}
});
どのページのHelpfeelで失敗しましたか?
状況はこんな感じです基素.icon
mac Firefoxで使いました
masui版Helpline(Chrome)だと、omniboxにgoquickで登録しているキーワードを入力すると、goquickで指定したページにジャンプする
https://gyazo.com/2e42334bde7f2bf343b69b0727b7b12fこの状態でジャンプするとscrapbox/motoso-gtdを開ける
goquickにログインしていなければGoogleでgtdが検索される
この機能が動かなかったです
常にGoogle検索になってしまう
原因を探ってみた基素.icon
goquickへのリクエストはちゃんとしていた
https://gyazo.com/412798104ff3cc836614d7429339b97a
ログインはしているのに、なぜだろう?
(コードがhttpとhttpsで揺れているのも気になる)
Chromeではちゃんと動くのかな?
動いてる!
GoQuickつかっていなかったので、さすがにログイン周りのテストまではできませんでした……takker.icon
使ってなかったらやらないですね基素.icon
上のログを見ると302 Foundでgoquick.org/_login にアクセスしにいってる
/_login はつねにログインページが出るのだから、ログイン画面にならない
なぜFirefoxでは/へのアクセスが200ではなく302になってるのだろう?
ビンゴ
こうしたらなおった基素.icon
fetch APIでcookieを送るように変更
manifest.jsonにgoquickのhost権限を追加
そのオリジンに対して、クロス-オリジン制約なしに XMLHttpRequest アクセス、 fetch アクセスができる権限 (コンテンツスクリプトからのリクエストによるものも含みます)
Pull Request作ります基素.icon
できた
/vim-jp-emojis/wa-wa-1.icon/icons/感謝.icontakker.icon