Hi Daniel-san. On Mon, 21 Nov 2016 09:44:42 +0000 Daniel Stone <[email protected]> wrote:
> Hi Munakata-san, > > On 18 November 2016 at 12:17, Ryo Munakata <[email protected]> wrote: > > window->wait_for_configure should be false after dispatching more than once. > > Therefore this redraw() will never be called. > > > > Signed-off-by: Ryo Munakata <[email protected]> > > --- > > clients/simple-shm.c | 3 --- > > 1 file changed, 3 deletions(-) > > > > diff --git a/clients/simple-shm.c b/clients/simple-shm.c > > index 9fa2e21..04b4eff 100644 > > --- a/clients/simple-shm.c > > +++ b/clients/simple-shm.c > > @@ -547,9 +547,6 @@ main(int argc, char **argv) > > wl_surface_damage(window->surface, 0, 0, > > window->width, window->height); > > > > - if (!window->wait_for_configure) > > - redraw(window, NULL, 0); > > - > > while (running && ret != -1) > > ret = wl_display_dispatch(display->display); > > Hm, I don't think this is quite correct. > > In create_window(), we set wait_for_configure = true, only after > creating an xdg_shell surface and committing. There is no roundtrip or > even flush at this point, so we would expect wait_for_configure to be > true, and this path to not be taken. For ivi_shell and > fullscreen_shell, we do not do this, and wait_for_configure will be > false; at this point we have not committed anything to the surface, > and the dispatch loop will not cause a redraw, as that only comes from > the frame callback. So I think this patch will break those shells. You are absolutely right. This patch breaks those paths. I forgot to test on shells other than desktop-shell. Thank you for pointing it out. -- Ryo Munakata <[email protected]> _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
