Version 5.15.

- Send Direct Messages to Channels.
- Enable New Tab Layout for Topics.
- Create Polls with Up To 12 Options.
This commit is contained in:
John Preston 2025-06-04 21:35:43 +04:00
parent af061125dd
commit 4659d5db5d
17 changed files with 36 additions and 39 deletions

View file

@ -10,7 +10,7 @@
<Identity Name="TelegramMessengerLLP.TelegramDesktop"
ProcessorArchitecture="ARCHITECTURE"
Publisher="CN=536BC709-8EE1-4478-AF22-F0F0F26FF64A"
Version="5.14.3.0" />
Version="5.15.0.0" />
<Properties>
<DisplayName>Telegram Desktop</DisplayName>
<PublisherDisplayName>Telegram Messenger LLP</PublisherDisplayName>

View file

@ -44,8 +44,8 @@ IDI_ICON1 ICON "..\\art\\icon256.ico"
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 5,14,3,0
PRODUCTVERSION 5,14,3,0
FILEVERSION 5,15,0,0
PRODUCTVERSION 5,15,0,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@ -62,10 +62,10 @@ BEGIN
BEGIN
VALUE "CompanyName", "Telegram FZ-LLC"
VALUE "FileDescription", "Telegram Desktop"
VALUE "FileVersion", "5.14.3.0"
VALUE "FileVersion", "5.15.0.0"
VALUE "LegalCopyright", "Copyright (C) 2014-2025"
VALUE "ProductName", "Telegram Desktop"
VALUE "ProductVersion", "5.14.3.0"
VALUE "ProductVersion", "5.15.0.0"
END
END
BLOCK "VarFileInfo"

View file

@ -35,8 +35,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 5,14,3,0
PRODUCTVERSION 5,14,3,0
FILEVERSION 5,15,0,0
PRODUCTVERSION 5,15,0,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@ -53,10 +53,10 @@ BEGIN
BEGIN
VALUE "CompanyName", "Telegram FZ-LLC"
VALUE "FileDescription", "Telegram Desktop Updater"
VALUE "FileVersion", "5.14.3.0"
VALUE "FileVersion", "5.15.0.0"
VALUE "LegalCopyright", "Copyright (C) 2014-2025"
VALUE "ProductName", "Telegram Desktop"
VALUE "ProductVersion", "5.14.3.0"
VALUE "ProductVersion", "5.15.0.0"
END
END
BLOCK "VarFileInfo"

View file

