Preferences

dynamis edited this page Apr 17, 2018 · 8 revisions

Gecko の設定について

Gecko Embedded で使って言う上で設定変更したくなることがよくある設定 (about:config ページや prefs ファイルで指定する項目) に関するメモです。

Gecko エンジンの動作設定

Hardware Acceleration

  • layers.acceleration.disabled *
  • layers.acceleration.force-enabled
    • これを true にすると HW Compositing が利用できないと判定された場合でも GPU を利用する

e10s (マルチプロセス) 関連

e10s の有効・無効や有効時のプロセス数の設定。設定変更結果は about:support の「マルチプロセスウインドウ: 2/2 (ユーザー設定により有効)」などで確認できる。

  • browser.tabs.remote.autostart, browser.tabs.remote.autostart.2
    • e10s 有効化の基本設定。有効化するには true を設定
  • browser.tabs.remote.force-enable
  • extensions.e10sBlocksEnabling, extensions.e10sBlockedByAddons
  • browser.tabs.remote.force-disable
    • e10s 強制無効化
  • dom.ipc.processCount
    • e10s 有効化時のプロセス数。多くするとメモリ消費が大きくなりすぎるので注意

RZ/G1 シリーズでは ハード/BSP の制限で EGL ウィンドウが一つしか作れない都合、egl による GPU アクセラレーションと canvas-gpu アクセラレーションや (未検証だが) WebGL などと共存できないため e10s はオフにすることになりそう。

Stylo

Servo から移植したスタイルエンジン Stylo の有効・無効の設定。設定変更結果は about:support の「Stylo: content = true (デフォルトで有効), chrome = true (デフォルトで有効)」で確認できる。see: https://wiki.mozilla.org/Quantum/Stylo

  • layout.css.servo.enabled
    • true にすると有効かされる。

タッチイベント

  • dom.w3c_touch_events.enabled
    • 標準のタッチイベントに対して無効 (0)、有効 (1)、自動検出 (2) を指定でき、既定値は自動検出 (2)

SpiderMonkey の動作設定

  • javascript.options.baselinejit
    • ベースライン JIT の有効・無効を切り替える (ブラウザ自体の再起動不要)
  • javascript.options.ion
    • IonMonkey による最適化 JIT の有効・無効を切り替える (ブラウザ自体の再起動不要)
    • ベースライン JIT 無効化時はこちらも無効になっているハズ
  • dom.max_script_run_time
    • コンテンツの JavaScript が重すぎる場合に中断するかどうか確認するまでの時間を指定する。重たいベンチを動作させるときに事前に設定しておくとよい。

デバッグ関連

フレームレート表示

  • layers.acceleration.draw-fps
    • true にすると左上にフレームレートが表示される

レイヤー境界の表示

  • layers.draw-borders
    • true にするとコンポジットレイヤーの境界線が表示される。CSS Transition/Animation の開始が遅い場合などは適切なレイヤーが検出されているか確認、されていなければ will-change 設定をして指示をするといった対応が必要。

リモートデバッグ

  • devtools.debugger.remote-enabled
    • リモートでバッグを許可するには true を設定。次の項目も合わせて true にする必要あり
  • devtools.debugger.usb.enabled = true
    • USB 経由のリモートでバッグを許可するには true を設定
  • devtools.debugger.prompt-connection
    • 接続時に許可ボタンを押さなくとも自動接続させたければ false を設定
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.