mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-04-15 21:57:10 +02:00
Added disable-autoplay-next option.
This commit is contained in:
parent
c6cdf0a4c4
commit
f469cab7b0
3 changed files with 16 additions and 0 deletions
|
@ -12,6 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|||
#include "data/data_changes.h"
|
||||
#include "data/data_streaming.h"
|
||||
#include "data/data_file_click_handler.h"
|
||||
#include "base/options.h"
|
||||
#include "base/random.h"
|
||||
#include "base/power_save_blocker.h"
|
||||
#include "media/audio/media_audio.h"
|
||||
|
@ -55,8 +56,17 @@ auto VoicePlaybackSpeed() {
|
|||
return std::clamp(Core::App().settings().voicePlaybackSpeed(), 0.6, 1.7);
|
||||
}
|
||||
|
||||
base::options::toggle OptionDisableAutoplayNext({
|
||||
.id = kOptionDisableAutoplayNext,
|
||||
.name = "Disable auto-play of the next track",
|
||||
.description = "Disable auto-play of the next "
|
||||
"Audio file / Voice Message / Video message.",
|
||||
});
|
||||
|
||||
} // namespace
|
||||
|
||||
const char kOptionDisableAutoplayNext[] = "disable-autoplay-next";
|
||||
|
||||
struct Instance::Streamed {
|
||||
Streamed(
|
||||
AudioMsgId id,
|
||||
|
@ -1212,6 +1222,8 @@ void Instance::emitUpdate(AudioMsgId::Type type, CheckCallback check) {
|
|||
if (data->isPlaying && state.state == State::StoppedAtEnd) {
|
||||
if (repeat(data) == RepeatMode::One) {
|
||||
play(data->current);
|
||||
} else if (OptionDisableAutoplayNext.value()) {
|
||||
finished = true;
|
||||
} else if (!moveInPlaylist(data, 1, true)) {
|
||||
finished = true;
|
||||
}
|
||||
|
|
|
@ -42,6 +42,8 @@ class PowerSaveBlocker;
|
|||
namespace Media {
|
||||
namespace Player {
|
||||
|
||||
extern const char kOptionDisableAutoplayNext[];
|
||||
|
||||
enum class RepeatMode {
|
||||
None,
|
||||
One,
|
||||
|
|
|
@ -17,6 +17,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|||
#include "core/application.h"
|
||||
#include "chat_helpers/tabbed_panel.h"
|
||||
#include "lang/lang_keys.h"
|
||||
#include "media/player/media_player_instance.h"
|
||||
#include "window/window_peer_menu.h"
|
||||
#include "window/window_session_controller.h"
|
||||
#include "window/window_controller.h"
|
||||
|
@ -131,6 +132,7 @@ void SetupExperimental(
|
|||
addToggle(ChatHelpers::kOptionTabbedPanelShowOnClick);
|
||||
addToggle(Window::kOptionViewProfileInChatsListContextMenu);
|
||||
addToggle(Ui::GL::kOptionAllowLinuxNvidiaOpenGL);
|
||||
addToggle(Media::Player::kOptionDisableAutoplayNext);
|
||||
}
|
||||
|
||||
} // namespace
|
||||
|
|
Loading…
Add table
Reference in a new issue