Only invoke shell button bindings if there's a pointer focus surface
diff --git a/compositor/shell.c b/compositor/shell.c
index c480e9a..c842b97 100644
--- a/compositor/shell.c
+++ b/compositor/shell.c
@@ -671,6 +671,9 @@
 	struct wlsc_surface *surface =
 		(struct wlsc_surface *) device->pointer_focus;
 
+	if (surface == NULL)
+		return;
+
 	shell_move(NULL,
 		   (struct wl_shell *) &compositor->shell,
 		   &surface->surface, device, time);
@@ -686,6 +689,9 @@
 	uint32_t edges = 0;
 	int32_t x, y;
 
+	if (surface == NULL)
+		return;
+
 	x = device->grab_x - surface->x;
 	y = device->grab_y - surface->y;