[gimp] app: improve layer-mode menu separator logic



commit 8aa3d5ed6f941c84d75980424bb0d4e7c7dbb07b
Author: Ell <ell_se yahoo com>
Date:   Fri Feb 17 06:53:30 2017 -0500

    app: improve layer-mode menu separator logic

 app/widgets/gimplayermodecombobox.c |   20 ++++++++++++--------
 1 files changed, 12 insertions(+), 8 deletions(-)
---
diff --git a/app/widgets/gimplayermodecombobox.c b/app/widgets/gimplayermodecombobox.c
index 0eab9e0..2a829f7 100644
--- a/app/widgets/gimplayermodecombobox.c
+++ b/app/widgets/gimplayermodecombobox.c
@@ -374,7 +374,8 @@ gimp_enum_store_new_from_array (GType                 enum_type,
 {
   GtkListStore *store;
   GEnumValue   *value;
-  gboolean      added_values_since_last_separator = FALSE;
+  gboolean      first_item        = TRUE;
+  gboolean      prepend_separator = FALSE;
   gint          i;
 
   g_return_val_if_fail (G_TYPE_IS_ENUM (enum_type), NULL);
@@ -396,20 +397,23 @@ gimp_enum_store_new_from_array (GType                 enum_type,
 
               if (value)
                 {
+                  if (prepend_separator)
+                    {
+                      gimp_enum_store_add_separator (store);
+
+                      prepend_separator = FALSE;
+                    }
+
                   gimp_enum_store_add_value (store, value);
 
-                  added_values_since_last_separator = TRUE;
+                  first_item = FALSE;
                 }
             }
         }
       else
         {
-          if (added_values_since_last_separator)
-            {
-              gimp_enum_store_add_separator (store);
-
-              added_values_since_last_separator = FALSE;
-            }
+          if (! first_item)
+            prepend_separator = TRUE;
         }
     }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]