mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-23 22:54:01 -06:00
Properly clean up printer connections that are no longer available.
Contributes to CURA-274
This commit is contained in:
parent
67e00221eb
commit
a1087150ef
1 changed files with 11 additions and 0 deletions
|
@ -11,6 +11,7 @@ from UM.Logger import Logger
|
||||||
from UM.PluginRegistry import PluginRegistry
|
from UM.PluginRegistry import PluginRegistry
|
||||||
from UM.OutputDevice.OutputDevicePlugin import OutputDevicePlugin
|
from UM.OutputDevice.OutputDevicePlugin import OutputDevicePlugin
|
||||||
from UM.Qt.ListModel import ListModel
|
from UM.Qt.ListModel import ListModel
|
||||||
|
from UM.Message import Message
|
||||||
|
|
||||||
from cura.CuraApplication import CuraApplication
|
from cura.CuraApplication import CuraApplication
|
||||||
|
|
||||||
|
@ -163,6 +164,16 @@ class USBPrinterManager(QObject, SignalEmitter, OutputDevicePlugin, Extension):
|
||||||
continue
|
continue
|
||||||
self._serial_port_list = list(serial_ports)
|
self._serial_port_list = list(serial_ports)
|
||||||
|
|
||||||
|
connections_to_remove = []
|
||||||
|
for port, connection in self._printer_connections.items():
|
||||||
|
if port not in self._serial_port_list:
|
||||||
|
connection.close()
|
||||||
|
connections_to_remove.append(port)
|
||||||
|
|
||||||
|
for port in connections_to_remove:
|
||||||
|
del self._printer_connections[port]
|
||||||
|
|
||||||
|
|
||||||
## Because the model needs to be created in the same thread as the QMLEngine, we use a signal.
|
## Because the model needs to be created in the same thread as the QMLEngine, we use a signal.
|
||||||
def addConnection(self, serial_port):
|
def addConnection(self, serial_port):
|
||||||
connection = PrinterConnection.PrinterConnection(serial_port)
|
connection = PrinterConnection.PrinterConnection(serial_port)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue