englebass pushed a commit to branch master.

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

commit 464df11e2866c9e6ad81e181e29396f222735ee7
Author: Sebastian Dransfeld <s...@tango.flipp.net>
Date:   Wed Mar 5 12:29:35 2014 +0100

    conf_randr: remember whether geometry has changed
---
 src/modules/conf_randr/e_int_config_randr.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/modules/conf_randr/e_int_config_randr.c 
b/src/modules/conf_randr/e_int_config_randr.c
index 58e8f83..e289644 100644
--- a/src/modules/conf_randr/e_int_config_randr.c
+++ b/src/modules/conf_randr/e_int_config_randr.c
@@ -10,6 +10,7 @@ struct _E_Config_Dialog_Data
    Evas_Object *o_randr;
 
    int restore, primary;
+   Eina_Bool changed;
 };
 
 /* local function prototypes */
@@ -175,17 +176,17 @@ static int
 _basic_check(E_Config_Dialog *cfd EINA_UNUSED, E_Config_Dialog_Data *cfdata)
 {
    return ((e_randr_cfg->restore != cfdata->restore) || 
-           (e_randr_cfg->primary != (unsigned int)cfdata->primary));
+           (e_randr_cfg->primary != (unsigned int)cfdata->primary) ||
+           cfdata->changed);
 }
 
 static void 
 _randr_cb_changed(void *data, Evas_Object *obj, void *event EINA_UNUSED)
 {
    E_Config_Dialog *cfd;
-   Eina_Bool changed = EINA_FALSE;
 
    if (!(cfd = data)) return;
 
-   changed = e_smart_randr_changed_get(obj);
-   e_config_dialog_changed_set(cfd, changed);
+   cfd->cfdata->changed = e_smart_randr_changed_get(obj);
+   e_config_dialog_changed_set(cfd, cfd->cfdata->changed);
 }

-- 


Reply via email to