Browse Source

Fixed timeline issues

flabbet 1 year ago
parent
commit
06ed49eed9

+ 1 - 1
src/PixiEditor/ViewModels/Dock/LayoutManager.cs

@@ -68,7 +68,7 @@ internal class LayoutManager
                     Second = new DockableArea
                     Second = new DockableArea
                     {
                     {
                         Id = "TimelineArea", 
                         Id = "TimelineArea", 
-                        ActiveDockable = DockContext.CreateDockable(timelineDockViewModel)
+                        Dockables = [ DockContext.CreateDockable(timelineDockViewModel) ]
                     }
                     }
                 },
                 },
                 SecondSize = 360,
                 SecondSize = 360,

+ 10 - 4
src/PixiEditor/Views/Animations/Timeline.cs

@@ -573,9 +573,12 @@ internal class Timeline : TemplatedControl, INotifyPropertyChanged
             newCollection.KeyFrameAdded += timeline.KeyFrames_KeyFrameAdded;
             newCollection.KeyFrameAdded += timeline.KeyFrames_KeyFrameAdded;
             newCollection.KeyFrameRemoved += timeline.KeyFrames_KeyFrameRemoved;
             newCollection.KeyFrameRemoved += timeline.KeyFrames_KeyFrameRemoved;
         }
         }
-        
-        timeline.PropertyChanged(timeline, new PropertyChangedEventArgs(nameof(SelectedKeyFrames)));
-        timeline.PropertyChanged(timeline, new PropertyChangedEventArgs(nameof(EndFrame)));
+
+        if (timeline.PropertyChanged != null)
+        {
+            timeline.PropertyChanged(timeline, new PropertyChangedEventArgs(nameof(SelectedKeyFrames)));
+            timeline.PropertyChanged(timeline, new PropertyChangedEventArgs(nameof(EndFrame)));
+        }
     }
     }
 
 
     private void KeyFrames_KeyFrameAdded(KeyFrameViewModel keyFrame)
     private void KeyFrames_KeyFrameAdded(KeyFrameViewModel keyFrame)
@@ -604,7 +607,10 @@ internal class Timeline : TemplatedControl, INotifyPropertyChanged
             return;
             return;
         }
         }
 
 
-        timeline.PropertyChanged(timeline, new PropertyChangedEventArgs(nameof(EndFrame)));
+        if (timeline.PropertyChanged != null)
+        {
+            timeline.PropertyChanged(timeline, new PropertyChangedEventArgs(nameof(EndFrame)));
+        }
     }
     }
     
     
     private void KeyFrameOnPropertyChanged(object? sender, PropertyChangedEventArgs e)
     private void KeyFrameOnPropertyChanged(object? sender, PropertyChangedEventArgs e)