On Wed, Oct 13, 2010 at 7:36 AM, Enlightenment SVN
<no-re...@enlightenment.org> wrote:
> Log:
>  Show mixer popup when changing the volume via keybindings.

Why?
IMHO, this is very annoying :-\

Perhaps leave that to be enabled as an option but not as default.

>
> Author:       morlenxus
> Date:         2010-10-13 03:36:04 -0700 (Wed, 13 Oct 2010)
> New Revision: 53347
>
> Modified:
>  trunk/e/src/modules/mixer/e_mod_main.c trunk/e/src/modules/mixer/e_mod_main.h
>
> Modified: trunk/e/src/modules/mixer/e_mod_main.c
> ===================================================================
> --- trunk/e/src/modules/mixer/e_mod_main.c      2010-10-13 09:34:40 UTC (rev 
> 53346)
> +++ trunk/e/src/modules/mixer/e_mod_main.c      2010-10-13 10:36:04 UTC (rev 
> 53347)
> @@ -486,6 +486,9 @@
>    inst->ui.table = NULL;
>    inst->ui.button = NULL;
>    inst->popup = NULL;
> +   if (inst->popup_timer)
> +      ecore_timer_del(inst->popup_timer);
> +   inst->popup_timer = NULL;
>  }
>
>  static void
> @@ -599,6 +602,37 @@
>  }
>
>  static void
> +_mixer_popup_timer_new(E_Mixer_Instance *inst)
> +{
> +   if (inst->popup)
> +     {
> +        if (inst->popup_timer)
> +                 {
> +             ecore_timer_del(inst->popup_timer);
> +             inst->popup_timer = ecore_timer_add(1.0, _mixer_popup_timer_cb, 
> inst);
> +          }
> +     }
> +   else
> +     {
> +        _mixer_popup_new(inst);
> +        inst->popup_timer = ecore_timer_add(1.0, _mixer_popup_timer_cb, 
> inst);
> +     }
> +}
> +
> +static Eina_Bool
> +_mixer_popup_timer_cb(void *data)
> +{
> +   E_Mixer_Instance *inst;
> +   inst = data;
> +
> +   if (inst->popup)
> +      _mixer_popup_del(inst);
> +   inst->popup_timer = NULL;
> +
> +   return ECORE_CALLBACK_CANCEL;
> +}
> +
> +static void
>  _mixer_menu_cb_post(void *data, E_Menu *menu __UNUSED__)
>  {
>    E_Mixer_Instance *inst = data;
> @@ -978,8 +1012,12 @@
>    if (!ctxt->conf)
>       return;
>
> -   if (ctxt->default_instance)
> -      _mixer_volume_increase(ctxt->default_instance);
> +
> +   if (!ctxt->default_instance)
> +      return;
> +
> +   _mixer_popup_timer_new(ctxt->default_instance);
> +   _mixer_volume_increase(ctxt->default_instance);
>  }
>
>  static void
> @@ -994,8 +1032,11 @@
>    if (!ctxt->conf)
>       return;
>
> -   if (ctxt->default_instance)
> -      _mixer_volume_decrease(ctxt->default_instance);
> +   if (!ctxt->default_instance)
> +      return;
> +
> +   _mixer_popup_timer_new(ctxt->default_instance);
> +   _mixer_volume_decrease(ctxt->default_instance);
>  }
>
>  static void
> @@ -1010,8 +1051,11 @@
>    if (!ctxt->conf)
>       return;
>
> -   if (ctxt->default_instance)
> -      _mixer_toggle_mute(ctxt->default_instance);
> +   if (!ctxt->default_instance)
> +      return;
> +
> +   _mixer_popup_timer_new(ctxt->default_instance);
> +   _mixer_toggle_mute(ctxt->default_instance);
>  }
>
>  static E_Config_Dialog *
>
> Modified: trunk/e/src/modules/mixer/e_mod_main.h
> ===================================================================
> --- trunk/e/src/modules/mixer/e_mod_main.h      2010-10-13 09:34:40 UTC (rev 
> 53346)
> +++ trunk/e/src/modules/mixer/e_mod_main.h      2010-10-13 10:36:04 UTC (rev 
> 53347)
> @@ -29,6 +29,7 @@
>  {
>    E_Gadcon_Client *gcc;
>    E_Gadcon_Popup *popup;
> +   Ecore_Timer *popup_timer;
>    E_Menu *menu;
>
>    struct
> @@ -81,6 +82,8 @@
>  E_Dialog *e_mixer_app_dialog_new(E_Container *con, void (*func)(E_Dialog 
> *dialog, void *data), void *data);
>  int e_mixer_app_dialog_select(E_Dialog *dialog, const char *card_name, const 
> char *channel_name);
>
> +static void _mixer_popup_timer_new(E_Mixer_Instance *inst);
> +static Eina_Bool _mixer_popup_timer_cb(void *data);
>  int e_mixer_update(E_Mixer_Instance *inst);
>  const char *e_mixer_theme_path(void);
>
>
>
> ------------------------------------------------------------------------------
> Beautiful is writing same markup. Internet Explorer 9 supports
> standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
> Spend less time writing and  rewriting code and more time creating great
> experiences on the web. Be a part of the beta today.
> http://p.sf.net/sfu/beautyoftheweb
> _______________________________________________
> enlightenment-svn mailing list
> enlightenment-...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>



-- 
Fabiano Fidêncio
ProFUSION embedded systems
http://www.profusion.mobi

------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly 
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to