[-- Attachment #1: Type: text/plain, Size: 342 bytes --]
There is a new pull request by Johnnynator against master on the void-packages repository
https://github.com/Johnnynator/void-packages telegram-desktop-2.3.2
https://github.com/void-linux/void-packages/pull/24839
telegram-desktop: update to 2.3.2.
A patch file from https://github.com/void-linux/void-packages/pull/24839.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-telegram-desktop-2.3.2-24839.patch --]
[-- Type: text/x-diff, Size: 7232 bytes --]
From 1ebfa236eaa74a2d3ce9a8e24cfb895a587205fa Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Fri, 11 Sep 2020 23:44:11 +0200
Subject: [PATCH] telegram-desktop: update to 2.3.2.
---
.../patches/Fix_xcb_wayland.patch | 34 +++++++
.../patches/no-webrtc-build.patch | 96 +++++++++++++++++++
srcpkgs/telegram-desktop/template | 8 +-
3 files changed, 132 insertions(+), 6 deletions(-)
create mode 100644 srcpkgs/telegram-desktop/patches/Fix_xcb_wayland.patch
create mode 100644 srcpkgs/telegram-desktop/patches/no-webrtc-build.patch
diff --git a/srcpkgs/telegram-desktop/patches/Fix_xcb_wayland.patch b/srcpkgs/telegram-desktop/patches/Fix_xcb_wayland.patch
new file mode 100644
index 00000000000..e7795176c8a
--- /dev/null
+++ b/srcpkgs/telegram-desktop/patches/Fix_xcb_wayland.patch
@@ -0,0 +1,34 @@
+--- Telegram/SourceFiles/platform/linux/specific_linux.cpp 2020-08-23 15:36:52.000000000 +0200
++++ Telegram/SourceFiles/platform/linux/specific_linux.cpp 2020-09-02 08:38:32.950087151 +0200
+@@ -298,6 +298,20 @@
+ }
+ #endif // !TDESKTOP_DISABLE_GTK_INTEGRATION
+
++bool IsXCBExtensionPresent(
++ xcb_connection_t *connection,
++ xcb_extension_t *ext) {
++ const auto reply = xcb_get_extension_data(
++ connection,
++ ext);
++
++ if (!reply) {
++ return false;
++ }
++
++ return reply->present;
++}
++
+ std::optional<crl::time> XCBLastUserInputTime() {
+ const auto native = QGuiApplication::platformNativeInterface();
+ if (!native) {
+@@ -311,6 +325,10 @@
+ return std::nullopt;
+ }
+
++ if (!IsXCBExtensionPresent(connection, &xcb_screensaver_id)) {
++ return std::nullopt;
++ }
++
+ const auto screen = xcb_setup_roots_iterator(xcb_get_setup(connection)).data;
+ if (!screen) {
+ return std::nullopt;
diff --git a/srcpkgs/telegram-desktop/patches/no-webrtc-build.patch b/srcpkgs/telegram-desktop/patches/no-webrtc-build.patch
new file mode 100644
index 00000000000..3d8ab8f9827
--- /dev/null
+++ b/srcpkgs/telegram-desktop/patches/no-webrtc-build.patch
@@ -0,0 +1,96 @@
+diff --git a/Telegram/SourceFiles/calls/calls_instance.cpp b/Telegram/SourceFiles/calls/calls_instance.cpp
+index e99958109..bb7678d3c 100644
+--- Telegram/SourceFiles/calls/calls_instance.cpp
++++ Telegram/SourceFiles/calls/calls_instance.cpp
+@@ -350,8 +350,11 @@ std::shared_ptr<tgcalls::VideoCaptureInterface> Instance::getVideoCapture() {
+ return result;
+ }
+ auto result = std::shared_ptr<tgcalls::VideoCaptureInterface>(
++ #ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION
+ tgcalls::VideoCaptureInterface::Create(
+- Core::App().settings().callVideoInputDeviceId().toStdString()));
++ Core::App().settings().callVideoInputDeviceId().toStdString())
++ #endif
++ );
+ _videoCapture = result;
+ return result;
+ }
+diff --git Telegram/lib_webrtc/CMakeLists.txt b/CMakeLists.txt
+index 47796f1..1f54c21 100644
+--- Telegram/lib_webrtc/CMakeLists.txt
++++ Telegram/lib_webrtc/CMakeLists.txt
+@@ -14,8 +14,10 @@ target_precompile_headers(lib_webrtc PRIVATE ${src_loc}/webrtc/webrtc_pch.h)
+ nice_target_sources(lib_webrtc ${src_loc}
+ PRIVATE
+ webrtc/webrtc_audio_input_tester.cpp
++ webrtc/webrtc_audio_input_tester_dummy.cpp
+ webrtc/webrtc_audio_input_tester.h
+ webrtc/webrtc_media_devices.cpp
++ webrtc/webrtc_media_devices_dummy.cpp
+ webrtc/webrtc_media_devices.h
+ webrtc/webrtc_video_track.cpp
+ webrtc/webrtc_video_track.h
+@@ -40,10 +42,14 @@ PUBLIC
+ if (DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION)
+ remove_target_sources(lib_webrtc ${src_loc}
+ webrtc/webrtc_video_track.cpp
++ webrtc/webrtc_media_devices.cpp
++ webrtc/webrtc_audio_input_tester.cpp
+ )
+ else()
+ remove_target_sources(lib_webrtc ${src_loc}
+ webrtc/webrtc_video_track_dummy.cpp
++ webrtc/webrtc_media_devices_dummy.cpp
++ webrtc/webrtc_audio_input_tester_dummy.cpp
+ )
+ target_link_libraries(lib_webrtc
+ PRIVATE
+diff --git Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h b/webrtc/webrtc_audio_input_tester.h
+index 1ae8d30..008df7e 100644
+--- Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h
++++ Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester.h
+@@ -20,11 +20,13 @@ public:
+ [[nodiscard]] float getAndResetLevel();
+
+ private:
++#ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION
+ class Impl;
+-
++#endif
+ std::shared_ptr<std::atomic<int>> _maxSample;
++#ifndef DESKTOP_APP_DISABLE_WEBRTC_INTEGRATION
+ crl::object_on_thread<Impl> _impl;
+-
++#endif
+ };
+
+ } // namespace Webrtc
+diff --git Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester_dummy.cpp b/webrtc/webrtc_audio_input_tester_dummy.cpp
+new file mode 100644
+index 0000000..4e47eaa
+--- /dev/null
++++ Telegram/lib_webrtc/webrtc/webrtc_audio_input_tester_dummy.cpp
+@@ -0,0 +1,11 @@
++#include "webrtc/webrtc_audio_input_tester.h"
++
++namespace Webrtc {
++AudioInputTester::AudioInputTester(const QString &deviceId)
++: _maxSample(std::make_shared<std::atomic<int>>(0)) {}
++AudioInputTester::~AudioInputTester() {}
++void AudioInputTester::setDeviceId(const QString &deviceId) {};
++float AudioInputTester::getAndResetLevel() {
++ return _maxSample->exchange(0) / float(INT16_MAX);\
++}
++}
+diff --git Telegram/lib_webrtc/webrtc/webrtc_media_devices_dummy.cpp b/webrtc/webrtc_media_devices_dummy.cpp
+new file mode 100644
+index 0000000..8d5d245
+--- /dev/null
++++ Telegram/lib_webrtc/webrtc/webrtc_media_devices_dummy.cpp
+@@ -0,0 +1,6 @@
++#include "webrtc/webrtc_media_devices.h"
++namespace Webrtc {
++std::vector<VideoInput> GetVideoInputList() { return std::vector<VideoInput>(); };
++std::vector<AudioInput> GetAudioInputList() { return std::vector<AudioInput>(); };
++std::vector<AudioOutput> GetAudioOutputList() { return std::vector<AudioOutput>(); };
++}
diff --git a/srcpkgs/telegram-desktop/template b/srcpkgs/telegram-desktop/template
index cb6c593e019..09ea0a8dbb8 100644
--- a/srcpkgs/telegram-desktop/template
+++ b/srcpkgs/telegram-desktop/template
@@ -1,6 +1,6 @@
# Template file for 'telegram-desktop'
pkgname=telegram-desktop
-version=2.3.0
+version=2.3.2
revision=1
wrksrc="tdesktop-${version}-full"
build_style=cmake
@@ -11,10 +11,6 @@ configure_args="-DTDESKTOP_API_ID=209235
-DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON
-DTDESKTOP_LAUNCHER_BASENAME=org.telegram.desktop.desktop
-DTDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME=ON
- -DTDESKTOP_USE_PACKAGED_TGVOIP=OFF
- -DDESKTOP_APP_USE_PACKAGED_EXPECTED=OFF
- -DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF
- -DDESKTOP_APP_USE_PACKAGED_GSL=OFF
-DDESKTOP_APP_DISABLE_SPELLCHECK=$(vopt_if spellcheck 'false' 'true')
-DDESKTOP_APP_DISABLE_WEBRTC_INTEGRATION=ON"
hostmakedepends="pkg-config qt5-qmake qt5-host-tools python"
@@ -30,7 +26,7 @@ license="GPL-3.0-or-later WITH OpenSSL"
homepage="https://desktop.telegram.org/"
changelog="https://github.com/telegramdesktop/tdesktop/blob/v${version}/changelog.txt"
distfiles="https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz"
-checksum=bc05b13c4cb2137a15d3ecc1c201295bb0020a78c20b8cdaa8856569c625ea79
+checksum=292631bcac4b30f778879ecd2cebf4c6f569ab5be01230c8e62b924b4211a259
build_options="spellcheck"
build_options_default="spellcheck"