Compare commits
18 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
78093173a9 | ||
|
|
a01d48f063 | ||
|
|
149c69c9f5 | ||
|
|
df277b366b | ||
|
|
f20475f07e | ||
|
|
b6664625ea | ||
|
|
1028219276 | ||
|
|
219671a3bc | ||
|
|
8c97e915ec | ||
|
|
b648548001 | ||
|
|
b377c02ad3 | ||
|
|
66d6b461f3 | ||
|
|
054a6db3ae | ||
|
|
bf7042df44 | ||
|
|
aa140b2919 | ||
|
|
8d0d9bb0bd | ||
|
|
9ca9904732 | ||
|
|
e6e1b9446d |
2
.github/workflows/win.yml
vendored
2
.github/workflows/win.yml
vendored
@@ -169,6 +169,8 @@ jobs:
|
||||
%TDESKTOP_BUILD_GENERATOR% ^
|
||||
%TDESKTOP_BUILD_ARCH% ^
|
||||
%TDESKTOP_BUILD_API% ^
|
||||
-D CMAKE_C_FLAGS="/WX" ^
|
||||
-D CMAKE_CXX_FLAGS="/WX" ^
|
||||
-D DESKTOP_APP_DISABLE_AUTOUPDATE=OFF ^
|
||||
-D DESKTOP_APP_DISABLE_CRASH_REPORTS=OFF ^
|
||||
-D DESKTOP_APP_NO_PDB=ON ^
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 771 B |
Binary file not shown.
|
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.1 KiB |
@@ -1115,6 +1115,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
"lng_settings_faq" = "Telegram FAQ";
|
||||
"lng_settings_faq_link" = "https://telegram.org/faq#general-questions";
|
||||
"lng_settings_features" = "Telegram Features";
|
||||
"lng_settings_credits" = "Your Stars";
|
||||
"lng_settings_logout" = "Log Out";
|
||||
"lng_sure_logout" = "Are you sure you want to log out?";
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<Identity Name="TelegramMessengerLLP.TelegramDesktop"
|
||||
ProcessorArchitecture="ARCHITECTURE"
|
||||
Publisher="CN=536BC709-8EE1-4478-AF22-F0F0F26FF64A"
|
||||
Version="5.2.2.0" />
|
||||
Version="5.2.3.0" />
|
||||
<Properties>
|
||||
<DisplayName>Telegram Desktop</DisplayName>
|
||||
<PublisherDisplayName>Telegram Messenger LLP</PublisherDisplayName>
|
||||
|
||||
@@ -44,8 +44,8 @@ IDI_ICON1 ICON "..\\art\\icon256.ico"
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 5,2,2,0
|
||||
PRODUCTVERSION 5,2,2,0
|
||||
FILEVERSION 5,2,3,0
|
||||
PRODUCTVERSION 5,2,3,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.2.2.0"
|
||||
VALUE "FileVersion", "5.2.3.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2014-2024"
|
||||
VALUE "ProductName", "Telegram Desktop"
|
||||
VALUE "ProductVersion", "5.2.2.0"
|
||||
VALUE "ProductVersion", "5.2.3.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -35,8 +35,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 5,2,2,0
|
||||
PRODUCTVERSION 5,2,2,0
|
||||
FILEVERSION 5,2,3,0
|
||||
PRODUCTVERSION 5,2,3,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.2.2.0"
|
||||
VALUE "FileVersion", "5.2.3.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2014-2024"
|
||||
VALUE "ProductName", "Telegram Desktop"
|
||||
VALUE "ProductVersion", "5.2.2.0"
|
||||
VALUE "ProductVersion", "5.2.3.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -571,8 +571,8 @@ void _generateDump(EXCEPTION_POINTERS* pExceptionPointers) {
|
||||
}
|
||||
if (!hDumpFile || hDumpFile == INVALID_HANDLE_VALUE) {
|
||||
WCHAR wstrPath[maxFileLen];
|
||||
DWORD wstrPathLen;
|
||||
if (wstrPathLen = GetEnvironmentVariable(L"APPDATA", wstrPath, maxFileLen)) {
|
||||
DWORD wstrPathLen = GetEnvironmentVariable(L"APPDATA", wstrPath, maxFileLen);
|
||||
if (wstrPathLen) {
|
||||
wsprintf(wstrPath + wstrPathLen, L"\\%s\\", _programName);
|
||||
hDumpFile = _generateDumpFileAtPath(wstrPath);
|
||||
}
|
||||
|
||||
@@ -459,6 +459,7 @@ Ui::BoostFeatures LookupBoostFeatures(not_null<ChannelData*> channel) {
|
||||
.customWallpaperLevel = group
|
||||
? levelLimits.groupCustomWallpaperLevelMin()
|
||||
: levelLimits.channelCustomWallpaperLevelMin(),
|
||||
.sponsoredLevel = levelLimits.channelRestrictSponsoredLevelMin(),
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -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 = 5002002;
|
||||
constexpr auto AppVersionStr = "5.2.2";
|
||||
constexpr auto AppVersion = 5002003;
|
||||
constexpr auto AppVersionStr = "5.2.3";
|
||||
constexpr auto AppBetaVersion = false;
|
||||
constexpr auto AppAlphaVersion = TDESKTOP_ALPHA_VERSION;
|
||||
|
||||
@@ -121,8 +121,8 @@ struct AlbumCounts {
|
||||
ImageRoundRadius radius,
|
||||
bool spoiler) {
|
||||
const auto original = image->original();
|
||||
if (original.width() * 10 < original.height()
|
||||
|| original.height() * 10 < original.width()) {
|
||||
if (original.width() * 20 < original.height()
|
||||
|| original.height() * 20 < original.width()) {
|
||||
return QImage();
|
||||
}
|
||||
const auto factor = style::DevicePixelRatio();
|
||||
|
||||
@@ -5668,7 +5668,7 @@ bool HistoryWidget::confirmSendingFiles(
|
||||
cursor.setPosition(position, QTextCursor::KeepAnchor);
|
||||
}
|
||||
_field->setTextCursor(cursor);
|
||||
if (!insertTextOnCancel.isEmpty()) {
|
||||
if (Ui::InsertTextOnImageCancel(insertTextOnCancel)) {
|
||||
_field->textCursor().insertText(insertTextOnCancel);
|
||||
}
|
||||
}));
|
||||
|
||||
@@ -3415,7 +3415,7 @@ Fn<void()> ComposeControls::restoreTextCallback(
|
||||
cursor.setPosition(position, QTextCursor::KeepAnchor);
|
||||
}
|
||||
_field->setTextCursor(cursor);
|
||||
if (!insertTextOnCancel.isEmpty()) {
|
||||
if (Ui::InsertTextOnImageCancel(insertTextOnCancel)) {
|
||||
_field->textCursor().insertText(insertTextOnCancel);
|
||||
}
|
||||
});
|
||||
|
||||
@@ -76,9 +76,9 @@ namespace {
|
||||
return rpl::single(ContentWithoutPreview(item, repaint));
|
||||
}
|
||||
constexpr auto kFullLoaded = 2;
|
||||
constexpr auto kSomeLoaded = 1;
|
||||
constexpr auto kNotLoaded = 0;
|
||||
const auto loadedLevel = [=] {
|
||||
constexpr auto kSomeLoaded = 1;
|
||||
constexpr auto kNotLoaded = 0;
|
||||
const auto preview = media->replyPreview();
|
||||
return media->replyPreviewLoaded()
|
||||
? kFullLoaded
|
||||
|
||||
@@ -167,7 +167,7 @@ void SimilarChannels::draw(Painter &p, const PaintContext &context) const {
|
||||
_hasHeavyPart = 1;
|
||||
validateLastPremiumLock();
|
||||
const auto drawOne = [&](const Channel &channel) {
|
||||
const auto geometry = channel.geometry.translated(-_scrollLeft, 0);
|
||||
const auto geometry = channel.geometry.translated(-int(_scrollLeft), 0);
|
||||
const auto right = geometry.x() + geometry.width();
|
||||
if (right <= 0) {
|
||||
return;
|
||||
@@ -501,7 +501,7 @@ TextState SimilarChannels::textState(
|
||||
return result;
|
||||
}
|
||||
for (const auto &channel : _channels) {
|
||||
if (channel.geometry.translated(-_scrollLeft, 0).contains(point)) {
|
||||
if (channel.geometry.translated(-int(_scrollLeft), 0).contains(point)) {
|
||||
result.link = channel.link;
|
||||
_lastPoint = point
|
||||
+ QPoint(_scrollLeft, 0)
|
||||
|
||||
@@ -351,10 +351,14 @@ void PipPanel::init() {
|
||||
widget()->resize(0, 0);
|
||||
widget()->hide();
|
||||
|
||||
rp()->shownValue(
|
||||
) | rpl::filter([=](bool shown) {
|
||||
return shown;
|
||||
}) | rpl::start_with_next([=] {
|
||||
rpl::merge(
|
||||
rp()->shownValue() | rpl::to_empty,
|
||||
rp()->paintRequest() | rpl::to_empty
|
||||
) | rpl::map([=] {
|
||||
return widget()->windowHandle()
|
||||
&& widget()->windowHandle()->isExposed();
|
||||
}) | rpl::distinct_until_changed(
|
||||
) | rpl::filter(rpl::mappers::_1) | rpl::start_with_next([=] {
|
||||
// Workaround Qt's forced transient parent.
|
||||
Ui::Platform::ClearTransientParent(widget());
|
||||
}, rp()->lifetime());
|
||||
|
||||
@@ -98,7 +98,6 @@ BOOL CALLBACK FindToActivate(HWND hwnd, LPARAM lParam) {
|
||||
return TRUE;
|
||||
}
|
||||
// Found a Top-Level window.
|
||||
auto level = 0;
|
||||
if (WindowIdFromHWND(hwnd) == request->windowId) {
|
||||
request->result = hwnd;
|
||||
request->resultLevel = 3;
|
||||
@@ -310,8 +309,8 @@ void psDoFixPrevious() {
|
||||
if (oldKeyRes2 == ERROR_SUCCESS) RegCloseKey(oldKey2);
|
||||
|
||||
if (existNew1 || existNew2) {
|
||||
const auto deleteKeyRes1 = existOld1 ? RegDeleteKey(HKEY_LOCAL_MACHINE, oldKeyStr1.c_str()) : ERROR_SUCCESS;
|
||||
const auto deleteKeyRes2 = existOld2 ? RegDeleteKey(HKEY_LOCAL_MACHINE, oldKeyStr2.c_str()) : ERROR_SUCCESS;
|
||||
if (existOld1) RegDeleteKey(HKEY_LOCAL_MACHINE, oldKeyStr1.c_str());
|
||||
if (existOld2) RegDeleteKey(HKEY_LOCAL_MACHINE, oldKeyStr2.c_str());
|
||||
}
|
||||
|
||||
QString userDesktopLnk, commonDesktopLnk;
|
||||
@@ -326,7 +325,7 @@ void psDoFixPrevious() {
|
||||
}
|
||||
QFile userDesktopFile(userDesktopLnk), commonDesktopFile(commonDesktopLnk);
|
||||
if (QFile::exists(userDesktopLnk) && QFile::exists(commonDesktopLnk) && userDesktopLnk != commonDesktopLnk) {
|
||||
bool removed = QFile::remove(commonDesktopLnk);
|
||||
QFile::remove(commonDesktopLnk);
|
||||
}
|
||||
} catch (...) {
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
#include "base/unique_qptr.h"
|
||||
|
||||
namespace Window {
|
||||
class CounterLayerArgs;
|
||||
struct CounterLayerArgs;
|
||||
} // namespace Window
|
||||
|
||||
namespace Ui {
|
||||
|
||||
@@ -503,7 +503,7 @@ void SetupPremium(
|
||||
AddPremiumStar(
|
||||
AddButtonWithLabel(
|
||||
wrap->entity(),
|
||||
tr::lng_credits_summary_title(),
|
||||
tr::lng_settings_credits(),
|
||||
controller->session().creditsValue(
|
||||
) | rpl::map([=](uint64 c) {
|
||||
return c ? Lang::FormatCountToShort(c).string : QString{};
|
||||
|
||||
@@ -553,7 +553,7 @@ bool ReadSetting(
|
||||
const auto proxy = readProxy();
|
||||
if (proxy) {
|
||||
list.push_back(proxy);
|
||||
} else if (index < -list.size()) {
|
||||
} else if (index < -int64(list.size())) {
|
||||
++index;
|
||||
} else if (index > list.size()) {
|
||||
--index;
|
||||
|
||||
@@ -175,7 +175,7 @@ void AddFeaturesList(
|
||||
st::boostFeatureIconPosition);
|
||||
};
|
||||
const auto proj = &Ui::Text::RichLangValue;
|
||||
const auto max = std::max({
|
||||
const auto lowMax = std::max({
|
||||
features.linkLogoLevel,
|
||||
features.transcribeLevel,
|
||||
features.emojiPackLevel,
|
||||
@@ -189,9 +189,13 @@ void AddFeaturesList(
|
||||
? 0
|
||||
: features.linkStylesByLevel.back().first),
|
||||
});
|
||||
const auto highMax = std::max(lowMax, features.sponsoredLevel);
|
||||
auto nameColors = 0;
|
||||
auto linkStyles = 0;
|
||||
for (auto i = std::max(startFromLevel, 1); i <= max; ++i) {
|
||||
for (auto i = std::max(startFromLevel, 1); i <= highMax; ++i) {
|
||||
if ((i > lowMax) && (i < highMax)) {
|
||||
continue;
|
||||
}
|
||||
const auto unlocks = (i == startFromLevel);
|
||||
container->add(
|
||||
MakeFeaturesBadge(
|
||||
@@ -202,6 +206,9 @@ void AddFeaturesList(
|
||||
lt_count,
|
||||
rpl::single(float64(i)))),
|
||||
st::boostLevelBadgePadding);
|
||||
if (i >= features.sponsoredLevel) {
|
||||
add(tr::lng_channel_earn_off(proj), st::boostFeatureOffSponsored);
|
||||
}
|
||||
if (i >= features.customWallpaperLevel) {
|
||||
add(
|
||||
(group
|
||||
|
||||
@@ -40,6 +40,7 @@ struct BoostFeatures {
|
||||
int wallpaperLevel = 0;
|
||||
int wallpapersCount = 0;
|
||||
int customWallpaperLevel = 0;
|
||||
int sponsoredLevel = 0;
|
||||
};
|
||||
|
||||
struct BoostBoxData {
|
||||
|
||||
@@ -178,6 +178,8 @@ void Panel::Button::updateFg(QColor fg) {
|
||||
void Panel::Button::updateArgs(MainButtonArgs &&args) {
|
||||
_textFull = std::move(args.text);
|
||||
setDisabled(!args.isActive);
|
||||
setPointerCursor(false);
|
||||
setCursor(args.isActive ? style::cur_pointer : Qt::ForbiddenCursor);
|
||||
setVisible(args.isVisible);
|
||||
toggleProgress(args.isProgressVisible);
|
||||
update();
|
||||
|
||||
@@ -82,6 +82,10 @@ bool CanBeInAlbumType(PreparedFile::Type type, AlbumType album) {
|
||||
Unexpected("AlbumType in CanBeInAlbumType.");
|
||||
}
|
||||
|
||||
bool InsertTextOnImageCancel(const QString &text) {
|
||||
return !text.isEmpty() && !text.startsWith(u"data:image"_q);
|
||||
}
|
||||
|
||||
PreparedList PreparedList::Reordered(
|
||||
PreparedList &&list,
|
||||
std::vector<int> order) {
|
||||
|
||||
@@ -88,6 +88,7 @@ struct PreparedFile {
|
||||
};
|
||||
|
||||
[[nodiscard]] bool CanBeInAlbumType(PreparedFile::Type type, AlbumType album);
|
||||
[[nodiscard]] bool InsertTextOnImageCancel(const QString &text);
|
||||
|
||||
struct PreparedList {
|
||||
enum class Error {
|
||||
|
||||
@@ -47,3 +47,5 @@ creditsBoxButtonLabel: FlatLabel(defaultFlatLabel) {
|
||||
|
||||
starIconSmall: icon{{ "payments/small_star", windowFg }};
|
||||
starIconSmallPadding: margins(0px, -2px, 0px, 0px);
|
||||
|
||||
creditsHistoryEntryTypeAds: icon {{ "folders/folders_channels", premiumButtonFg }};
|
||||
|
||||
@@ -205,6 +205,8 @@ PaintRoundImageCallback GenerateCreditsPaintUserpicCallback(
|
||||
return { st::historyPeer8UserpicBg, st::historyPeer8UserpicBg2 };
|
||||
case Data::CreditsHistoryEntry::PeerType::PremiumBot:
|
||||
return { st::historyPeer8UserpicBg, st::historyPeer8UserpicBg2 };
|
||||
case Data::CreditsHistoryEntry::PeerType::Ads:
|
||||
return { st::historyPeer6UserpicBg, st::historyPeer6UserpicBg2 };
|
||||
case Data::CreditsHistoryEntry::PeerType::Unsupported:
|
||||
return {
|
||||
st::historyPeerArchiveUserpicBg,
|
||||
@@ -227,6 +229,8 @@ PaintRoundImageCallback GenerateCreditsPaintUserpicCallback(
|
||||
? st::sessionIconAndroid
|
||||
: (entry.peerType == PeerType::Fragment)
|
||||
? st::introFragmentIcon
|
||||
: (entry.peerType == PeerType::Ads)
|
||||
? st::creditsHistoryEntryTypeAds
|
||||
: st::dialogsInaccessibleUserpic).paintInCenter(p, rect);
|
||||
};
|
||||
}
|
||||
@@ -442,6 +446,8 @@ Fn<PaintRoundImageCallback(Fn<void()>)> PaintPreviewCallback(
|
||||
TextWithEntities GenerateEntryName(const Data::CreditsHistoryEntry &entry) {
|
||||
return ((entry.peerType == Data::CreditsHistoryEntry::PeerType::Fragment)
|
||||
? tr::lng_bot_username_description1_link
|
||||
: (entry.peerType == Data::CreditsHistoryEntry::PeerType::Ads)
|
||||
? tr::lng_credits_box_history_entry_ads
|
||||
: tr::lng_credits_summary_history_entry_inner_in)(
|
||||
tr::now,
|
||||
TextWithEntities::Simple);
|
||||
|
||||
@@ -364,3 +364,4 @@ boostFeatureLink: icon{{ "settings/premium/features/feature_links", windowBgActi
|
||||
boostFeatureName: icon{{ "settings/premium/features/feature_color_names", windowBgActive }};
|
||||
boostFeatureStories: icon{{ "settings/premium/features/feature_stories", windowBgActive }};
|
||||
boostFeatureTranscribe: icon{{ "settings/premium/features/feature_voice", windowBgActive }};
|
||||
boostFeatureOffSponsored: icon{{ "settings/premium/features/feature_off_sponsored", windowBgActive }};
|
||||
|
||||
@@ -1472,7 +1472,8 @@ void Filler::fillArchiveActions() {
|
||||
|
||||
const auto controller = _controller;
|
||||
const auto hidden = controller->session().settings().archiveCollapsed();
|
||||
{
|
||||
const auto inmenu = controller->session().settings().archiveInMainMenu();
|
||||
if (!inmenu) {
|
||||
const auto text = hidden
|
||||
? tr::lng_context_archive_expand(tr::now)
|
||||
: tr::lng_context_archive_collapse(tr::now);
|
||||
@@ -1481,7 +1482,6 @@ void Filler::fillArchiveActions() {
|
||||
controller->session().saveSettingsDelayed();
|
||||
}, hidden ? &st::menuIconExpand : &st::menuIconCollapse);
|
||||
}
|
||||
const auto inmenu = controller->session().settings().archiveInMainMenu();
|
||||
{
|
||||
const auto text = inmenu
|
||||
? tr::lng_context_archive_to_list(tr::now)
|
||||
|
||||
2
Telegram/ThirdParty/libtgvoip
vendored
2
Telegram/ThirdParty/libtgvoip
vendored
Submodule Telegram/ThirdParty/libtgvoip updated: 25facad342...2d25928604
@@ -250,7 +250,7 @@ COPY --link --from=lcms2 {{ LibrariesPath }}/lcms2-cache /
|
||||
COPY --link --from=brotli {{ LibrariesPath }}/brotli-cache /
|
||||
COPY --link --from=highway {{ LibrariesPath }}/highway-cache /
|
||||
|
||||
RUN git clone -b v0.10.2 --depth=1 {{ GIT }}/libjxl/libjxl.git \
|
||||
RUN git clone -b v0.10.3 --depth=1 {{ GIT }}/libjxl/libjxl.git \
|
||||
&& cd libjxl \
|
||||
&& git apply ../patches/libjxl.patch \
|
||||
&& git submodule update --init --recursive --depth=1 third_party/libjpeg-turbo \
|
||||
|
||||
@@ -938,7 +938,7 @@ mac:
|
||||
""")
|
||||
|
||||
stage('libjxl', """
|
||||
git clone -b v0.8.2 --recursive --shallow-submodules https://github.com/libjxl/libjxl.git
|
||||
git clone -b v0.10.3 --recursive --shallow-submodules https://github.com/libjxl/libjxl.git
|
||||
cd libjxl
|
||||
""" + setVar("cmake_defines", """
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
@@ -954,12 +954,10 @@ stage('libjxl', """
|
||||
-DJPEGXL_ENABLE_SJPEG=OFF
|
||||
-DJPEGXL_ENABLE_OPENEXR=OFF
|
||||
-DJPEGXL_ENABLE_SKCMS=ON
|
||||
-DJPEGXL_BUNDLE_SKCMS=ON
|
||||
-DJPEGXL_ENABLE_VIEWERS=OFF
|
||||
-DJPEGXL_ENABLE_TCMALLOC=OFF
|
||||
-DJPEGXL_ENABLE_PLUGINS=OFF
|
||||
-DJPEGXL_ENABLE_COVERAGE=OFF
|
||||
-DJPEGXL_ENABLE_PROFILER=OFF
|
||||
-DJPEGXL_WARNINGS_AS_ERRORS=OFF
|
||||
""") + """
|
||||
win:
|
||||
@@ -967,8 +965,8 @@ win:
|
||||
-A %WIN32X64% ^
|
||||
-DCMAKE_INSTALL_PREFIX=%LIBS_DIR%/local ^
|
||||
-DCMAKE_MSVC_RUNTIME_LIBRARY="MultiThreaded$<$<CONFIG:Debug>:Debug>" ^
|
||||
-DCMAKE_C_FLAGS="/DJXL_STATIC_DEFINE /DJXL_THREADS_STATIC_DEFINE" ^
|
||||
-DCMAKE_CXX_FLAGS="/DJXL_STATIC_DEFINE /DJXL_THREADS_STATIC_DEFINE" ^
|
||||
-DCMAKE_C_FLAGS="/DJXL_STATIC_DEFINE /DJXL_THREADS_STATIC_DEFINE /DJXL_CMS_STATIC_DEFINE" ^
|
||||
-DCMAKE_CXX_FLAGS="/DJXL_STATIC_DEFINE /DJXL_THREADS_STATIC_DEFINE /DJXL_CMS_STATIC_DEFINE" ^
|
||||
-DCMAKE_C_FLAGS_DEBUG="/MTd /Zi /Ob0 /Od /RTC1" ^
|
||||
-DCMAKE_CXX_FLAGS_DEBUG="/MTd /Zi /Ob0 /Od /RTC1" ^
|
||||
-DCMAKE_C_FLAGS_RELEASE="/MT /O2 /Ob2 /DNDEBUG" ^
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
AppVersion 5002002
|
||||
AppVersion 5002003
|
||||
AppVersionStrMajor 5.2
|
||||
AppVersionStrSmall 5.2.2
|
||||
AppVersionStr 5.2.2
|
||||
AppVersionStrSmall 5.2.3
|
||||
AppVersionStr 5.2.3
|
||||
BetaChannel 0
|
||||
AlphaVersion 0
|
||||
AppVersionOriginal 5.2.2
|
||||
AppVersionOriginal 5.2.3
|
||||
|
||||
@@ -134,20 +134,13 @@ PRIVATE
|
||||
)
|
||||
|
||||
if (WIN32)
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
target_compile_options(lib_tgvoip_bundled
|
||||
PRIVATE
|
||||
/wd4005
|
||||
/wd4244 # conversion from 'int' to 'float', possible loss of data (several in webrtc)
|
||||
/wd5055 # operator '>' deprecated between enumerations and floating-point types
|
||||
)
|
||||
else()
|
||||
target_compile_definitions(lib_tgvoip_bundled
|
||||
PUBLIC
|
||||
# Doesn't build with mingw for now
|
||||
TGVOIP_NO_DSP
|
||||
)
|
||||
endif()
|
||||
target_compile_options_if_exists(lib_tgvoip_bundled
|
||||
PRIVATE
|
||||
/wd4005 # 'identifier' : macro redefinition
|
||||
/wd4068 # unknown pragma
|
||||
/wd4996 # deprecated
|
||||
/wd5055 # operator '>' deprecated between enumerations and floating-point types
|
||||
)
|
||||
elseif (APPLE)
|
||||
target_compile_definitions(lib_tgvoip_bundled
|
||||
PUBLIC
|
||||
|
||||
@@ -67,26 +67,30 @@ exit /b %errorlevel%
|
||||
set "CommandPath=%1"
|
||||
set "CommandPathUnix=!CommandPath:\=/!"
|
||||
set "CommandPathWin=!CommandPath:/=\!"
|
||||
|
||||
if "!CommandPathUnix:~-4!" == "_mac" (
|
||||
set "CommandExt=mm"
|
||||
) else (
|
||||
set "CommandExt=cpp"
|
||||
)
|
||||
if "!CommandPathUnix!" == "" (
|
||||
echo Provide source path.
|
||||
exit /b 1
|
||||
) else if exist "SourceFiles\!CommandPathWin!.cpp" (
|
||||
) else if exist "SourceFiles\!CommandPathWin!.!CommandExt!" (
|
||||
echo This source already exists.
|
||||
exit /b 1
|
||||
)
|
||||
echo Generating source !CommandPathUnix!.cpp..
|
||||
mkdir "SourceFiles\!CommandPathWin!.cpp"
|
||||
rmdir "SourceFiles\!CommandPathWin!.cpp"
|
||||
echo Generating source !CommandPathUnix!.!CommandExt!..
|
||||
mkdir "SourceFiles\!CommandPathWin!.!CommandExt!"
|
||||
rmdir "SourceFiles\!CommandPathWin!.!CommandExt!"
|
||||
|
||||
call :write_comment !CommandPathWin!.cpp
|
||||
call :write_comment !CommandPathWin!.!CommandExt!
|
||||
set "quote="""
|
||||
set "quote=!quote:~0,1!"
|
||||
set "source1=#include !quote!!CommandPathUnix!.h!quote!"
|
||||
(
|
||||
echo !source1!
|
||||
echo.
|
||||
)>> "SourceFiles\!CommandPathWin!.cpp"
|
||||
)>> "SourceFiles\!CommandPathWin!.!CommandExt!"
|
||||
exit /b
|
||||
)
|
||||
|
||||
|
||||
Submodule Telegram/lib_base updated: f30400147d...1a50fd2300
Submodule Telegram/lib_storage updated: 0971b69ca9...ccdc72548a
Submodule Telegram/lib_ui updated: ebd8609ee7...96be2a6b72
Submodule Telegram/lib_webrtc updated: f701713cd7...eb94965403
Submodule Telegram/lib_webview updated: 659b918124...363db4e49a
@@ -1,3 +1,8 @@
|
||||
5.2.3 (07.07.24)
|
||||
|
||||
- Fix crash in bot star stats page.
|
||||
- Bug fixes and other minor improvements.
|
||||
|
||||
5.2.2 (02.07.24)
|
||||
|
||||
- Fix topics search in topic groups.
|
||||
|
||||
2
cmake
2
cmake
Submodule cmake updated: 5742caae65...4a4bc4cd34
@@ -237,7 +237,7 @@ parts:
|
||||
libjxl:
|
||||
source: https://github.com/libjxl/libjxl.git
|
||||
source-depth: 1
|
||||
source-tag: v0.10.2
|
||||
source-tag: v0.10.3
|
||||
plugin: cmake
|
||||
build-environment:
|
||||
- LDFLAGS: ${LDFLAGS:+$LDFLAGS} -s
|
||||
|
||||
Reference in New Issue
Block a user