diff options
-rw-r--r-- | .SRCINFO | 2 | ||||
-rw-r--r-- | PKGBUILD | 2 | ||||
-rw-r--r-- | tdesktop.patch | 163 |
3 files changed, 15 insertions, 152 deletions
@@ -70,7 +70,7 @@ pkgbase = kotatogram-desktop sha512sums = 117b0c2bae3d3d3aa94d41382621be4e05c3314a2831dba59e1bcfb443e7b8ff4bcd0403544fa0cb6def85b444146bf59eef9da25f96b041d3ce8f5429b4a867 sha512sums = 087dd821690dfedf1c275f264a0223b123e31ab9ee95050023930470bc9c866958cae00e2fd9132e6f7efbc4f1dfc3fdc20f8fba1fc9472d92bd702eaa60adb0 sha512sums = d5cd7ecb5583258462c21a9ae3d4e8ae8c709d47d7ce2c45f8ae23100d24993398b8372021957b9a4607b3988f366e1c0cf64d724d901cb70212665c481217e9 - sha512sums = c46d8362c01d8b312d20959b13673f3bf1648c3247f554dc1529bd6b1a9e92883995ead2d302defa6e49ca525c49e06c62c97d01e06eb47179351f0497b9bfb6 + sha512sums = 76f0684f0ec1ba9ca5e1be96613033fc77e348e3e51b0be45dc7e7c0d3b66f5d56a913a553cf7dc83f1c7d86fc13b00ce99207e26c3df6302b8c8fe755ad7ad7 sha512sums = be4bac59d0002006bc00ada0f2edff1e5432eb0e34d19ac0bf64983016ee9194386ce35e63aaeb854862696c03e947d6f79d5e1c355e888f2f7f1bab7045e1af sha512sums = b87414ceaae19185a8a5749cea1f6d9f3fc3c69b8dd729e3db8790cde00b987c3c827cd30baf0eac579d1884e34aa2f37bb90778c3c0bc9ca211d75a82891b9d sha512sums = 2c1bb75449b4634befa3edaac5d20e4b29ede21119549d9a3895dda9d4723f618dd950ee32133e04186fa65d07f80081ba3e3d5585209ba9112aa754d06fbb5c @@ -85,7 +85,7 @@ sha512sums=( '117b0c2bae3d3d3aa94d41382621be4e05c3314a2831dba59e1bcfb443e7b8ff4bcd0403544fa0cb6def85b444146bf59eef9da25f96b041d3ce8f5429b4a867' # no-gtk2.patch '087dd821690dfedf1c275f264a0223b123e31ab9ee95050023930470bc9c866958cae00e2fd9132e6f7efbc4f1dfc3fdc20f8fba1fc9472d92bd702eaa60adb0' # Revert-Change-some-private-header-includes.patch 'd5cd7ecb5583258462c21a9ae3d4e8ae8c709d47d7ce2c45f8ae23100d24993398b8372021957b9a4607b3988f366e1c0cf64d724d901cb70212665c481217e9' # Revert-Disable-DemiBold-fallback-for-Semibold.patch - 'c46d8362c01d8b312d20959b13673f3bf1648c3247f554dc1529bd6b1a9e92883995ead2d302defa6e49ca525c49e06c62c97d01e06eb47179351f0497b9bfb6' # tdesktop.patch + '76f0684f0ec1ba9ca5e1be96613033fc77e348e3e51b0be45dc7e7c0d3b66f5d56a913a553cf7dc83f1c7d86fc13b00ce99207e26c3df6302b8c8fe755ad7ad7' # tdesktop.patch 'be4bac59d0002006bc00ada0f2edff1e5432eb0e34d19ac0bf64983016ee9194386ce35e63aaeb854862696c03e947d6f79d5e1c355e888f2f7f1bab7045e1af' # tdesktop_lottie_animation_qtdebug.patch 'b87414ceaae19185a8a5749cea1f6d9f3fc3c69b8dd729e3db8790cde00b987c3c827cd30baf0eac579d1884e34aa2f37bb90778c3c0bc9ca211d75a82891b9d' # tg.protocol '2c1bb75449b4634befa3edaac5d20e4b29ede21119549d9a3895dda9d4723f618dd950ee32133e04186fa65d07f80081ba3e3d5585209ba9112aa754d06fbb5c' # Use-system-wide-font.patch diff --git a/tdesktop.patch b/tdesktop.patch index 5398684eb439..48c699685740 100644 --- a/tdesktop.patch +++ b/tdesktop.patch @@ -1,135 +1,30 @@ diff --git a/Telegram/SourceFiles/core/launcher.cpp b/Telegram/SourceFiles/core/launcher.cpp -index 7768510a0..1e4447c5b 100644 +index 7768510a0..a832d023f 100644 --- a/Telegram/SourceFiles/core/launcher.cpp +++ b/Telegram/SourceFiles/core/launcher.cpp -@@ -278,6 +278,19 @@ int Launcher::exec() { +@@ -278,6 +278,13 @@ int Launcher::exec() { Platform::start(); Ui::DisableCustomScaling(); + // I don't know why path is not in QT_PLUGIN_PATH by default + QCoreApplication::addLibraryPath("/usr/lib/qt/plugins"); + // without this Telegram doesn't start on Ubuntu 17.04 due GTK errors -+ setenv("QT_STYLE_OVERRIDE", "qwerty", false); ++ setenv("QT_STYLE_OVERRIDE", "breeze", false); + // Telegram doesn't start when extraordinary theme is set, see launchpad.net/bugs/1680943 + unsetenv("QT_QPA_PLATFORMTHEME"); + -+ // unset QT screen scale related envvars -+ unsetenv("QT_SCREEN_SCALE_FACTORS"); -+ unsetenv("QT_AUTO_SCREEN_SCALE_FACTOR"); -+ unsetenv("QT_SCALE_FACTOR"); -+ unsetenv("QT_DEVICE_PIXEL_RATIO"); -+ auto result = executeApplication(); DEBUG_LOG(("Kotatogram finished, result: %1").arg(result)); -diff --git a/Telegram/SourceFiles/qt_functions.cpp b/Telegram/SourceFiles/qt_functions.cpp -new file mode 100644 -index 000000000..4a722b8d7 ---- /dev/null -+++ b/Telegram/SourceFiles/qt_functions.cpp -@@ -0,0 +1,94 @@ -+/**************************************************************************** -+** -+** Copyright (C) 2015 The Qt Company Ltd. -+** Contact: http://www.qt.io/licensing/ -+** -+** This file contains some parts of the Qt Toolkit. -+** -+** $QT_BEGIN_LICENSE:LGPL21$ -+** Commercial License Usage -+** Licensees holding valid commercial Qt licenses may use this file in -+** accordance with the commercial license agreement provided with the -+** Software or, alternatively, in accordance with the terms contained in -+** a written agreement between you and The Qt Company. For licensing terms -+** and conditions see http://www.qt.io/terms-conditions. For further -+** information use the contact form at http://www.qt.io/contact-us. -+** -+** GNU Lesser General Public License Usage -+** Alternatively, this file may be used under the terms of the GNU Lesser -+** General Public License version 2.1 or version 3 as published by the Free -+** Software Foundation and appearing in the file LICENSE.LGPLv21 and -+** LICENSE.LGPLv3 included in the packaging of this file. Please review the -+** following information to ensure the GNU Lesser General Public License -+** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -+** -+** As a special exception, The Qt Company gives you certain additional -+** rights. These rights are described in The Qt Company LGPL Exception -+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -+** -+** $QT_END_LICENSE$ -+** -+****************************************************************************/ -+ -+/* TODO: find a dynamic library with these symbols. */ -+ -+/* Debian maintainer: this function is taken from qfiledialog.cpp */ -+/* -+ Makes a list of filters from ;;-separated text. -+ Used by the mac and windows implementations -+*/ -+QStringList qt_make_filter_list(const QString &filter) -+{ -+ QString f(filter); -+ -+ if (f.isEmpty()) -+ return QStringList(); -+ -+ QString sep(QLatin1String(";;")); -+ int i = f.indexOf(sep, 0); -+ if (i == -1) { -+ if (f.indexOf(QLatin1Char('\n'), 0) != -1) { -+ sep = QLatin1Char('\n'); -+ i = f.indexOf(sep, 0); -+ } -+ } -+ -+ return f.split(sep); -+} -+ -+/* Debian maintainer: this constructor is taken from qtextengine.cpp for TextPainter::drawLine */ -+QTextItemInt::QTextItemInt(const QGlyphLayout &g, QFont *font, const QChar *chars_, int numChars, QFontEngine *fe, const QTextCharFormat &format) -+ : flags(0), justified(false), underlineStyle(QTextCharFormat::NoUnderline), charFormat(format), -+ num_chars(numChars), chars(chars_), logClusters(0), f(font), glyphs(g), fontEngine(fe) -+{ -+} -+ -+/* Debian maintainer: this method is also taken from qtextengine.cpp */ -+// Fix up flags and underlineStyle with given info -+void QTextItemInt::initWithScriptItem(const QScriptItem &si) -+{ -+ // explicitly initialize flags so that initFontAttributes can be called -+ // multiple times on the same TextItem -+ flags = 0; -+ if (si.analysis.bidiLevel %2) -+ flags |= QTextItem::RightToLeft; -+ ascent = si.ascent; -+ descent = si.descent; -+ -+ if (charFormat.hasProperty(QTextFormat::TextUnderlineStyle)) { -+ underlineStyle = charFormat.underlineStyle(); -+ } else if (charFormat.boolProperty(QTextFormat::FontUnderline) -+ || f->d->underline) { -+ underlineStyle = QTextCharFormat::SingleUnderline; -+ } -+ -+ // compat -+ if (underlineStyle == QTextCharFormat::SingleUnderline) -+ flags |= QTextItem::Underline; -+ -+ if (f->d->overline || charFormat.fontOverline()) -+ flags |= QTextItem::Overline; -+ if (f->d->strikeOut || charFormat.fontStrikeOut()) -+ flags |= QTextItem::StrikeOut; -+} diff --git a/Telegram/SourceFiles/qt_static_plugins.cpp b/Telegram/SourceFiles/qt_static_plugins.cpp -index cc1a767cf..be47222bc 100644 +index cc1a767cf..c71c8e8af 100644 --- a/Telegram/SourceFiles/qt_static_plugins.cpp +++ b/Telegram/SourceFiles/qt_static_plugins.cpp -@@ -20,13 +20,4 @@ Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin) +@@ -19,14 +19,4 @@ Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin) + #elif defined Q_OS_MAC // Q_OS_WIN Q_IMPORT_PLUGIN(QCocoaIntegrationPlugin) Q_IMPORT_PLUGIN(QGenericEnginePlugin) - #elif defined Q_OS_LINUX // Q_OS_WIN | Q_OS_MAC +-#elif defined Q_OS_LINUX // Q_OS_WIN | Q_OS_MAC -Q_IMPORT_PLUGIN(QXcbIntegrationPlugin) -Q_IMPORT_PLUGIN(QConnmanEnginePlugin) -Q_IMPORT_PLUGIN(QGenericEnginePlugin) @@ -139,7 +34,8 @@ index cc1a767cf..be47222bc 100644 -Q_IMPORT_PLUGIN(QFcitxPlatformInputContextPlugin) -Q_IMPORT_PLUGIN(QHimePlatformInputContextPlugin) -Q_IMPORT_PLUGIN(NimfInputContextPlugin) - #endif // Q_OS_WIN | Q_OS_MAC | Q_OS_LINUX +-#endif // Q_OS_WIN | Q_OS_MAC | Q_OS_LINUX ++#endif // Q_OS_WIN | Q_OS_MAC Submodule Telegram/gyp/helpers contains modified content diff --git a/Telegram/gyp/helpers/PrecompiledHeader.cmake b/Telegram/gyp/helpers/PrecompiledHeader.cmake index 9508bd8..15952e5 100644 @@ -410,10 +306,10 @@ index ba6bc45e8..73af2b27d 100644 }], ['<!(pkg-config ayatana-appindicator3-0.1; echo $?) == 0', { 'cflags_cc': [ '<!(pkg-config --cflags ayatana-appindicator3-0.1)' ], diff --git a/Telegram/gyp/telegram/sources.txt b/Telegram/gyp/telegram/sources.txt -index e3ccb66db..7cf07e97e 100644 +index e3ccb66db..a55d5a5a0 100644 --- a/Telegram/gyp/telegram/sources.txt +++ b/Telegram/gyp/telegram/sources.txt -@@ -842,14 +842,7 @@ +@@ -842,15 +842,6 @@ <(src_loc)/settings.cpp <(src_loc)/settings.h @@ -425,10 +321,10 @@ index e3ccb66db..7cf07e97e 100644 -<(minizip_loc)/zip.h -<(minizip_loc)/unzip.c -<(minizip_loc)/unzip.h -+<(src_loc)/qt_functions.cpp - +- platforms: win <(res_loc)/winrc/Telegram.rc + diff --git a/Telegram/gyp/tests/tests.gyp b/Telegram/gyp/tests/tests.gyp index 43ae1d696..05fe0fbba 100644 --- a/Telegram/gyp/tests/tests.gyp @@ -482,36 +378,3 @@ index b9f5692..990e7fa 100644 </qresource> <qresource prefix="/fc"> <file>fc-custom.conf</file> -diff --git a/Telegram/lib_ui/ui/text/text.cpp b/Telegram/lib_ui/ui/text/text.cpp -index 724000b..ec693a1 100644 ---- a/Telegram/lib_ui/ui/text/text.cpp -+++ b/Telegram/lib_ui/ui/text/text.cpp -@@ -1967,11 +1967,11 @@ private: - if (item == -1) - return; - --#ifdef OS_MAC_OLD -+#if defined(OS_MAC_OLD) || QT_VERSION < QT_VERSION_CHECK(5, 6, 0) - auto end = _e->findItem(line.from + line.length - 1); --#else // OS_MAC_OLD -+#else - auto end = _e->findItem(line.from + line.length - 1, item); --#endif // OS_MAC_OLD -+#endif - - auto blockIndex = _lineStartBlock; - auto currentBlock = _t->_blocks[blockIndex].get(); -diff --git a/Telegram/lib_ui/ui/text/text_block.cpp b/Telegram/lib_ui/ui/text/text_block.cpp -index 314adb7..2de07bd 100644 ---- a/Telegram/lib_ui/ui/text/text_block.cpp -+++ b/Telegram/lib_ui/ui/text/text_block.cpp -@@ -333,6 +333,9 @@ TextBlock::TextBlock(const style::font &font, const QString &str, QFixed minResi - - QStackTextEngine engine(part, blockFont->f); - BlockParser parser(&engine, this, minResizeWidth, _from, part); -+ QTextLayout layout(part, blockFont->f); -+ layout.beginLayout(); -+ layout.createLine(); - } - } - |