okra pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=d99e88b78c2fd7ce820d93632bb638e7a48fc167

commit d99e88b78c2fd7ce820d93632bb638e7a48fc167
Author: Stephen 'Okra' Houston <[email protected]>
Date:   Fri Jan 27 14:55:24 2017 -0600

    Enlightenment - Sysinfo Gadget - Size all sysinfo gadgets by aspect - 
should allow for proper theming.
---
 src/modules/sysinfo/batman/batman.c         | 15 +++++++++++++++
 src/modules/sysinfo/cpuclock/cpuclock.c     | 15 +++++++++++++++
 src/modules/sysinfo/cpumonitor/cpumonitor.c | 14 ++++++++------
 src/modules/sysinfo/memusage/memusage.c     |  6 +++++-
 src/modules/sysinfo/netstatus/netstatus.c   | 15 +++++++++++++++
 src/modules/sysinfo/sysinfo.c               | 14 ++++++--------
 src/modules/sysinfo/thermal/thermal.c       |  6 +++++-
 7 files changed, 69 insertions(+), 16 deletions(-)

diff --git a/src/modules/sysinfo/batman/batman.c 
b/src/modules/sysinfo/batman/batman.c
index a9e3f6a..477c722 100644
--- a/src/modules/sysinfo/batman/batman.c
+++ b/src/modules/sysinfo/batman/batman.c
@@ -411,6 +411,19 @@ _batman_warning_popup(Instance *inst, int t, double 
percent)
 }
 
 static void
+_batman_resize_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_data EINA_UNUSED)
+{
+   Evas_Coord w, h;
+   Instance *inst = data;
+
+   
edje_object_parts_extends_calc(elm_layout_edje_get(inst->cfg->batman.o_gadget), 
0, 0, &w, &h);
+   if (inst->cfg->esm == E_SYSINFO_MODULE_BATMAN)
+     evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 
w, h);
+   else
+     evas_object_size_hint_aspect_set(inst->cfg->batman.o_gadget, 
EVAS_ASPECT_CONTROL_BOTH, w, h);
+}
+
+static void
 _batman_removed_cb(void *data, Evas_Object *obj EINA_UNUSED, void *event_data)
 {
    Instance *inst = data;
@@ -474,6 +487,7 @@ _batman_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSED)
    E_EXPAND(inst->cfg->batman.o_gadget);
    E_FILL(inst->cfg->batman.o_gadget);
    elm_box_pack_end(inst->o_main, inst->cfg->batman.o_gadget);
+   evas_object_event_callback_add(inst->cfg->batman.o_gadget, 
EVAS_CALLBACK_RESIZE, _batman_resize_cb, inst);
    evas_object_show(inst->cfg->batman.o_gadget);
    evas_object_smart_callback_del_full(obj, "gadget_created", 
_batman_created_cb, data);
    _batman_config_updated(inst);
@@ -493,6 +507,7 @@ sysinfo_batman_create(Evas_Object *parent, Instance *inst)
                            "e/modules/battery/main");
    E_EXPAND(inst->cfg->batman.o_gadget);
    E_FILL(inst->cfg->batman.o_gadget);
+   evas_object_event_callback_add(inst->cfg->batman.o_gadget, 
EVAS_CALLBACK_RESIZE, _batman_resize_cb, inst);
    evas_object_show(inst->cfg->batman.o_gadget);
    _batman_config_updated(inst);
 
diff --git a/src/modules/sysinfo/cpuclock/cpuclock.c 
b/src/modules/sysinfo/cpuclock/cpuclock.c
index b8f14cf..c1f3ac5 100644
--- a/src/modules/sysinfo/cpuclock/cpuclock.c
+++ b/src/modules/sysinfo/cpuclock/cpuclock.c
@@ -680,6 +680,19 @@ _cpuclock_status_check_current(Cpu_Status *s)
 }
 
 static void
+_cpuclock_resize_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_data EINA_UNUSED)
+{
+   Evas_Coord w, h;
+   Instance *inst = data;
+
+   
edje_object_parts_extends_calc(elm_layout_edje_get(inst->cfg->cpuclock.o_gadget),
 0, 0, &w, &h);
+   if (inst->cfg->esm == E_SYSINFO_MODULE_CPUCLOCK)
+     evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 
w, h);
+   else
+     evas_object_size_hint_aspect_set(inst->cfg->cpuclock.o_gadget, 
EVAS_ASPECT_CONTROL_BOTH, w, h);
+}
+
+static void
 _cpuclock_cb_frequency_check_main(void *data, Ecore_Thread *th)
 {
    Thread_Config *thc = data;
@@ -824,6 +837,7 @@ _cpuclock_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSED)
                                    _cpuclock_face_cb_set_frequency, inst);
    
