From 2d060297f8ad44c696a261f0845d9b301ccd0bbe Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Sat, 25 May 2013 20:17:31 +0100 Subject: [PATCH] Backport: 74a85a1 :: Actually, we cannot set primary first as we may need to re-enable a saved monitor, so move "primary setting" until After we have enabled and sized the monitors. Signed-off-by: Chris Michael Signed-off-by: Deon Thomas --- src/bin/e_randr.c | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/src/bin/e_randr.c b/src/bin/e_randr.c index 7b549353f..bf9fa1a56 100644 --- a/src/bin/e_randr.c +++ b/src/bin/e_randr.c @@ -529,28 +529,6 @@ _e_randr_config_restore(void) E_Randr_Output_Config *out; Eina_Bool primary_set = EINA_FALSE; - /* get the current primary output */ - primary = ecore_x_randr_primary_output_get(root); - EINA_LIST_FOREACH(valid_outputs, o, out) - { - if ((out->primary) && - ((int)out->xid == e_randr_cfg->primary)) - { - ecore_x_randr_primary_output_set(root, out->xid); - primary_set = EINA_TRUE; - break; - } - } - - if (!primary_set) - { - /* if no primary was set, set it to the first output */ - out = eina_list_nth(valid_outputs, 0); - ecore_x_randr_primary_output_set(root, out->xid); - e_randr_cfg->primary = (int)out->xid; - e_randr_config_save(); - } - couts = malloc(ocount * sizeof(Ecore_X_Randr_Output)); EINA_LIST_FOREACH(valid_outputs, o, out) { @@ -573,6 +551,28 @@ _e_randr_config_restore(void) crtc_cfg->mode, crtc_cfg->orient); + /* get the current primary output */ + primary = ecore_x_randr_primary_output_get(root); + EINA_LIST_FOREACH(valid_outputs, o, out) + { + if ((out->primary) && + ((int)out->xid == e_randr_cfg->primary)) + { + ecore_x_randr_primary_output_set(root, out->xid); + primary_set = EINA_TRUE; + break; + } + } + + if (!primary_set) + { + /* if no primary was set, set it to the first output */ + out = eina_list_nth(valid_outputs, 0); + ecore_x_randr_primary_output_set(root, out->xid); + e_randr_cfg->primary = (int)out->xid; + e_randr_config_save(); + } + free(couts); } }