From: Václav Slavík Date: Tue, 30 Sep 2008 20:55:52 +0000 (+0000) Subject: don't cache tray protocol availability result in wxTaskBarIconAreaBase::IsProtocolSup... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/61f6ba079ca131f86a4c1ce67dbd5588fd23111f?ds=inline don't cache tray protocol availability result in wxTaskBarIconAreaBase::IsProtocolSupported(), it may change at runtime git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/gtk/taskbar.cpp b/src/gtk/taskbar.cpp index 80bfd6b119..ee192ae7b9 100644 --- a/src/gtk/taskbar.cpp +++ b/src/gtk/taskbar.cpp @@ -60,23 +60,17 @@ wxTaskBarIconAreaBase::wxTaskBarIconAreaBase() bool wxTaskBarIconAreaBase::IsProtocolSupported() { - static int s_supported = -1; - if (s_supported == -1) - { - Display *display = GDK_DISPLAY(); - Screen *screen = DefaultScreenOfDisplay(display); - - char name[32]; - g_snprintf(name, sizeof(name), "_NET_SYSTEM_TRAY_S%d", - XScreenNumberOfScreen(screen)); - Atom atom = XInternAtom(display, name, False); + Display *display = GDK_DISPLAY(); + Screen *screen = DefaultScreenOfDisplay(display); - Window manager = XGetSelectionOwner(display, atom); + char name[32]; + g_snprintf(name, sizeof(name), "_NET_SYSTEM_TRAY_S%d", + XScreenNumberOfScreen(screen)); + Atom atom = XInternAtom(display, name, False); - s_supported = (manager != None); - } + Window manager = XGetSelectionOwner(display, atom); - return (bool)s_supported; + return (manager != None); } //-----------------------------------------------------------------------------