edje_object_signal_callback_add(elm_layout_edje_get(inst->cfg->cpuclock.o_gadget),
 "e,action,frequency,decrease", "*",
                                    _cpuclock_face_cb_set_frequency, inst);
+   evas_object_event_callback_add(inst->cfg->cpuclock.o_gadget, 
EVAS_CALLBACK_RESIZE, _cpuclock_resize_cb, inst);
    elm_box_pack_end(inst->o_main, inst->cfg->cpuclock.o_gadget);
    evas_object_show(inst->cfg->cpuclock.o_gadget);
    evas_object_smart_callback_del_full(obj, "gadget_created", 
_cpuclock_created_cb, data);
@@ -852,6 +866,7 @@ sysinfo_cpuclock_create(Evas_Object *parent, Instance *inst)
                                    _cpuclock_face_cb_set_frequency, inst);
    
edje_object_signal_callback_add(elm_layout_edje_get(inst->cfg->cpuclock.o_gadget),
 "e,action,frequency,decrease", "*",
                                    _cpuclock_face_cb_set_frequency, inst);
+   evas_object_event_callback_add(inst->cfg->cpuclock.o_gadget, 
EVAS_CALLBACK_RESIZE, _cpuclock_resize_cb, inst);
    evas_object_show(inst->cfg->cpuclock.o_gadget);
    inst->cfg->cpuclock.status = _cpuclock_status_new();
    _cpuclock_status_check_available(inst->cfg->cpuclock.status);
diff --git a/src/modules/sysinfo/cpumonitor/cpumonitor.c 
b/src/modules/sysinfo/cpumonitor/cpumonitor.c
index ff96f5c..223fd07 100644
--- a/src/modules/sysinfo/cpumonitor/cpumonitor.c
+++ b/src/modules/sysinfo/cpumonitor/cpumonitor.c
@@ -111,22 +111,23 @@ _cpumonitor_mouse_down_cb(void *data, Evas *e 
EINA_UNUSED, Evas_Object *obj EINA
 }
 
 static void
-_cpumonitor_resize_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_data EINA_UNUSED)
+_cpumonitor_resize_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void 
*event_data EINA_UNUSED)
 {
    Evas_Coord w = 1, h = 1;
    Instance *inst = data;
-   CPU_Core *first_core;
    int num_cores = eina_list_count(inst->cfg->cpumonitor.cores);
 
    if (!num_cores || !inst->o_main) return;
 
-   first_core = eina_list_nth(inst->cfg->cpumonitor.cores, 0);
-   edje_object_parts_extends_calc(elm_layout_edje_get(first_core->layout), 0, 
0, &w, &h);
+   edje_object_parts_extends_calc(elm_layout_edje_get(obj), 0, 0, &w, &h);
    if (e_gadget_site_orient_get(e_gadget_site_get(inst->o_main)) == 
E_GADGET_SITE_ORIENT_VERTICAL)
      h *= num_cores;
    else
      w *= num_cores;
-   evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, w, 
h);
+   if (inst->cfg->esm == E_SYSINFO_MODULE_CPUMONITOR)
+     evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 
w, h);
+   else
+     evas_object_size_hint_aspect_set(inst->cfg->cpumonitor.o_gadget, 
EVAS_ASPECT_CONTROL_BOTH, w, h);
 }
 
 static void
