- Re download channel icon if lost
- Don't drop avatars and icons unless needed - Clear room data on disconnect
This commit is contained in:
parent
0cce9a60ca
commit
a1a3ffb419
2 changed files with 19 additions and 4 deletions
|
|
@ -109,6 +109,8 @@ class DiscordConnector:
|
|||
self.unsub_voice_channel(self.current_voice)
|
||||
self.current_voice = "0"
|
||||
self.current_guild = "0"
|
||||
self.discover.voice_overlay.set_blank()
|
||||
self.in_room = []
|
||||
return
|
||||
if channel != self.current_voice:
|
||||
if self.current_voice != "0":
|
||||
|
|
@ -298,6 +300,8 @@ class DiscordConnector:
|
|||
if j["data"]["user"]["id"] == self.user["id"]:
|
||||
self.in_room = []
|
||||
self.find_user()
|
||||
self.discover.voice_overlay.set_channel_title(None)
|
||||
self.discover.voice_overlay.set_channel_icon(None)
|
||||
# User might have been forcibly moved room
|
||||
elif j["evt"] == "SPEAKING_START":
|
||||
self.list_altered = True
|
||||
|
|
@ -436,10 +440,11 @@ class DiscordConnector:
|
|||
elif j["cmd"] == "GET_VOICE_SETTINGS":
|
||||
return
|
||||
log.warning(j)
|
||||
|
||||
|
||||
def dump_channel_data(self):
|
||||
with open(self.discover.channel_file, 'w') as f:
|
||||
f.write(json.dumps({'channels': self.channels, 'guild': self.guilds}))
|
||||
f.write(json.dumps(
|
||||
{'channels': self.channels, 'guild': self.guilds}))
|
||||
|
||||
def on_connected(self):
|
||||
"""
|
||||
|
|
@ -781,7 +786,6 @@ class DiscordConnector:
|
|||
return
|
||||
self.rate_limited_channels.append(guild_id)
|
||||
|
||||
|
||||
def connect(self):
|
||||
"""
|
||||
Attempt to connect to websocket
|
||||
|
|
|
|||
|
|
@ -77,6 +77,7 @@ class VoiceOverlayWindow(OverlayWindow):
|
|||
self.def_avatar = None
|
||||
self.channel_icon = None
|
||||
self.channel_mask = None
|
||||
self.channel_icon_url = None
|
||||
self.overflow = None
|
||||
self.use_dummy = False
|
||||
self.dummy_count = 10
|
||||
|
|
@ -112,6 +113,8 @@ class VoiceOverlayWindow(OverlayWindow):
|
|||
self.redraw()
|
||||
|
||||
def set_icon_transparency(self, trans):
|
||||
if self.icon_transparency == trans:
|
||||
return
|
||||
self.icon_transparency = trans
|
||||
get_surface(self.recv_avatar,
|
||||
"share/icons/hicolor/256x256/apps/discover-overlay-default.png",
|
||||
|
|
@ -127,6 +130,9 @@ class VoiceOverlayWindow(OverlayWindow):
|
|||
|
||||
def set_blank(self):
|
||||
self.userlist = []
|
||||
self.channel_icon = None
|
||||
self.channel_icon_url = None
|
||||
self.channel_title = None
|
||||
self.needsredraw = True
|
||||
|
||||
def set_title_font(self, font):
|
||||
|
|
@ -360,9 +366,11 @@ class VoiceOverlayWindow(OverlayWindow):
|
|||
"""
|
||||
if not url:
|
||||
self.channel_icon = None
|
||||
self.channel_icon_url = None
|
||||
else:
|
||||
get_surface(self.recv_avatar, url, "channel",
|
||||
self.avatar_size, self.icon_transparency)
|
||||
self.channel_icon_url = url
|
||||
|
||||
def set_user_list(self, userlist, alt):
|
||||
"""
|
||||
|
|
@ -472,7 +480,7 @@ class VoiceOverlayWindow(OverlayWindow):
|
|||
if self.show_connection:
|
||||
users_to_draw.insert(0, None)
|
||||
doConnection = True
|
||||
if self.show_title:
|
||||
if self.show_title and self.channel_title:
|
||||
users_to_draw.insert(0, None)
|
||||
doTitle = True
|
||||
|
||||
|
|
@ -645,6 +653,9 @@ class VoiceOverlayWindow(OverlayWindow):
|
|||
pos_x, pos_y, None, avatar_size)
|
||||
else:
|
||||
self.blank_avatar(context, pos_x, pos_y, avatar_size)
|
||||
if self.channel_icon_url:
|
||||
get_surface(self.recv_avatar, self.channel_icon_url, "channel",
|
||||
self.avatar_size, self.icon_transparency)
|
||||
return tw
|
||||
|
||||
def unused_fn_needed_translations(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue