[PATCH] Use EGL_WAYLAND_Y_INVERTED_WL to query wl_buffer's orientation

Stanislav Vorobiov s.vorobiov at samsung.com
Thu Aug 29 23:29:44 PDT 2013


On 08/30/2013 08:15 AM, Kristian Høgsberg wrote:
> On Thu, Aug 29, 2013 at 12:11 AM, Stanislav Vorobiov
> <s.vorobiov at samsung.com> wrote:
>> On 08/29/2013 09:45 AM, Kristian Høgsberg wrote:
>>> On Wed, Aug 28, 2013 at 09:53:19AM +0400, Stanislav Vorobiov wrote:
>>>> Any comments on this one ?
>>>
>>> We already use 0x31D7... we could use 0x31DA I suppose.  The other
>> 0x31DA is also used, I guess it's 0x31DB
> 
> Where is 0x31DA used?
> 
> [krh at tokamak mesa]$ git grep -i 31da
> [krh at tokamak mesa]$
It's in weston-egl-ext.h:

#ifndef EGL_TEXTURE_EXTERNAL_WL
#define EGL_TEXTURE_EXTERNAL_WL         0x31DA
#endif

> 
>>
>> Also, I noticed that it's not enough to
>>
>> if (gs->buffer_ref.buffer) {
>>     y_inverted = gs->buffer_ref.buffer->y_inverted;
>> }
>>
>> in texture_region, because by that time buffer might not be there, so
>> the right thing is to also keep y_inverted in gl_surface_state and
>> use that.
> 
> Yeah, that sounds right.
> 
> Kristian
> 
>>> question is how to phase it in - technically we can't just add a new
>>> token to the EGL_WL_bind_wayland_display extension.  On the other hand
>>> it sucks to have to write a new extension for just the
>>> EGL_WAYLAND_Y_INVERTED_WL token, but if we don't we have no way to
>>> find out if it's supported.  Of course, since eglQueryBufferWL()
>>> returns EGL_FALSE on unsupported tokens and the default/current
>>> behaviour is Y-inverted, we could just query for
>>> EGL_WAYLAND_Y_INVERTED_WL and fall back to Y-inverted if it returns
>>> EGL_FALSE (which you patch does).
>>>
>>> I think I prefer phasing it in without a new spec, in particular
>>> considering that EGL_WL_bind_wayland_display isn't an official,
>>> published Khronos extension and we don't break API/ABI the way we add it.
>>>
>>> Kristian
>>>
>>>> On 08/26/2013 01:37 PM, Stanislav Vorobiov wrote:
>>>>> This patch provides an implementation for
>>>>> https://bugs.freedesktop.org/show_bug.cgi?id=68041.
>>>>> Support for EGL_WAYLAND_Y_INVERTED_WL will have to be
>>>>> added to mesa as well and it'll be a separate patch
>>>>>
>>>>> Stanislav Vorobiov (1):
>>>>>   gl_renderer: Use EGL_WAYLAND_Y_INVERTED_WL to query wl_buffer's
>>>>>     orientation
>>>>>
>>>>>  src/compositor.c     |    1 +
>>>>>  src/compositor.h     |    1 +
>>>>>  src/gl-renderer.c    |   13 ++++++++++++-
>>>>>  src/weston-egl-ext.h |    4 ++++
>>>>>  4 files changed, 18 insertions(+), 1 deletion(-)
>>>>>
>>>>
>>>> _______________________________________________
>>>> wayland-devel mailing list
>>>> wayland-devel at lists.freedesktop.org
>>>> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
>>>
>>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel
> 



More information about the wayland-devel mailing list