Hi, On Tue, Aug 7, 2018 at 5:50 PM Juan A. Suarez Romero <jasua...@igalia.com> wrote: > > When creating a windows surface with eglCreateWindowSurface(), the > width and height returned by eglQuerySurface(EGL_{WIDTH,HEIGHT}) is > invalid until buffers are updated (like calling glClear()). > > But according to EGL 1.5 spec, section 3.5.6 ("Surface Attributes"): > > "Querying EGL_WIDTH and EGL_HEIGHT returns respectively the width and > height, in pixels, of the surface. For a window or pixmap surface, > these values are initially equal to the width and height of the > native window or pixmap with respect to which the surface was > created" > > This fixes dEQP-EGL.functional.color_clears.* CTS tests > > v2: > - Do not modify attached_{width,height} (Daniel) > - Do not update size on resizing window (Brendan) > > CC: Daniel Stone <dan...@fooishbar.org> > CC: Brendan King <brendan.k...@imgtec.com> > CC: mesa-sta...@lists.freedesktop.org > Tested-by: Eric Engestrom <e...@engestrom.ch> > --- > src/egl/drivers/dri2/platform_wayland.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/src/egl/drivers/dri2/platform_wayland.c > b/src/egl/drivers/dri2/platform_wayland.c > index dca099500a8..a5d43094cf3 100644 > --- a/src/egl/drivers/dri2/platform_wayland.c > +++ b/src/egl/drivers/dri2/platform_wayland.c > @@ -258,6 +258,9 @@ dri2_wl_create_window_surface(_EGLDriver *drv, > _EGLDisplay *disp, > goto cleanup_surf; > } > > + dri2_surf->base.Width = window->width; > + dri2_surf->base.Height = window->height; > + > visual_idx = dri2_wl_visual_idx_from_config(dri2_dpy, config); > assert(visual_idx != -1); > > -- > 2.17.1
Just a quick heads up, this patch is causing a regression with "swrast" which does not have DRI2flushExtension. Easiest way to demonstrate the issue is to use totem with "swrast" on mesa-18.2.x (e.g. Fedora 29) under Wayland: $ LIBGL_ALWAYS_SOFTWARE=true CLUTTER_BACKEND=gdk totem Play a video and resize the totem toplevel window, the size of the EGL surface remains unchanged... Reverting that patch fixes the issue, as using a DRI driver which supports DRI2flushExtension. Nevertheless, that's a regression. Cheers, Olivier _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev