From 6b1168b933a9dbd805bbb0d53abf35d81d148945 Mon Sep 17 00:00:00 2001 From: Christopher Michael Date: Tue, 19 Feb 2013 10:55:39 +0000 Subject: [PATCH] Add list of monitors to smart_data structure. Add code to delete the monitors when randr gets deleted. Signed-off-by: Christopher Michael SVN revision: 84128 --- src/modules/conf_randr/e_smart_randr.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/modules/conf_randr/e_smart_randr.c b/src/modules/conf_randr/e_smart_randr.c index 1f49df697..79aa86992 100644 --- a/src/modules/conf_randr/e_smart_randr.c +++ b/src/modules/conf_randr/e_smart_randr.c @@ -12,6 +12,9 @@ struct _E_Smart_Data /* visible flag */ Eina_Bool visible : 1; + + /* list of monitors */ + Eina_List *monitors; }; /* local function prototypes */ @@ -80,10 +83,15 @@ static void _e_smart_del(Evas_Object *obj) { E_Smart_Data *sd; + Evas_Object *mon; /* try to get the objects smart data */ if (!(sd = evas_object_smart_data_get(obj))) return; + /* free the monitors */ + EINA_LIST_FREE(sd->monitors, mon) + evas_object_del(mon); + /* delete the layout object */ if (sd->o_layout) evas_object_del(sd->o_layout);