Skip to content

Commit

Permalink
Remove crossfade setting from response event (Stephen Boyd)
Browse files Browse the repository at this point in the history
  • Loading branch information
Scott Horowitz authored and bebarino committed Sep 21, 2009
1 parent a17489d commit 10dfd3b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 23 deletions.
24 changes: 13 additions & 11 deletions sonata/main.py
Expand Up @@ -2896,10 +2896,10 @@ def on_prefs(self, _widget):
trayicon_in_use = ((HAVE_STATUS_ICON and self.statusicon.is_embedded() and
self.statusicon.get_visible())
or (HAVE_EGG and self.trayicon.get_property('visible')))
self.preferences.on_prefs_real(self.window, self.popuptimes, self.scrobbler, trayicon_available, trayicon_in_use, self.on_connectkey_pressed, self.on_currsong_notify, self.update_infofile, self.prefs_notif_toggled, self.prefs_stylized_toggled, self.prefs_art_toggled, self.prefs_playback_toggled, self.prefs_progress_toggled, self.prefs_statusbar_toggled, self.prefs_lyrics_toggled, self.prefs_trayicon_toggled, self.prefs_window_response, self.prefs_last_tab)
self.preferences.on_prefs_real(self.window, self.popuptimes, self.scrobbler, trayicon_available, trayicon_in_use, self.on_connectkey_pressed, self.on_currsong_notify, self.update_infofile, self.prefs_notif_toggled, self.prefs_stylized_toggled, self.prefs_art_toggled, self.prefs_playback_toggled, self.prefs_progress_toggled, self.prefs_statusbar_toggled, self.prefs_lyrics_toggled, self.prefs_trayicon_toggled, self.prefs_crossfade_toggled, self.prefs_crossfade_changed, self.prefs_window_response, self.prefs_last_tab)

