diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mainwindow.cc | 12 | ||||
-rw-r--r-- | src/sinkinputwidget.cc | 1 | ||||
-rw-r--r-- | src/sourceoutputwidget.cc | 1 |
3 files changed, 14 insertions, 0 deletions
diff --git a/src/mainwindow.cc b/src/mainwindow.cc index ff1d690..a25e416 100644 --- a/src/mainwindow.cc +++ b/src/mainwindow.cc @@ -197,6 +197,12 @@ void MainWindow::rebuildSinkCombo() { row[deviceColumns.index] = i->first; row[deviceColumns.name] = i->second->description.c_str(); } + + /* Force a redraw of the dropdown combo due to the model change. */ + for (std::map<uint32_t, SinkInputWidget*>::iterator i = sinkInputWidgets.begin(); i != sinkInputWidgets.end(); ++i) { + SinkInputWidget* w = i->second; + w->setSinkIndex(w->sinkIndex()); + } } void MainWindow::updateSink(const pa_sink_info &info) { @@ -364,6 +370,12 @@ void MainWindow::rebuildSourceCombo() { row[deviceColumns.index] = i->first; row[deviceColumns.name] = i->second->description.c_str(); } + + /* Force a redraw of the dropdown combo due to the model change. */ + for (std::map<uint32_t, SourceOutputWidget*>::iterator i = sourceOutputWidgets.begin(); i != sourceOutputWidgets.end(); ++i) { + SourceOutputWidget* w = i->second; + w->setSourceIndex(w->sourceIndex()); + } } void MainWindow::updateSource(const pa_source_info &info) { diff --git a/src/sinkinputwidget.cc b/src/sinkinputwidget.cc index 07a4a1d..b49ba41 100644 --- a/src/sinkinputwidget.cc +++ b/src/sinkinputwidget.cc @@ -61,6 +61,7 @@ SinkInputWidget* SinkInputWidget::create(MainWindow* mainWindow) { void SinkInputWidget::setSinkIndex(uint32_t idx) { mSinkIndex = idx; + deviceCombo->set_active(mpMainWindow->sinkTreeIndexes[idx]); } uint32_t SinkInputWidget::sinkIndex() { diff --git a/src/sourceoutputwidget.cc b/src/sourceoutputwidget.cc index 12eb914..64f3aad 100644 --- a/src/sourceoutputwidget.cc +++ b/src/sourceoutputwidget.cc @@ -61,6 +61,7 @@ SourceOutputWidget* SourceOutputWidget::create(MainWindow* mainWindow) { void SourceOutputWidget::setSourceIndex(uint32_t idx) { mSourceIndex = idx; + deviceCombo->set_active(mpMainWindow->sourceTreeIndexes[idx]); } uint32_t SourceOutputWidget::sourceIndex() { |