Commit Diff


commit - 0e9adb3d6e164cfce8e8910e5be75f073b776af1
commit + 0dc18afae75751699ea6460b60a2be4a84ca69b1
blob - 376906ad10cf52349eeba1fb0e2026b1012eec32
blob + a8fade3eafeb8186f8a45953ff4d689de8e8e8b1
--- siomixer.c
+++ siomixer.c
@@ -146,8 +146,6 @@ ondesc(void *arg, struct sioctl_desc *d, int curval)
 		i->next = *pi;
 		i->timeout = 0;
 		i->widget = NULL;
-		if(s.flowbox && i->desc.node0.unit < 1)
-			i->widget = audiowidget_new(i);
 		*pi = i;
 		break;
 	default:
@@ -157,6 +155,8 @@ ondesc(void *arg, struct sioctl_desc *d, int curval)
 	/* Reconstruct flow_box */
 	if (s.flowbox) {
 		for (i = s.infolist; i != NULL; i = nextfunc(i)) {
+			if (i->widget == NULL)
+				i->widget = audiowidget_new(i);
 			if (i->widget) {
 				gtk_flow_box_append(GTK_FLOW_BOX(s.flowbox),
 				    audiowidget_get_gtkwidget(i->widget));