#pragma hdrstop
#endif
-#if wxUSE_NOTIFICATION_MESSAGE
+#if wxUSE_NOTIFICATION_MESSAGE && wxUSE_LIBNOTIFY
+
+#include "wx/notifmsg.h"
#ifndef WX_PRECOMP
+ #include "wx/app.h"
#endif // WX_PRECOMP
-#include "wx/notifmsg.h"
-
#include <libnotify/notify.h>
#include "wx/module.h"
// wxNotificationMessage implementation
// ============================================================================
+bool wxNotificationMessage::GTKSetIconName(const wxString& name)
+{
+ m_iconName = name;
+
+ return true;
+}
+
bool wxNotificationMessage::Show(int timeout)
{
if ( !wxLibnotifyModule::Initialize() )
return false;
}
+ // Explicitly specified icon name overrides the implicit one determined by
+ // the flags.
+ wxScopedCharBuffer buf;
+ if ( !m_iconName.empty() )
+ {
+ buf = m_iconName.utf8_str();
+ icon = buf;
+ }
+
// Create the notification or update an existing one if we had already been
// shown before.
if ( !m_notification )
GetTitle().utf8_str(),
GetMessage().utf8_str(),
icon
+#if !wxUSE_LIBNOTIFY_0_7
+ // There used to be an "associated window"
+ // parameter in this function but it has
+ // disappeared by 0.7, so use it for previous
+ // versions only.
+ , 0
+#endif // libnotify < 0.7
);
if ( !m_notification )
{
g_object_unref(m_notification);
}
-#endif // wxUSE_NOTIFICATION_MESSAGE
+#endif // wxUSE_NOTIFICATION_MESSAGE && wxUSE_LIBNOTIFY