mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-12 02:19:04 +08:00
Properly retrieve snapshot (now made on slice).
Circumvents the snapshot/thumbnail not working when the focus is not on the main window, even if the thread is main. This was an issue when writing a file to Digital Factory becasue that workflow uses a modal window. Thanks for the idea Jelle!
This commit is contained in:
parent
4fc0612806
commit
f4ef3b44e3
@ -257,7 +257,7 @@ class CuraEngineBackend(QObject, Backend):
|
||||
Logger.logException("w", "Failed to create snapshot image")
|
||||
self._snapshot = None # Failing to create thumbnail should not fail creation of UFP
|
||||
|
||||
def getLatestSnapShot(self) -> Optional[QImage]:
|
||||
def getLatestSnapshot(self) -> Optional[QImage]:
|
||||
return self._snapshot
|
||||
|
||||
def slice(self) -> None:
|
||||
|
@ -62,12 +62,9 @@ class UFPWriter(MeshWriter):
|
||||
gcode.write(gcode_textio.getvalue().encode("UTF-8"))
|
||||
archive.addRelation(virtual_path = "/3D/model.gcode", relation_type = "http://schemas.ultimaker.org/package/2018/relationships/gcode")
|
||||
|
||||
snapshot = None
|
||||
# Attempt to store the thumbnail, if any:
|
||||
backend = CuraApplication.getInstance().getBackend()
|
||||
if isinstance(backend, CuraEngineBackend):
|
||||
snapshot = backend.getLatestSnapshot()
|
||||
|
||||
# Store the thumbnail.
|
||||
snapshot = None if getattr(backend, "getLatestSnapshot", None) is None else backend.getLatestSnapshot()
|
||||
if snapshot:
|
||||
archive.addContentType(extension = "png", mime_type = "image/png")
|
||||
thumbnail = archive.getStream("/Metadata/thumbnail.png")
|
||||
|
Loading…
x
Reference in New Issue
Block a user