From 9d0e03774e3c1076e757490ad023c72eae867a6a Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Thu, 3 May 2007 13:46:33 +0000 Subject: [PATCH] make it possible to override desktop detection using gtk.desktop system option git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/sysopt.tex | 2 ++ src/gtk/utilsgtk.cpp | 18 +++++++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/docs/latex/wx/sysopt.tex b/docs/latex/wx/sysopt.tex index 12b8b11bf8..91009e1a7c 100644 --- a/docs/latex/wx/sysopt.tex +++ b/docs/latex/wx/sysopt.tex @@ -44,6 +44,8 @@ level windows is currently supported, however this may sometimes fail and this option allows to override the automatic detection. Setting it to $1$ makes the transparency be always available (setting it can still fail, of course) and setting it to $0$ makes it always unavailable.} +\twocolitem{gtk.desktop}{This option can be set to override the default desktop +environment determination. Supported values are \texttt{GNOME} and \texttt{KDE}.} \end{twocollist} \wxheading{Mac} diff --git a/src/gtk/utilsgtk.cpp b/src/gtk/utilsgtk.cpp index faf8184ba8..617a497427 100644 --- a/src/gtk/utilsgtk.cpp +++ b/src/gtk/utilsgtk.cpp @@ -21,6 +21,7 @@ #include "wx/apptrait.h" #include "wx/process.h" +#include "wx/sysopt.h" #include "wx/unix/execute.h" @@ -474,17 +475,20 @@ bool wxGUIAppTraits::ShowAssertDialog(const wxString& msg) wxString wxGUIAppTraits::GetDesktopEnvironment() const { + wxString de = wxSystemOptions::GetOption(_T("gtk.desktop")); + if ( de.empty() ) + { #if wxUSE_DETECT_SM - static const wxString SM = GetSM(); - - if (SM == wxT("GnomeSM")) - return wxT("GNOME"); + static const wxString s_SM = GetSM(); - if (SM == wxT("KDE")) - return wxT("KDE"); + if (s_SM == wxT("GnomeSM")) + de = wxT("GNOME"); + else if (s_SM == wxT("KDE")) + de = wxT("KDE"); + } #endif // wxUSE_DETECT_SM - return wxEmptyString; + return de; } #ifdef __WXGTK26__ -- 2.45.2