jpeg pushed a commit to branch master.

http://git.enlightenment.org/tools/edi.git/commit/?id=3caa121b1250d8b376650c7bf552465461df3f25

commit 3caa121b1250d8b376650c7bf552465461df3f25
Author: Jean-Philippe Andre <[email protected]>
Date:   Tue Jul 4 18:35:39 2017 +0900

    main: Fix some invalid API usages
    
    1. toolbar items are not objects
    2. main menu should not be manually packed, it's handled by the
       window itself
    3. show last is recommended, rather than show + add subobjects,
       especially for a window (note: i hate this in principle)
---
 src/bin/edi_main.c | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/src/bin/edi_main.c b/src/bin/edi_main.c
index 2939592..68c0073 100644
--- a/src/bin/edi_main.c
+++ b/src/bin/edi_main.c
@@ -344,7 +344,6 @@ _edi_toolbar_separator_add(Evas_Object *tb)
    Evas_Object *sep;
    sep = elm_toolbar_item_append(tb, NULL, NULL, NULL, 0);
    elm_toolbar_item_separator_set(sep, EINA_TRUE);
-   evas_object_show(sep);
 }
 
 static Evas_Object *
@@ -1080,7 +1079,7 @@ _edi_menu_about_cb(void *data EINA_UNUSED, Evas_Object 
*obj EINA_UNUSED,
 static void
 _edi_menu_setup(Evas_Object *win)
 {
-   Evas_Object *menu;
+   Evas_Object *menu = elm_win_main_menu_get(win);
    Elm_Object_Item *menu_it;
    static Eina_Bool setup = EINA_FALSE;
 
@@ -1154,12 +1153,12 @@ _edi_toolbar_item_add(Evas_Object *tb, const char 
*icon, const char *name, Evas_
 }
 
 static Evas_Object *
-edi_toolbar_setup(Evas_Object *win)
+edi_toolbar_setup(Evas_Object *parent)
 {
    Evas_Object *tb;
    Elm_Object_Item *tb_it;
 
-   tb = elm_toolbar_add(win);
+   tb = elm_toolbar_add(parent);
    elm_toolbar_horizontal_set(tb, EINA_FALSE);
    elm_toolbar_align_set(tb, 0.0);
    elm_toolbar_shrink_mode_set(tb, ELM_TOOLBAR_SHRINK_SCROLL);
@@ -1340,7 +1339,7 @@ Eina_Bool
 edi_open(const char *inputpath)
 {
    Evas_Object *win, *hbx, *vbx, *tb, *content;
-   const char *winname;
+   char *winname;
    char *path;
 
    if (!edi_project_set(inputpath))
@@ -1356,10 +1355,12 @@ edi_open(const char *inputpath)
 
    winname = _edi_win_title_get();
    win = elm_win_util_standard_add("main", winname);
-   free((char*)winname);
+   free(winname);
    if (!win) return EINA_FALSE;
 
    _edi_main_win = win;
+   _edi_menu_setup(win);
+
    elm_win_focus_highlight_enabled_set(win, EINA_TRUE);
    evas_object_smart_callback_add(win, "delete,request", _edi_exit, NULL);
    evas_object_event_callback_add(win, EVAS_CALLBACK_RESIZE, _edi_resize_cb, 
NULL);
@@ -1373,6 +1374,7 @@ edi_open(const char *inputpath)
    evas_object_show(hbx);
 
    tb = edi_toolbar_setup(hbx);
+   elm_box_pack_start(hbx, tb);
    _edi_toolbar = tb;
    _edi_toolbar_set_visible(!_edi_project_config->gui.toolbar_hidden);
 
@@ -1389,11 +1391,6 @@ edi_open(const char *inputpath)
    evas_object_size_hint_align_set(content, EVAS_HINT_FILL, EVAS_HINT_FILL);
    elm_box_pack_end(vbx, content);
 
-   ERR("Loaded project at %s", path);
-   evas_object_resize(win, _edi_project_config->gui.width * 
elm_config_scale_get(),
-                      _edi_project_config->gui.height * 
elm_config_scale_get());
-   evas_object_show(win);
-
    _edi_config_project_add(path);
    _edi_open_tabs();
    edi_scm_init();
@@ -1406,6 +1403,11 @@ edi_open(const char *inputpath)
    ecore_event_handler_add(EDI_EVENT_FILE_CHANGED, _edi_file_changed, NULL);
    ecore_event_handler_add(EDI_EVENT_FILE_SAVED, _edi_file_saved, NULL);
 
+   ERR("Loaded project at %s", path);
+   evas_object_resize(win, _edi_project_config->gui.width * 
elm_config_scale_get(),
+                      _edi_project_config->gui.height * 
elm_config_scale_get());
+   evas_object_show(win);
+
    free(path);
    return EINA_TRUE;
 }

-- 


Reply via email to