I tried updating when the qualities change but this was updating before this line
if(recommendedResolutionSelector._previousResolution !== Cura.MachineManager.activeQualityType)
which caused this always to resolve as true
The solution was to update _previousResolution after we select an item in the drop down.
CURA-8849
And otherwise show the intent and quality level selectors.
This is currently quite broken because the list of quality levels is not correct. It should only show a quality type if it is supported by all extruders.
Contributes to issue CURA-8849.
Before the first pulse, the _previousResolution property was still bound to the activeQualityType property of the MachineManager. When it then checks if it changed, it finds that it didn't change because it checks against that same property, but the _previousResolution automatically updated with it. After that it loses its binding because it's set in the function itself to a fixed value.
Instead, we'll now give it its initial value with the Component.onCompleted function so that it doesn't bind, and then doesn't change along with the first change.
Contributes to issue CURA-8849.
For now it does nothing. But I'm adding a function that should cause the combobox to pulse. That'll be a new feature so I'm implementing it in a separate commit.
Contributes to issue CURA-8849.
We are now selecting intents first and then quality, however the container hierarchy quality -> intents. This is the reason for the new functions inside machine manager.
CURA-8849