init
Some checks failed
Docker. / Ubuntu (push) Has been cancelled
User-agent updater. / User-agent (push) Failing after 15s
Lock Threads / lock (push) Failing after 10s
Waiting for answer. / waiting-for-answer (push) Failing after 22s
Needs user action. / needs-user-action (push) Failing after 8s
Can't reproduce. / cant-reproduce (push) Failing after 8s
Close stale issues and PRs / stale (push) Has been cancelled
Some checks failed
Docker. / Ubuntu (push) Has been cancelled
User-agent updater. / User-agent (push) Failing after 15s
Lock Threads / lock (push) Failing after 10s
Waiting for answer. / waiting-for-answer (push) Failing after 22s
Needs user action. / needs-user-action (push) Failing after 8s
Can't reproduce. / cant-reproduce (push) Failing after 8s
Close stale issues and PRs / stale (push) Has been cancelled
This commit is contained in:
95
Telegram/SourceFiles/mtproto/mtproto_config.h
Normal file
95
Telegram/SourceFiles/mtproto/mtproto_config.h
Normal file
@@ -0,0 +1,95 @@
|
||||
/*
|
||||
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
|
||||
|
||||
#include "mtproto/mtproto_dc_options.h"
|
||||
|
||||
namespace MTP {
|
||||
|
||||
struct ConfigFields {
|
||||
explicit ConfigFields(Environment environment);
|
||||
|
||||
int chatSizeMax = 200;
|
||||
int megagroupSizeMax = 10000;
|
||||
int forwardedCountMax = 100;
|
||||
int onlineUpdatePeriod = 120000;
|
||||
int offlineBlurTimeout = 5000;
|
||||
int offlineIdleTimeout = 30000;
|
||||
int onlineFocusTimeout = 1000; // Not from the server config.
|
||||
int onlineCloudTimeout = 300000;
|
||||
int notifyCloudDelay = 30000;
|
||||
int notifyDefaultDelay = 1500;
|
||||
int editTimeLimit = 172800;
|
||||
int revokeTimeLimit = 172800;
|
||||
int revokePrivateTimeLimit = 172800;
|
||||
bool revokePrivateInbox = false;
|
||||
int stickersRecentLimit = 30;
|
||||
QString internalLinksDomain = u"https://t.me/"_q;
|
||||
int channelsReadMediaPeriod = 86400 * 7;
|
||||
int callReceiveTimeoutMs = 20000;
|
||||
int callRingTimeoutMs = 90000;
|
||||
int callConnectTimeoutMs = 30000;
|
||||
int callPacketTimeoutMs = 10000;
|
||||
int webFileDcId = 4;
|
||||
QString txtDomainString;
|
||||
bool blockedMode = false;
|
||||
int captionLengthMax = 1024;
|
||||
int ratingDecay = 2419200;
|
||||
QString reactionDefaultEmoji;
|
||||
uint64 reactionDefaultCustom = 0;
|
||||
QString autologinToken;
|
||||
|
||||
QString gifSearchUsername;
|
||||
QString venueSearchUsername;
|
||||
};
|
||||
|
||||
class Config final {
|
||||
struct PrivateTag {
|
||||
};
|
||||
|
||||
public:
|
||||
explicit Config(Environment environment);
|
||||
Config(const Config &other);
|
||||
|
||||
[[nodiscard]] QByteArray serialize() const;
|
||||
[[nodiscard]] static std::unique_ptr<Config> FromSerialized(
|
||||
const QByteArray &serialized);
|
||||
|
||||
[[nodiscard]] DcOptions &dcOptions() {
|
||||
return _dcOptions;
|
||||
}
|
||||
[[nodiscard]] const DcOptions &dcOptions() const {
|
||||
return _dcOptions;
|
||||
}
|
||||
[[nodiscard]] MTP::Environment environment() const {
|
||||
return _dcOptions.environment();
|
||||
}
|
||||
[[nodiscard]] bool isTestMode() const {
|
||||
return _dcOptions.isTestMode();
|
||||
}
|
||||
|
||||
void apply(const MTPDconfig &data);
|
||||
|
||||
[[nodiscard]] const ConfigFields &values() const;
|
||||
[[nodiscard]] rpl::producer<> updates() const;
|
||||
|
||||
// Set from legacy local stored values.
|
||||
void setChatSizeMax(int value);
|
||||
void setStickersRecentLimit(int value);
|
||||
void setMegagroupSizeMax(int value);
|
||||
void setTxtDomainString(const QString &value);
|
||||
|
||||
private:
|
||||
DcOptions _dcOptions;
|
||||
ConfigFields _fields;
|
||||
|
||||
rpl::event_stream<> _updates;
|
||||
|
||||
};
|
||||
|
||||
} // namespace MTP
|
||||
Reference in New Issue
Block a user