From: Cole Robinson <crobinso@redhat.com>
To: Takashi Iwai <tiwai@suse.de>, qemu-devel@nongnu.org
Cc: kraxel@redhat.com, Anthony Liguori <aliguori@amazon.com>
Subject: Re: [Qemu-devel] [PATCH v2 1/4] gtk: Use gtk generic event signal instead of motion-notify-event
Date: Wed, 02 Apr 2014 09:25:07 -0400 [thread overview]
Message-ID: <533C0FB3.3030909@redhat.com> (raw)
In-Reply-To: <1396441953-19260-2-git-send-email-tiwai@suse.de>
On 04/02/2014 08:32 AM, Takashi Iwai wrote:
> The GDK motion-notify-event isn't generated when the pointer goes out
> of the target window even if the pointer is grabbed, which essentially
> means to lose the pointer tracking in gtk-ui.
>
> Meanwhile the generic "event" signal is sent when the pointer is
> grabbed, so we can use this and pick the motion notify events manually
> there instead.
>
> Reference: https://bugzilla.novell.com/show_bug.cgi?id=849587
> Signed-off-by: Takashi Iwai <tiwai@suse.de>
> ---
> ui/gtk.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/ui/gtk.c b/ui/gtk.c
> index f056e4034b3e..54b835428a28 100644
> --- a/ui/gtk.c
> +++ b/ui/gtk.c
> @@ -765,6 +765,13 @@ static gboolean gd_key_event(GtkWidget *widget, GdkEventKey *key, void *opaque)
> return TRUE;
> }
>
> +static gboolean gd_event(GtkWidget *widget, GdkEvent *event, void *opaque)
> +{
> + if (event->type == GDK_MOTION_NOTIFY)
> + return gd_motion_event(widget, &event->motion, opaque);
> + return FALSE;
> +}
> +
> /** Window Menu Actions **/
>
> static void gd_menu_pause(GtkMenuItem *item, void *opaque)
> @@ -1267,8 +1274,8 @@ static void gd_connect_signals(GtkDisplayState *s)
> g_signal_connect(s->drawing_area, "expose-event",
> G_CALLBACK(gd_expose_event), s);
> #endif
> - g_signal_connect(s->drawing_area, "motion-notify-event",
> - G_CALLBACK(gd_motion_event), s);
> + g_signal_connect(s->drawing_area, "event",
> + G_CALLBACK(gd_event), s);
> g_signal_connect(s->drawing_area, "button-press-event",
> G_CALLBACK(gd_button_event), s);
> g_signal_connect(s->drawing_area, "button-release-event",
>
Tested-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
Thanks,
Cole
next prev parent reply other threads:[~2014-04-02 13:25 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-02 12:32 [Qemu-devel] [PATCH v2 0/4] Fix relative pointer tracking on Gtk UI (v2) Takashi Iwai
2014-04-02 12:32 ` [Qemu-devel] [PATCH v2 1/4] gtk: Use gtk generic event signal instead of motion-notify-event Takashi Iwai
2014-04-02 13:25 ` Cole Robinson [this message]
2014-04-02 15:17 ` Gerd Hoffmann
2014-04-02 15:26 ` Takashi Iwai
2014-04-02 12:32 ` [Qemu-devel] [PATCH v2 2/4] gtk: Fix the relative pointer tracking mode Takashi Iwai
2014-04-02 13:26 ` Cole Robinson
2014-04-02 12:32 ` [Qemu-devel] [PATCH v2 3/4] gtk: Remember the last grabbed pointer position Takashi Iwai
2014-04-02 13:27 ` Cole Robinson
2014-04-02 12:32 ` [Qemu-devel] [PATCH v2 4/4] gtk: Add "Grab On Click" option Takashi Iwai
2014-04-02 13:28 ` Cole Robinson
2014-04-02 13:42 ` Takashi Iwai
2014-04-02 13:49 ` Cole Robinson
2014-04-02 14:39 ` Gerd Hoffmann
2014-04-02 15:07 ` [Qemu-devel] [PATCH] gtk: Grab pointer on click when in relative mode Cole Robinson
2014-04-02 15:19 ` Gerd Hoffmann
2014-04-02 15:25 ` Takashi Iwai
2014-04-02 20:18 ` Cole Robinson
2014-04-03 6:19 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=533C0FB3.3030909@redhat.com \
--to=crobinso@redhat.com \
--cc=aliguori@amazon.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.