From 2d689e6b48c43c3bb652da04e8f574ad0241e62a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Vil=C3=A9m=20Duha?= <vilda.novak@gmail.com>
Date: Tue, 11 May 2021 17:47:11 +0200
Subject: [PATCH] BlenderKit: Fix replace active model button

Dowload operator invoke had no return in some cases
---
 blenderkit/autothumb.py |  2 --
 blenderkit/download.py  | 15 +++++++++++++++
 blenderkit/search.py    | 12 ++++++++++++
 3 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/blenderkit/autothumb.py b/blenderkit/autothumb.py
index 9be9039e0..b7f2a8d0f 100644
--- a/blenderkit/autothumb.py
+++ b/blenderkit/autothumb.py
@@ -426,8 +426,6 @@ class ReGenerateThumbnailOperator(bpy.types.Operator):
                           json_args=args_dict,
                           wait=False)
         return {'FINISHED'}
-        start_thumbnailer(self, context)
-        return {'FINISHED'}
 
     def invoke(self, context, event):
         wm = context.window_manager
diff --git a/blenderkit/download.py b/blenderkit/download.py
index eca35c415..7cffff443 100644
--- a/blenderkit/download.py
+++ b/blenderkit/download.py
@@ -1278,6 +1278,9 @@ class BlenderkitDownloadOperator(bpy.types.Operator):
         description="",
         default="")
 
+    # close_window: BoolProperty(name='Close window',
+    #                            description='Try to close the window below mouse before download',
+    #                            default=False)
     # @classmethod
     # def poll(cls, context):
     #     return bpy.context.window_manager.BlenderKitModelThumbnails is not ''
@@ -1376,6 +1379,9 @@ class BlenderkitDownloadOperator(bpy.types.Operator):
         layout.prop(self, 'resolution', expand=True, icon_only=False)
 
     def invoke(self, context, event):
+        # if self.close_window:
+        #     context.window.cursor_warp(event.mouse_x-1000, event.mouse_y - 1000);
+
         print(self.asset_base_id)
         wm = context.window_manager
         # only make a pop up in case of switching resolutions
@@ -1393,6 +1399,15 @@ class BlenderkitDownloadOperator(bpy.types.Operator):
                 self.resolution = 'ORIGINAL'
             return wm.invoke_props_dialog(self)
 
+        # if self.close_window:
+        #     time.sleep(0.1)
+        #     context.area.tag_redraw()
+        #     time.sleep(0.1)
+        #
+        #     context.window.cursor_warp(event.mouse_x, event.mouse_y);
+
+        return self.execute(context)
+
 
 def register_download():
     bpy.utils.register_class(BlenderkitDownloadOperator)
diff --git a/blenderkit/search.py b/blenderkit/search.py
index 7c02be5a9..cd89d3bd0 100644
--- a/blenderkit/search.py
+++ b/blenderkit/search.py
@@ -1406,6 +1406,11 @@ class SearchOperator(Operator):
         options={'SKIP_SAVE'}
     )
 
+    # close_window: BoolProperty(name='Close window',
+    #                            description='Try to close the window below mouse before download',
+    #                            default=False)
+
+
     tooltip: bpy.props.StringProperty(default='Runs search and displays the asset bar at the same time')
 
     @classmethod
@@ -1429,6 +1434,13 @@ class SearchOperator(Operator):
 
         return {'FINISHED'}
 
+    # def invoke(self, context, event):
+    #     if self.close_window:
+    #         context.window.cursor_warp(event.mouse_x, event.mouse_y - 100);
+    #         context.area.tag_redraw()
+    #
+    #         context.window.cursor_warp(event.mouse_x, event.mouse_y);
+    #     return self. execute(context)
 
 class UrlOperator(Operator):
     """"""
-- 
GitLab