princeamd pushed a commit to branch enlightenment-0.17.

commit 2d060297f8ad44c696a261f0845d9b301ccd0bbe
Author: Chris Michael <[email protected]>
Date:   Sat May 25 20:17:31 2013 +0100

    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 <[email protected]>
    Signed-off-by: Deon Thomas <[email protected]>
---
 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 7b54935..bf9fa1a 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);
                     }
                }

-- 

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev

Reply via email to