diff --git a/gtk/status_icon.c b/gtk/status_icon.c index aba9c5d1d..ba16e28ea 100644 --- a/gtk/status_icon.c +++ b/gtk/status_icon.c @@ -304,9 +304,10 @@ static void _linphone_status_icon_impl_gtk_init(LinphoneStatusIcon *si) { si->data = icon; } -// static void _linphone_status_icon_impl_gtk_uninit(LinphoneStatusIcon *si) { -// g_object_unref((GtkStatusIcon *)si->data); -// } +static void _linphone_status_icon_impl_gtk_uninit(LinphoneStatusIcon *si) { + GtkStatusIcon *icon = GTK_STATUS_ICON(si->data); + gtk_status_icon_set_visible(icon, FALSE); +} static void _linphone_status_icon_impl_gtk_start(LinphoneStatusIcon *si) { GtkStatusIcon *icon = GTK_STATUS_ICON(si->data); @@ -358,7 +359,7 @@ static gboolean _linphone_status_icon_impl_is_supported( static const _LinphoneStatusIconDesc _linphone_status_icon_impl_gtk_desc = { "gtk_status_icon", _linphone_status_icon_impl_gtk_init, - NULL, + _linphone_status_icon_impl_gtk_uninit, _linphone_status_icon_impl_gtk_start, _linphone_status_icon_impl_enable_blinking, _linphone_status_icon_impl_is_supported