@ -1275,7 +1275,7 @@ std::unique_ptr<PeerListRow> ChooseSublistBoxController::createSearchRow(
auto ChooseSublistBoxController::createRow(
not_null<Data::SavedSublist*> sublist)
-> std::unique_ptr<PeerListRow> {
if (const auto skip = _filter && !_filter(sublist)) {
if (_filter && !_filter(sublist)) {
return nullptr;
}
auto result = std::make_unique<PeerListRow>(sublist->sublistPeer());

View file

@ -245,8 +245,6 @@ void CaptionBox(
box->setWidth(st::boxWidth);
box->getDelegate()->setStyle(st::sendGifBox);
const auto container = box->verticalLayout();
const auto input = AddInputField(box, controller);
box->setFocusCallback([=] {
input->setFocus();

View file

@ -22,7 +22,7 @@ constexpr auto AppId = "{53F49750-6209-4FBF-9CA8-7A333C87D1ED}"_cs;
constexpr auto AppNameOld = "Telegram Win (Unofficial)"_cs;
constexpr auto AppName = "Telegram Desktop"_cs;
constexpr auto AppFile = "Telegram"_cs;
constexpr auto AppVersion = 5014003;
constexpr auto AppVersionStr = "5.14.3";
constexpr auto AppVersion = 5015000;
constexpr auto AppVersionStr = "5.15";
constexpr auto AppBetaVersion = false;
constexpr auto AppAlphaVersion = TDESKTOP_ALPHA_VERSION;

View file

@ -2978,9 +2978,6 @@ rpl::producer<Data::MessagesSlice> ChatWidget::sublistSource(
Data::MessagePosition aroundId,
int limitBefore,
int limitAfter) {
const auto messageId = aroundId.fullId.msg
? aroundId.fullId.msg
: (ServerMaxMsgId - 1);
return _sublist->source(
aroundId,
limitBefore,

View file

@ -41,7 +41,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
namespace HistoryView {
namespace {
constexpr auto kDefaultLimit = 5; AssertIsDebug()// 10;
constexpr auto kDefaultLimit = 12;
} // namespace
@ -349,7 +349,7 @@ void SubsectionTabs::setupSlider(
? was
: Ui::MakeUserpicThumbnail(peer);
sections.push_back({
.text = peer->shortName(),
.text = { peer->shortName() },
.userpic = std::move(userpic),
});
} else {
@ -363,7 +363,7 @@ void SubsectionTabs::setupSlider(
}
} else {
sections.push_back({
.text = tr::lng_filters_all_short(tr::now),
.text = { tr::lng_filters_all_short(tr::now) },
.userpic = Ui::MakeAllSubsectionsThumbnail(textFg),
});
}

View file

@ -69,10 +69,10 @@ private:
DocumentId iconId = 0;
QString name;
friend inline constexpr auto operator<=>(
friend inline auto operator<=>(
const Item &,
const Item &) = default;
friend inline constexpr bool operator==(
friend inline bool operator==(
const Item &,
const Item &) = default;
};

View file

@ -369,9 +369,10 @@ Manager::Private::Private(not_null<Manager*> manager)
.contextId = ContextId{
.sessionId = dict.lookup_value("session").get_uint64(),
.peerId = PeerId(dict.lookup_value("peer").get_uint64()),
.topicRootId = dict.lookup_value("topic").get_int64(),
.monoforumPeerId = dict.lookup_value(
"monoforumpeer").get_uint64(),
.topicRootId = MsgId(
dict.lookup_value("topic").get_int64()),
.monoforumPeerId = PeerId(dict.lookup_value(
"monoforumpeer").get_uint64()),
},
.msgId = dict.lookup_value("msgid").get_int64(),
};

View file

@ -249,7 +249,7 @@ private:
};
struct ClearFromSublist {
ContextId contextId;
}
};
struct ClearFromHistory {
ContextId partialContextId;
};

View file

@ -300,7 +300,6 @@ void SubsectionSlider::setupBar() {
}, _bar->lifetime());
_bar->paintRequest() | rpl::start_with_next([=](QRect clip) {
const auto start = -_barSt.stroke / 2;
const auto finalRange = getFinalActiveRange();
const auto currentRange = getCurrentActiveRange();
const auto from = currentRange.from + _barSt.skip;
const auto size = currentRange.size - 2 * _barSt.skip;
@ -471,7 +470,6 @@ bool SubsectionSlider::buttonPaused() {
}
float64 SubsectionSlider::buttonActive(not_null<SubsectionButton*> button) {
const auto finalRange = getFinalActiveRange();
const auto currentRange = getCurrentActiveRange();
const auto from = _vertical ? button->y() : button->x();
const auto size = _vertical ? button->height() : button->width();
@ -505,8 +503,7 @@ not_null<SubsectionButton*> SubsectionSlider::buttonAt(int index) {
}
VerticalSlider::VerticalSlider(not_null<QWidget*> parent)
: SubsectionSlider(parent, true)
, _st(st::chatTabsVertical) {
: SubsectionSlider(parent, true) {
}
VerticalSlider::~VerticalSlider() = default;

View file

@ -148,8 +148,6 @@ private:
std::unique_ptr<SubsectionButton> makeButton(
SubsectionTab &&data) override;
const style::ChatTabsVertical &_st;
};
class HorizontalSlider final : public SubsectionSlider {

View file

@ -34,7 +34,7 @@ class DynamicImage;
[[nodiscard]] std::shared_ptr<DynamicImage> MakeEmojiThumbnail(
not_null<Data::Session*> owner,
const QString &data,
Fn<bool()> paused = false,
Fn<bool()> paused = nullptr,
Fn<QColor()> textColor = nullptr);
[[nodiscard]] std::shared_ptr<DynamicImage> MakePhotoThumbnail(
not_null<PhotoData*> photo,

View file

@ -139,7 +139,7 @@ int PeerBadge::drawGetWidth(Painter &p, Descriptor &&descriptor) {
const auto peer = descriptor.peer;
if ((descriptor.scam && (peer->isScam() || peer->isFake()))
|| descriptor.direct && peer->isMonoforum()) {
|| (descriptor.direct && peer->isMonoforum())) {
return drawTextBadge(p, descriptor);
}
const auto verifyCheck = descriptor.verified && peer->isVerified();

View file

@ -1,7 +1,7 @@
AppVersion 5014003
AppVersionStrMajor 5.14
AppVersionStrSmall 5.14.3
AppVersionStr 5.14.3
AppVersion 5015000
AppVersionStrMajor 5.15
AppVersionStrSmall 5.15
AppVersionStr 5.15.0
BetaChannel 0
AlphaVersion 0
AppVersionOriginal 5.14.3
AppVersionOriginal 5.15

View file

@ -1,3 +1,9 @@
5.15 (04.06.25)
- Send Direct Messages to Channels.
- Enable New Tab Layout for Topics.
- Create Polls with Up To 12 Options.
5.14.3 (18.05.25)
- Fix stale birthday suggestions removing.