mainview: Always open in first panel.

Summary: This patch ensures "open file in panel" will open in first mainview if no file exists in the primary mainview. Otherwise business-as-usual.

Reviewers: ajwillia.ms

Reviewed By: ajwillia.ms

Differential Revision: https://phab.enlightenment.org/D5040
This commit is contained in:
Al Poole 2017-07-25 22:31:37 +01:00 committed by Andy Williams
parent c265dc2693
commit 3586ac9cc0
3 changed files with 20 additions and 1 deletions

View File

@ -142,9 +142,14 @@ _item_menu_open_panel_cb(void *data, Evas_Object *obj EINA_UNUSED,
Edi_Path_Options *options;
Edi_Dir_Data *sd = data;
options = edi_path_options_create(sd->path);
if (edi_mainview_panel_count() == 1 &&
(edi_mainview_panel_item_count(edi_mainview_panel_by_index(0)) == 0))
panel = edi_mainview_panel_by_index(0);
else
panel = edi_mainview_panel_append();
options = edi_path_options_create(sd->path);
edi_mainview_panel_open(panel, options);
}

View File

@ -25,6 +25,12 @@ static void
dummy()
{}
unsigned int
edi_mainview_panel_item_count(Edi_Mainview_Panel *panel)
{
return eina_list_count(panel->items);
}
Edi_Mainview_Item *
edi_mainview_panel_item_current_get(Edi_Mainview_Panel *panel)
{

View File

@ -278,6 +278,14 @@ void edi_mainview_panel_goto_position(Edi_Mainview_Panel *panel, unsigned int ro
*/
void edi_mainview_panel_goto_popup_show();
/**
* Return number of items in panel.
* @param panel the mainview panel context
*
* @ingroup Content
*/
unsigned int edi_mainview_panel_item_count(Edi_Mainview_Panel *panel);
/**
* @}
*