Properly close the welcome screen if the user has signed in and has
cloud printers linked to his/her account. If he doesn't have any, move
to the next page of the welcome wizard.
CURA-7019
When the MachineNode is updated through _loadAll, it was not updating
its VariantNodes when they already existed. This caused an issue to
UM2+Olsson block printers, where changing the G-Code flavor to Marlin
was not updating the VariantNodes to search for materials (since the
variants already existed).
This commit fixes that by forcing an update to the existing Variant
nodes.
CURA-7354
If the user goes through the welcome wizard, arrives at the login page,
logs in and then closes Cura, he/she will be logged in the next time.
In this case, he/she will go through the welcome page again but will
not see the sign in page at all.
CURA-7019
I don't know what exactly caused this since it's impossible to trace. But the crash happened with a setting called 'dual_gcode' which currently doesn't exist in Cura. So I think it must be some plug-in that adds it. In any case, it's good to be defensive about this sort of thing. Good type checking would've caught this for us.
Fixes Sentry issue CURA-JB.
Subtract the thickness of the walls from this setting. This most likely ends up negative and thus not counting because it's maxed with something that starts at 0.
I've also simplified this algorithm a bit. Easier to follow if you ask me.
Done as a 5 minute fix.
Empty groups don't have a bounding box. I don't know how an empty group could've gotten there but maybe there is something happening with a plug-in or something.
Fixes Sentry issue CURA-FM.
Conflicts:
resources/texts/change_log.txt: Both modified but had different wording for the pause-at-height bugfix with motor timeout. I used the wording in 4.6 since it was more extensive.
It doesn't affect the build volume, since we don't need to move the prime blob disallowed area. It is projected onto the build plate after all.
Most likely this won't affect anyone since the prime Z position is a machine setting that can't normally be modified. But hey, it's a bit more precise anyway.
Found during work on the Settings Guide.
Now that libSavitar allows us to read the object id from the 3mf file,
this id will be propagated as an id inside CuraSceneNodes and it will
be used as an identifier to find the object that has to be refreshed.
CURA-7333
Refactored the code in order to extract the index of the node inside
the file and then use that index to reload the correct object from the
file.
CURA-7333