Browse Source

Fixed merge bug

flabbet 3 years ago
parent
commit
f8a635575c

+ 4 - 2
PixiEditor/Models/Controllers/UndoManager.cs

@@ -123,7 +123,7 @@ namespace PixiEditor.Models.Controllers
         /// </summary>
         /// <param name="amount">Amount of changes to squash.</param>
         /// <param name="description">Final change description.</param>
-        public void SquashUndoChanges(int amount, string description)
+        public void SquashUndoChanges(int amount, string description, bool reverseOrderOnRedo = true)
         {
             Change[] changes = new Change[amount];
             for (int i = 0; i < amount; i++)
@@ -149,7 +149,9 @@ namespace PixiEditor.Models.Controllers
 
             Action<object[]> process = (object[] props) =>
             {
-                foreach (var prop in props.Reverse())
+                var finalProps = reverseOrderOnRedo ? props.Reverse() : props;
+
+                foreach (var prop in finalProps)
                 {
                     Change change = (Change)prop;
                     if (change.Process == null)

+ 1 - 1
PixiEditor/Models/DataHolders/Document/Document.Layers.cs

@@ -489,7 +489,7 @@ namespace PixiEditor.Models.DataHolders
                 MergeLayersProcess,
                 new object[] { indexes, nameIsLastLayers, layer.GuidValue }));
 
-            UndoManager.SquashUndoChanges(2, "Undo merge layers");
+            UndoManager.SquashUndoChanges(2, "Undo merge layers", false);
 
             return layer;
         }

+ 1 - 1
PixiEditor/Views/UserControls/Layers/RawLayersViewer.xaml

@@ -17,7 +17,7 @@
                 <DataTemplate>
                     <StackPanel VerticalAlignment="Center" Orientation="Horizontal">
                         <Label Foreground="White" Content="{Binding Name}"/>
-                        <TextBlock Foreground="Wheat" Text="{Binding LayerGuid}"/>
+                        <TextBlock Foreground="Wheat" Text="{Binding GuidValue}"/>
                     </StackPanel>
                 </DataTemplate>
             </ItemsControl.ItemTemplate>