}
#endif
+#ifdef ENABLE_DBUS
static void
-screensaver_init_dbus (TotemScrsaver *scr)
+screensaver_init_dbus (TotemScrsaver *scr, DBusGConnection *connection)
{
-#ifdef ENABLE_DBUS
GError *error = NULL;
- scr->priv->connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
+ if (!connection)
+ scr->priv->connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
+ else
+ scr->priv->connection = connection;
if (! scr->priv->connection) {
if (error) {
}
-#endif /* ENABLE_DBUS */
}
+#endif /* ENABLE_DBUS */
static void
screensaver_finalize_dbus (TotemScrsaver *scr)
if (scr->priv->timeout != 0)
{
- g_timeout_add (scr->priv->timeout / 2 * 1000,
- (GSourceFunc) fake_event, scr);
+ g_timeout_add_seconds (scr->priv->timeout / 2,
+ (GSourceFunc) fake_event, scr);
} else {
- g_timeout_add (XSCREENSAVER_MIN_TIMEOUT / 2 * 1000,
+ g_timeout_add_seconds (XSCREENSAVER_MIN_TIMEOUT / 2,
(GSourceFunc) fake_event, scr);
}
object_class->finalize = totem_scrsaver_finalize;
}
+#ifdef ENABLE_DBUS
TotemScrsaver *
-totem_scrsaver_new (void)
+totem_scrsaver_new (DBusGConnection *connection)
{
- return TOTEM_SCRSAVER (g_object_new (TOTEM_TYPE_SCRSAVER, NULL));
+ TotemScrsaver * scr;
+ scr = TOTEM_SCRSAVER (g_object_new (TOTEM_TYPE_SCRSAVER, NULL));
+
+ screensaver_init_dbus (scr, connection);
+ screensaver_init_x11 (scr);
+
+ return scr;
}
+#else
+TotemScrsaver *
+totem_scrsaver_new()
+{
+ TotemScrsaver * scr;
+ scr = TOTEM_SCRSAVER (g_object_new (TOTEM_TYPE_SCRSAVER, NULL));
+
+ screensaver_init_x11 (scr);
+
+ return scr;
+}
+#endif
static void
totem_scrsaver_init (TotemScrsaver *scr)
{
scr->priv = g_new0 (TotemScrsaverPrivate, 1);
-
- screensaver_init_dbus (scr);
- screensaver_init_x11 (scr);
}
void