mirror of
https://github.com/brl/mutter.git
synced 2024-11-25 17:40:40 -05:00
backend: try gdk backend before x11/wayland/egl
Quite a few people at Guadec complained of pinpoint being broken in speaker+fullscreen mode, with slides being half displayed. It turns out that the X11 backend of clutter was being used and this backend assumes the size of the current monitor is the size of the X screen (that's not the case with multiple monitors). To work around the shortcomings of the X11 backend we should probably position the GDK one before. GDK implements most of the logic the ClutterStage needs and is probably more tested. https://bugzilla.gnome.org/show_bug.cgi?id=734587
This commit is contained in:
parent
f95493e7bf
commit
398a7ac713
@ -491,6 +491,11 @@ _clutter_create_backend (void)
|
|||||||
retval = g_object_new (CLUTTER_TYPE_BACKEND_WIN32, NULL);
|
retval = g_object_new (CLUTTER_TYPE_BACKEND_WIN32, NULL);
|
||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef CLUTTER_WINDOWING_GDK
|
||||||
|
if (backend == NULL || backend == I_(CLUTTER_WINDOWING_GDK))
|
||||||
|
retval = g_object_new (CLUTTER_TYPE_BACKEND_GDK, NULL);
|
||||||
|
else
|
||||||
|
#endif
|
||||||
#ifdef CLUTTER_WINDOWING_X11
|
#ifdef CLUTTER_WINDOWING_X11
|
||||||
if (backend == NULL || backend == I_(CLUTTER_WINDOWING_X11))
|
if (backend == NULL || backend == I_(CLUTTER_WINDOWING_X11))
|
||||||
retval = g_object_new (CLUTTER_TYPE_BACKEND_X11, NULL);
|
retval = g_object_new (CLUTTER_TYPE_BACKEND_X11, NULL);
|
||||||
@ -505,11 +510,6 @@ _clutter_create_backend (void)
|
|||||||
if (backend == NULL || backend == I_(CLUTTER_WINDOWING_EGL))
|
if (backend == NULL || backend == I_(CLUTTER_WINDOWING_EGL))
|
||||||
retval = g_object_new (CLUTTER_TYPE_BACKEND_EGL_NATIVE, NULL);
|
retval = g_object_new (CLUTTER_TYPE_BACKEND_EGL_NATIVE, NULL);
|
||||||
else
|
else
|
||||||
#endif
|
|
||||||
#ifdef CLUTTER_WINDOWING_GDK
|
|
||||||
if (backend == NULL || backend == I_(CLUTTER_WINDOWING_GDK))
|
|
||||||
retval = g_object_new (CLUTTER_TYPE_BACKEND_GDK, NULL);
|
|
||||||
else
|
|
||||||
#endif
|
#endif
|
||||||
if (backend == NULL)
|
if (backend == NULL)
|
||||||
g_error ("No default Clutter backend found.");
|
g_error ("No default Clutter backend found.");
|
||||||
|
Loading…
Reference in New Issue
Block a user