[Spice-devel] [client v3 08/10] gtk: Temporarily ignore the keyboard/mouse grabbing deprecation warnings
Jonathon Jongsma
jjongsma at redhat.com
Fri Oct 28 17:31:36 UTC 2016
If this is temporary, what's the long-term solution? I assume that the
proper solution is not simple or obvious since then you'd have just
fixed it properly. But I think that if we're committing a 'temporary'
fix, the commit log should have an explanation of why it's temporary
and what the long-term fix is.
Applies to the next commit as well.
On Thu, 2016-10-27 at 18:42 +0200, Francois Gouget wrote:
> Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
> ---
> src/spice-widget.c | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/src/spice-widget.c b/src/spice-widget.c
> index 82adacf..f0681d6 100644
> --- a/src/spice-widget.c
> +++ b/src/spice-widget.c
> @@ -812,6 +812,9 @@ SpiceGrabSequence
> *spice_display_get_grab_keys(SpiceDisplay *display)
> return d->grabseq;
> }
>
> +/* FIXME: gdk_keyboard_grab/ungrab() is deprecated */
> +G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> +
> static void try_keyboard_grab(SpiceDisplay *display)
> {
> GtkWidget *widget = GTK_WIDGET(display);
> @@ -878,6 +881,8 @@ static void try_keyboard_ungrab(SpiceDisplay
> *display)
> d->keyboard_grab_active = false;
> g_signal_emit(widget, signals[SPICE_DISPLAY_KEYBOARD_GRAB], 0,
> false);
> }
> +G_GNUC_END_IGNORE_DEPRECATIONS
> +
>
> static void update_keyboard_grab(SpiceDisplay *display)
> {
> @@ -1002,6 +1007,8 @@ static gboolean do_pointer_grab(SpiceDisplay
> *display)
> * what window the pointer is actally over, so use 'FALSE' for
> * 'owner_events' parameter
> */
> + /* FIXME: gdk_pointer_grab() is deprecated */
> + G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> status = gdk_pointer_grab(window, FALSE,
> GDK_POINTER_MOTION_MASK |
> GDK_BUTTON_PRESS_MASK |
> @@ -1011,6 +1018,7 @@ static gboolean do_pointer_grab(SpiceDisplay
> *display)
> NULL,
> blank,
> GDK_CURRENT_TIME);
> + G_GNUC_END_IGNORE_DEPRECATIONS
> grab_successful = (status == GDK_GRAB_SUCCESS);
> if (!grab_successful) {
> d->mouse_grab_active = false;
> @@ -1101,8 +1109,11 @@ static void mouse_wrap(SpiceDisplay *display,
> GdkEventMotion *motion)
> /* FIXME: we try our best to ignore that next pointer move
> event.. */
> gdk_display_sync(gdk_screen_get_display(screen));
>
> + /* FIXME: gdk_display_warp_pointer() is deprecated */
> + G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> gdk_display_warp_pointer(gtk_widget_get_display(GTK_WIDGET(d
> isplay)),
> screen, xr, yr);
> + G_GNUC_END_IGNORE_DEPRECATIONS
> d->mouse_last_x = -1;
> d->mouse_last_y = -1;
> }
> @@ -1110,6 +1121,9 @@ static void mouse_wrap(SpiceDisplay *display,
> GdkEventMotion *motion)
>
> }
>
> +/* FIXME: gdk_pointer_ungrab()/gdk_display_warp_pointer() are
> deprecated */
> +G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> +
> static void try_mouse_ungrab(SpiceDisplay *display)
> {
> SpiceDisplayPrivate *d = display->priv;
> @@ -1142,6 +1156,7 @@ static void try_mouse_ungrab(SpiceDisplay
> *display)
> g_signal_emit(display, signals[SPICE_DISPLAY_MOUSE_GRAB], 0,
> false);
> spice_gtk_session_set_pointer_grabbed(d->gtk_session, false);
> }
> +G_GNUC_END_IGNORE_DEPRECATIONS
>
> static void update_mouse_grab(SpiceDisplay *display)
> {
> @@ -1985,7 +2000,10 @@ static gboolean button_event(GtkWidget
> *widget, GdkEventButton *button)
> FIXME: should be multiple widget grab, but how?
> or should know the position of the other widgets?
> */
> + /* FIXME: gdk_pointer_ungrab() is deprecated */
> + G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> gdk_pointer_ungrab(GDK_CURRENT_TIME);
> + G_GNUC_END_IGNORE_DEPRECATIONS
>
> if (!d->inputs)
> return true;
> @@ -2355,7 +2373,10 @@ static void update_mouse_mode(SpiceChannel
> *channel, gpointer data)
>
> if (window != NULL) {
> GdkModifierType modifiers;
> + /* FIXME: gdk_window_get_pointer() is deprecated */
> + G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> gdk_window_get_pointer(window, NULL, NULL, &modifiers);
> + G_GNUC_END_IGNORE_DEPRECATIONS
>
> if (modifiers & SPICE_GDK_BUTTONS_MASK)
> try_mouse_grab(display);
> @@ -2771,7 +2792,10 @@ static void gl_draw(SpiceDisplay *display,
> GtkWidget *gl = gtk_stack_get_child_by_name(d->stack, "gl-
> area");
>
> if (gtk_stack_get_visible_child(d->stack) == gl) {
> + /* Ignore GLib's too-new warnings */
> + G_GNUC_BEGIN_IGNORE_DEPRECATIONS
> gtk_gl_area_queue_render(GTK_GL_AREA(gl));
> + G_GNUC_END_IGNORE_DEPRECATIONS
> d->egl.call_draw_done = TRUE;
> } else
> #endif
More information about the Spice-devel
mailing list