x11/gl is not thread-safe, so all x11/gl related API should be called
from one thread. There's already a dedicated thread for GL calls, so
move all x11 API calls to GL thread using gl.Do(...)
Fixesgolang/go#11066
Change-Id: If84a8d56e978ce30d7fbbc310740fcc794ce61d7
Reviewed-on: https://go-review.googlesource.com/10744
Reviewed-by: Nigel Tao <nigeltao@golang.org>
- Fix hangs on linux/x11. x11-related code remains outdated since
068a51c19, which seperates GL calls to dedicated thread. Update x11
code to work with GL thread.
- Fix bug on coordinate system. x11 has same coordinate system with
android, (0,0) on top-left.
Change-Id: I0b3ab97fd4842b1c9f730e1c90a5840f540fcb7a
Reviewed-on: https://go-review.googlesource.com/10623
Reviewed-by: David Crawshaw <crawshaw@golang.org>
When the preferred visual returned by EGL is different from the parent
window's visual, a private colormap is needed in the call to
XCreateWindow. See X server source code
http://cgit.freedesktop.org/xorg/xserver/tree/dix/window.c#n708
This patch systematically creates a TrueColor XColormap, regardless of
the visual returned by eglGetConfigAttrib().
Fixes#9997
Change-Id: I3caf7c6d46991b1f0268e72197fca5186612b5da
Reviewed-on: https://go-review.googlesource.com/6260
Reviewed-by: David Crawshaw <crawshaw@golang.org>
Reviewed-by: Nigel Tao <nigeltao@golang.org>