mirror of
https://github.com/SoongNoonien/mpdevil.git
synced 2023-08-10 21:12:44 +03:00
removed second client
This commit is contained in:
parent
f3a77bc3bc
commit
db7a8e9944
@ -795,12 +795,10 @@ class Client(MPDClient):
|
|||||||
self.settings=settings
|
self.settings=settings
|
||||||
self.settings.connect("changed::active-profile", self.on_settings_changed)
|
self.settings.connect("changed::active-profile", self.on_settings_changed)
|
||||||
|
|
||||||
# idle client
|
|
||||||
self.idle_client=MPDClient()
|
|
||||||
|
|
||||||
# adding vars
|
# adding vars
|
||||||
self.settings=settings
|
self.settings=settings
|
||||||
self.emitter=MpdEventEmitter()
|
self.emitter=MpdEventEmitter()
|
||||||
|
self.last_status={}
|
||||||
|
|
||||||
self.current_file=None
|
self.current_file=None
|
||||||
|
|
||||||
@ -824,7 +822,6 @@ class Client(MPDClient):
|
|||||||
|
|
||||||
def on_settings_changed(self, *args):
|
def on_settings_changed(self, *args):
|
||||||
self.disconnect()
|
self.disconnect()
|
||||||
self.idle_client.disconnect()
|
|
||||||
|
|
||||||
def files_to_playlist(self, files, append, force=False):
|
def files_to_playlist(self, files, append, force=False):
|
||||||
if append:
|
if append:
|
||||||
@ -870,33 +867,27 @@ class Client(MPDClient):
|
|||||||
def loop(self, *args):
|
def loop(self, *args):
|
||||||
# idle
|
# idle
|
||||||
try:
|
try:
|
||||||
try:
|
|
||||||
idle_return=self.idle_client.noidle()
|
|
||||||
for i in idle_return:
|
|
||||||
self.emitter.emit(i)
|
|
||||||
if "player" in idle_return:
|
|
||||||
current_song=self.idle_client.currentsong()
|
|
||||||
if not current_song == {}:
|
|
||||||
if not current_song['file'] == self.current_file:
|
|
||||||
self.emitter.emit("playing_file_changed")
|
|
||||||
self.current_file=current_song['file']
|
|
||||||
else:
|
|
||||||
self.emitter.emit("playing_file_changed")
|
|
||||||
self.current_file=None
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
self.idle_client.send_idle()
|
|
||||||
# heartbeat
|
# heartbeat
|
||||||
status=self.status()
|
status=self.status()
|
||||||
if status['state'] == "stop" or status['state'] == "pause":
|
diff=set(status.items())-set(self.last_status.items())
|
||||||
self.ping()
|
for key, val in diff:
|
||||||
else:
|
if key == "state":
|
||||||
|
self.emitter.emit("player")
|
||||||
|
elif key == "songid":
|
||||||
|
self.emitter.emit("playing_file_changed")
|
||||||
|
elif key == "volume":
|
||||||
|
self.emitter.emit("mixer")
|
||||||
|
elif key in ["repeat", "random", "single", "consume"]:
|
||||||
|
self.emitter.emit("options")
|
||||||
|
elif key == "updating_db":
|
||||||
|
self.emitter.emit("update")
|
||||||
|
elif key == "playlist":
|
||||||
|
self.emitter.emit("playlist")
|
||||||
|
self.last_status=status
|
||||||
|
if status['state'] != "stop" and status['state'] != "pause":
|
||||||
self.emitter.emit("periodic_signal")
|
self.emitter.emit("periodic_signal")
|
||||||
except:
|
except:
|
||||||
try:
|
self.last_status={}
|
||||||
self.idle_client.disconnect()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
try:
|
try:
|
||||||
self.disconnect()
|
self.disconnect()
|
||||||
except:
|
except:
|
||||||
@ -917,28 +908,12 @@ class Client(MPDClient):
|
|||||||
except:
|
except:
|
||||||
print("connect failed")
|
print("connect failed")
|
||||||
return True
|
return True
|
||||||
try:
|
|
||||||
self.idle_client.connect(self.settings.get_value("hosts")[active], self.settings.get_value("ports")[active])
|
|
||||||
if self.settings.get_value("passwords")[active] != "":
|
|
||||||
self.idle_client.password(self.settings.get_value("passwords")[active])
|
|
||||||
except:
|
|
||||||
print("connect failed")
|
|
||||||
print("max clients could be too small")
|
|
||||||
self.diconnect()
|
|
||||||
return True
|
|
||||||
# connect successful
|
# connect successful
|
||||||
self.main_timeout_id=GLib.timeout_add(100, self.loop)
|
self.main_timeout_id=GLib.timeout_add(100, self.loop)
|
||||||
self.emitter.emit("periodic_signal")
|
self.emitter.emit("periodic_signal")
|
||||||
self.emitter.emit("playlist")
|
|
||||||
self.emitter.emit("player")
|
|
||||||
self.emitter.emit("playing_file_changed")
|
|
||||||
self.emitter.emit("options")
|
|
||||||
self.emitter.emit("mixer")
|
|
||||||
self.emitter.emit("update")
|
|
||||||
self.emitter.emit("reconnected")
|
self.emitter.emit("reconnected")
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
########################
|
########################
|
||||||
# gio settings wrapper #
|
# gio settings wrapper #
|
||||||
########################
|
########################
|
||||||
|
Loading…
x
Reference in New Issue
Block a user