mirror of https://github.com/procxx/kepka.git
Load gtk2 even on Wayland
This commit is contained in:
parent
4c546156da
commit
7ac78be984
|
@ -125,10 +125,11 @@ bool setupGtkBase(QLibrary &lib_gtk) {
|
|||
// Otherwise we get segfault in Ubuntu 17.04 in gtk_init_check() call.
|
||||
// See https://github.com/telegramdesktop/tdesktop/issues/3176
|
||||
// See https://github.com/telegramdesktop/tdesktop/issues/3162
|
||||
if(QGuiApplication::platformName().startsWith(qsl("wayland"), Qt::CaseInsensitive)) {
|
||||
if(QGuiApplication::platformName().startsWith(qsl("wayland"), Qt::CaseInsensitive)
|
||||
&& !lib_gtk.fileName().contains("gtk-x11-2.0")) {
|
||||
DEBUG_LOG(("Limit allowed GDK backends to wayland"));
|
||||
gdk_set_allowed_backends("wayland");
|
||||
} else if (QGuiApplication::platformName() == qsl("xcb")) {
|
||||
} else {
|
||||
DEBUG_LOG(("Limit allowed GDK backends to x11"));
|
||||
gdk_set_allowed_backends("x11");
|
||||
}
|
||||
|
@ -239,13 +240,12 @@ void start() {
|
|||
DEBUG_LOG(("Loading libraries"));
|
||||
|
||||
bool gtkLoaded = false;
|
||||
bool isWayland = QGuiApplication::platformName().startsWith(qsl("wayland"), Qt::CaseInsensitive);
|
||||
QLibrary lib_gtk;
|
||||
|
||||
if (loadLibrary(lib_gtk, "gtk-3", 0)) {
|
||||
gtkLoaded = setupGtkBase(lib_gtk);
|
||||
}
|
||||
if (!gtkLoaded && !isWayland && loadLibrary(lib_gtk, "gtk-x11-2.0", 0)) {
|
||||
if (!gtkLoaded && loadLibrary(lib_gtk, "gtk-x11-2.0", 0)) {
|
||||
gtkLoaded = setupGtkBase(lib_gtk);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue