Giter VIP home page Giter VIP logo

Comments (17)

ashie avatar ashie commented on June 2, 2024 2

GTK+-3.18.9に上げていくつか問題を修正したところ、EGL有効化時のフリッカーがまったく
発生しなくなった。
また、非常にad-hocな修正だがウィンドウ枠を表示しないようにしたところ、EGL有効化時の
マウス入力のズレも解消した。

最終版では根本的な見直しが必要だが、フルスクリーンデモ用であれば、ようやく人前に出せる
ようになってきた。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

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.

ashie avatar ashie commented on June 2, 2024
  • GTK+3.12は対応が不十分で、うまく動作しないことを確認している。
  • Weston-1.6とGTK+-3.14ではある程度改善することを確認した。
  • 上記バージョン以降のWestonはRZ/G1Eではクラッシュして起動を確認できていない(プロプライエタリドライバの問題と思われる)
  • PC上ではGTK+-3.20で更なる改善が見られる
    • ポップアップウィンドウのサイズが小さくなる問題が解消する

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

Weston-1.6とGTK+-3.14では改善することを確認した。

実験のために作ったYoctoレイヤーを以下に置いておく。
名前も含めてまだ整理できていないので、あくまで一時置き場。

https://github.com/ashie/meta-mozwayland

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

ビルド方法は下記の手順に加えて

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.

ashie avatar ashie commented on June 2, 2024

同一バージョンの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.

ashie avatar ashie commented on June 2, 2024

GTK+-3.20はwayland-1.9.91以上を要求するので、3.20以上に上げるのは無理か。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

以下にGTK+-3.16での修正例を置いておく。

https://github.com/ashie/meta-mozwayland/tree/gtk+-3.16

gtk+-3.18で問題無さそう(現状のgtk+-3.14よりはマシ)なので、masterに3.18を入れて
上記ブランチは消した。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

デフォルトでは適切なカーソルテーマがインストールされておらず、カーソルが表示されないことがある。マウスで使う場合は何かインストールしておいた方が良さそう。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

デフォルトでは適切なカーソルテーマがインストールされておらず、カーソルが表示されないことがある。マウスで使う場合は何かインストールしておいた方が良さそう。

カーソルだけではなく、アイコンテーマもデフォルトではインストールされていない。
以下はデフォルトでインストールしておきたいところだが、どこで指定するのがスジだろう?

  • adwaita-icon-theme
  • adwaita-icon-theme-cursors
  • (adwaita-icon-theme-hires)

ちなみに元にしたpokyのgtk+3のレシピではGTKBASE_RRECOMMENDS に adwaita-icon-theme-symbolicが指定されているが、

https://github.com/ashie/meta-mozwayland/tree/gtk+-3.16

では試行錯誤の過程で外してしまっていたようだ(一段落したら、ちゃんとバージョン管理するためにリポジトリを作り直したい)。とはいえRRECOMMENDSなので、これを追加したところでデフォルトでインストールされないのは変わらないようだ。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

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.

ashie avatar ashie commented on June 2, 2024

カーソルだけではなく、アイコンテーマもデフォルトではインストールされていない。
以下はデフォルトでインストールしておきたいところだが、どこで指定するのがスジだろう?

このレイヤにcore-image-weston.bbappendを追加し、adwaita-icon-themeとadwaita-icon-theme-cursorsを追加インストールするようにした。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

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.

ashie avatar ashie commented on June 2, 2024

gtk-icon-utils-nativeを入れるのは意外と影響が大きそうなので、後回しにしておく。

もう少し調べてみたらそうでもなかったので対応しておく。
依存性で引きずられるlibiconv-nativeのビルドに失敗して面倒くさいと思ってしまったが、nativeならば、iconvくらいホスト側にあると仮定してしまって良いだろう。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

まだ十分では無いが、標準のGTK+-3.10よりはマシなので、以下のビルド手順に追加した。

https://github.com/mozilla-japan/meta-browser/wiki/Build-RZ-G1E

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

現時点の限界までは上げたので、いったんクローズする。
レシピの移動・整理は別issueを立てる。

from gecko-embedded.

ashie avatar ashie commented on June 2, 2024

続きは #2#20

from gecko-embedded.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.