mirror of
https://github.com/linuxdeepin/dde-dock.git
synced 2025-06-04 17:33:05 +00:00
fix: 调节任务栏音量与控制中心输出音量不同步
任务栏向后端发送了音量变化,后端接受并返回一个改变完成的信号,控制中心接受到了信号,但是任务栏没有接收到信号.收到后端的音量变化信号后,不再通过DBus调用获取属性值,而是使用后端传过来的参数值 Log: 调节任务栏音量与控制中心输出音量不同步 Bug: https://pms.uniontech.com/zentao/bug-view-48689.html Change-Id: I79c6efdf712df8a2e32a496ead689c471afdba39
This commit is contained in:
parent
d139334fff
commit
d7a2f1577c
@ -207,7 +207,6 @@ void SoundApplet::initUi()
|
||||
connect(m_audioInter, &DBusAudio::PortEnabledChanged, [this](uint cardId, QString portId) {
|
||||
portEnableChange(cardId, portId);
|
||||
});;
|
||||
connect(this, static_cast<void (SoundApplet::*)(DBusSink *) const>(&SoundApplet::defaultSinkChanged), this, &SoundApplet::onVolumeChanged);
|
||||
connect(m_listView, &DListView::clicked, this, [this](const QModelIndex & idx) {
|
||||
const Port * port = m_listView->model()->data(idx, Qt::WhatsThisPropertyRole).value<const Port *>();
|
||||
if (port) {
|
||||
@ -269,13 +268,12 @@ void SoundApplet::defaultSinkChanged()
|
||||
activePort(portId,cardId);
|
||||
|
||||
emit defaultSinkChanged(m_defSinkInter);
|
||||
onVolumeChanged(m_defSinkInter->volume());
|
||||
}
|
||||
|
||||
void SoundApplet::onVolumeChanged()
|
||||
void SoundApplet::onVolumeChanged(double volume)
|
||||
{
|
||||
const float volume = m_defSinkInter->volume();
|
||||
|
||||
m_volumeSlider->setValue(std::min(150.0f, volume * 100.0f));
|
||||
m_volumeSlider->setValue(static_cast<int>(std::min(150.0, volume * 100.0)));
|
||||
|
||||
m_soundShow->setText(QString::number(volume * 100) + '%');
|
||||
emit volumeChanged(m_volumeSlider->value());
|
||||
|
@ -115,7 +115,7 @@ signals:
|
||||
|
||||
private slots:
|
||||
void defaultSinkChanged();
|
||||
void onVolumeChanged();
|
||||
void onVolumeChanged(double volume);
|
||||
void volumeSliderValueChanged();
|
||||
void sinkInputsChanged();
|
||||
void toggleMute();
|
||||
|
Loading…
x
Reference in New Issue
Block a user