/* This file is part of Telegram Desktop, the official desktop application for the Telegram messaging service. For license and copyright information please follow this link: https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL */ #pragma once namespace Main { class Session; } // namespace Main namespace Ui { class VerticalLayout; } // namespace Ui namespace Data { enum class DefaultNotify : uint8_t; class Thread; struct VolumeController { Fn volume = nullptr; Fn saveVolume = nullptr; }; [[nodiscard]] VolumeController DefaultRingtonesVolumeController( not_null session, Data::DefaultNotify defaultNotify); [[nodiscard]] VolumeController ThreadRingtonesVolumeController( not_null thread); } // namespace Data namespace Ui { void AddRingtonesVolumeSlider( not_null container, rpl::producer toggleOn, rpl::producer subtitle, Data::VolumeController volumeController); } // namespace Ui