GTK+: Don't pass draw signal on OpenGL/Wayland.

Also, don't pass draw signal on to GTK+, period.
This commit is contained in:
Brandon Wright 2018-10-29 16:02:45 -05:00
parent 4af57d8d98
commit 6d0eddf02a
1 changed files with 10 additions and 3 deletions

View File

@ -150,13 +150,14 @@ event_drawingarea_draw (GtkWidget *widget,
cairo_t *cr, cairo_t *cr,
gpointer data) gpointer data)
{ {
Snes9xWindow *window = (Snes9xWindow *) data; Snes9xWindow *window = (Snes9xWindow *) data;
window->cr = cr; window->cr = cr;
window->cairo_owned = FALSE; window->cairo_owned = FALSE;
window->expose (); window->expose ();
window->cr = NULL; window->cr = NULL;
return FALSE; return TRUE;
} }
#else #else
@ -168,7 +169,7 @@ event_drawingarea_expose (GtkWidget *widget,
{ {
((Snes9xWindow *) data)->expose (); ((Snes9xWindow *) data)->expose ();
return FALSE; return TRUE;
} }
#endif #endif
@ -781,7 +782,13 @@ Snes9xWindow::expose (void)
} }
#endif #endif
S9xRealDeinitUpdate (last_width, last_height); #ifdef GDK_WINDOWING_WAYLAND
if (GDK_IS_WAYLAND_WINDOW (gtk_widget_get_window (window)))
{
if (config->hw_accel == HWA_NONE)
S9xRealDeinitUpdate (last_width, last_height);
}
#endif
return; return;
} }