forked from enlightenment/edi
panels: Track focus of editors when we're changing panel
This commit is contained in:
parent
5cc9033fb2
commit
804d14cef3
|
@ -961,6 +961,18 @@ _edi_clang_dispose(void *data, Ecore_Thread *thread EINA_UNUSED)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
static void
|
||||||
|
_focused_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
||||||
|
{
|
||||||
|
Edi_Mainview_Panel *panel;
|
||||||
|
Edi_Mainview_Item *item;
|
||||||
|
|
||||||
|
item = (Edi_Mainview_Item *)data;
|
||||||
|
panel = edi_mainview_panel_for_item_get(item);
|
||||||
|
|
||||||
|
edi_mainview_panel_focus(panel);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
_unfocused_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
_unfocused_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_info EINA_UNUSED)
|
||||||
{
|
{
|
||||||
|
@ -1115,6 +1127,7 @@ edi_editor_add(Evas_Object *parent, Edi_Mainview_Item *item)
|
||||||
_smart_cb_key_down, editor);
|
_smart_cb_key_down, editor);
|
||||||
evas_object_smart_callback_add(widget, "changed,user", _changed_cb, editor);
|
evas_object_smart_callback_add(widget, "changed,user", _changed_cb, editor);
|
||||||
evas_object_event_callback_add(widget, EVAS_CALLBACK_MOUSE_UP, _mouse_up_cb, editor);
|
evas_object_event_callback_add(widget, EVAS_CALLBACK_MOUSE_UP, _mouse_up_cb, editor);
|
||||||
|
evas_object_smart_callback_add(widget, "focused", _focused_cb, item);
|
||||||
evas_object_smart_callback_add(widget, "unfocused", _unfocused_cb, editor);
|
evas_object_smart_callback_add(widget, "unfocused", _unfocused_cb, editor);
|
||||||
|
|
||||||
elm_code_parser_standard_add(code, ELM_CODE_PARSER_STANDARD_TODO);
|
elm_code_parser_standard_add(code, ELM_CODE_PARSER_STANDARD_TODO);
|
||||||
|
|
|
@ -245,6 +245,7 @@ edi_mainview_panel_item_select(Edi_Mainview_Panel *panel, Edi_Mainview_Item *ite
|
||||||
_edi_project_config_save_no_notify();
|
_edi_project_config_save_no_notify();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
edi_mainview_panel_focus(panel);
|
||||||
ecore_event_add(EDI_EVENT_TAB_CHANGED, NULL, NULL, NULL);
|
ecore_event_add(EDI_EVENT_TAB_CHANGED, NULL, NULL, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -255,7 +256,6 @@ _promote(void *data, Evas_Object *obj EINA_UNUSED,
|
||||||
Edi_Mainview_Panel *panel;
|
Edi_Mainview_Panel *panel;
|
||||||
|
|
||||||
panel = edi_mainview_panel_for_item_get((Edi_Mainview_Item *)data);
|
panel = edi_mainview_panel_for_item_get((Edi_Mainview_Item *)data);
|
||||||
edi_mainview_panel_focus(panel);
|
|
||||||
edi_mainview_panel_item_select(panel, (Edi_Mainview_Item *)data);
|
edi_mainview_panel_item_select(panel, (Edi_Mainview_Item *)data);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue