Fix moving (paint) cursor also emitted scene-change.

This prevented slices from happening if the mouse-cursor came (even near) the model.

originally done as part of CURA-12634 -- attempt to cherry-pick and subsequent rework later for CURA-12732
This commit is contained in:
Remco Burema 2025-08-27 10:32:15 +02:00
parent 336731ada1
commit cd2d30fd82
2 changed files with 12 additions and 3 deletions

View file

@ -461,12 +461,14 @@ class PaintTool(Tool):
def getRequiredExtraRenderingPasses(self) -> list[str]:
return ["selection_faces", "picking_selected"]
@staticmethod
def _updateScene(node: SceneNode = None):
def _updateScene(self, node: SceneNode = None):
if node is None:
node = Selection.getSelectedObject(0)
if node is not None:
Application.getInstance().getController().getScene().sceneChanged.emit(node)
if self._mouse_held:
Application.getInstance().getController().getScene().sceneChanged.emit(node)
else:
self._view.rerenderFull()
def _onSelectionChanged(self):
super()._onSelectionChanged()

View file

@ -274,6 +274,13 @@ class PaintView(CuraView):
return start_index, end_index
def rerenderFull(self):
self._renderer.beginRendering()
self.beginRendering()
self._renderer.render()
self.endRendering()
self._renderer.endRendering()
def beginRendering(self) -> None:
if self._current_paint_type not in self._paint_modes:
return