X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/e7eb3a2744aa45179daea235800753d3d1955338..a31f7a7285f35e978d5dde802316b5ca0d89836f:/disobedience/control.c diff --git a/disobedience/control.c b/disobedience/control.c index c512059..931746a 100644 --- a/disobedience/control.c +++ b/disobedience/control.c @@ -20,7 +20,6 @@ */ #include "disobedience.h" -#include "mixer.h" /* Forward declarations ---------------------------------------------------- */ @@ -290,8 +289,8 @@ GtkWidget *control_widget(void) { gtk_scale_set_digits(GTK_SCALE(balance_widget), 10); gtk_widget_set_size_request(volume_widget, 192, -1); gtk_widget_set_size_request(balance_widget, 192, -1); - gtk_tooltips_set_tip(tips, volume_widget, "Volume", ""); - gtk_tooltips_set_tip(tips, balance_widget, "Balance", ""); + gtk_widget_set_tooltip_text(volume_widget, "Volume"); + gtk_widget_set_tooltip_text(balance_widget, "Balance"); gtk_box_pack_start(GTK_BOX(hbox), volume_widget, FALSE, TRUE, 0); gtk_box_pack_start(GTK_BOX(hbox), balance_widget, FALSE, TRUE, 0); /* space updates rather than hammering the server */ @@ -323,7 +322,7 @@ static void volume_changed(const char attribute((unused)) *event, ++suppress_actions; /* Only display volume/balance controls if they will work */ if(!rtp_supported - || (rtp_supported && mixer_supported(DEFAULT_BACKEND))) + || (rtp_supported && backend && backend->set_volume)) volume_supported = TRUE; else volume_supported = FALSE; @@ -375,8 +374,8 @@ static void icon_changed(const char attribute((unused)) *event, * state is immediately displayed. sensitive and GTK_WIDGET_SENSITIVE show * it to be in the correct state, so I think this is may be a GTK+ bug. */ if(icon->tip_on) - gtk_tooltips_set_tip(tips, icon->button, - on ? icon->tip_on : icon->tip_off, ""); + gtk_widget_set_tooltip_text(icon->button, + on ? icon->tip_on : icon->tip_off); gtk_widget_set_sensitive(icon->button, sensitive); /* Icons with an associated menu item */ if(icon->item) { @@ -444,7 +443,8 @@ static void volume_adjusted(GtkAdjustment attribute((unused)) *a, * from the log. */ if(rtp_supported) { int l = nearbyint(left(v, b) * 100), r = nearbyint(right(v, b) * 100); - mixer_control(DEFAULT_BACKEND, &l, &r, 1); + if(backend && backend->set_volume) + backend->set_volume(&l, &r); } else disorder_eclient_volume(client, volume_completed, nearbyint(left(v, b) * 100),