Hi,
I've added a little feature/setting to notification module. It now allows
to set timeout for all notifications (not only default). I've decided to
do this because of xchat (and maybe others). xchat's notification lasts
20s and there is no way how to change it. So there is a new checkbox in
notification module settings (default false) to enable forced timeout for
all notifications. I've also enlarged maximal timeout value (slider) from
6.0 to 15s
If you find it useful / safe, please apply it.
Thanks
regards,
Libor
Index: src/e_mod_popup.c
===================================================================
--- src/e_mod_popup.c (revision 60939)
+++ src/e_mod_popup.c (working copy)
@@ -93,7 +93,7 @@
timeout = e_notification_timeout_get(popup->notif);
- if (timeout < 0)
+ if (timeout < 0 || notification_cfg->force_timeout)
timeout = notification_cfg->timeout;
else
timeout = (double)timeout / 1000.0;
Index: src/e_mod_main.c
===================================================================
--- src/e_mod_main.c (revision 60939)
+++ src/e_mod_main.c (working copy)
@@ -327,6 +327,7 @@
E_CONFIG_VAL(D, T, show_critical, INT);
E_CONFIG_VAL(D, T, corner, INT);
E_CONFIG_VAL(D, T, timeout, FLOAT);
+ E_CONFIG_VAL(D, T, force_timeout, INT);
E_CONFIG_LIST(D, T, items, conf_item_edd);
notification_cfg = e_config_domain_load("module.notification", conf_edd);
@@ -473,6 +474,7 @@
cfg->show_normal = 1;
cfg->show_critical = 1;
cfg->timeout = 5.0;
+ cfg->force_timeout = 0;
cfg->corner = CORNER_TR;
return cfg;
Index: src/e_mod_config.c
===================================================================
--- src/e_mod_config.c (revision 60939)
+++ src/e_mod_config.c (working copy)
@@ -5,6 +5,7 @@
int show_low;
int show_normal;
int show_critical;
+ int force_timeout;
double timeout;
int corner;
};
@@ -66,6 +67,7 @@
cfdata->show_critical = notification_cfg->show_critical;
cfdata->timeout = notification_cfg->timeout;
cfdata->corner = notification_cfg->corner;
+ cfdata->force_timeout = notification_cfg->force_timeout;
}
static Evas_Object *
@@ -88,7 +90,9 @@
e_widget_list_object_append(o, of, 1, 1, 0.5);
of = e_widget_framelist_add(evas, D_("Default Timeout"), 0);
- ow = e_widget_slider_add(evas, 1, 0, D_("%.1f seconds"), 0.0, 6.0, 0.1, 0,
+ ow = e_widget_check_add(evas, D_("Force timeout for all notifications"), &(cfdata->force_timeout));
+ e_widget_framelist_object_append(of,ow);
+ ow = e_widget_slider_add(evas, 1, 0, D_("%.1f seconds"), 0.0, 15.0, 0.1, 0,
&(cfdata->timeout), NULL, 200);
e_widget_framelist_object_append(of, ow);
e_widget_list_object_append(o, of, 1, 1, 0.5);
@@ -134,6 +138,7 @@
notification_cfg->show_critical = cfdata->show_critical;
notification_cfg->timeout = cfdata->timeout;
notification_cfg->corner = cfdata->corner;
+ notification_cfg->force_timeout = cfdata->force_timeout;
e_modapi_save(notification_mod);
return 1;
Index: src/e_mod_main.h
===================================================================
--- src/e_mod_main.h (revision 60939)
+++ src/e_mod_main.h (working copy)
@@ -51,6 +51,7 @@
int show_low;
int show_normal;
int show_critical;
+ int force_timeout;
float timeout;
Popup_Corner corner;
------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel