Hi,
GTK issue
I build gtk3 and test testglarea program, it can't show color triangle.
SOC: RK3288W
kernel: 4.4.103 (git://github.com/rockchip-linux/kernel.git branch release-4.4)
mali version: libmali-midgard-t76x-r14p0-r1p0-wayland.so
gtk version: gtk+-3.24.20
gtk config:
./configure \ --target=arm-linux \ --host=arm-linux \ --enable-wayland-backend \ --disable-x11-backend \ --disable-dependency-tracking \ --disable-win32-backend \ --disable-quartz-backend \ --disable-broadway-backend \ --disable-silent-rules \ --disable-gtk-doc \ --disable-maintainer-mode \ --disable-schemas-compile \ --disable-xinerama \ --disable-mir-backend \ --disable-papi \ --disable-glibtest \ --disable-xinerama \ --enable-modules \ --disable-cups \ --disable-colord \ --disable-gtk-doc \ --disable-introspection
program: testglarea
result 1: it show No GL implement message
result 2:
I try to remove https://gitlab.gnome.org/GNOME/gtk/-/blob/master/gdk/wayland/gdkglcontext-wayland.c#L338 and L338, it seems to display something, but color triangle wouldn't be displayed.
WebKit issue
Webkit version: webkitgtk-2.26.4
config:
cmake -DCMAKE_BUILD_TYPE=Release \-DPORT=GTK \-DENABLE_MINIBROWSER=ON \-DPYTHON_EXECUTABLE=`which python3` \-DENABLE_BUBBLEWRAP_SANDBOX=OFF \-DENABLE_WAYLAND_TARGET=ON \-DENABLE_X11_TARGET=OFF \-DENABLE_GEOLOCATION=OFF \-DENABLE_SPELLCHECK=OFF \-DENABLE_OPENGL=ON \-DENABLE_GLES2=ON \-DENABLE_JIT=OFF \-DENABLE_WEBGL=ON \-DUSE_GSTREAMER_GL=OFF \-DUSE_EGL=ON \-DUSE_OPENGL_ES=ON \-DUSE_WPE_RENDERER=OFF \-DUSE_LIBSECRET=OFF \-DUSE_LIBNOTIFY=OFF \-DUSE_LIBHYPHEN=OFF \-DUSE_OPENJPEG=OFF \../
program: MiniBrowser
result: It can't show any item within browser. And terminal shows error message "EGLDisplay Initialization failed: EGL_NOT_INITIALIZED".
Have any solution to fix them.
Thanks
For Gtk issue, i find out egl context can't be shared.
Since framebuffer name in https://gitlab.gnome.org/GNOME/gtk/-/blob/master/gtk/gtkglarea.c#L369 and https://gitlab.gnome.org/GNOME/gtk/-/blob/master/gdk/gdkgl.c#L353 are the same.
If framebuffer is shared, they should be different.
I try it in rpi-3 with wayland distribution(ttps://www.enlightenment.org/news/2019-07-29-arch-arm-enlightenment-rpi). They are different indeed.
For Webkit issue.
I find out eglintialize would fail when wayland display uses webkit-wayland-compositor display name(https://github.com/WebKit/webkit/blob/master/Source/WebKit/WebProcess/gtk/WaylandCompositorDisplay.cpp#L45).
Above 2 problems, i try them on rpi-3 with enlightenment os, and they work normally.