webdino / amethyst

Simple WebViewer App for embedded systems (patches for Firefox/Gecko)
https://gecko-embedded.org/docs/webviewer/
5 stars 1 forks source link

リモートデバッグが可能か確認する #5

Closed dynamis closed 5 years ago

dynamis commented 5 years ago

browser.xul を使わずともリモートデバッグは (元々任意の chrome ウィンドウに対して可能だし) 可能であることを期待しているが、普通にコードを書いただけで実際動くかどうかは怪しいので、要確認。

技術的な制約がない限り、通常の Firefox での開発に近い開発環境を再現可能にしたい。

hATrayflood commented 5 years ago

amethyst側で./mach run --start-debugger-serverで起動して、firefoxのWebIDEからリモートランタイムでホスト名とポートを指定すると接続できましたが、タブ一覧が何もない状態なのでコンテンツのデバッグができませんでした。 webviewer-remotedebug つなぎ込みの部分がどうなってるか調べてみます。 @dynamis

dynamis commented 5 years ago

Ebisu ボード上でも (WebIDE でなくconnect... chrome://devtools/content/framework/connect/connect.xhtml の方で) 同様に Main Process には接続してデバッグが一通り動作することを確認しましたが、Content Process のリストには入ってこないためコンテンツのデバッグは難しい状況だと確認しました。

Inspector では iframe 経由で中まで見てスタイル変更なども可能だしコンテンツ側にブレークポイントを設定することも可能なので、全く何も出来ないわけじゃないが、外側に何か Wrap されてるから ifram 内のデバッグを外からそのままやるのに慣れてる人じゃ無いと無理な状況ですね。

...と一瞬思ったけど Main Process に接続してから開発ツール右上の iframe 選択ボタンからコンテンツ領域を選択できるので、ちょっと手間が掛かるだけで普通にデバッグできますね。

一手間掛かるだけなので調査・解決が難しければ Main Process に接続できる現状で問題ありません。

dynamis commented 5 years ago

コンテンツ部分は Available Remote Tabs という扱いになっているし、TabBrowser 使わないと出てこないんじゃないでしょうか。だとすれば今回タブブラウザ機能をサポートしないという前提で始めているので、Tab に直接リモートデバッグできないのは制限事項で良いかと思います。

dynamis commented 5 years ago

リモートデバッグが可能ではあることを確認できたのでクローズします。 できれば直接繋ぎたい件は #30 にて。

dynamis commented 5 years ago

note: デフォルト設定ではリモートからリモートデバッグできないとか接続時にダイアログがでるけど押せない問題は prefs.js に設定をいれておくこと: https://github.com/webdino/meta-browser/wiki/Tips-RZ-G2