--- src/gcal-source-dialog.c +++ src/gcal-source-dialog.c @@ -696,6 +696,17 @@ const gchar *arg) { GDBusProxy *proxy; + gchar *desktop_environment; + + desktop_environment = getenv ("XDG_CURRENT_DESKTOP"); + if (desktop_environment) + { + if (g_strcmp0 (desktop_environment, "X-Cinnamon") == 0 || g_strcmp0 (desktop_environment, "Cinnamon") == 0) + { + g_spawn_command_line_async ("cinnamon-settings online-accounts", NULL); + return; + } + } proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION, G_DBUS_PROXY_FLAGS_NONE, @@ -2338,4 +2349,4 @@ g_return_if_fail (source && E_IS_SOURCE (source)); g_set_object (&dialog->source, source); -} +}