summaryrefslogtreecommitdiff
path: root/gdk/broadway
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2013-11-12 12:36:05 +0100
committerAlexander Larsson <alexl@redhat.com>2013-11-12 12:36:05 +0100
commite331d1762625674ff0af39090264f82074277dba (patch)
tree61e24babe3a5fb78d3e355dbdf63e4dd17d62418 /gdk/broadway
parentd8c17d0739283f19d79c24ffe7ed2985b560fb9b (diff)
downloadgtk+-e331d1762625674ff0af39090264f82074277dba.tar.gz
broadway: Raise window on first click.
Diffstat (limited to 'gdk/broadway')
-rw-r--r--gdk/broadway/broadway-server.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/gdk/broadway/broadway-server.c b/gdk/broadway/broadway-server.c
index 30b232d31f..f6483351a8 100644
--- a/gdk/broadway/broadway-server.c
+++ b/gdk/broadway/broadway-server.c
@@ -217,8 +217,13 @@ update_event_state (BroadwayServer *server,
case BROADWAY_EVENT_BUTTON_PRESS:
case BROADWAY_EVENT_BUTTON_RELEASE:
if (message->base.type == BROADWAY_EVENT_BUTTON_PRESS &&
- server->focused_window_id != message->pointer.mouse_window_id)
- broadway_server_focus_window (server, message->pointer.mouse_window_id);
+ server->focused_window_id != message->pointer.mouse_window_id &&
+ server->pointer_grab_window_id == -1)
+ {
+ broadway_server_window_raise (server, message->pointer.mouse_window_id);
+ broadway_server_focus_window (server, message->pointer.mouse_window_id);
+ broadway_server_flush (server);
+ }
server->last_x = message->pointer.root_x;
server->last_y = message->pointer.root_y;