Enlightenment CVS committal

Author  : xcomputerman
Project : e17
Module  : apps/entrance

Dir     : e17/apps/entrance/src/client


Modified Files:
        entrance_session.c main.c 


Log Message:
Fix bug affecting session remember for custom (non-Xsession) sessions, and 
theme now changes session visually when you enter a username.


===================================================================
RCS file: 
/cvsroot/enlightenment/e17/apps/entrance/src/client/entrance_session.c,v
retrieving revision 1.73
retrieving revision 1.74
diff -u -3 -r1.73 -r1.74
--- entrance_session.c  25 Aug 2005 05:02:01 -0000      1.73
+++ entrance_session.c  26 Aug 2005 04:13:30 -0000      1.74
@@ -266,18 +266,19 @@
             eu = entrance_user_new(strdup(user), NULL, e->session);
 
          if ((eu->session) && (strlen(eu->session) > 0))
-         {
-            if (e->session)
-               free(e->session);
-            e->session = strdup(eu->session);
-         }
-         edje_object_file_get(e->edje, &file, NULL);
-         if ((obj = entrance_user_edje_get(eu, e->edje, file)))
+        
          {
             if ((exs = evas_hash_find(e->config->sessions.hash, eu->session)))
             {
+               if (e->session)
+                  free(e->session);
+               e->session = strdup(eu->session);
                entrance_session_x_session_set(e, exs);
             }
+         }
+         edje_object_file_get(e->edje, &file, NULL);
+         if ((obj = entrance_user_edje_get(eu, e->edje, file)))
+         {
             evas_object_layer_set(obj, evas_object_layer_get(e->edje));
             if (edje_object_part_exists(e->edje, "entrance.user.avatar"))
             {
@@ -368,16 +369,20 @@
    char buf[PATH_MAX];
    char *shell = NULL;
    struct passwd *pwent = NULL;
+   Entrance_X_Session *exs = NULL;
+
+   if (e->session)
+      exs = evas_hash_find(e->config->sessions.hash, e->session);
 
    entrance_auth_setup_environment(e->auth, e->display);
-   if ((e->session) && (strlen(e->session) > 0))
+   if ((exs->session) && (strlen(exs->session) > 0))
    {
-      if (!strcmp(e->session, "default"))
+      if (!strcmp(exs->session, "default"))
          snprintf(buf, PATH_MAX, "%s", ENTRANCE_XSESSION);
-      else if (e->session[0] == '/')
-         snprintf(buf, PATH_MAX, "%s", e->session);
+      else if (exs->session[0] == '/')
+         snprintf(buf, PATH_MAX, "%s", exs->session);
       else
-         snprintf(buf, PATH_MAX, "%s %s", ENTRANCE_XSESSION, e->session);
+         snprintf(buf, PATH_MAX, "%s %s", ENTRANCE_XSESSION, exs->session);
    }
    else
    {
@@ -504,7 +509,7 @@
       {
          if (e->session)
             free(e->session);
-         e->session = strdup(exs->session);
+         e->session = strdup(exs->name);
 
          if ((eu =
               evas_hash_find(e->config->users.hash, e->auth->user)) != NULL)
@@ -524,7 +529,7 @@
          }
          edje_object_part_swallow(e->edje, "entrance.xsessions.selected", o);
          evas_object_layer_set(o, evas_object_layer_get(e->edje));
-         edje_object_signal_emit(e->edje, "entrance,xsession,selected", "");
+         edje_object_signal_emit(e->edje, "entrance,xsession,changed", "");
       }
    }
 }
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entrance/src/client/main.c,v
retrieving revision 1.73
retrieving revision 1.74
diff -u -3 -r1.73 -r1.74
--- main.c      16 Aug 2005 04:03:27 -0000      1.73
+++ main.c      26 Aug 2005 04:13:30 -0000      1.74
@@ -325,6 +325,7 @@
       Entrance_X_Session *exs = (Entrance_X_Session *) data;
 
       entrance_session_x_session_set(session, exs);
+      edje_object_signal_emit(session->edje, "entrance,xsession,selected", "");
    }
 }
 




-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to