Comments (17)
GTK+-3.18.9に上げていくつか問題を修正したところ、EGL有効化時のフリッカーがまったく
発生しなくなった。
また、非常にad-hocな修正だがウィンドウ枠を表示しないようにしたところ、EGL有効化時の
マウス入力のズレも解消した。
最終版では根本的な見直しが必要だが、フルスクリーンデモ用であれば、ようやく人前に出せる
ようになってきた。
from gecko-embedded.
WestonとGTK+の各バージョンでサポートしているxdg_shellプロトコルのバージョンは以下の通り。
Westonバージョン | xdg_shellバージョン |
---|---|
1.5 | 3 |
1.6 | 4 |
1.7 | 4 |
1.8 | 5 |
1.9 | 5 |
1.10 | 5(wayland-protocolsに分離) |
GTK+バージョン | xdg_shellバージョン |
---|---|
3.10 | - |
3.12 | 3 |
3.14 | 4 |
3.16 | 5 |
3.18 | 5 |
3.20 | 5(wayland-protocolsに分離) |
同一バージョンのxdg_shellを使うように合わせないと、うまく動作しないようだ。
RZ/G1EでのWestonとGTK+のバージョンは以下の通り:
- Weston-1.5.0
- GTK+-3.10.7
from gecko-embedded.
- GTK+3.12は対応が不十分で、うまく動作しないことを確認している。
- Weston-1.6とGTK+-3.14ではある程度改善することを確認した。
- 上記バージョン以降のWestonはRZ/G1Eではクラッシュして起動を確認できていない(プロプライエタリドライバの問題と思われる)
- PC上ではGTK+-3.20で更なる改善が見られる
- ポップアップウィンドウのサイズが小さくなる問題が解消する
from gecko-embedded.
Weston-1.6とGTK+-3.14では改善することを確認した。
実験のために作ったYoctoレイヤーを以下に置いておく。
名前も含めてまだ整理できていないので、あくまで一時置き場。
https://github.com/ashie/meta-mozwayland
from gecko-embedded.
ビルド方法は下記の手順に加えて
https://github.com/mozilla-japan/meta-browser/wiki/Build-RZ-G1E
ビルドディレクトリに上記レイヤをcloneし
$ cd $WORK
$ git clone https://github.com/ashie/meta-mozwayland.git
conf/bblayers.confに以下を追加
BBLAYERS += "${TOPDIR}/../meta-mozwayland"
あとは通常と同様にbitbake
$ bitbake core-image-weston
from gecko-embedded.
同一バージョンのxdg_shellを使うように合わせないと、うまく動作しないようだ。
Weston-1.6とGTK+-3.14ではある程度改善することを確認した。
上記バージョン以降のWestonはRZ/G1Eではクラッシュして起動を確認できていない(プロプライエタリドライバの問題と思われる)
xdg-shellのバージョンをGTK+側で下げるか、weston側で上げる修正を入れれば、weston-1.6のままでGTK+を更に新しいバージョンに上げることができる。GTK+-3.18までは動作を確認できた。ロケーションバー等の動作が改善した。
以下にGTK+-3.16での修正例を置いておく。
https://github.com/ashie/meta-mozwayland/tree/gtk+-3.16
from gecko-embedded.
GTK+-3.20はwayland-1.9.91以上を要求するので、3.20以上に上げるのは無理か。
from gecko-embedded.
以下にGTK+-3.16での修正例を置いておく。
gtk+-3.18で問題無さそう(現状のgtk+-3.14よりはマシ)なので、masterに3.18を入れて
上記ブランチは消した。
from gecko-embedded.
デフォルトでは適切なカーソルテーマがインストールされておらず、カーソルが表示されないことがある。マウスで使う場合は何かインストールしておいた方が良さそう。
from gecko-embedded.
デフォルトでは適切なカーソルテーマがインストールされておらず、カーソルが表示されないことがある。マウスで使う場合は何かインストールしておいた方が良さそう。
カーソルだけではなく、アイコンテーマもデフォルトではインストールされていない。
以下はデフォルトでインストールしておきたいところだが、どこで指定するのがスジだろう?
- adwaita-icon-theme
- adwaita-icon-theme-cursors
- (adwaita-icon-theme-hires)
ちなみに元にしたpokyのgtk+3のレシピではGTKBASE_RRECOMMENDS に adwaita-icon-theme-symbolicが指定されているが、
では試行錯誤の過程で外してしまっていたようだ(一段落したら、ちゃんとバージョン管理するためにリポジトリを作り直したい)。とはいえRRECOMMENDSなので、これを追加したところでデフォルトでインストールされないのは変わらないようだ。
from gecko-embedded.
GTK+-3.18.9に上げていくつか問題を修正したところ、EGL有効化時のフリッカーがまったく
発生しなくなった。
GTK+-3.18の場合、ポップアップウィンドウ絡みでまだ色々問題が残っていることを確認している
- タイトルバーがコンテンツに被さる・ウィンドウサイズにタイトルバーのサイズが加算されない
- 右クリックメニューが表示後すぐに消える
- ポップアップメニュー上のボタンを押せない
- ...
これらの多くはWayland-1.10 + GTK+-3.20で解消することをPC上で確認しているが、RZ/G1EではまだWayland 1.7以上に上げることができておらず、またGTK+-3.18とGTK+-3.20の差分も小さくは無いので、解決は少し時間がかかりそう。
from gecko-embedded.
カーソルだけではなく、アイコンテーマもデフォルトではインストールされていない。
以下はデフォルトでインストールしておきたいところだが、どこで指定するのがスジだろう?
このレイヤにcore-image-weston.bbappendを追加し、adwaita-icon-themeとadwaita-icon-theme-cursorsを追加インストールするようにした。
from gecko-embedded.
gtk3-demoでアイコンが全てimage-missing.pngになってしまうのが少し気になる。
原因はadwaita-icon-theme-symbolicがビルドできていないから。
ビルドできない主な原因は、最近のpokyで提供されているgtk-icon-utils-nativeを入れていないからと思われる。(SVGをPNGに変換するのにgtk-encode-symbolic-svgを使用している)
Firefoxの場合、Webコンテンツを表示するだけなら特に問題は無いが、ファイル保存ダイアログ等を開くと、やはりアイコンが全部image-missing.pngになってしまう。
gtk-icon-utils-nativeを入れるのは意外と影響が大きそうなので、後回しにしておく。
from gecko-embedded.
gtk-icon-utils-nativeを入れるのは意外と影響が大きそうなので、後回しにしておく。
もう少し調べてみたらそうでもなかったので対応しておく。
依存性で引きずられるlibiconv-nativeのビルドに失敗して面倒くさいと思ってしまったが、nativeならば、iconvくらいホスト側にあると仮定してしまって良いだろう。
from gecko-embedded.
まだ十分では無いが、標準のGTK+-3.10よりはマシなので、以下のビルド手順に追加した。
https://github.com/mozilla-japan/meta-browser/wiki/Build-RZ-G1E
from gecko-embedded.
現時点の限界までは上げたので、いったんクローズする。
レシピの移動・整理は別issueを立てる。
from gecko-embedded.
from gecko-embedded.
Related Issues (20)
- Gecko 91 に向けての調査、検討 HOT 5
- Gecko 91 におけるリフロー無しズーム対応の確認 HOT 4
- Gecko 91 + RZ/G2 で about:support を開くとクラッシュする HOT 2
- Gecko 102 に向けての調査、検討 HOT 3
- Gecko 102 WebAssembly 動作確認 HOT 2
- RLBox 有効化
- Gecko 91/102 での WebRender 設定の調整 HOT 2
- Gecko 115 に向けての変更点確認 HOT 1
- Gecko 68 で about:support ページがクラッシュする HOT 4
- WebRender の検証とデフォルト有効化の検討 HOT 10
- RZ/G1E + VLP 2.1.0 or later + Gecko 60 で WebGL が正常動作しない HOT 4
- Gecko 68 on RZ/G2 で WebGL の FPS が低い HOT 27
- ブランチ運用について HOT 5
- Canvas の fillText が重たい問題の確認 HOT 1
- Gecko 78 に向けての調査、検討 HOT 8
- Tanzanite ローカル起動レシピの Gecko 68 以降対応 HOT 3
- RZ/G2 実機でのターゲット FPS が 90fps になっている? HOT 1
- RZ/G2E で FPS オーバーレイ表示が出来ない HOT 2
- Gecko 68 で e10s/APZ 無効時にタッチイベントが発行されない HOT 3
- HID デバイスがない場合に起動しない HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gecko-embedded.