add E_Exec_Instance to E_Border and vice versa

This commit is contained in:
discomfitor 2013-05-18 13:29:01 +01:00
parent 4bbafeebb3
commit d8dc6df8c4
3 changed files with 10 additions and 0 deletions

View File

@ -4919,6 +4919,12 @@ _e_border_del(E_Border *bd)
focus_next = eina_list_remove(focus_next, bd); focus_next = eina_list_remove(focus_next, bd);
bd->changed = 0; bd->changed = 0;
if (bd->exe_inst)
{
bd->exe_inst->bd = NULL;
bd->exe_inst = NULL;
}
if (bd->fullscreen) bd->desk->fullscreen_borders--; if (bd->fullscreen) bd->desk->fullscreen_borders--;
if (bd->moving) e_border_act_move_end(bd, NULL); if (bd->moving) e_border_act_move_end(bd, NULL);
@ -7968,6 +7974,8 @@ _e_border_eval0(E_Border *bd)
desk = e_desk_at_xy_get(bd->zone, inst->desk_x, desk = e_desk_at_xy_get(bd->zone, inst->desk_x,
inst->desk_y); inst->desk_y);
if (desk) e_border_desk_set(bd, desk); if (desk) e_border_desk_set(bd, desk);
inst->bd = bd;
bd->exe_inst = inst;
e_exec_instance_found(inst); e_exec_instance_found(inst);
} }

View File

@ -647,6 +647,7 @@ struct _E_Border
Eina_List *transients; Eina_List *transients;
Efreet_Desktop *desktop; Efreet_Desktop *desktop;
E_Exec_Instance *exe_inst;
unsigned char comp_hidden : 1; unsigned char comp_hidden : 1;

View File

@ -9,6 +9,7 @@ typedef struct _E_Exec_Instance E_Exec_Instance;
struct _E_Exec_Instance struct _E_Exec_Instance
{ {
Efreet_Desktop *desktop; Efreet_Desktop *desktop;
E_Border *bd;
const char *key; const char *key;
Ecore_Exe *exe; Ecore_Exe *exe;
int startup_id; int startup_id;