/* 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 class UserData; namespace Calls::Group { constexpr auto kDefaultVolume = 10000; constexpr auto kMaxVolume = 20000; constexpr auto kBlobsEnterDuration = crl::time(250); struct MuteRequest { not_null peer; bool mute = false; bool locallyOnly = false; }; struct VolumeRequest { not_null peer; int volume = kDefaultVolume; bool finalized = true; bool locallyOnly = false; }; struct ParticipantState { not_null peer; std::optional volume; bool mutedByMe = false; bool locallyOnly = false; }; struct RejoinEvent { not_null wasJoinAs; not_null nowJoinAs; }; struct JoinInfo { not_null peer; not_null joinAs; std::vector> possibleJoinAs; QString joinHash; TimeId scheduleDate = 0; }; enum class PanelMode { Default, Wide, }; enum class VideoQuality { Thumbnail, Medium, Full, }; enum class Error { NoCamera, ScreenFailed, MutedNoCamera, MutedNoScreen, DisabledNoCamera, DisabledNoScreen, }; } // namespace Calls::Group