davemds pushed a commit to branch master. http://git.enlightenment.org/enlightenment/modules/packagekit.git/commit/?id=273e1a2e9a662992ab88f5d8e2b422ecf08d1a4b
commit 273e1a2e9a662992ab88f5d8e2b422ecf08d1a4b Author: davemds <d...@gurumeditation.it> Date: Mon Nov 4 21:35:00 2013 +0100 Actually show the number of available updates inside the icon --- e-module-packagekit.edc | 14 ++++++++++++++ images/packagekit_updates.png | Bin 2595 -> 2440 bytes src/e_mod_packagekit.c | 17 +++++++++++------ src/e_mod_packagekit.h | 2 +- 4 files changed, 26 insertions(+), 7 deletions(-) diff --git a/e-module-packagekit.edc b/e-module-packagekit.edc index 2ca5f6c..03ad9e9 100644 --- a/e-module-packagekit.edc +++ b/e-module-packagekit.edc @@ -1,4 +1,9 @@ +#define FN "Sans" +#define FNBD "Sans:style=Bold" +#define FNIT "Sans:style=Oblique" +#define FNBDIT "Sans:style=Bold Italic" + images { image: "packagekit_base.png" COMP; image: "packagekit_info_bugfix.png" COMP; @@ -138,6 +143,15 @@ collections { image.normal: "packagekit_error.png"; } } + part { name: "num_updates"; type: TEXT; + effect: SHADOW; + description { state: "default" 0.0; + text { + font: FNBD; + size: 9; + } + } + } } programs { program { diff --git a/images/packagekit_updates.png b/images/packagekit_updates.png index 4f90c6e..9d77593 100644 Binary files a/images/packagekit_updates.png and b/images/packagekit_updates.png differ diff --git a/src/e_mod_packagekit.c b/src/e_mod_packagekit.c index d63f73d..0d16d22 100644 --- a/src/e_mod_packagekit.c +++ b/src/e_mod_packagekit.c @@ -5,13 +5,18 @@ /* GUI */ void -packagekit_icon_update(E_PackageKit_Module_Context *ctxt, const char *state) +packagekit_icon_update(E_PackageKit_Module_Context *ctxt, const char *state, unsigned num) { E_PackageKit_Instance *inst; + char buf[16]; Eina_List *l; + if (num) snprintf(buf, sizeof(buf), "%d", num); EINA_LIST_FOREACH(ctxt->instances, l, inst) - edje_object_signal_emit(inst->gadget, state, "e"); + { + edje_object_signal_emit(inst->gadget, state, "e"); + edje_object_part_text_set(inst->gadget, "num_updates", num ? buf : ""); + } } static void @@ -155,7 +160,7 @@ static void _store_error(E_PackageKit_Module_Context *ctxt, const char *err) { ERR("PKGKIT ERROR: %s", err); - packagekit_icon_update(ctxt, "packagekit,state,error"); + packagekit_icon_update(ctxt, "packagekit,state,error", 0); if (ctxt->error) eina_stringshare_replace(&ctxt->error, err); else @@ -333,9 +338,9 @@ _signal_finished_cb(void *data, const Eldbus_Message *msg) } DBG("PKGKIT: PackageFinished, %d updates available", num_updates); if (num_updates > 0) - packagekit_icon_update(ctxt, "packagekit,state,updates"); + packagekit_icon_update(ctxt, "packagekit,state,updates", num_updates); else - packagekit_icon_update(ctxt, "packagekit,state,updated"); + packagekit_icon_update(ctxt, "packagekit,state,updated", 0); } void @@ -425,7 +430,7 @@ packagekit_create_transaction_and_exec(E_PackageKit_Module_Context *ctxt, } eldbus_pending_data_set(pending, "func", func); - packagekit_icon_update(ctxt, "packagekit,state,working"); + packagekit_icon_update(ctxt, "packagekit,state,working", 0); } diff --git a/src/e_mod_packagekit.h b/src/e_mod_packagekit.h index c710389..eec8749 100644 --- a/src/e_mod_packagekit.h +++ b/src/e_mod_packagekit.h @@ -92,7 +92,7 @@ void packagekit_create_transaction_and_exec(E_PackageKit_Module_Context *ct void packagekit_get_updates(E_PackageKit_Module_Context *ctxt, const char *transaction); void packagekit_refresh_cache(E_PackageKit_Module_Context *ctxt, const char *transaction); -void packagekit_icon_update(E_PackageKit_Module_Context *ctxt, const char *state); +void packagekit_icon_update(E_PackageKit_Module_Context *ctxt, const char *state, unsigned num); void packagekit_popup_new(E_PackageKit_Instance *inst); void packagekit_popup_del(E_PackageKit_Instance *inst); void packagekit_popup_update(E_PackageKit_Instance *inst); --