[gdm/multi-stack: 28/35] Add new function find_task_with_service_name
- From: Ray Strode <halfline src gnome org>
- To: svn-commits-list gnome org
- Subject: [gdm/multi-stack: 28/35] Add new function find_task_with_service_name
- Date: Mon, 20 Jul 2009 14:06:11 +0000 (UTC)
commit ed50184115bb835c89bc0492e2a74c9cc6095b0b
Author: Ray Strode <rstrode redhat com>
Date: Mon Mar 2 13:57:34 2009 -0500
Add new function find_task_with_service_name
It hides a bunch of icky foreach calls.
gui/simple-greeter/gdm-greeter-login-window.c | 50 +++++++++++--------------
1 files changed, 22 insertions(+), 28 deletions(-)
---
diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c
index 6c625ba..b04549f 100644
--- a/gui/simple-greeter/gdm-greeter-login-window.c
+++ b/gui/simple-greeter/gdm-greeter-login-window.c
@@ -810,6 +810,20 @@ task_has_service_name (GdmTaskList *task_list,
return has_service_name;
}
+GdmTask *
+find_task_with_service_name (GdmGreeterLoginWindow *login_window,
+ const char *service_name)
+{
+ GdmTask *task;
+
+ task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
+ (GdmTaskListForeachFunc)
+ task_has_service_name,
+ (gpointer) service_name);
+
+ return task;
+}
+
static gboolean
reset_task (GdmTaskList *task_list,
GdmTask *task,
@@ -915,10 +929,7 @@ gdm_greeter_login_window_ready (GdmGreeterLoginWindow *login_window,
g_return_val_if_fail (GDM_IS_GREETER_LOGIN_WINDOW (login_window), FALSE);
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+ task = find_task_with_service_name (login_window, service_name);
if (task != NULL) {
if (gdm_chooser_widget_is_loaded (GDM_CHOOSER_WIDGET (login_window->priv->user_chooser))) {
@@ -947,10 +958,7 @@ gdm_greeter_login_window_conversation_stopped (GdmGreeterLoginWindow *login_wind
g_debug ("GdmGreeterLoginWindow: conversation '%s' has stopped", service_name);
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+ task = find_task_with_service_name (login_window, service_name);
if (task != NULL) {
gdm_conversation_reset (GDM_CONVERSATION (task));
@@ -1018,10 +1026,7 @@ gdm_greeter_login_window_info (GdmGreeterLoginWindow *login_window,
g_return_val_if_fail (GDM_IS_GREETER_LOGIN_WINDOW (login_window), FALSE);
g_debug ("GdmGreeterLoginWindow: info: %s", text);
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+ task = find_task_with_service_name (login_window, service_name);
if (task != NULL) {
gdm_conversation_set_message (GDM_CONVERSATION (task),
@@ -1042,10 +1047,7 @@ gdm_greeter_login_window_problem (GdmGreeterLoginWindow *login_window,
g_return_val_if_fail (GDM_IS_GREETER_LOGIN_WINDOW (login_window), FALSE);
g_debug ("GdmGreeterLoginWindow: problem: %s", text);
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+ task = find_task_with_service_name (login_window, service_name);
if (task != NULL) {
gdm_conversation_set_message (GDM_CONVERSATION (task),
@@ -1147,10 +1149,8 @@ gdm_greeter_login_window_info_query (GdmGreeterLoginWindow *login_window,
g_debug ("GdmGreeterLoginWindow: info query: %s", text);
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+
+ task = find_task_with_service_name (login_window, service_name);
if (task != NULL) {
gdm_conversation_ask_question (GDM_CONVERSATION (task),
@@ -1178,10 +1178,7 @@ gdm_greeter_login_window_secret_info_query (GdmGreeterLoginWindow *login_window,
g_return_val_if_fail (GDM_IS_GREETER_LOGIN_WINDOW (login_window), FALSE);
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+ task = find_task_with_service_name (login_window, service_name);
if (task != NULL) {
gdm_conversation_ask_secret (GDM_CONVERSATION (task),
@@ -1515,10 +1512,7 @@ begin_single_service_verification (GdmGreeterLoginWindow *login_window,
{
GdmTask *task;
- task = gdm_task_list_foreach_task (GDM_TASK_LIST (login_window->priv->conversation_list),
- (GdmTaskListForeachFunc)
- task_has_service_name,
- (gpointer) service_name);
+ task = find_task_with_service_name (login_window, service_name);
if (task == NULL) {
g_debug ("GdmGreeterLoginWindow: %s has no task associated with it", service_name);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]