From dd01ddbe34518b8eeec5596c593c3f1d12fa0337 Mon Sep 17 00:00:00 2001
From: Pullusb <bernou.samuel@gmail.com>
Date: Sun, 7 Feb 2021 20:50:58 +0100
Subject: [PATCH] GPencil Tools: fix scrub in multiframe display

Multiframe is now disabled while scrubbing viewport-timeline. (like normal scrubbing does)
---
 greasepencil_tools/__init__.py       | 2 +-
 greasepencil_tools/timeline_scrub.py | 9 ++++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/greasepencil_tools/__init__.py b/greasepencil_tools/__init__.py
index adcc7aa74..ab6ec9fc6 100644
--- a/greasepencil_tools/__init__.py
+++ b/greasepencil_tools/__init__.py
@@ -21,7 +21,7 @@ bl_info = {
 "name": "Grease Pencil Tools",
 "description": "Extra tools for Grease Pencil",
 "author": "Samuel Bernou, Antonio Vazquez, Daniel Martinez Lara, Matias Mendiola",
-"version": (1, 3, 0),
+"version": (1, 3, 1),
 "blender": (2, 91, 0),
 "location": "Sidebar > Grease Pencil > Grease Pencil Tools",
 "warning": "",
diff --git a/greasepencil_tools/timeline_scrub.py b/greasepencil_tools/timeline_scrub.py
index dfffdeaad..56485e070 100644
--- a/greasepencil_tools/timeline_scrub.py
+++ b/greasepencil_tools/timeline_scrub.py
@@ -201,9 +201,15 @@ class GPTS_OT_time_scrub(bpy.types.Operator):
         # Disable Onion skin
         self.active_space_data = context.space_data
         self.onion_skin = None
+        self.multi_frame = None
         if context.space_data.type == 'VIEW_3D':  # and 'GPENCIL' in context.mode
             self.onion_skin = self.active_space_data.overlay.use_gpencil_onion_skin
             self.active_space_data.overlay.use_gpencil_onion_skin = False
+        
+        if ob and ob.type == 'GPENCIL':
+            if ob.data.use_multiedit:
+                self.multi_frame = ob.data.use_multiedit
+                ob.data.use_multiedit = False
 
         self.hud = prefs.use_hud
         if not self.hud:
@@ -358,7 +364,8 @@ class GPTS_OT_time_scrub(bpy.types.Operator):
     def _exit_modal(self, context):
         if self.onion_skin is not None:
             self.active_space_data.overlay.use_gpencil_onion_skin = self.onion_skin
-
+        if self.multi_frame:
+            context.object.data.use_multiedit = self.multi_frame
         if self.hud and self.viewtype:
             self.viewtype.draw_handler_remove(self._handle, self.spacetype)
             context.area.tag_redraw()
-- 
GitLab