@@ -207,6 +208,8 @@ _cpumonitor_config_updated(Instance *inst)
           {
              core = E_NEW(CPU_Core, 1);
              core->layout = _cpumonitor_add_layout(inst);
+             if (i == 0)
+               evas_object_event_callback_add(core->layout, 
EVAS_CALLBACK_RESIZE, _cpumonitor_resize_cb, inst);
              core->percent = 0;
              core->total = 0;
              core->idle = 0;
@@ -289,7 +292,6 @@ _cpumonitor_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSE
    E_FILL(inst->cfg->cpumonitor.o_gadget);
    elm_box_pack_end(inst->o_main, inst->cfg->cpumonitor.o_gadget);
    evas_object_event_callback_add(inst->cfg->cpumonitor.o_gadget, 
EVAS_CALLBACK_MOUSE_DOWN, _cpumonitor_mouse_down_cb, inst);
-   evas_object_event_callback_add(inst->cfg->cpumonitor.o_gadget, 
EVAS_CALLBACK_RESIZE, _cpumonitor_resize_cb, inst);
    evas_object_show(inst->cfg->cpumonitor.o_gadget);
    evas_object_smart_callback_del_full(obj, "gadget_created", 
_cpumonitor_created_cb, data);
    _cpumonitor_config_updated(inst);
diff --git a/src/modules/sysinfo/memusage/memusage.c 
b/src/modules/sysinfo/memusage/memusage.c
index 3451dfc..77e2e64 100644
--- a/src/modules/sysinfo/memusage/memusage.c
+++ b/src/modules/sysinfo/memusage/memusage.c
@@ -117,7 +117,10 @@ _memusage_resize_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUSE
    Instance *inst = data;
 
    
edje_object_parts_extends_calc(elm_layout_edje_get(inst->cfg->memusage.o_gadget),
 0, 0, &w, &h);
-   evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, w, 
h);
+   if (inst->cfg->esm == E_SYSINFO_MODULE_MEMUSAGE)
+     evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 
w, h);
+   else
+     evas_object_size_hint_aspect_set(inst->cfg->memusage.o_gadget, 
EVAS_ASPECT_CONTROL_BOTH, w, h);
 }
 
 static void
@@ -252,6 +255,7 @@ sysinfo_memusage_create(Evas_Object *parent, Instance *inst)
    E_EXPAND(inst->cfg->memusage.o_gadget);
    E_FILL(inst->cfg->memusage.o_gadget);
    evas_object_event_callback_add(inst->cfg->memusage.o_gadget, 
EVAS_CALLBACK_MOUSE_DOWN, _memusage_mouse_down_cb, inst);
+   evas_object_event_callback_add(inst->cfg->memusage.o_gadget, 
EVAS_CALLBACK_RESIZE, _memusage_resize_cb, inst);
    evas_object_show(inst->cfg->memusage.o_gadget);
    _memusage_config_updated(inst);
 
diff --git a/src/modules/sysinfo/netstatus/netstatus.c 
b/src/modules/sysinfo/netstatus/netstatus.c
index 3b0f7fb..d7292be 100644
--- a/src/modules/sysinfo/netstatus/netstatus.c
+++ b/src/modules/sysinfo/netstatus/netstatus.c
@@ -113,6 +113,19 @@ _netstatus_mouse_down_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_
 }
 
 static void
+_netstatus_resize_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj 
EINA_UNUSED, void *event_data EINA_UNUSED)
+{
+   Evas_Coord w, h;
+   Instance *inst = data;
+
+   
edje_object_parts_extends_calc(elm_layout_edje_get(inst->cfg->netstatus.o_gadget),
 0, 0, &w, &h);
+   if (inst->cfg->esm == E_SYSINFO_MODULE_NETSTATUS)
+     evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 
w, h);
+   else
+     evas_object_size_hint_aspect_set(inst->cfg->netstatus.o_gadget, 
EVAS_ASPECT_CONTROL_BOTH, w, h);
+}
+
+static void
 _netstatus_cb_usage_check_main(void *data, Ecore_Thread *th)
 {
    Thread_Config *thc = data;
@@ -221,6 +234,7 @@ _netstatus_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSED
    E_FILL(inst->cfg->netstatus.o_gadget);
    elm_box_pack_end(inst->o_main, inst->cfg->netstatus.o_gadget);
    evas_object_event_callback_add(inst->cfg->netstatus.o_gadget, 
EVAS_CALLBACK_MOUSE_DOWN, _netstatus_mouse_down_cb, inst);
+   evas_object_event_callback_add(inst->cfg->netstatus.o_gadget, 
EVAS_CALLBACK_RESIZE, _netstatus_resize_cb, inst);
    evas_object_show(inst->cfg->netstatus.o_gadget);
    evas_object_smart_callback_del_full(obj, "gadget_created", 
_netstatus_created_cb, data);
    _netstatus_config_updated(inst);
@@ -235,6 +249,7 @@ sysinfo_netstatus_create(Evas_Object *parent, Instance 
*inst)
    E_EXPAND(inst->cfg->netstatus.o_gadget);
    E_FILL(inst->cfg->netstatus.o_gadget);
    evas_object_event_callback_add(inst->cfg->netstatus.o_gadget, 
EVAS_CALLBACK_MOUSE_DOWN, _netstatus_mouse_down_cb, inst);
+   evas_object_event_callback_add(inst->cfg->netstatus.o_gadget, 
EVAS_CALLBACK_RESIZE, _netstatus_resize_cb, inst);
    evas_object_show(inst->cfg->netstatus.o_gadget);
    _netstatus_config_updated(inst);
 
diff --git a/src/modules/sysinfo/sysinfo.c b/src/modules/sysinfo/sysinfo.c
index c36455a..902750f 100644
--- a/src/modules/sysinfo/sysinfo.c
+++ b/src/modules/sysinfo/sysinfo.c
@@ -41,22 +41,21 @@ _sysinfo_created_cb(void *data, Evas_Object *obj, void 
*event_data EINA_UNUSED)
    Instance *inst = data;
 
    inst->o_table = elm_table_add(inst->o_main);
-   elm_table_homogeneous_set(inst->o_table, EINA_TRUE);
+   elm_table_homogeneous_set(inst->o_table, EINA_FALSE);
    E_EXPAND(inst->o_table);
-   evas_object_size_hint_aspect_set(inst->o_table, EVAS_ASPECT_CONTROL_BOTH, 
1, 1);
    elm_object_content_set(inst->o_main, inst->o_table);
    evas_object_show(inst->o_table);
 
    inst->cfg->sysinfo.o_batman = sysinfo_batman_create(inst->o_table, inst);
    elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_batman, 0, 0, 1, 1);
