static void manager_show_window (GSManager *manager, GSWindow *window) { GSJob *job; apply_background_to_window (manager, window); job = gs_job_new_for_widget (gs_window_get_drawing_area (window)); manager_select_theme_for_job (manager, job); manager_add_job_for_window (manager, window, job); manager->priv->activate_time = time (NULL); if (manager->priv->lock_timeout >= 0) { remove_lock_timer (manager); add_lock_timer (manager, manager->priv->lock_timeout); } if (manager->priv->cycle_timeout >= 10000) { remove_cycle_timer (manager); add_cycle_timer (manager, manager->priv->cycle_timeout); } add_unfade_idle (manager); /* FIXME: only emit signal once */ g_signal_emit (manager, signals [ACTIVATED], 0); }
void gs_manager_set_lock_timeout (GSManager *manager, glong lock_timeout) { g_return_if_fail (GS_IS_MANAGER (manager)); if (manager->priv->lock_timeout != lock_timeout) { manager->priv->lock_timeout = lock_timeout; if (manager->priv->active && ! manager->priv->lock_active && (lock_timeout >= 0)) { glong elapsed = (time (NULL) - manager->priv->activate_time) * 1000; remove_lock_timer (manager); if (elapsed >= lock_timeout) { activate_lock_timeout (manager); } else { add_lock_timer (manager, lock_timeout - elapsed); } } } }
static void manager_show_window (GSManager *manager, GSWindow *window) { apply_background_to_window (manager, window); manager->priv->activate_time = time (NULL); if (manager->priv->lock_timeout >= 0) { remove_lock_timer (manager); add_lock_timer (manager, manager->priv->lock_timeout); } //add_unfade_idle (manager); /* FIXME: only emit signal once */ g_signal_emit (manager, signals [ACTIVATED], 0); }