diff --git a/cura/PrinterOutput/NetworkedPrinterOutputDevice.py b/cura/PrinterOutput/NetworkedPrinterOutputDevice.py index 12769208f4..a44b42a8ba 100644 --- a/cura/PrinterOutput/NetworkedPrinterOutputDevice.py +++ b/cura/PrinterOutput/NetworkedPrinterOutputDevice.py @@ -36,7 +36,7 @@ class NetworkedPrinterOutputDevice(PrinterOutputDevice, NetworkClient): self._authentication_state = AuthState.NotAuthenticated self._sending_gcode = False self._compressing_gcode = False - self._gcode = [] # type: List[str] + self._gcode = [] # type: List[str] self._connection_state_before_timeout = None # type: Optional[ConnectionState] self._timeout_time = 10 # After how many seconds of no response should a timeout occur? @@ -182,8 +182,10 @@ class NetworkedPrinterOutputDevice(PrinterOutputDevice, NetworkClient): return self._address def __handleOnFinished(self, reply: QNetworkReply) -> None: - super().__handleOnFinished(reply) - # Since we got a reply from the network manager we can now be sure we are actually connected. - if self._connection_state == ConnectionState.connecting: + # Since we got a 200 reply from the network manager we can now be sure we are actually connected. + if reply.attribute(QNetworkRequest.HttpStatusCodeAttribute) == 200 and \ + self._connection_state == ConnectionState.connecting: self.setConnectionState(ConnectionState.connected) + + super().__handleOnFinished(reply) diff --git a/plugins/UM3NetworkPrinting/src/UM3OutputDevicePlugin.py b/plugins/UM3NetworkPrinting/src/UM3OutputDevicePlugin.py index 09aecb2187..47c3482aa5 100644 --- a/plugins/UM3NetworkPrinting/src/UM3OutputDevicePlugin.py +++ b/plugins/UM3NetworkPrinting/src/UM3OutputDevicePlugin.py @@ -41,7 +41,7 @@ class UM3OutputDevicePlugin(OutputDevicePlugin): self._zero_conf_browser = None # Create a cloud output device manager that abstract all cloud connection logic away. - self._cloud_output_device_manager = CloudOutputDeviceManager() + # self._cloud_output_device_manager = CloudOutputDeviceManager() # Because the model needs to be created in the same thread as the QMLEngine, we use a signal. self.addDeviceSignal.connect(self._onAddDevice)