shell: Don't ping the grab surface

If the grab surface happens to be unresponsive, the busy cursor grab
will be started and that will cause the grab surface to receive focus,
which in turn leads to it being pingged again. Break the cycle by not
sending pings to it. If the shell is unresponsive it won't be able to
set the busy cursor anyway.
dev
Ander Conselvan de Oliveira 13 years ago committed by Kristian Høgsberg
parent c7814d2e98
commit eac9a46012
  1. 3
      src/shell.c

@ -918,6 +918,9 @@ ping_handler(struct weston_surface *surface, uint32_t serial)
if (!shsurf->resource.client) if (!shsurf->resource.client)
return; return;
if (shsurf->surface == shsurf->shell->grab_surface)
return;
if (!shsurf->ping_timer) { if (!shsurf->ping_timer) {
shsurf->ping_timer = malloc(sizeof *shsurf->ping_timer); shsurf->ping_timer = malloc(sizeof *shsurf->ping_timer);
if (!shsurf->ping_timer) if (!shsurf->ping_timer)

Loading…
Cancel
Save