forked from enlightenment/enlightenment
HUUUUUUGE spankies to the person who wrote the backlight settings config. massive. humongous. colossal. cannot-adequately-describe-size-because-it-is-too-large sized spankies.
there was a callback set on the dpms timer slider which would, whenever the slider was moved and on creating the slider, set the backlight+screensaver timers to zero IN THE E CONFIG ITSELF. this means anyone who ever opened the dialog with dpms enabled had their backlight+screensaver config broken. cannot emphasize how bad this is. ticket #1765 SVN revision: 79163
This commit is contained in:
parent
3234fbd9e8
commit
fa8b81e403
|
@ -6,7 +6,6 @@ static int _advanced_check_changed(E_Config_Dialog *cfd, E_Config_Dialog_Data *
|
||||||
static int _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
static int _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata);
|
||||||
static Evas_Object *_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas,
|
static Evas_Object *_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas,
|
||||||
E_Config_Dialog_Data *cfdata);
|
E_Config_Dialog_Data *cfdata);
|
||||||
static void _cb_backlight_slider_change(void *data, Evas_Object *obj);
|
|
||||||
|
|
||||||
struct _E_Config_Dialog_Data
|
struct _E_Config_Dialog_Data
|
||||||
{
|
{
|
||||||
|
@ -86,7 +85,16 @@ _apply_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata)
|
||||||
|
|
||||||
e_backlight_mode_set(NULL, E_BACKLIGHT_MODE_NORMAL);
|
e_backlight_mode_set(NULL, E_BACKLIGHT_MODE_NORMAL);
|
||||||
e_backlight_level_set(NULL, e_config->backlight.normal, -1.0);
|
e_backlight_level_set(NULL, e_config->backlight.normal, -1.0);
|
||||||
|
if (cfdata->backlight_timeout < e_config->screensaver_timeout)
|
||||||
|
{
|
||||||
|
e_config->screensaver_timeout = cfdata->backlight_timeout;
|
||||||
|
e_config->dpms_standby_timeout = e_config->screensaver_timeout;
|
||||||
|
e_config->dpms_suspend_timeout = e_config->screensaver_timeout;
|
||||||
|
e_config->dpms_off_timeout = e_config->screensaver_timeout;
|
||||||
|
}
|
||||||
|
e_screensaver_update();
|
||||||
|
e_dpms_update();
|
||||||
|
e_backlight_update();
|
||||||
e_config_save_queue();
|
e_config_save_queue();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
@ -151,7 +159,6 @@ _advanced_create_widgets(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_D
|
||||||
e_widget_disabled_set(ob, cfdata->enable_idle_dim); // set state from saved config
|
e_widget_disabled_set(ob, cfdata->enable_idle_dim); // set state from saved config
|
||||||
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f minutes"), 0.5, 90.0, 1.0, 0,
|
ob = e_widget_slider_add(evas, 1, 0, _("%1.0f minutes"), 0.5, 90.0, 1.0, 0,
|
||||||
&(cfdata->backlight_timeout), NULL, 100);
|
&(cfdata->backlight_timeout), NULL, 100);
|
||||||
e_widget_on_change_hook_set(ob, _cb_backlight_slider_change, cfdata);
|
|
||||||
cfdata->backlight_slider = ob;
|
cfdata->backlight_slider = ob;
|
||||||
e_widget_disabled_set(ob, cfdata->enable_idle_dim); // set state from saved config
|
e_widget_disabled_set(ob, cfdata->enable_idle_dim); // set state from saved config
|
||||||
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
e_widget_list_object_append(o, ob, 1, 1, 0.5);
|
||||||
|
@ -186,22 +193,3 @@ _advanced_create_widgets(E_Config_Dialog *cfd __UNUSED__, Evas *evas, E_Config_D
|
||||||
}
|
}
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* general functionality/callbacks */
|
|
||||||
static void
|
|
||||||
_cb_backlight_slider_change(void *data, Evas_Object *obj __UNUSED__)
|
|
||||||
{
|
|
||||||
E_Config_Dialog_Data *cfdata = data;
|
|
||||||
|
|
||||||
/* off-slider */
|
|
||||||
if (cfdata->backlight_timeout < e_config->screensaver_timeout)
|
|
||||||
{
|
|
||||||
e_config->screensaver_timeout = cfdata->backlight_timeout;
|
|
||||||
e_config->dpms_standby_timeout = e_config->screensaver_timeout;
|
|
||||||
e_config->dpms_suspend_timeout = e_config->screensaver_timeout;
|
|
||||||
e_config->dpms_off_timeout = e_config->screensaver_timeout;
|
|
||||||
}
|
|
||||||
e_screensaver_update();
|
|
||||||
e_dpms_update();
|
|
||||||
e_backlight_update();
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in New Issue