Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
bedefaee4d | ||
|
|
5d3b8f02fc | ||
|
|
5120d3ef2c | ||
|
|
82a372873f | ||
|
|
d1d1f83881 | ||
|
|
78c3c86fe6 | ||
|
|
447d4e6c47 | ||
|
|
d0e3d15e8e | ||
|
|
0251f58bf2 | ||
|
|
36997f084a | ||
|
|
942fcb9aae | ||
|
|
6232dce1a3 | ||
|
|
0c0fc46b90 | ||
|
|
dcf737bebe | ||
|
|
919834093e | ||
|
|
99ccd49e13 | ||
|
|
29896b2efd |
30
.github/workflows/issue_closer.yml
vendored
@@ -14,6 +14,22 @@ jobs:
|
||||
echo $tag
|
||||
echo ::set-env name=LATEST_TAG::$tag
|
||||
|
||||
- name: Get the latest macOS version.
|
||||
shell: python
|
||||
run: |
|
||||
import subprocess;
|
||||
from xml.dom import minidom;
|
||||
|
||||
url = "https://osx.telegram.org/updates/versions.xml";
|
||||
subprocess.check_call("wget %s" % url, shell=True);
|
||||
|
||||
xmldoc = minidom.parse('versions.xml');
|
||||
itemlist = xmldoc.getElementsByTagName('enclosure');
|
||||
ver = itemlist[0].attributes['sparkle:shortVersionString'].value;
|
||||
print(ver);
|
||||
|
||||
subprocess.check_call("echo ::set-env name=%s::%s" % ("LATEST_MACOS", ver), shell=True);
|
||||
|
||||
- name: Check a version from an issue.
|
||||
uses: actions/github-script@0.4.0
|
||||
with:
|
||||
@@ -75,10 +91,20 @@ jobs:
|
||||
let issueNum = firstNum(issueVer);
|
||||
let latestNum = firstNum(latestVer);
|
||||
|
||||
if (issueNum <= latestNum && issueNum < 5) {
|
||||
let macos_ver = process.env.LATEST_MACOS;
|
||||
console.log("Telegram for MacOS version from website: " + macos_ver);
|
||||
|
||||
if (issueNum <= latestNum && issueNum < macos_ver) {
|
||||
console.log("Seems the version of this issue is fine!");
|
||||
return;
|
||||
}
|
||||
if (issueNum > macos_ver) {
|
||||
let message = `Seems like it's neither the Telegram Desktop\
|
||||
nor the Telegram for macOS version.
|
||||
`;
|
||||
console.log(message);
|
||||
return;
|
||||
}
|
||||
|
||||
let message = `
|
||||
Sorry, but according to the version you specify in this issue, \
|
||||
@@ -87,7 +113,7 @@ jobs:
|
||||
You can report your issue to [the group](https://t.me/macswift) \
|
||||
or to [the repository of Telegram for macOS](https://github.com/overtake/TelegramSwift).
|
||||
|
||||
If I made a mistake and closed your issue wrongly, please reopen it. Thanks!
|
||||
**If I made a mistake and closed your issue wrongly, please reopen it. Thanks!**
|
||||
`;
|
||||
|
||||
let params = {
|
||||
|
||||
13
.github/workflows/linux.yml
vendored
@@ -335,19 +335,6 @@ jobs:
|
||||
|
||||
sudo cp -R ffmpeg-cache/. /
|
||||
|
||||
- name: PortAudio.
|
||||
run: |
|
||||
cd $LibrariesPath
|
||||
|
||||
git clone https://git.assembla.com/portaudio.git
|
||||
cd portaudio
|
||||
git checkout 396fe4b669
|
||||
./configure
|
||||
make -j$(nproc)
|
||||
sudo make install
|
||||
cd ..
|
||||
rm -rf portaudio
|
||||
|
||||
- name: OpenAL Soft.
|
||||
run: |
|
||||
cd $LibrariesPath
|
||||
|
||||
27
.github/workflows/master_updater.yml
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
name: Master branch updater.
|
||||
|
||||
on:
|
||||
release:
|
||||
types: released
|
||||
|
||||
jobs:
|
||||
updater:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
SKIP: "0"
|
||||
to_branch: "master"
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Push the code to the master branch.
|
||||
run: |
|
||||
url=https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY
|
||||
latest_tag=$(git describe --tags --abbrev=0)
|
||||
echo "Latest tag: $latest_tag"
|
||||
|
||||
git remote set-url origin $url
|
||||
git remote -v
|
||||
git checkout master
|
||||
git merge $latest_tag
|
||||
|
||||
git push origin HEAD:refs/heads/$to_branch
|
||||
echo "Done!"
|
||||
28
README.md
@@ -13,18 +13,27 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
|
||||
|
||||
## Supported systems
|
||||
|
||||
* Windows XP - Windows 10 (**not** RT)
|
||||
* Mac OS X 10.8 - Mac OS X 10.15
|
||||
* Mac OS X 10.6 - Mac OS X 10.7 (separate build)
|
||||
* Ubuntu 12.04 - Ubuntu 20.04
|
||||
* Fedora 22 - Fedora 31
|
||||
* [Snappy](https://snapcraft.io/telegram-desktop)
|
||||
* [Flathub](https://flathub.org/apps/details/org.telegram.desktop)
|
||||
The latest version is available for
|
||||
|
||||
* [Windows 7 and above](https://telegram.org/dl/desktop/win) ([portable](https://telegram.org/dl/desktop/win_portable))
|
||||
* [macOS 10.12 and above](https://telegram.org/dl/desktop/mac)
|
||||
* [OS X 10.10 and 10.11](https://telegram.org/dl/desktop/osx)
|
||||
* [Linux static build for 64 bit](https://telegram.org/dl/desktop/linux) ([32 bit](https://telegram.org/dl/desktop/linux32))
|
||||
* [Snap](https://snapcraft.io/telegram-desktop)
|
||||
* [Flatpak](https://flathub.org/apps/details/org.telegram.desktop)
|
||||
|
||||
## Old system versions
|
||||
|
||||
Version **1.8.15** was the last that supports older systems
|
||||
|
||||
* [Windows XP and Vista](https://updates.tdesktop.com/tsetup/tsetup.1.8.15.exe) ([portable](https://updates.tdesktop.com/tsetup/tportable.1.8.15.zip))
|
||||
* [OS X 10.8 and 10.9](https://updates.tdesktop.com/tmac/tsetup.1.8.15.dmg)
|
||||
* [OS X 10.6 and 10.7](https://updates.tdesktop.com/tmac32/tsetup32.1.8.15.dmg)
|
||||
|
||||
## Third-party
|
||||
|
||||
* Qt 5.12.8 and 5.6.2, slightly patched ([LGPL](http://doc.qt.io/qt-5/lgpl.html))
|
||||
* OpenSSL 1.1.1 ([OpenSSL License](https://www.openssl.org/source/license.html))
|
||||
* Qt 5.12.8, 5.6.2 and 5.3.2 slightly patched ([LGPL](http://doc.qt.io/qt-5/lgpl.html))
|
||||
* OpenSSL 1.1.1 and 1.0.1 ([OpenSSL License](https://www.openssl.org/source/license.html))
|
||||
* zlib 1.2.11 ([zlib License](http://www.zlib.net/zlib_license.html))
|
||||
* LZMA SDK 9.20 ([public domain](http://www.7-zip.org/sdk.html))
|
||||
* liblzma ([public domain](http://tukaani.org/xz/))
|
||||
@@ -39,6 +48,7 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
|
||||
* Mapbox Variant ([BSD License](https://github.com/mapbox/variant/blob/master/LICENSE))
|
||||
* Range-v3 ([Boost License](https://github.com/ericniebler/range-v3/blob/master/LICENSE.txt))
|
||||
* Open Sans font ([Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.html))
|
||||
* Vazir font ([License](https://github.com/rastikerdar/vazir-font/blob/master/LICENSE))
|
||||
* Emoji alpha codes ([MIT License](https://github.com/emojione/emojione/blob/master/extras/alpha-codes/LICENSE.md))
|
||||
* Catch test framework ([Boost License](https://github.com/philsquared/Catch/blob/master/LICENSE.txt))
|
||||
* xxHash ([BSD License](https://github.com/Cyan4973/xxHash/blob/dev/LICENSE))
|
||||
|
||||
@@ -1042,6 +1042,8 @@ PRIVATE
|
||||
qrc/emoji_3.qrc
|
||||
qrc/emoji_4.qrc
|
||||
qrc/emoji_5.qrc
|
||||
qrc/emoji_6.qrc
|
||||
qrc/emoji_7.qrc
|
||||
qrc/emoji_preview.qrc
|
||||
qrc/telegram/telegram.qrc
|
||||
qrc/telegram/sounds.qrc
|
||||
|
||||
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.1 MiB |
|
Before Width: | Height: | Size: 1.5 MiB After Width: | Height: | Size: 1.3 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.2 MiB |
|
Before Width: | Height: | Size: 1.6 MiB After Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 894 KiB After Width: | Height: | Size: 1.4 MiB |
BIN
Telegram/Resources/emoji/emoji_6.webp
Normal file
|
After Width: | Height: | Size: 862 KiB |
BIN
Telegram/Resources/emoji/emoji_7.webp
Normal file
|
After Width: | Height: | Size: 98 KiB |
5
Telegram/Resources/qrc/emoji_6.qrc
Normal file
@@ -0,0 +1,5 @@
|
||||
<RCC>
|
||||
<qresource prefix="/gui">
|
||||
<file alias="emoji/emoji_6.webp">../emoji/emoji_6.webp</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
5
Telegram/Resources/qrc/emoji_7.qrc
Normal file
@@ -0,0 +1,5 @@
|
||||
<RCC>
|
||||
<qresource prefix="/gui">
|
||||
<file alias="emoji/emoji_7.webp">../emoji/emoji_7.webp</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
@@ -9,7 +9,7 @@
|
||||
<Identity Name="TelegramMessengerLLP.TelegramDesktop"
|
||||
ProcessorArchitecture="ARCHITECTURE"
|
||||
Publisher="CN=536BC709-8EE1-4478-AF22-F0F0F26FF64A"
|
||||
Version="2.1.2.0" />
|
||||
Version="2.1.3.0" />
|
||||
<Properties>
|
||||
<DisplayName>Telegram Desktop</DisplayName>
|
||||
<PublisherDisplayName>Telegram FZ-LLC</PublisherDisplayName>
|
||||
|
||||
@@ -33,8 +33,8 @@ IDI_ICON1 ICON "..\\art\\icon256.ico"
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 2,1,2,0
|
||||
PRODUCTVERSION 2,1,2,0
|
||||
FILEVERSION 2,1,3,0
|
||||
PRODUCTVERSION 2,1,3,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@@ -51,10 +51,10 @@ BEGIN
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Telegram FZ-LLC"
|
||||
VALUE "FileDescription", "Telegram Desktop"
|
||||
VALUE "FileVersion", "2.1.2.0"
|
||||
VALUE "FileVersion", "2.1.3.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2014-2020"
|
||||
VALUE "ProductName", "Telegram Desktop"
|
||||
VALUE "ProductVersion", "2.1.2.0"
|
||||
VALUE "ProductVersion", "2.1.3.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -24,8 +24,8 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
|
||||
//
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION 2,1,2,0
|
||||
PRODUCTVERSION 2,1,2,0
|
||||
FILEVERSION 2,1,3,0
|
||||
PRODUCTVERSION 2,1,3,0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS 0x1L
|
||||
@@ -42,10 +42,10 @@ BEGIN
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Telegram FZ-LLC"
|
||||
VALUE "FileDescription", "Telegram Desktop Updater"
|
||||
VALUE "FileVersion", "2.1.2.0"
|
||||
VALUE "FileVersion", "2.1.3.0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2014-2020"
|
||||
VALUE "ProductName", "Telegram Desktop"
|
||||
VALUE "ProductVersion", "2.1.2.0"
|
||||
VALUE "ProductVersion", "2.1.3.0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
|
||||
@@ -82,6 +82,7 @@ MTPVector<MTPMessageEntity> EntitiesToMTP(
|
||||
if (entity.length() <= 0) continue;
|
||||
if (option == ConvertOption::SkipLocal
|
||||
&& entity.type() != EntityType::Bold
|
||||
//&& entity.type() != EntityType::Semibold // Not in API.
|
||||
&& entity.type() != EntityType::Italic
|
||||
&& entity.type() != EntityType::Underline
|
||||
&& entity.type() != EntityType::StrikeOut
|
||||
|
||||
@@ -584,5 +584,9 @@ void ChooseRecipientBoxController::rowClicked(not_null<PeerListRow*> row) {
|
||||
|
||||
auto ChooseRecipientBoxController::createRow(
|
||||
not_null<History*> history) -> std::unique_ptr<Row> {
|
||||
return std::make_unique<Row>(history);
|
||||
const auto peer = history->peer;
|
||||
const auto skip = peer->isChannel()
|
||||
&& !peer->isMegagroup()
|
||||
&& !peer->canWrite();
|
||||
return skip ? nullptr : std::make_unique<Row>(history);
|
||||
}
|
||||
|
||||
@@ -40,15 +40,15 @@ inline auto PreviewPath(int i) {
|
||||
|
||||
const auto kSets = {
|
||||
Set{ {0, 0, 0, "Mac"}, PreviewPath(0) },
|
||||
Set{ {1, 246, 7'336'383, "Android"}, PreviewPath(1) },
|
||||
Set{ {2, 206, 5'038'738, "Twemoji"}, PreviewPath(2) },
|
||||
Set{ {3, 238, 6'992'260, "JoyPixels"}, PreviewPath(3) },
|
||||
Set{ {1, 713, 7'313'166, "Android"}, PreviewPath(1) },
|
||||
Set{ {2, 714, 4'690'333, "Twemoji"}, PreviewPath(2) },
|
||||
Set{ {3, 716, 5'968'021, "JoyPixels"}, PreviewPath(3) },
|
||||
};
|
||||
|
||||
using Loading = MTP::DedicatedLoader::Progress;
|
||||
using SetState = BlobState;
|
||||
|
||||
class Loader : public BlobLoader {
|
||||
class Loader final : public BlobLoader {
|
||||
public:
|
||||
Loader(
|
||||
QObject *parent,
|
||||
@@ -60,6 +60,9 @@ public:
|
||||
void destroy() override;
|
||||
void unpack(const QString &path) override;
|
||||
|
||||
private:
|
||||
void fail() override;
|
||||
|
||||
};
|
||||
|
||||
class Inner : public Ui::RpWidget {
|
||||
@@ -155,12 +158,14 @@ bool UnpackSet(const QString &path, const QString &folder) {
|
||||
return UnpackBlob(path, folder, GoodSetPartName);
|
||||
}
|
||||
|
||||
|
||||
Loader::Loader(
|
||||
QObject *parent,
|
||||
int id,
|
||||
MTP::DedicatedLoader::Location location,
|
||||
const QString &folder,
|
||||
int size) : BlobLoader(parent, id, location, folder, size) {
|
||||
int size)
|
||||
: BlobLoader(parent, id, location, folder, size) {
|
||||
}
|
||||
|
||||
void Loader::unpack(const QString &path) {
|
||||
@@ -190,6 +195,11 @@ void Loader::destroy() {
|
||||
SetGlobalLoader(nullptr);
|
||||
}
|
||||
|
||||
void Loader::fail() {
|
||||
ClearNeedSwitchToId();
|
||||
BlobLoader::fail();
|
||||
}
|
||||
|
||||
Inner::Inner(QWidget *parent) : RpWidget(parent) {
|
||||
setupContent();
|
||||
}
|
||||
@@ -401,12 +411,7 @@ void Row::setupHandler() {
|
||||
}
|
||||
|
||||
void Row::load() {
|
||||
SetGlobalLoader(base::make_unique_q<Loader>(
|
||||
App::main(),
|
||||
_id,
|
||||
GetDownloadLocation(_id),
|
||||
internal::SetDataPath(_id),
|
||||
GetDownloadSize(_id)));
|
||||
LoadAndSwitchTo(_id);
|
||||
}
|
||||
|
||||
void Row::setupLabels(const Set &set) {
|
||||
@@ -538,5 +543,20 @@ void ManageSetsBox::prepare() {
|
||||
setDimensionsToContent(st::boxWidth, inner);
|
||||
}
|
||||
|
||||
void LoadAndSwitchTo(int id) {
|
||||
Expects(App::main() != nullptr);
|
||||
|
||||
if (!ranges::contains(kSets, id, &Set::id)) {
|
||||
ClearNeedSwitchToId();
|
||||
return;
|
||||
}
|
||||
SetGlobalLoader(base::make_unique_q<Loader>(
|
||||
App::main(),
|
||||
id,
|
||||
GetDownloadLocation(id),
|
||||
internal::SetDataPath(id),
|
||||
GetDownloadSize(id)));
|
||||
}
|
||||
|
||||
} // namespace Emoji
|
||||
} // namespace Ui
|
||||
|
||||
@@ -21,5 +21,7 @@ protected:
|
||||
|
||||
};
|
||||
|
||||
void LoadAndSwitchTo(int id);
|
||||
|
||||
} // namespace Emoji
|
||||
} // namespace Ui
|
||||
|
||||
@@ -21,6 +21,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
#include "boxes/connection_box.h"
|
||||
#include "boxes/sticker_set_box.h"
|
||||
#include "boxes/sessions_box.h"
|
||||
#include "boxes/language_box.h"
|
||||
#include "passport/passport_form_controller.h"
|
||||
#include "window/window_session_controller.h"
|
||||
#include "data/data_session.h"
|
||||
@@ -101,12 +102,21 @@ bool ShowTheme(
|
||||
return true;
|
||||
}
|
||||
|
||||
void ShowLanguagesBox() {
|
||||
static auto Guard = base::binary_guard();
|
||||
Guard = LanguageBox::Show();
|
||||
}
|
||||
|
||||
bool SetLanguage(
|
||||
Main::Session *session,
|
||||
const Match &match,
|
||||
const QVariant &context) {
|
||||
const auto languageId = match->captured(1);
|
||||
Lang::CurrentCloudManager().switchWithWarning(languageId);
|
||||
if (match->capturedRef(1).isEmpty()) {
|
||||
ShowLanguagesBox();
|
||||
} else {
|
||||
const auto languageId = match->captured(2);
|
||||
Lang::CurrentCloudManager().switchWithWarning(languageId);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -351,6 +361,9 @@ bool ResolveSettings(
|
||||
if (section == qstr("devices")) {
|
||||
Ui::show(Box<SessionsBox>(session));
|
||||
return true;
|
||||
} else if (section == qstr("language")) {
|
||||
ShowLanguagesBox();
|
||||
return true;
|
||||
}
|
||||
const auto type = (section == qstr("folders"))
|
||||
? ::Settings::Type::Folders
|
||||
@@ -441,7 +454,7 @@ const std::vector<LocalUrlHandler> &LocalUrlHandlers() {
|
||||
ShowTheme
|
||||
},
|
||||
{
|
||||
qsl("^setlanguage/?\\?lang=([a-zA-Z0-9\\.\\_\\-]+)(&|$)"),
|
||||
qsl("^setlanguage/?(\\?lang=([a-zA-Z0-9\\.\\_\\-]+))?(&|$)"),
|
||||
SetLanguage
|
||||
},
|
||||
{
|
||||
@@ -481,7 +494,7 @@ const std::vector<LocalUrlHandler> &LocalUrlHandlers() {
|
||||
ResolvePrivatePost
|
||||
},
|
||||
{
|
||||
qsl("^settings(/folders|/devices)?$"),
|
||||
qsl("^settings(/folders|/devices|/language)?$"),
|
||||
ResolveSettings
|
||||
},
|
||||
{
|
||||
|
||||
@@ -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 = 2001002;
|
||||
constexpr auto AppVersionStr = "2.1.2";
|
||||
constexpr auto AppVersion = 2001003;
|
||||
constexpr auto AppVersionStr = "2.1.3";
|
||||
constexpr auto AppBetaVersion = false;
|
||||
constexpr auto AppAlphaVersion = TDESKTOP_ALPHA_VERSION;
|
||||
|
||||
@@ -478,7 +478,7 @@ void InnerWidget::updateEmptyText() {
|
||||
options.flags |= TextParseMarkdown;
|
||||
auto hasSearch = !_searchQuery.isEmpty();
|
||||
auto hasFilter = (_filter.flags != 0) || !_filter.allUsers;
|
||||
auto text = Ui::Text::Bold((hasSearch || hasFilter)
|
||||
auto text = Ui::Text::Semibold((hasSearch || hasFilter)
|
||||
? tr::lng_admin_log_no_results_title(tr::now)
|
||||
: tr::lng_admin_log_no_events_title(tr::now));
|
||||
auto description = hasSearch
|
||||
|
||||
@@ -53,7 +53,7 @@ namespace {
|
||||
auto link = Ui::Text::Link(
|
||||
tr::lng_about_random_send(tr::now).toUpper());
|
||||
link.entities.push_back(
|
||||
EntityInText(EntityType::Bold, 0, link.text.size()));
|
||||
EntityInText(EntityType::Semibold, 0, link.text.size()));
|
||||
config.text.append(' ').append(std::move(link));
|
||||
config.filter = crl::guard(&history->session(), [=](
|
||||
const ClickHandlerPtr &handler,
|
||||
|
||||
@@ -269,7 +269,7 @@ void QrWidget::setupControls() {
|
||||
st::introQrStepMargins);
|
||||
const auto number = Ui::CreateChild<Ui::FlatLabel>(
|
||||
steps,
|
||||
rpl::single(Ui::Text::Bold(QString::number(++index) + ".")),
|
||||
rpl::single(Ui::Text::Semibold(QString::number(++index) + ".")),
|
||||
st::defaultFlatLabel);
|
||||
rpl::combine(
|
||||
number->widthValue(),
|
||||
|
||||
@@ -21,6 +21,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
#include "ui/effects/slide_animation.h"
|
||||
#include "data/data_user.h"
|
||||
#include "data/data_auto_download.h"
|
||||
#include "window/window_controller.h"
|
||||
#include "window/themes/window_theme.h"
|
||||
#include "facades.h"
|
||||
#include "app.h"
|
||||
@@ -140,7 +141,7 @@ void Step::finish(const MTPUser &user, QImage &&photo) {
|
||||
const auto weak = base::make_weak(account.get());
|
||||
account->createSession(user);
|
||||
Local::writeMtpData();
|
||||
App::wnd()->setupMain();
|
||||
App::wnd()->controller().setupMain();
|
||||
|
||||
// "this" is already deleted here by creating the main widget.
|
||||
if (weak && account->sessionExists()) {
|
||||
|
||||
@@ -62,13 +62,13 @@ Instance::Instance() : _inner(new Inner(&_thread)) {
|
||||
|
||||
void Instance::check() {
|
||||
_available = false;
|
||||
if (auto device = alcCaptureOpenDevice(nullptr, kCaptureFrequency, AL_FORMAT_MONO16, kCaptureFrequency / 5)) {
|
||||
auto error = ErrorHappened(device);
|
||||
alcCaptureCloseDevice(device);
|
||||
_available = !error;
|
||||
} else {
|
||||
LOG(("Audio Error: Could not open capture device!"));
|
||||
if (auto device = alcGetString(0, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER)) {
|
||||
if (!QString::fromLocal8Bit(device).isEmpty()) {
|
||||
_available = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
LOG(("Audio Error: No capture device found!"));
|
||||
}
|
||||
|
||||
Instance::~Instance() {
|
||||
|
||||
@@ -544,7 +544,7 @@ void Widget::handleSongChange() {
|
||||
|
||||
textWithEntities.text = name + ' ' + date();
|
||||
textWithEntities.entities.append(EntityInText(
|
||||
EntityType::Bold,
|
||||
EntityType::Semibold,
|
||||
0,
|
||||
name.size(),
|
||||
QString()));
|
||||
@@ -565,7 +565,12 @@ void Widget::handleSongChange() {
|
||||
: TextUtilities::Clean(song->title);
|
||||
auto dash = QString::fromUtf8(" \xe2\x80\x93 ");
|
||||
textWithEntities.text = song->performer + dash + title;
|
||||
textWithEntities.entities.append({ EntityType::Bold, 0, song->performer.size(), QString() });
|
||||
textWithEntities.entities.append({
|
||||
EntityType::Semibold,
|
||||
0,
|
||||
song->performer.size(),
|
||||
QString()
|
||||
});
|
||||
}
|
||||
}
|
||||
_nameLabel->setMarkedText(textWithEntities);
|
||||
|
||||
@@ -55,13 +55,27 @@ TextWithEntities ComposeNameWithEntities(DocumentData *document) {
|
||||
result.text = document->filename().isEmpty()
|
||||
? qsl("Unknown File")
|
||||
: document->filename();
|
||||
result.entities.push_back({ EntityType::Bold, 0, result.text.size() });
|
||||
result.entities.push_back({
|
||||
EntityType::Semibold,
|
||||
0,
|
||||
result.text.size()
|
||||
});
|
||||
} else if (song->performer.isEmpty()) {
|
||||
result.text = song->title;
|
||||
result.entities.push_back({ EntityType::Bold, 0, result.text.size() });
|
||||
result.entities.push_back({
|
||||
EntityType::Semibold,
|
||||
0,
|
||||
result.text.size()
|
||||
});
|
||||
} else {
|
||||
result.text = song->performer + QString::fromUtf8(" \xe2\x80\x93 ") + (song->title.isEmpty() ? qsl("Unknown Track") : song->title);
|
||||
result.entities.push_back({ EntityType::Bold, 0, song->performer.size() });
|
||||
result.text = song->performer
|
||||
+ QString::fromUtf8(" \xe2\x80\x93 ")
|
||||
+ (song->title.isEmpty() ? qsl("Unknown Track") : song->title);
|
||||
result.entities.push_back({
|
||||
EntityType::Semibold,
|
||||
0,
|
||||
song->performer.size()
|
||||
});
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -623,10 +623,6 @@ namespace Platform {
|
||||
void start() {
|
||||
LOG(("Launcher filename: %1").arg(GetLauncherFilename()));
|
||||
|
||||
if (InAppImage()) {
|
||||
qputenv("LIBGL_ALWAYS_INDIRECT", "1");
|
||||
}
|
||||
|
||||
#ifdef TDESKTOP_USE_FONTCONFIG_FALLBACK
|
||||
FallbackFontConfig();
|
||||
#endif // TDESKTOP_USE_FONTCONFIG_FALLBACK
|
||||
|
||||
@@ -40,9 +40,9 @@ bool ExtractZipFile(zlib::FileToRead &zip, const QString path) {
|
||||
} // namespace
|
||||
|
||||
bool UnpackBlob(
|
||||
const QString &path,
|
||||
const QString &folder,
|
||||
Fn<bool(const QString &)> checkNameCallback) {
|
||||
const QString &path,
|
||||
const QString &folder,
|
||||
Fn<bool(const QString &)> checkNameCallback) {
|
||||
const auto bytes = ReadFinalFile(path);
|
||||
if (bytes.isEmpty()) {
|
||||
return false;
|
||||
|
||||
@@ -13,6 +13,8 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
||||
#include "ui/layers/box_content.h"
|
||||
#include "ui/layers/layer_widget.h"
|
||||
#include "ui/toast/toast.h"
|
||||
#include "ui/emoji_config.h"
|
||||
#include "chat_helpers/emoji_sets_manager.h"
|
||||
#include "window/window_session_controller.h"
|
||||
#include "window/themes/window_theme.h"
|
||||
#include "window/themes/window_theme_editor.h"
|
||||
@@ -82,6 +84,10 @@ void Controller::setupIntro() {
|
||||
|
||||
void Controller::setupMain() {
|
||||
_widget.setupMain();
|
||||
|
||||
if (const auto id = Ui::Emoji::NeedToSwitchBackToId()) {
|
||||
Ui::Emoji::LoadAndSwitchTo(id);
|
||||
}
|
||||
}
|
||||
|
||||
void Controller::showSettings() {
|
||||
|
||||
@@ -13,6 +13,12 @@ if [ ! -d "$FullScriptPath/../../../DesktopPrivate" ]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$1" == "request_uuid" ]; then
|
||||
if [ "$2" != "" ]; then
|
||||
NotarizeRequestId="$2"
|
||||
fi
|
||||
fi
|
||||
|
||||
Error () {
|
||||
cd $FullExecPath
|
||||
echo "$1"
|
||||
@@ -260,96 +266,102 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ] || [ "$BuildTarget
|
||||
Error "Backup path not found!"
|
||||
fi
|
||||
|
||||
./configure.sh
|
||||
if [ "$NotarizeRequestId" == "" ]; then
|
||||
./configure.sh
|
||||
|
||||
cd $ProjectPath
|
||||
cmake --build . --config Release --target Telegram
|
||||
cd $ReleasePath
|
||||
cd $ProjectPath
|
||||
cmake --build . --config Release --target Telegram
|
||||
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app" ]; then
|
||||
Error "$BinaryName.app not found!"
|
||||
fi
|
||||
cd $ReleasePath
|
||||
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app.dSYM" ]; then
|
||||
Error "$BinaryName.app.dSYM not found!"
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Frameworks/Updater" ]; then
|
||||
Error "Updater not found!"
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app" ]; then
|
||||
Error "$BinaryName.app not found!"
|
||||
fi
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Helpers/crashpad_handler" ]; then
|
||||
Error "crashpad_handler not found!"
|
||||
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app.dSYM" ]; then
|
||||
Error "$BinaryName.app.dSYM not found!"
|
||||
fi
|
||||
fi
|
||||
if [ "$BuildTarget" == "macstore" ]; then
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app/Contents/Frameworks/Breakpad.framework" ]; then
|
||||
Error "Breakpad.framework not found!"
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Frameworks/Updater" ]; then
|
||||
Error "Updater not found!"
|
||||
fi
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Helpers/crashpad_handler" ]; then
|
||||
Error "crashpad_handler not found!"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "Dumping debug symbols.."
|
||||
"$HomePath/../../Libraries/macos/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "$ReleasePath/$BinaryName.app.dSYM" > "$ReleasePath/$BinaryName.sym" 2>/dev/null
|
||||
echo "Done!"
|
||||
|
||||
echo "Stripping the executable.."
|
||||
strip "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName"
|
||||
echo "Done!"
|
||||
|
||||
echo "Signing the application.."
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
codesign --force --deep --timestamp --options runtime --sign "Developer ID Application: John Preston" "$ReleasePath/$BinaryName.app" --entitlements "$HomePath/Telegram/Telegram.entitlements"
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
codesign --force --deep --sign "3rd Party Mac Developer Application: TELEGRAM MESSENGER LLP (6N38VWS5BX)" "$ReleasePath/$BinaryName.app" --entitlements "$HomePath/Telegram/Telegram Lite.entitlements"
|
||||
echo "Making an installer.."
|
||||
productbuild --sign "3rd Party Mac Developer Installer: TELEGRAM MESSENGER LLP (6N38VWS5BX)" --component "$ReleasePath/$BinaryName.app" /Applications "$ReleasePath/$BinaryName.pkg"
|
||||
fi
|
||||
echo "Done!"
|
||||
|
||||
AppUUID=`dwarfdump -u "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" | awk -F " " '{print $2}'`
|
||||
DsymUUID=`dwarfdump -u "$ReleasePath/$BinaryName.app.dSYM" | awk -F " " '{print $2}'`
|
||||
if [ "$AppUUID" != "$DsymUUID" ]; then
|
||||
Error "UUID of binary '$AppUUID' and dSYM '$DsymUUID' differ!"
|
||||
fi
|
||||
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Resources/Icon.icns" ]; then
|
||||
Error "Icon.icns not found in Resources!"
|
||||
fi
|
||||
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" ]; then
|
||||
Error "$BinaryName not found in MacOS!"
|
||||
fi
|
||||
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app/Contents/_CodeSignature" ]; then
|
||||
Error "$BinaryName signature not found!"
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Frameworks/Updater" ]; then
|
||||
Error "Updater not found in Frameworks!"
|
||||
if [ "$BuildTarget" == "macstore" ]; then
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app/Contents/Frameworks/Breakpad.framework" ]; then
|
||||
Error "Breakpad.framework not found!"
|
||||
fi
|
||||
fi
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
if [ ! -f "$ReleasePath/$BinaryName.pkg" ]; then
|
||||
Error "$BinaryName.pkg not found!"
|
||||
fi
|
||||
fi
|
||||
|
||||
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.sym" | awk -F " " 'END {print $4}'`
|
||||
echo "Copying $BinaryName.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
cp "$ReleasePath/$BinaryName.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/"
|
||||
echo "Done!"
|
||||
echo "Dumping debug symbols.."
|
||||
"$HomePath/../../Libraries/macos/breakpad/src/tools/mac/dump_syms/build/Release/dump_syms" "$ReleasePath/$BinaryName.app.dSYM" > "$ReleasePath/$BinaryName.sym" 2>/dev/null
|
||||
echo "Done!"
|
||||
|
||||
echo "Stripping the executable.."
|
||||
strip "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName"
|
||||
echo "Done!"
|
||||
|
||||
echo "Signing the application.."
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
codesign --force --deep --timestamp --options runtime --sign "Developer ID Application: John Preston" "$ReleasePath/$BinaryName.app" --entitlements "$HomePath/Telegram/Telegram.entitlements"
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
codesign --force --deep --sign "3rd Party Mac Developer Application: Telegram FZ-LLC (C67CF9S4VU)" "$ReleasePath/$BinaryName.app" --entitlements "$HomePath/Telegram/Telegram Lite.entitlements"
|
||||
echo "Making an installer.."
|
||||
productbuild --sign "3rd Party Mac Developer Installer: Telegram FZ-LLC (C67CF9S4VU)" --component "$ReleasePath/$BinaryName.app" /Applications "$ReleasePath/$BinaryName.pkg"
|
||||
fi
|
||||
echo "Done!"
|
||||
|
||||
AppUUID=`dwarfdump -u "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" | awk -F " " '{print $2}'`
|
||||
DsymUUID=`dwarfdump -u "$ReleasePath/$BinaryName.app.dSYM" | awk -F " " '{print $2}'`
|
||||
if [ "$AppUUID" != "$DsymUUID" ]; then
|
||||
Error "UUID of binary '$AppUUID' and dSYM '$DsymUUID' differ!"
|
||||
fi
|
||||
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Resources/Icon.icns" ]; then
|
||||
Error "Icon.icns not found in Resources!"
|
||||
fi
|
||||
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/MacOS/$BinaryName" ]; then
|
||||
Error "$BinaryName not found in MacOS!"
|
||||
fi
|
||||
|
||||
if [ ! -d "$ReleasePath/$BinaryName.app/Contents/_CodeSignature" ]; then
|
||||
Error "$BinaryName signature not found!"
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
if [ ! -f "$ReleasePath/$BinaryName.app/Contents/Frameworks/Updater" ]; then
|
||||
Error "Updater not found in Frameworks!"
|
||||
fi
|
||||
elif [ "$BuildTarget" == "macstore" ]; then
|
||||
if [ ! -f "$ReleasePath/$BinaryName.pkg" ]; then
|
||||
Error "$BinaryName.pkg not found!"
|
||||
fi
|
||||
fi
|
||||
|
||||
SymbolsHash=`head -n 1 "$ReleasePath/$BinaryName.sym" | awk -F " " 'END {print $4}'`
|
||||
echo "Copying $BinaryName.sym to $DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
mkdir -p "$DropboxSymbolsPath/$BinaryName/$SymbolsHash"
|
||||
cp "$ReleasePath/$BinaryName.sym" "$DropboxSymbolsPath/$BinaryName/$SymbolsHash/"
|
||||
echo "Done!"
|
||||
fi
|
||||
|
||||
if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ]; then
|
||||
cd "$ReleasePath"
|
||||
if [ "$AlphaVersion" == "0" ]; then
|
||||
cp -f tsetup_template.dmg tsetup.temp.dmg
|
||||
TempDiskPath=`hdiutil attach -nobrowse -noautoopenrw -readwrite tsetup.temp.dmg | awk -F "\t" 'END {print $3}'`
|
||||
cp -R "./$BinaryName.app" "$TempDiskPath/"
|
||||
bless --folder "$TempDiskPath/" --openfolder "$TempDiskPath/"
|
||||
hdiutil detach "$TempDiskPath"
|
||||
hdiutil convert tsetup.temp.dmg -format UDZO -imagekey zlib-level=9 -ov -o "$SetupFile"
|
||||
rm tsetup.temp.dmg
|
||||
|
||||
if [ "$NotarizeRequestId" == "" ]; then
|
||||
if [ "$AlphaVersion" == "0" ]; then
|
||||
cp -f tsetup_template.dmg tsetup.temp.dmg
|
||||
TempDiskPath=`hdiutil attach -nobrowse -noautoopenrw -readwrite tsetup.temp.dmg | awk -F "\t" 'END {print $3}'`
|
||||
cp -R "./$BinaryName.app" "$TempDiskPath/"
|
||||
bless --folder "$TempDiskPath/" --openfolder "$TempDiskPath/"
|
||||
hdiutil detach "$TempDiskPath"
|
||||
hdiutil convert tsetup.temp.dmg -format UDZO -imagekey zlib-level=9 -ov -o "$SetupFile"
|
||||
rm tsetup.temp.dmg
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$AlphaVersion" != "0" ]; then
|
||||
@@ -366,33 +378,40 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ] || [ "$BuildTarget
|
||||
UpdateFile="${UpdateFile}_${AlphaSignature}"
|
||||
SetupFile="talpha${AlphaVersion}_${AlphaSignature}.zip"
|
||||
|
||||
rm -rf "$ReleasePath/AlphaTemp"
|
||||
mkdir "$ReleasePath/AlphaTemp"
|
||||
mkdir "$ReleasePath/AlphaTemp/$BinaryName"
|
||||
cp -r "$ReleasePath/$BinaryName.app" "$ReleasePath/AlphaTemp/$BinaryName/"
|
||||
cd "$ReleasePath/AlphaTemp"
|
||||
zip -r "$SetupFile" "$BinaryName"
|
||||
mv "$SetupFile" "$ReleasePath/"
|
||||
cd "$ReleasePath"
|
||||
if [ "$NotarizeRequestId" == "" ]; then
|
||||
rm -rf "$ReleasePath/AlphaTemp"
|
||||
mkdir "$ReleasePath/AlphaTemp"
|
||||
mkdir "$ReleasePath/AlphaTemp/$BinaryName"
|
||||
cp -r "$ReleasePath/$BinaryName.app" "$ReleasePath/AlphaTemp/$BinaryName/"
|
||||
cd "$ReleasePath/AlphaTemp"
|
||||
zip -r "$SetupFile" "$BinaryName"
|
||||
mv "$SetupFile" "$ReleasePath/"
|
||||
cd "$ReleasePath"
|
||||
fi
|
||||
fi
|
||||
if [ "$BuildTarget" == "mac" ]; then
|
||||
echo "Beginning notarization process."
|
||||
set +e
|
||||
xcrun altool --notarize-app --primary-bundle-id "com.tdesktop.Telegram" --username "$AC_USERNAME" --password "@keychain:AC_PASSWORD" --file "$SetupFile" > request_uuid.txt
|
||||
set -e
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
Prefix=$(echo $line | cut -d' ' -f 1)
|
||||
Value=$(echo $line | cut -d' ' -f 3)
|
||||
if [ "$Prefix" == "RequestUUID" ]; then
|
||||
RequestUUID=$Value
|
||||
if [ "$NotarizeRequestId" == "" ]; then
|
||||
echo "Beginning notarization process."
|
||||
set +e
|
||||
xcrun altool --notarize-app --primary-bundle-id "com.tdesktop.Telegram" --username "$AC_USERNAME" --password "@keychain:AC_PASSWORD" --file "$SetupFile" > request_uuid.txt
|
||||
set -e
|
||||
while IFS='' read -r line || [[ -n "$line" ]]; do
|
||||
Prefix=$(echo $line | cut -d' ' -f 1)
|
||||
Value=$(echo $line | cut -d' ' -f 3)
|
||||
if [ "$Prefix" == "RequestUUID" ]; then
|
||||
RequestUUID=$Value
|
||||
fi
|
||||
done < "request_uuid.txt"
|
||||
if [ "$RequestUUID" == "" ]; then
|
||||
cat request_uuid.txt
|
||||
Error "Could not extract Request UUID."
|
||||
fi
|
||||
done < "request_uuid.txt"
|
||||
if [ "$RequestUUID" == "" ]; then
|
||||
cat request_uuid.txt
|
||||
Error "Could not extract Request UUID."
|
||||
echo "Request UUID: $RequestUUID"
|
||||
rm request_uuid.txt
|
||||
else
|
||||
RequestUUID=$NotarizeRequestId
|
||||
echo "Continue notarization process with Request UUID: $RequestUUID"
|
||||
fi
|
||||
echo "Request UUID: $RequestUUID"
|
||||
rm request_uuid.txt
|
||||
|
||||
RequestStatus=
|
||||
LogFile=
|
||||
@@ -419,7 +438,7 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ] || [ "$BuildTarget
|
||||
echo "Notarization problems, response:"
|
||||
cat request_result.txt
|
||||
if [ "$LogFile" != "" ]; then
|
||||
echo "Requesting log..."
|
||||
echo "Requesting log: $LogFile"
|
||||
curl $LogFile
|
||||
fi
|
||||
Error "Notarization FAILED."
|
||||
@@ -427,7 +446,7 @@ if [ "$BuildTarget" == "mac" ] || [ "$BuildTarget" == "osx" ] || [ "$BuildTarget
|
||||
rm request_result.txt
|
||||
|
||||
if [ "$LogFile" != "" ]; then
|
||||
echo "Requesting log..."
|
||||
echo "Requesting log: $LogFile"
|
||||
curl $LogFile > request_log.txt
|
||||
fi
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
AppVersion 2001002
|
||||
AppVersion 2001003
|
||||
AppVersionStrMajor 2.1
|
||||
AppVersionStrSmall 2.1.2
|
||||
AppVersionStr 2.1.2
|
||||
AppVersionStrSmall 2.1.3
|
||||
AppVersionStr 2.1.3
|
||||
BetaChannel 0
|
||||
AlphaVersion 0
|
||||
AppVersionOriginal 2.1.2
|
||||
AppVersionOriginal 2.1.3
|
||||
|
||||
@@ -1,3 +1,9 @@
|
||||
2.1.3 (08.05.20)
|
||||
|
||||
- Added support for new emoji.
|
||||
- Channels to which you can't post will no longer be suggested when forwarding.
|
||||
- Improved font selection and bold font support for CJK and Farsi.
|
||||
|
||||
2.1.2 (05.05.20)
|
||||
|
||||
- Fix polls and quizes results viewing.
|
||||
|
||||
@@ -54,7 +54,7 @@ Go to ***BuildPath*** and run
|
||||
|
||||
git clone https://github.com/desktop-app/patches.git
|
||||
cd patches
|
||||
git checkout 10aeaf6
|
||||
git checkout e036126
|
||||
cd ../
|
||||
|
||||
git clone https://github.com/xiph/opus
|
||||
@@ -189,14 +189,6 @@ Go to ***BuildPath*** and run
|
||||
sudo make install
|
||||
cd ..
|
||||
|
||||
git clone https://git.assembla.com/portaudio.git
|
||||
cd portaudio
|
||||
git checkout 396fe4b669
|
||||
./configure
|
||||
make $MAKE_THREADS_CNT
|
||||
sudo make install
|
||||
cd ..
|
||||
|
||||
git clone git://repo.or.cz/openal-soft.git
|
||||
cd openal-soft
|
||||
git checkout openal-soft-1.20.1
|
||||
@@ -244,7 +236,6 @@ Go to ***BuildPath*** and run
|
||||
git submodule update qtsvg
|
||||
cd qtbase
|
||||
git apply ../../patches/qtbase_5_12_8.diff
|
||||
cd src/plugins/platforminputcontexts
|
||||
cd ..
|
||||
|
||||
OPENSSL_DIR=/usr/local/desktop-app/openssl-1.1.1
|
||||
|
||||
@@ -32,7 +32,7 @@ Open **x86 Native Tools Command Prompt for VS 2019.bat**, go to ***BuildPath***
|
||||
cd ThirdParty
|
||||
git clone https://github.com/desktop-app/patches.git
|
||||
cd patches
|
||||
git checkout 10aeaf6
|
||||
git checkout e036126
|
||||
cd ../
|
||||
git clone https://chromium.googlesource.com/external/gyp
|
||||
cd gyp
|
||||
@@ -64,7 +64,7 @@ Open **x86 Native Tools Command Prompt for VS 2019.bat**, go to ***BuildPath***
|
||||
|
||||
git clone https://github.com/desktop-app/patches.git
|
||||
cd patches
|
||||
git checkout 10aeaf6
|
||||
git checkout e036126
|
||||
cd ..
|
||||
|
||||
git clone https://github.com/desktop-app/lzma.git
|
||||
|
||||
@@ -29,7 +29,7 @@ Go to ***BuildPath*** and run
|
||||
|
||||
git clone https://github.com/desktop-app/patches.git
|
||||
cd patches
|
||||
git checkout 10aeaf6
|
||||
git checkout e036126
|
||||
cd ../
|
||||
git clone https://chromium.googlesource.com/external/gyp
|
||||
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
|
||||
@@ -47,7 +47,7 @@ Go to ***BuildPath*** and run
|
||||
|
||||
git clone https://github.com/desktop-app/patches.git
|
||||
cd patches
|
||||
git checkout 10aeaf6
|
||||
git checkout e036126
|
||||
cd ..
|
||||
|
||||
xz_ver=5.2.4
|
||||
|
||||