[Spice-commits] 2 commits - src/spice-widget.c
Marc-André Lureau
elmarco at kemper.freedesktop.org
Mon Jun 20 15:35:44 UTC 2016
src/spice-widget.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
New commits:
commit 0fafbe3d9e1fd74915992d276fdb36088c9739d0
Author: Marc-André Lureau <marcandre.lureau at redhat.com>
Date: Mon Jun 20 15:18:22 2016 +0200
widget: fix keyboard ungrab after click
Since the switch to a container widget (gtkstack then gtkeventbox), the
grab may be lost when clicking on the display. Since events are treated
at the top level container, set widget "above-child" to trap all of them
to solve this.
Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=96595
Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
Reported-by: Frediano Ziglio <fziglio at redhat.com>
Tested-by: Frediano Ziglio <fziglio at redhat.com>
Acked-by: Fabiano Fidêncio <fidencio at redhat.com>
diff --git a/src/spice-widget.c b/src/spice-widget.c
index 4ca74bf..4cfbcfa 100644
--- a/src/spice-widget.c
+++ b/src/spice-widget.c
@@ -632,6 +632,8 @@ static void spice_display_init(SpiceDisplay *display)
GDK_KEY_PRESS_MASK |
GDK_SCROLL_MASK);
gtk_widget_set_can_focus(widget, true);
+ gtk_event_box_set_above_child(GTK_EVENT_BOX(widget), true);
+
d->grabseq = spice_grab_sequence_new_from_string("Control_L+Alt_L");
d->activeseq = g_new0(gboolean, d->grabseq->nkeysyms);
d->mouse_cursor = get_blank_cursor();
commit a3d686fb1693b89d8c2063e1ad5b7bfcc03ff170
Author: Marc-André Lureau <marcandre.lureau at gmail.com>
Date: Mon Jun 13 19:10:45 2016 +0200
widget: use scanout offset when using virgl
Ignoring the display area offset doesn't work nicely with virgl. Imho,
this condition is wrong even in QXL case.
Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
diff --git a/src/spice-widget.c b/src/spice-widget.c
index 595c8f5..4ca74bf 100644
--- a/src/spice-widget.c
+++ b/src/spice-widget.c
@@ -309,7 +309,7 @@ void spice_display_widget_update_monitor_area(SpiceDisplay *display)
}
/* If only one head on this monitor, update the whole area */
- if(monitors->len == 1) {
+ if (monitors->len == 1 && !d->egl.enabled) {
update_area(display, 0, 0, c->width, c->height);
} else {
update_area(display, c->x, c->y, c->width, c->height);
More information about the Spice-commits
mailing list