diff options
| author | Tavmjong Bah <tavmjong@free.fr> | 2017-05-10 07:27:28 +0000 |
|---|---|---|
| committer | tavmjong-free <tavmjong@free.fr> | 2017-05-10 07:27:28 +0000 |
| commit | d3f8093f20f3cc4fb86f59f24b695cd262463849 (patch) | |
| tree | 0d0f3bb365d679e152ce49ad698d7397c5ea12de /src/ui/uxmanager.cpp | |
| parent | Use UTF8 encoding for output on windows console. (diff) | |
| download | inkscape-d3f8093f20f3cc4fb86f59f24b695cd262463849.tar.gz inkscape-d3f8093f20f3cc4fb86f59f24b695cd262463849.zip | |
Wayland fix.
(bzr r15683)
Diffstat (limited to 'src/ui/uxmanager.cpp')
| -rw-r--r-- | src/ui/uxmanager.cpp | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/src/ui/uxmanager.cpp b/src/ui/uxmanager.cpp index cbce86cdb..15663af57 100644 --- a/src/ui/uxmanager.cpp +++ b/src/ui/uxmanager.cpp @@ -24,6 +24,10 @@ #include <gdk/gdkx.h> #endif // GDK_WINDOWING_X11 +#ifdef GDK_WINDOWING_WAYLAND +#include <gdk/gdkwayland.h> +#endif + using std::vector; @@ -132,15 +136,29 @@ UXManagerImpl::UXManagerImpl() : tags.addTag(ege::Tag("General")); tags.addTag(ege::Tag("Icons")); -#if defined(GDK_WINDOWING_X11) - char const* wmName = gdk_x11_screen_get_window_manager_name( gdk_screen_get_default() ); - //g_message("Window manager is [%s]", wmName); +// Nobody seems to use floatwindowIssues... we can probably delete all this code! +// See: https://developer.gnome.org/gdk3/stable/gdk3-Wayland-Interaction.html + GdkDisplay* display = gdk_display_get_default(); +#ifdef GDK_WINDOWING_WAYLAND + if (GDK_IS_WAYLAND_DISPLAY (display) ) { + // std::cout << "Using Wayland!" << std::endl; + } +#endif - //if (g_ascii_strcasecmp( wmName, UNKOWN_WINDOW_MANAGER_NAME ) == 0) { - if (g_ascii_strcasecmp( wmName, KDE_WINDOW_MANAGER_NAME ) == 0) { - _floatwindowIssues = true; +#ifdef GDK_WINDOWING_X11 + if (GDK_IS_X11_DISPLAY (display) ) { + // std::cout << "Using X11!" << std::endl; + char const* wmName = gdk_x11_screen_get_window_manager_name( gdk_screen_get_default() ); + //g_message("Window manager is [%s]", wmName); + + //if (g_ascii_strcasecmp( wmName, UNKOWN_WINDOW_MANAGER_NAME ) == 0) { + if (g_ascii_strcasecmp( wmName, KDE_WINDOW_MANAGER_NAME ) == 0) { + _floatwindowIssues = true; + } } -#elif defined(GDK_WINDOWING_WIN32) +#endif + +#ifdef GDK_WINDOWING_WIN32 _floatwindowIssues = true; #endif // GDK_WINDOWING_WIN32 |
