- Fix a settings crash where user has no monitors for a moment
- Fix audio assist going out of sync with discord state - Fixes #330
This commit is contained in:
parent
5933571297
commit
d2bacffff0
2 changed files with 12 additions and 8 deletions
|
|
@ -92,6 +92,12 @@ class DiscoverAudioAssist:
|
||||||
elif sink.mute == 0:
|
elif sink.mute == 0:
|
||||||
deaf = False
|
deaf = False
|
||||||
|
|
||||||
|
if deaf != self.last_set_deaf:
|
||||||
|
self.last_set_deaf = deaf
|
||||||
|
self.discover.set_deaf_async(deaf)
|
||||||
|
self.last_set_mute = None
|
||||||
|
# At this point mute is undefined state
|
||||||
|
|
||||||
for source in await pulse.source_list():
|
for source in await pulse.source_list():
|
||||||
if source.description == self.source:
|
if source.description == self.source:
|
||||||
if source.mute == 1 or source.volume.values[0] == 0.0:
|
if source.mute == 1 or source.volume.values[0] == 0.0:
|
||||||
|
|
@ -103,10 +109,6 @@ class DiscoverAudioAssist:
|
||||||
self.last_set_mute = mute
|
self.last_set_mute = mute
|
||||||
self.discover.set_mute_async(mute)
|
self.discover.set_mute_async(mute)
|
||||||
|
|
||||||
if deaf != self.last_set_deaf:
|
|
||||||
self.last_set_deaf = deaf
|
|
||||||
self.discover.set_deaf_async(deaf)
|
|
||||||
|
|
||||||
async def print_events(self, pulse, ev):
|
async def print_events(self, pulse, ev):
|
||||||
if not self.enabled:
|
if not self.enabled:
|
||||||
return
|
return
|
||||||
|
|
|
||||||
|
|
@ -340,10 +340,12 @@ class MainSettingsWindow():
|
||||||
|
|
||||||
display = Gdk.Display.get_default()
|
display = Gdk.Display.get_default()
|
||||||
if "get_n_monitors" in dir(display):
|
if "get_n_monitors" in dir(display):
|
||||||
for i in range(0, display.get_n_monitors()):
|
count_monitors = display.get_n_monitors()
|
||||||
v.append_text(display.get_monitor(i).get_model())
|
if count_monitors:
|
||||||
t.append_text(display.get_monitor(i).get_model())
|
for i in range(0, count_monitors):
|
||||||
m.append_text(display.get_monitor(i).get_model())
|
v.append_text(display.get_monitor(i).get_model())
|
||||||
|
t.append_text(display.get_monitor(i).get_model())
|
||||||
|
m.append_text(display.get_monitor(i).get_model())
|
||||||
|
|
||||||
v.set_active(v_value)
|
v.set_active(v_value)
|
||||||
t.set_active(t_value)
|
t.set_active(t_value)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue