Code outside of e_border shouldn't care if we use icccm or netwm name.
authorsebastid <sebastid>
Tue, 30 Aug 2005 01:42:56 +0000 (01:42 +0000)
committersebastid <sebastid@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Tue, 30 Aug 2005 01:42:56 +0000 (01:42 +0000)
SVN revision: 16415

src/bin/e_border.c
src/bin/e_border.h
src/bin/e_int_menus.c
src/bin/e_winlist.c
src/modules/ibar/e_mod_main.c

index 8fabc61ed01f025a97c9ac29097e35dbb554f9cf..0cbf3c25bdc61d4097c6b1b9269a23bb8271df98 100644 (file)
@@ -2028,6 +2028,17 @@ e_border_immortal_windows_get(void)
    return list;
 }
 
+const char *
+e_border_name_get(E_Border *bd)
+{
+   if (bd->client.netwm.name)
+     return bd->client.netwm.name;
+   else if (bd->client.icccm.title)
+     return bd->client.icccm.title;
+   else
+     return "";
+}
+
 /* local subsystem functions */
 static void
 _e_border_free(E_Border *bd)
index da0bb0c2c208d0099d8c4ff1d4f4b2c561c12873..bca247fa4abf4faca87cbc9684c2f487e83d72a2 100644 (file)
@@ -535,6 +535,8 @@ EAPI void e_border_resize_cancel(void);
 EAPI void e_border_frame_recalc(E_Border *bd);
 EAPI Evas_List *e_border_immortal_windows_get(void);
 
+const char *e_border_name_get(E_Border *bd);
+
 extern EAPI int E_EVENT_BORDER_RESIZE;
 extern EAPI int E_EVENT_BORDER_MOVE;
 extern EAPI int E_EVENT_BORDER_ADD;
index 35f1f37bdbd7f367dab3a51b271551050c87552b..5c42e553a0dfe86fa474b3ace670becc60e45a98 100644 (file)
@@ -640,16 +640,13 @@ _e_int_menus_clients_pre_cb(void *data, E_Menu *m)
      {
        E_Border *bd = l->data;
        E_App *a;
-       char *title = "";
+       const char *title;
        
-       if (bd->client.netwm.name) title = bd->client.netwm.name;
-       else title = bd->client.icccm.title;
+       title = e_border_name_get(bd);
        mi = e_menu_item_new(m);
        e_menu_item_check_set(mi, 1);
-       if (bd->client.netwm.name)
-         e_menu_item_label_set(mi, bd->client.netwm.name);
-       else if (bd->client.icccm.title)
-         e_menu_item_label_set(mi, bd->client.icccm.title);
+       if ((title) && (title[0]))
+         e_menu_item_label_set(mi, title);
        else
          e_menu_item_label_set(mi, _("No name!!"));
        /* ref the border as we implicitly unref it in the callback */
@@ -910,15 +907,12 @@ _e_int_menus_lost_clients_pre_cb(void *data, E_Menu *m)
      {
        E_Border *bd = l->data;
        E_App *a;
-       char *title = "";
+       const char *title = "";
        
-       if (bd->client.netwm.name) title = bd->client.netwm.name;
-       else title = bd->client.icccm.title;
+       title = e_border_name_get(bd);
        mi = e_menu_item_new(m);
-       if (bd->client.netwm.name)
-         e_menu_item_label_set(mi, bd->client.netwm.name);
-       else if (bd->client.icccm.title)
-         e_menu_item_label_set(mi, bd->client.icccm.title);
+       if ((title) && (title[0]))
+         e_menu_item_label_set(mi, title);
        else
          e_menu_item_label_set(mi, _("No name!!"));
        /* ref the border as we implicitly unref it in the callback */
index 8ff58e1ef623b631cbeab36ec43104b9df9b6a4e..6b066c80d39ddc0a7bfe0853da23165ac74bc268 100644 (file)
@@ -414,10 +414,7 @@ _e_winlist_border_add(E_Border *bd, E_Zone *zone, E_Desk *desk)
        ww->bg_object = o;
        e_theme_edje_object_set(o, "base/theme/winlist",
                                "widgets/winlist/item");
-       if (bd->client.netwm.name)
-         edje_object_part_text_set(o, "title_text", bd->client.netwm.name);
-       else if (bd->client.icccm.title)
-         edje_object_part_text_set(o, "title_text", bd->client.icccm.title);
+       edje_object_part_text_set(o, "title_text", e_border_name_get(ww->border));
        evas_object_show(o);
        if (edje_object_part_exists(ww->bg_object, "icon_swallow"))
          {
@@ -561,10 +558,7 @@ _e_winlist_activate(void)
        if (!ww->border->lock_focus_out)
          e_border_focus_set(ww->border, 1, 1);
      }
-   if (ww->border->client.netwm.name)
-     edje_object_part_text_set(bg_object, "title_text", ww->border->client.netwm.name);
-   else if (ww->border->client.icccm.title)
-     edje_object_part_text_set(bg_object, "title_text", ww->border->client.icccm.title);
+   edje_object_part_text_set(bg_object, "title_text", e_border_name_get(ww->border));
    if (icon_object)
      {
        evas_object_del(icon_object);
index 5adfbf3fa941280af16a719d582c24dfac916951..eb65146aafd56dce5920c439bea32e9e16cd335b 100644 (file)
@@ -1652,13 +1652,12 @@ _ibar_bar_cb_drop_border(void *data, const char *type, void *event)
    IBar_Icon *ic;
 
    E_Border *bd;
-   char *title = "";
+   const char *title;
 
    ev = event;
    ibb = data;
    bd = ev->data;
-   if (bd->client.netwm.name) title = bd->client.netwm.name;
-   else title = bd->client.icccm.title;
+   title = e_border_name_get(bd);
    app = e_app_window_name_class_title_role_find(bd->client.icccm.name,
                                                 bd->client.icccm.class,
                                                 title, bd->client.icccm.window_role);