diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 4fd82b3e02..ce3f9c4303 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -88,7 +88,15 @@ UM.Window { if(Cura.API.account.isLoggedIn) { - swipeView.currentIndex += 2; //Skip sign in page. + if(Cura.API.account.permissions.includes("digital-factory.printer.write")) + { + swipeView.currentIndex += 2; //Skip sign in page. Continue to sync via cloud. + } + else + { + //Logged in, but no permissions to start syncing. Direct them to USB. + swipeView.currentIndex = removableDriveSyncPage.SwipeView.index; + } } else { @@ -112,7 +120,15 @@ UM.Window { if(is_logged_in && signinPage.SwipeView.isCurrentItem) { - swipeView.currentIndex += 1; + if(Cura.API.account.permissions.includes("digital-factory.printer.write")) + { + swipeView.currentIndex += 1; + } + else + { + //Logged in, but no permissions to start syncing. Direct them to USB. + swipeView.currentIndex = removableDriveSyncPage.SwipeView.index; + } } } }