Merge pull request #19755 from Ultimaker/CURA-11815_fix_early_autoslice

[CURA-11815] Fix 'early' auto-slice.
This commit is contained in:
HellAholic 2024-10-18 11:47:20 +02:00 committed by GitHub
commit 1e60a15091
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -68,6 +68,9 @@ class CuraEngineBackend(QObject, Backend):
"""
super().__init__()
self._init_done = False
self._immediate_slice_after_init = False
# Find out where the engine is located, and how it is called.
# This depends on how Cura is packaged and which OS we are running on.
executable_name = "CuraEngine"
@ -268,6 +271,10 @@ class CuraEngineBackend(QObject, Backend):
self._machine_error_checker = application.getMachineErrorChecker()
self._machine_error_checker.errorCheckFinished.connect(self._onStackErrorCheckFinished)
self._init_done = True
if self._immediate_slice_after_init:
self.slice()
def close(self) -> None:
"""Terminate the engine process.
@ -342,6 +349,11 @@ class CuraEngineBackend(QObject, Backend):
def slice(self) -> None:
"""Perform a slice of the scene."""
if not self._init_done:
self._immediate_slice_after_init = True
return
self._immediate_slice_after_init = False
self._createSnapshot()
self.startPlugins()