summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2021-08-10 18:37:47 +0200
committerStephan Bergmann <sbergman@redhat.com>2021-08-10 20:15:42 +0200
commite229547eb02ab6c9a1fe6abdfc42ce970cedc733 (patch)
treec4dcbd84c9b032be409a7e6b69b7b1e5a3f78624 /sfx2
parent19b3b3b8a516fd7e76fba72ced43be539d01209a (diff)
Simplify init-/deInitSysTray even further
7e8d46b8988527967825fbb7210747e625ba1975 "INTEGRATION: CWS gtkquickstart" had originally introduced the [m_]p_[De]InitSystray function pointers, for dynamic loading of libqstart_gtklo.so on UNX. But 3e9c908b73f0fe0978c9980750a06bbc9e02295e "remove Linux ('UNX') systray 'Quickstarter'" removed that again, leaving behind the no longer necessary function pointer machinery. And 0a666480276f704d5127f578333659893517abe7 "Replace a use of boost::logic::tribool with std::call_once" tried to clean up that unnecessary machinery a bit, but failed to grasp the bigger picture. Change-Id: I370a6b212b1f25ea1e3ef5a250be72bfe509dd5c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120282 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/appl/shutdownicon.cxx49
1 files changed, 14 insertions, 35 deletions
diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx
index cbae2881122a..b6be7cad2fc6 100644
--- a/sfx2/source/appl/shutdownicon.cxx
+++ b/sfx2/source/appl/shutdownicon.cxx
@@ -20,8 +20,6 @@
#include <sal/config.h>
#include <sal/log.hxx>
-#include <mutex>
-
#include "shutdownicon.hxx"
#include <sfx2/strings.hrc>
#include <sfx2/app.hxx>
@@ -105,41 +103,19 @@ css::uno::Sequence<OUString> SAL_CALL ShutdownIcon::getSupportedServiceNames()
bool ShutdownIcon::bModalMode = false;
rtl::Reference<ShutdownIcon> ShutdownIcon::pShutdownIcon;
-extern "C" {
- static void disabled_initSystray() { }
- static void disabled_deInitSystray() { }
-}
-
-namespace {
-
-oslGenericFunction pInitSystray = disabled_initSystray;
-oslGenericFunction pDeInitSystray = disabled_deInitSystray;
-
-void LoadModule()
-{
-#ifdef ENABLE_QUICKSTART_APPLET
-# ifdef _WIN32
- pInitSystray = win32_init_sys_tray;
- pDeInitSystray = win32_shutdown_sys_tray;
-# elif defined MACOSX
- pInitSystray = aqua_init_systray;
- pDeInitSystray = aqua_shutdown_systray;
-# endif // MACOSX
-#endif // ENABLE_QUICKSTART_APPLET
-}
-
-}
-
void ShutdownIcon::initSystray()
{
if (m_bInitialized)
return;
m_bInitialized = true;
- static std::once_flag flag;
- std::call_once(flag, LoadModule);
- m_bVeto = true;
- pInitSystray();
+#ifdef ENABLE_QUICKSTART_APPLET
+# ifdef _WIN32
+ win32_init_sys_tray();
+# elif defined MACOSX
+ aqua_init_systray();
+# endif // MACOSX
+#endif // ENABLE_QUICKSTART_APPLET
}
void ShutdownIcon::deInitSystray()
@@ -147,12 +123,15 @@ void ShutdownIcon::deInitSystray()
if (!m_bInitialized)
return;
- if (pDeInitSystray)
- pDeInitSystray();
+#ifdef ENABLE_QUICKSTART_APPLET
+# ifdef _WIN32
+ win32_shutdown_sys_tray();
+# elif defined MACOSX
+ aqua_shutdown_systray();
+# endif // MACOSX
+#endif // ENABLE_QUICKSTART_APPLET
m_bVeto = false;
- pInitSystray = nullptr;
- pDeInitSystray = nullptr;
m_pFileDlg.reset();
m_bInitialized = false;