If the user is already logged in, we used to direct him to the https://mycloud.ultimaker.com page. Besides the fact that this URL is going to be phased out, there will be problems whenever there is a staging build, since it will always point the user to the production environment.
This should prevent a crash when saving to a path that the file system doesn't support (because of e.g. disallowed symbols in the file name).
Instead it will now show an error message to the user.
Fixes Sentry issue CURA-157.
This is a bit of defensive coding. If the position is out of bounds for Cura it should now ignore those extruders.
This could be due to broken firmware, or maybe someone MITM-ing the connection and changing it, or perhaps because the printer was changed while the sync was ongoing? Whatever the cause, it now puts a warning in the log about it and doesn't crash any more.
Fixes Sentry issue CURA-156.
As discussed, this is a method to prevent leaking personally identifiable information through crash reports, while still keeping the useful information for the developers on how widely spread the crashes are.
The QML profiler showed me that it was causing a *lot* of issues
when switching between extruders. More than 10% of the time in QML
was spent on just updating ine property in the workspace summary dialog.
There were other properties that were also being updated without there being a point.
Contributes to #8250
In some situations this could cause a slowdown, since halfway through
calculating the values the extruder switch would happen. If this is
split up a bit, it's at least less noticeable
Contributes to #8250
All the settings that are changed get a notification from the settingRelation.
There should be no need to re-fire all of those settings again!
Contributes to #8250
This doesn't actually speed up the process, but it does give some indication
that something is going on while the changes are happening
Contributes to #8250
If a cloud printer was connected, it would time out all the time. In some cases
it would do this in a single update loop (so connect and disconnect). Depending
on the machine of the user, this would either be visible or not at all.
This will now result in a job being put in the queue but not automatically printing, but there is at least a workaround for that.
Fixes Sentry issue CURA-14A.