2025-12-01

This commit is contained in:
2026-03-17 14:58:51 -06:00
parent 183e865f8b
commit 4b82b57113
6846 changed files with 954887 additions and 162606 deletions
@@ -17,6 +17,7 @@
# ##### END GPL LICENSE BLOCK #####
from threading import Event
from typing import Optional
import bpy
from bpy.props import (
@@ -63,7 +64,7 @@ class POLIIGON_OT_download(Operator):
cTB.callback_asset_update_ui(job)
self.event_sync.set()
def create_auto_download_job(self, asset_data: AssetData) -> ApiJob:
def create_auto_download_job(self, asset_data: AssetData) -> Optional[ApiJob]:
"""Create the follow up download job to attach to purchase job."""
# NOTE: Free assets are implicitly always "auto-download"
@@ -161,6 +162,8 @@ class POLIIGON_OT_download(Operator):
callback_progress=cTB.callback_asset_update_ui,
callback_done=callback_done
)
bpy.ops.poliigon.popup_first_download("INVOKE_DEFAULT")
elif self.mode == "purchase":
cTB.logger.debug("POLIIGON_OT_download Purchase asset "
f"{self.asset_id}")
@@ -170,12 +173,6 @@ class POLIIGON_OT_download(Operator):
area = cTB.settings["area"]
search = cTB.vSearch[area]
one_click_purchase = cTB.settings["one_click_purchase"]
user_unlimited = cTB.is_unlimited_user()
credits = 0 if asset_data.credits is None else asset_data.credits
if credits > 0 and one_click_purchase and not user_unlimited:
bpy.ops.poliigon.popup_first_download("INVOKE_DEFAULT")
if self.do_synchronous and job_download is None:
self.event_sync = Event()
callback_done = self._callback_done_sync
@@ -184,12 +181,15 @@ class POLIIGON_OT_download(Operator):
cTB.api_rc.add_job_purchase_asset(
asset_data,
cTB.settings["category"][area],
cTB.settings["category"],
search,
job_download=job_download,
callback_done=callback_done,
force=True
)
one_click_purchase = cTB.settings["one_click_purchase"]
if one_click_purchase:
bpy.ops.poliigon.popup_first_download("INVOKE_DEFAULT")
if self.do_synchronous:
self.event_sync.wait(30.0)