ajwillia-ms pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=4da088b51c4f4d005d67185322a0ff0ce03e7210

commit 4da088b51c4f4d005d67185322a0ff0ce03e7210
Author: Andy Williams <a...@andywilliams.me>
Date:   Tue Jun 9 22:31:33 2015 +0100

    tabs: load in the correct order...
    
    Remove some unneeded duplication at the same time
---
 src/bin/edi_main.c              | 11 +++++++++--
 src/bin/mainview/edi_mainview.c | 32 ++++++--------------------------
 2 files changed, 15 insertions(+), 28 deletions(-)

diff --git a/src/bin/edi_main.c b/src/bin/edi_main.c
index 48aae6b..3ce91be 100644
--- a/src/bin/edi_main.c
+++ b/src/bin/edi_main.c
@@ -985,15 +985,22 @@ void
 _edi_open_tabs()
 {
    Edi_Project_Config_Tab *tab;
-   Eina_List *list, *next;
+   Eina_List *tabs, *list;
 
-   EINA_LIST_FOREACH_SAFE(_edi_project_config->tabs, list, next, tab)
+   tabs = _edi_project_config->tabs;
+   _edi_project_config->tabs = NULL;
+   EINA_LIST_FOREACH(tabs, list, tab)
      {
         if (tab->windowed)
           edi_mainview_open_window_path(tab->path);
         else
           edi_mainview_open_path(tab->path);
      }
+
+   EINA_LIST_FREE(tabs, tab)
+     {
+        free(tab);
+     }
 }
 
 Evas_Object *
diff --git a/src/bin/mainview/edi_mainview.c b/src/bin/mainview/edi_mainview.c
index 6551164..837e255 100644
--- a/src/bin/mainview/edi_mainview.c
+++ b/src/bin/mainview/edi_mainview.c
@@ -196,7 +196,6 @@ _edi_mainview_item_tab_add(Edi_Path_Options *options, const 
char *mime)
 
    if (options->line)
      edi_mainview_goto(options->line);
-   _edi_project_config_tab_add(options->path, EINA_FALSE);
 }
 
 static void
@@ -251,7 +250,6 @@ _edi_mainview_item_win_add(Edi_Path_Options *options, const 
char *mime)
 
    evas_object_resize(win, 380 * elm_config_scale_get(), 260 * 
elm_config_scale_get());
    evas_object_show(win);
-   _edi_project_config_tab_add(options->path, EINA_TRUE);
 }
 
 static void
@@ -378,18 +376,9 @@ void
 edi_mainview_open_path(const char *path)
 {
    Edi_Path_Options *options;
-   Edi_Mainview_Item *it;
-
-   it = _get_item_for_path(path);
-   if (it)
-     {
-        edi_mainview_item_select(it);
-        return;
-     }
 
    options = edi_path_options_create(path);
-
-   eio_file_direct_stat(path, _edi_mainview_tab_stat_done, dummy, options);
+   edi_mainview_open(options);
 }
 
 void
@@ -414,29 +403,18 @@ edi_mainview_open(Edi_Path_Options *options)
      {
         _edi_mainview_item_tab_add(options, NULL);
      }
+
+   _edi_project_config_tab_add(options->path, EINA_FALSE);
 }
 
 void
 edi_mainview_open_window_path(const char *path)
 {
    Edi_Path_Options *options;
-   Edi_Mainview_Item *it;
-
-   it = _get_item_for_path(path);
-   if (it)
-     {
-        edi_mainview_item_select(it);
-        elm_naviframe_item_pop(nf);
-        elm_object_item_del(elm_toolbar_selected_item_get(tb));
-        _edi_mainview_items = eina_list_remove(_edi_mainview_items, it);
-
-        eina_stringshare_del(it->path);
-        free(it);
-     }
 
    options = edi_path_options_create(path);
 
-   eio_file_direct_stat(path, _edi_mainview_win_stat_done, dummy, options);
+   edi_mainview_open_window(options);
 }
 
 void
@@ -464,6 +442,8 @@ edi_mainview_open_window(Edi_Path_Options *options)
      {
         _edi_mainview_item_win_add(options, NULL);
      }
+
+   _edi_project_config_tab_add(options->path, EINA_TRUE);
 }
 
 void

-- 


Reply via email to