-   inst->cfg->sysinfo.o_thermal = sysinfo_thermal_create(inst->o_table, inst);
-   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_thermal, 1, 0, 1, 1);
    inst->cfg->sysinfo.o_cpuclock = sysinfo_cpuclock_create(inst->o_table, 
inst);
-   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_cpuclock, 0, 1, 1, 1);
+   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_cpuclock, 1, 0, 1, 1);
    inst->cfg->sysinfo.o_cpumonitor = sysinfo_cpumonitor_create(inst->o_table, 
inst);
-   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_cpumonitor, 1, 1, 1, 1);
+   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_cpumonitor, 0, 1, 1, 1);
    inst->cfg->sysinfo.o_memusage = sysinfo_memusage_create(inst->o_table, 
inst);
-   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_memusage, 0, 2, 1, 1);
+   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_memusage, 1, 1, 1, 1);
+   inst->cfg->sysinfo.o_thermal = sysinfo_thermal_create(inst->o_table, inst);
+   elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_thermal, 0, 2, 1, 1);
    inst->cfg->sysinfo.o_netstatus = sysinfo_netstatus_create(inst->o_table, 
inst);
    elm_table_pack(inst->o_table, inst->cfg->sysinfo.o_netstatus, 1, 2, 1, 1);
 
@@ -158,7 +157,6 @@ sysinfo_create(Evas_Object *parent, int *id, 
E_Gadget_Site_Orient orient EINA_UN
    inst->o_main = elm_scroller_add(parent);
    elm_object_style_set(inst->o_main, "no_inset_shadow");
    E_EXPAND(inst->o_main);
-   evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 1, 
1);
    evas_object_event_callback_add(inst->o_main, EVAS_CALLBACK_DEL, 
_sysinfo_deleted_cb, inst);
    evas_object_show(inst->o_main);
 
diff --git a/src/modules/sysinfo/thermal/thermal.c 
b/src/modules/sysinfo/thermal/thermal.c
index f5749ed..16cc2dc 100644
--- a/src/modules/sysinfo/thermal/thermal.c
+++ b/src/modules/sysinfo/thermal/thermal.c
@@ -189,7 +189,10 @@ _thermal_resize_cb(void *data, Evas *e EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED
    Instance *inst = data;
 
    
edje_object_parts_extends_calc(elm_layout_edje_get(inst->cfg->thermal.o_gadget),
 0, 0, &w, &h);
-   evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, w, 
h);
+   if (inst->cfg->esm == E_SYSINFO_MODULE_THERMAL)
+     evas_object_size_hint_aspect_set(inst->o_main, EVAS_ASPECT_CONTROL_BOTH, 
w, h);
+   else
+     evas_object_size_hint_aspect_set(inst->cfg->thermal.o_gadget, 
EVAS_ASPECT_CONTROL_BOTH, w, h);
 }
 
 static void
@@ -254,6 +257,7 @@ sysinfo_thermal_create(Evas_Object *parent, Instance *inst)
                            "e/modules/temperature/main");
    E_EXPAND(inst->cfg->thermal.o_gadget);
    E_FILL(inst->cfg->thermal.o_gadget);
+   evas_object_event_callback_add(inst->cfg->thermal.o_gadget, 
EVAS_CALLBACK_RESIZE, _thermal_resize_cb, inst);
    evas_object_show(inst->cfg->thermal.o_gadget);
    _thermal_config_updated(inst);
 

-- 


Reply via email to