# XXX move the prefs handling parts of prefs_* to preferences.py
def prefs_window_response(self, window, response, prefsnotebook, direntry, currentoptions, libraryoptions, titleoptions, currsongoptions1, currsongoptions2, crossfadecheck, crossfadespin, infopath_options, using_mpd_env_vars, prev_host, prev_port, prev_password):
def prefs_window_response(self, window, response, prefsnotebook, direntry, currentoptions, libraryoptions, titleoptions, currsongoptions1, currsongoptions2, infopath_options, using_mpd_env_vars, prev_host, prev_port, prev_password):
if response == gtk.RESPONSE_CLOSE:
self.prefs_last_tab = prefsnotebook.get_current_page()
if self.config.show_lyrics and self.config.lyrics_location != consts.LYRICS_LOCATION_HOME:
Expand Down Expand Up @@ -2945,15 +2945,6 @@ def prefs_window_response(self, window, response, prefsnotebook, direntry, curre
self.withdraw_app()
self.window.set_decorated(self.config.decorated)
self.withdraw_app_undo()
self.config.xfade = crossfadespin.get_value_as_int()
if crossfadecheck.get_active():
self.config.xfade_enabled = True
if self.conn:
mpdh.call(self.client, 'crossfade', self.config.xfade)
else:
self.config.xfade_enabled = False
if self.conn:
mpdh.call(self.client, 'crossfade', 0)
if self.config.infofile_path != infopath_options.get_text():
self.config.infofile_path = os.path.expanduser(infopath_options.get_text())
if self.config.use_infofile: self.update_infofile()
Expand All @@ -2969,6 +2960,17 @@ def prefs_window_response(self, window, response, prefsnotebook, direntry, curre
ui.change_cursor(None)
window.destroy()

def prefs_crossfade_changed(self, crossfade_spin):
crossfade_value = crossfade_spin.get_value_as_int()
mpdh.call(self.client, 'crossfade', crossfade_value)

def prefs_crossfade_toggled(self, button, crossfade_spin):
crossfade_value = crossfade_spin.get_value_as_int()
if button.get_active():
mpdh.call(self.client, 'crossfade', crossfade_value)
else:
mpdh.call(self.client, 'crossfade', 0)

def prefs_playback_toggled(self, button):
self.config.show_playback = button.get_active()
func = 'show' if self.config.show_playback else 'hide'
Expand Down
18 changes: 6 additions & 12 deletions sonata/preferences.py
Expand Up @@ -48,7 +48,7 @@ def __init__(self, config):

self.window = None

def on_prefs_real(self, parent_window, popuptimes, scrobbler, trayicon_available, trayicon_in_use, reconnect, renotify, reinfofile, prefs_notif_toggled, prefs_stylized_toggled, prefs_art_toggled, prefs_playback_toggled, prefs_progress_toggled, prefs_statusbar_toggled, prefs_lyrics_toggled, prefs_trayicon_toggled, prefs_window_response, prefs_last_tab):
def on_prefs_real(self, parent_window, popuptimes, scrobbler, trayicon_available, trayicon_in_use, reconnect, renotify, reinfofile, prefs_notif_toggled, prefs_stylized_toggled, prefs_art_toggled, prefs_playback_toggled, prefs_progress_toggled, prefs_statusbar_toggled, prefs_lyrics_toggled, prefs_trayicon_toggled, prefs_crossfade_toggled, prefs_crossfade_changed, prefs_window_response, prefs_last_tab):
"""Display the preferences dialog"""
self.window = parent_window
self.scrobbler = scrobbler
Expand Down Expand Up @@ -202,23 +202,17 @@ def on_prefs_real(self, parent_window, popuptimes, scrobbler, trayicon_available
crossfadespin.set_numeric(True)
crossfadespin.set_increments(1, 5)
crossfadespin.set_size_request(70, -1)
crossfadespin.connect('value-changed', prefs_crossfade_changed)
crossfadelabel2 = ui.label(text=_("Fade length") + ":", x=1)
crossfadelabel3 = ui.label(text=_("sec"))
if not self.config.xfade_enabled:
crossfadespin.set_sensitive(False)
crossfadelabel2.set_sensitive(False)
crossfadelabel3.set_sensitive(False)
crossfadecheck.set_active(False)
else:
crossfadespin.set_sensitive(True)
crossfadelabel2.set_sensitive(True)
crossfadelabel3.set_sensitive(True)
crossfadecheck.set_active(True)
crossfadebox = gtk.HBox()
crossfadebox.pack_start(crossfadelabel2)
crossfadebox.pack_start(crossfadespin, False, False, 5)
crossfadebox.pack_start(crossfadelabel3, False, False, 0)
crossfadecheck.connect('toggled', self.prefs_crossfadecheck_toggled, crossfadespin, crossfadelabel2, crossfadelabel3)
crossfadecheck.connect('toggled', prefs_crossfade_toggled, crossfadespin)
crossfadecheck.set_active(self.config.xfade_enabled)
crossfadecheck.toggled() # Force the toggled callback
as_table.attach(as_user_label, 0, 1, 0, 1)
as_table.attach(as_user_entry, 1, 2, 0, 1)
as_table.attach(as_pass_label, 0, 1, 1, 2)
Expand Down Expand Up @@ -513,7 +507,7 @@ def on_prefs_real(self, parent_window, popuptimes, scrobbler, trayicon_available
self.prefswindow.show_all()
prefsnotebook.set_current_page(self.last_tab)
close_button.grab_focus()
self.prefswindow.connect('response', prefs_window_response, prefsnotebook, direntry, currentoptions, libraryoptions, titleoptions, currsongoptions1, currsongoptions2, crossfadecheck, crossfadespin, infopath_options, using_mpd_env_vars, self.prev_host, self.prev_port, self.prev_password)
self.prefswindow.connect('response', prefs_window_response, prefsnotebook, direntry, currentoptions, libraryoptions, titleoptions, currsongoptions1, currsongoptions2, infopath_options, using_mpd_env_vars, self.prev_host, self.prev_port, self.prev_password)
# Save previous connection properties to determine if we should try to
# connect to MPD after prefs are closed:
self.prev_host = self.config.host[self.config.profile_num]
Expand Down

0 comments on commit 10dfd3b

Please sign in to comment.