set_server: resend subscriptions
This commit is contained in:
parent
7a5b8a6202
commit
a22ae33a81
|
@ -238,7 +238,8 @@ class NetworkDialog(QDialog):
|
||||||
|
|
||||||
self.config.set_key("proxy", proxy, True)
|
self.config.set_key("proxy", proxy, True)
|
||||||
self.config.set_key("server", server, True)
|
self.config.set_key("server", server, True)
|
||||||
self.network.set_server(server, proxy)
|
self.network.set_proxy(proxy)
|
||||||
|
self.network.set_server(server)
|
||||||
|
|
||||||
self.config.set_key('auto_cycle', self.autocycle_cb.isChecked(), True)
|
self.config.set_key('auto_cycle', self.autocycle_cb.isChecked(), True)
|
||||||
return True
|
return True
|
||||||
|
|
|
@ -129,17 +129,26 @@ class Network(threading.Thread):
|
||||||
return self.interface.is_connected
|
return self.interface.is_connected
|
||||||
|
|
||||||
|
|
||||||
def set_server(self, server, proxy):
|
def set_proxy(self, proxy):
|
||||||
|
self.proxy = proxy
|
||||||
|
|
||||||
|
|
||||||
|
def set_server(self, server):
|
||||||
if self.default_server == server:
|
if self.default_server == server:
|
||||||
return
|
return
|
||||||
|
|
||||||
i = self.interface
|
# stop the interface in order to terminate subscriptions
|
||||||
|
subscriptions = self.interface.subscriptions
|
||||||
|
self.interface.stop()
|
||||||
|
# notify gui
|
||||||
|
self.trigger_callback('disconnecting')
|
||||||
|
# start interface
|
||||||
self.default_server = server
|
self.default_server = server
|
||||||
self.proxy = proxy
|
|
||||||
self.start_interface(server)
|
self.start_interface(server)
|
||||||
self.interface = self.interfaces[server]
|
self.interface = self.interfaces[server]
|
||||||
i.stop_subscriptions() # fixme: it should not stop all subscriptions, and send 'unsubscribe'
|
# send subscriptions
|
||||||
self.trigger_callback('disconnecting') # for actively disconnecting
|
for cb, sub in subscriptions.items():
|
||||||
|
self.interface.send(sub, cb)
|
||||||
|
|
||||||
|
|
||||||
def run(self):
|
def run(self):
|
||||||
|
|
Loading…
Reference in New Issue