mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
Added volume button to media player for voices.
This commit is contained in:
parent
a8d8b5be28
commit
371ba40a50
2 changed files with 12 additions and 8 deletions
|
@ -317,8 +317,10 @@ base::Observable<AudioMsgId> &Updated() {
|
||||||
float64 ComputeVolume(AudioMsgId::Type type) {
|
float64 ComputeVolume(AudioMsgId::Type type) {
|
||||||
const auto gain = [&] {
|
const auto gain = [&] {
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case AudioMsgId::Type::Voice: return VolumeMultiplierAll;
|
case AudioMsgId::Type::Voice:
|
||||||
case AudioMsgId::Type::Song: return VolumeMultiplierSong * mixer()->getSongVolume();
|
return VolumeMultiplierAll * mixer()->getSongVolume();
|
||||||
|
case AudioMsgId::Type::Song:
|
||||||
|
return VolumeMultiplierSong * mixer()->getSongVolume();
|
||||||
case AudioMsgId::Type::Video: return mixer()->getVideoVolume();
|
case AudioMsgId::Type::Video: return mixer()->getVideoVolume();
|
||||||
}
|
}
|
||||||
return 1.;
|
return 1.;
|
||||||
|
@ -1371,8 +1373,9 @@ void Fader::onTimer() {
|
||||||
};
|
};
|
||||||
auto suppressGainForMusic = ComputeVolume(AudioMsgId::Type::Song);
|
auto suppressGainForMusic = ComputeVolume(AudioMsgId::Type::Song);
|
||||||
auto suppressGainForMusicChanged = volumeChangedSong || _volumeChangedSong;
|
auto suppressGainForMusicChanged = volumeChangedSong || _volumeChangedSong;
|
||||||
|
auto suppressGainForVoice = ComputeVolume(AudioMsgId::Type::Voice);
|
||||||
for (auto i = 0; i != kTogetherLimit; ++i) {
|
for (auto i = 0; i != kTogetherLimit; ++i) {
|
||||||
updatePlayback(AudioMsgId::Type::Voice, i, VolumeMultiplierAll, volumeChangedAll);
|
updatePlayback(AudioMsgId::Type::Voice, i, suppressGainForVoice, suppressGainForMusicChanged);
|
||||||
updatePlayback(AudioMsgId::Type::Song, i, suppressGainForMusic, suppressGainForMusicChanged);
|
updatePlayback(AudioMsgId::Type::Song, i, suppressGainForMusic, suppressGainForMusicChanged);
|
||||||
}
|
}
|
||||||
auto suppressGainForVideo = ComputeVolume(AudioMsgId::Type::Video);
|
auto suppressGainForVideo = ComputeVolume(AudioMsgId::Type::Video);
|
||||||
|
|
|
@ -697,8 +697,10 @@ void Widget::updateControlsGeometry() {
|
||||||
if (hasPlaybackSpeedControl()) {
|
if (hasPlaybackSpeedControl()) {
|
||||||
_speedToggle->moveToRight(right, 0); right += _speedToggle->width();
|
_speedToggle->moveToRight(right, 0); right += _speedToggle->width();
|
||||||
}
|
}
|
||||||
_repeatToggle->moveToRight(right, 0); right += _repeatToggle->width();
|
if (_type == AudioMsgId::Type::Song) {
|
||||||
_orderToggle->moveToRight(right, 0); right += _orderToggle->width();
|
_repeatToggle->moveToRight(right, 0); right += _repeatToggle->width();
|
||||||
|
_orderToggle->moveToRight(right, 0); right += _orderToggle->width();
|
||||||
|
}
|
||||||
_volumeToggle->moveToRight(right, 0); right += _volumeToggle->width();
|
_volumeToggle->moveToRight(right, 0); right += _volumeToggle->width();
|
||||||
|
|
||||||
updateControlsWrapGeometry();
|
updateControlsWrapGeometry();
|
||||||
|
@ -840,10 +842,10 @@ int Widget::getNameRight() const {
|
||||||
|
|
||||||
int Widget::getTimeRight() const {
|
int Widget::getTimeRight() const {
|
||||||
auto result = 0;
|
auto result = 0;
|
||||||
|
result += _volumeToggle->width();
|
||||||
if (_type == AudioMsgId::Type::Song) {
|
if (_type == AudioMsgId::Type::Song) {
|
||||||
result += _repeatToggle->width()
|
result += _repeatToggle->width()
|
||||||
+ _orderToggle->width()
|
+ _orderToggle->width();
|
||||||
+ _volumeToggle->width();
|
|
||||||
}
|
}
|
||||||
if (hasPlaybackSpeedControl()) {
|
if (hasPlaybackSpeedControl()) {
|
||||||
result += _speedToggle->width();
|
result += _speedToggle->width();
|
||||||
|
@ -908,7 +910,6 @@ bool Widget::hasPlaybackSpeedControl() const {
|
||||||
void Widget::updateControlsVisibility() {
|
void Widget::updateControlsVisibility() {
|
||||||
_repeatToggle->setVisible(_type == AudioMsgId::Type::Song);
|
_repeatToggle->setVisible(_type == AudioMsgId::Type::Song);
|
||||||
_orderToggle->setVisible(_type == AudioMsgId::Type::Song);
|
_orderToggle->setVisible(_type == AudioMsgId::Type::Song);
|
||||||
_volumeToggle->setVisible(_type == AudioMsgId::Type::Song);
|
|
||||||
_speedToggle->setVisible(hasPlaybackSpeedControl());
|
_speedToggle->setVisible(hasPlaybackSpeedControl());
|
||||||
if (!_shadow->isHidden()) {
|
if (!_shadow->isHidden()) {
|
||||||
_playbackSlider->setVisible(_type == AudioMsgId::Type::Song);
|
_playbackSlider->setVisible(_type == AudioMsgId::Type::Song);
|
||||||
|
|
Loading…
Add table
Reference in a new issue