vcl/unx/generic/desktopdetect/desktopdetector.cxx | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-)
New commits: commit 7eccf0b3fe771a519dbdaaf536d64b5b193a723f Author: Michael Weghorn <[email protected]> AuthorDate: Tue Jan 29 08:18:15 2019 +0100 Commit: Katarina Behrens <[email protected]> CommitDate: Tue Jan 29 09:30:22 2019 +0100 tdf#123011 Detect kde5 desktop in Plasma Wayland session Both env variables 'KDE_FULL_SESSION' and 'KDE_SESSION_VERSION' are set in both X11 and Wayland sessions for Plasma 5 (kde5), s.a. https://userbase.kde.org/KDE_System_Administration/Environment_Variables, so drop the alternative X-specific check. Move the check for a kde5 upward, so that kde5 is actually detected in a Plasma 5 Wayland session, rather than falling back to assuming GNOME. Change-Id: Ieb5b47272f375ceed4d44a2ccc5b517222ae86b9 Reviewed-on: https://gerrit.libreoffice.org/67044 Reviewed-by: Tomáš Chvátal <[email protected]> Tested-by: Tomáš Chvátal <[email protected]> Reviewed-by: Katarina Behrens <[email protected]> diff --git a/vcl/unx/generic/desktopdetect/desktopdetector.cxx b/vcl/unx/generic/desktopdetect/desktopdetector.cxx index e7cb9b93e801..9f65b1624181 100644 --- a/vcl/unx/generic/desktopdetect/desktopdetector.cxx +++ b/vcl/unx/generic/desktopdetect/desktopdetector.cxx @@ -191,16 +191,13 @@ static bool is_kde4_desktop( Display* pDisplay ) return false; } -static bool is_kde5_desktop( Display* pDisplay ) +static bool is_kde5_desktop() { static const char * pFullVersion = getenv( "KDE_FULL_SESSION" ); static const char * pSessionVersion = getenv( "KDE_SESSION_VERSION" ); if ( pFullVersion && pSessionVersion && strcmp(pSessionVersion, "5") == 0) return true; - if ( KDEVersion( pDisplay ) == 5 ) - return true; - return false; } @@ -280,6 +277,9 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment() ret = DESKTOP_LXQT; else { + if ( is_kde5_desktop() ) + return DESKTOP_KDE5; + // tdf#121275 if we still can't tell, and WAYLAND_DISPLAY // is set, default to gtk3 const char* pWaylandStr = getenv("WAYLAND_DISPLAY"); @@ -328,9 +328,7 @@ DESKTOP_DETECTOR_PUBLIC DesktopType get_desktop_environment() XErrorHandler pOldHdl = XSetErrorHandler( autodect_error_handler ); - if ( is_kde5_desktop( pDisplay ) ) - ret = DESKTOP_KDE5; - else if ( is_kde4_desktop( pDisplay ) ) + if ( is_kde4_desktop( pDisplay ) ) ret = DESKTOP_KDE4; else if ( is_gnome_desktop( pDisplay ) ) ret = DESKTOP_GNOME; _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
