[PATCH weston] compositor-wayland: Handle window close events more gracefully
Pekka Paalanen
ppaalanen at gmail.com
Tue May 19 23:35:01 PDT 2015
On Tue, 19 May 2015 16:41:19 -0700
Bryce Harrington <bryce at osg.samsung.com> wrote:
> On Mon, May 18, 2015 at 11:14:16PM -0700, Dima Ryazanov wrote:
> > When a compositor window is closed, remove the output instead of just exiting.
> >
> > (The "if (!input->output)" checks are kind of ugly - but I couldn't find
> > a better way to handle the output going away.)
> >
> > Signed-off-by: Dima Ryazanov <dima at gmail.com>
> Reviewed-by: Bryce Harrington <bryce at osg.samsung.com>
Acked-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
If someone tests this patch (maybe Bryce already did?) that it doesn't
cause any harm wrt. closing compositor windows in single and multi
window cases, then I think this is suitable to go in before RC2. After
RC2 not so much.
> > @@ -1384,8 +1393,15 @@ input_handle_button(void *data, struct wl_pointer *pointer,
> > return;
> > }
> >
> > - if (frame_status(input->output->frame) & FRAME_STATUS_CLOSE)
> > - wl_display_terminate(input->compositor->base.wl_display);
> > + if (frame_status(input->output->frame) & FRAME_STATUS_CLOSE) {
> > + wayland_output_destroy(&input->output->base);
> > + input->output = input->keyboard_focus = NULL;
Please don't do multi-assignments like this, it's too easy to miss one
of them when reading. Also setting output to keyboard_focus is strange
to begin with, which is how I'd carelessly read this and go wtf.
Thanks,
pq
More information about the wayland-devel
mailing list