Commit Graph

355 Commits

Author SHA1 Message Date
John Preston 404538c989 Fix build with dummy notifications manager on Linux. 2021-04-29 11:21:57 +04:00
John Preston 2730ab1596 Query Focus Assist state on Windows. 2021-04-23 08:04:43 +04:00
John Preston 1342077dcb Use 48 bit [User/Chat/Channel]Id, 56 bit PeerId. 2021-04-09 15:05:00 +04:00
John Preston 0af6c4b0b6 Add local validation for card information. 2021-04-06 18:41:15 +04:00
John Preston 76b4e18518 Port required parts of Stripe SDK to lib_stripe. 2021-04-06 18:41:15 +04:00
John Preston 0d44736575 First full-featured version of payments, no design. 2021-04-06 18:41:15 +04:00
John Preston 4c707bff29 Start proper payments processing. 2021-04-06 18:41:15 +04:00
John Preston c74e240d30 Update lib_webview. 2021-04-06 18:36:09 +04:00
John Preston fd85efa9ba Link Telegram with lib_webview. 2021-04-06 18:36:09 +04:00
Ilya Fedin 85ac983a27 Add MPRIS support 2021-03-18 21:55:06 +03:00
John Preston 84e8053cd0 Move group call menu to a separate module. 2021-03-12 16:58:26 +04:00
John Preston 02e9b8fd18 Support joining to voice chats as a channel. 2021-03-12 16:58:26 +04:00
Ilya Fedin b918170464 Add portal-based open with dialog implementation 2021-03-10 09:46:13 +04:00
Ilya Fedin 8042a83fd2 Move glib usage to glibmm 2021-03-04 12:07:54 +04:00
John Preston 8142acc709 Remove legacy #feed code. 2021-02-25 17:03:51 +04:00
John Preston 467449ac13 When reporting peer allow to select messages first. 2021-02-22 23:42:42 +04:00
John Preston f97064ed37 Add auto-delete control to compose controls. 2021-02-22 23:42:41 +04:00
Ilya Fedin 14b09e88d6 Add DESKTOP_APP_DISABLE_X11_INTEGRATION 2021-02-22 23:39:00 +04:00
Ilya Fedin 15d18077b8 Use new methods from lib_ui 2021-02-19 14:15:09 +04:00
Ilya Fedin f1ee5b5704 Expose gtk integration to lib_base 2021-02-19 12:41:09 +04:00
Ilya Fedin 36acf60f7e Add XDG Desktop Portal based file dialog implementation from Qt
This allows to use portal dialogs more flexibly (e.g. fallback mechanism)
This also allows to have any changes we want for portal dialogs without patchig Qt

No more need to override QT_QPA_PLATFORM to use portal dialogs
2021-02-05 20:23:00 +04:00
John Preston fcdc39c5f9 Add external_xxhash dependency to Telegram project. 2021-01-29 13:56:15 +04:00
23rd 173564bcd5 Added initial implementation of volume menu item in group calls. 2021-01-25 19:15:19 +03:00
23rd 827c950468 Moved common GroupCall structs to separate file. 2021-01-25 19:05:03 +03:00
John Preston 50c07bfc98 Update API scheme, add view link box. 2021-01-25 16:50:58 +04:00
John Preston 97fb310f54 Move CalendarBox and ChooseDateTimeBox to td_ui. 2021-01-25 16:50:56 +04:00
John Preston 40e90af76d Detect tablet mode on Windows 10. 2021-01-25 16:47:41 +04:00
John Preston 7e89ed48c2 Improve permanent link edit design. 2021-01-25 16:47:40 +04:00
John Preston 02ad5f2772 Update API scheme and start invite links. 2021-01-25 16:47:40 +04:00
Ilya Fedin ada22ee6cc Split GTK integration into a singleton 2021-01-22 17:22:37 +04:00
Ilya Fedin 49736cd879 Recreate notification manager on notification service owner change 2021-01-22 17:02:50 +04:00
23rd ad761011d6 Added ability to fetch song cover from external resource. 2021-01-22 16:53:59 +04:00
Ilya Fedin 3b7d5d3c80 Eliminate ifndefs in notifications_manager_linux 2021-01-05 18:16:26 +04:00
Ilya Fedin 99af2a7058 Check for xdg-decoration protocol support on Wayland 2021-01-04 17:08:49 +04:00
Ilya Fedin 28f857f763 Add support for G-S-D's media-keys extension
This fixes media keys handling on (but not limited to, probably):
* GNOME
* Cinnamon
* MATE
* Budgie
* Pantheon (elementaryOS)
* Unity
2020-12-28 17:00:05 +04:00
Ilya Fedin e99558abeb Remove linux LastUserInputTime dependency since it's only in lib_base 2020-12-24 07:47:13 +04:00
Ilya Fedin 596c7892c7 Use desktop-app::external_qt_static_plugins 2020-12-22 17:36:25 +04:00
John Preston 92bc278052 Allow inviting contacts to voice chats. 2020-12-22 12:33:06 +04:00
tux93 823409175e Fix changelog.txt path in generate_appdata_changelog 2020-12-15 18:04:54 +04:00
Ilya Fedin cc35653c2c Add changelog2appdata into cmake build 2020-12-10 13:15:26 +04:00
John Preston abb81c764e Allow discarding group call when leaving. 2020-12-01 09:45:22 +03:00
John Preston 2e62eb1186 Start group call members list. 2020-12-01 09:45:22 +03:00
John Preston 8833d3e45b Add empty group call panel. 2020-12-01 09:45:21 +03:00
John Preston 33941ad1b9 Start group call bar in HistoryWidget. 2020-12-01 09:45:21 +03:00
Ilya Fedin 0563e1f878 Have the wayland build-time toggle affect the native window title 2020-11-17 16:23:54 +03:00
mid-kid 96b2e26f42 Build wayland support optionally 2020-11-17 16:23:54 +03:00
John Preston f04b3da76a Add return from bot switch_pm to Scheduled/Replies. 2020-11-17 12:58:06 +03:00
23rd 7a32d78689 Replaced record circle button with bezier circle. 2020-11-17 12:56:51 +03:00
23rd 112dea8594 Created voice record bar as separated history view class. 2020-11-17 12:56:50 +03:00
23rd 6d775d6f45 Moved structures of compose controls to separated header. 2020-11-17 12:56:50 +03:00
23rd f7c6876e1b Moved history_view_compose_controls to controls folder. 2020-11-17 12:56:50 +03:00
Ilya Fedin b4cb47cf7f Prefer gtk3 headers 2020-11-16 12:37:42 +03:00
John Preston cd5cad72bd Use only shared media code for pinned tracking. 2020-10-30 18:32:20 +03:00
John Preston fc92e3fadd Add pinned messages section. 2020-10-30 18:32:20 +03:00
John Preston 7f956d32a6 Support slot machine game. 2020-10-30 18:32:18 +03:00
John Preston 8b96f4c214 Move Media::Clip::Reader and FileLocation to td_ui. 2020-10-30 18:32:18 +03:00
John Preston 05eb549a3d Move App::roundRect to Ui::FillRoundRect. 2020-10-30 18:32:18 +03:00
John Preston 67290eed58 Use new message bar for pinned message. 2020-10-30 18:32:18 +03:00
John Preston ae298818a8 Implement message bar with animations. 2020-10-30 18:32:17 +03:00
John Preston b9f40e35cd Switch between pinned messages in chat. 2020-10-30 18:32:17 +03:00
John Preston ec35e3f081 Track multiple pinned messages in MessagesList. 2020-10-30 18:32:17 +03:00
23rd 1459e6f38e Moved request for attached stickers to separate file. 2020-10-30 13:18:40 +03:00
Ilya Fedin 143b9682a4 Get rid of lxqt-qtplugin
It is stil impossible to build it statically and it seems that reading icon theme from gtk is pretty enough
2020-10-23 11:24:37 +03:00
Ilya Fedin 654784ce9f Use external_xcb and external_glib 2020-10-16 16:12:38 +03:00
Ilya Fedin 1d24d29afa Little cleanup for Linux platform code & build
CheckCXXSourceCompiles is not needed anymore

Material wayland decorations could be checked just with IsQtPluginsBundled
2020-10-01 16:34:01 +03:00
23rd 6ac5f32796 Moved other authorizations api request to separated file. 2020-09-30 18:48:34 +03:00
John Preston 8634c1f7f3 Move lang keys to td_lang library. 2020-09-30 12:18:52 +03:00
John Preston def1266216 Rename td-specific libs from lib_ to td_. 2020-09-30 10:51:17 +03:00
John Preston e8df47c926 Show send action animations in Replies thread. 2020-09-29 19:03:30 +03:00
John Preston 00cdae0369 Implement replies list request. 2020-09-29 19:03:18 +03:00
Ilya Fedin 2b642d4da9 -Wno-register is defined in options_linux.cmake now 2020-08-30 16:28:50 +04:00
23rd 8a34f29329 Moved toggling of existing media to separate file. 2020-08-19 14:47:25 +03:00
John Preston 57f8b03949 Remove old gtk library linking. 2020-08-18 10:22:51 +04:00
Ilya Fedin 7bb4e5e4a9 Reorder Linux libraries 2020-08-15 17:43:28 +04:00
Ilya Fedin 5dad293335 Add warnings about some build options and environment variables 2020-08-15 17:43:28 +04:00
Ilya Fedin e4ac70090e Use GDBus to send notifications to avoid Q_OBJECT 2020-08-15 17:43:28 +04:00
John Preston d4b8fa70a7 Extract Calls::Userpic and Calls::VideoBubble. 2020-08-11 18:21:40 +04:00
John Preston 12e0399cf4 Add tgcalls library. 2020-08-11 18:21:40 +04:00
John Preston b703f4e555 Fix build on Linux. 2020-08-11 18:21:40 +04:00
John Preston 6d36176a8d Add test implementation of webrtc calls. 2020-08-11 18:21:40 +04:00
John Preston 438a560a79 Link tdesktop with external_webrtc. 2020-08-11 18:21:40 +04:00
23rd edceed28d7 Moved code for send context menu to separate file. 2020-08-11 18:13:40 +04:00
John Preston 3aea9cb3ca Add archive and mute settings editing. 2020-07-25 11:24:37 +04:00
John Preston 638d4d63c5 Update API scheme to layer 115. 2020-07-25 11:24:11 +04:00
Ilya Fedin 385aa3eef7 Remove redudant library order hacks 2020-07-24 09:40:20 +04:00
Ilya Fedin 79e6369e27 Move libatomic link to common_options 2020-07-23 14:29:56 +04:00
Ilya Fedin e4bd89d33e Remove redudant hacks for missed dependencies
27f6c8ce62 and 3194d883d2 added missed pthread dependencies that allows to remove Threads::Threads dependency
2020-07-23 14:29:56 +04:00
Ilya Fedin 2b89700f66 libwayland headers are needed only with Qt < 5.13 2020-07-23 14:29:56 +04:00
Ilya Fedin 841908fe31 Read decoration layout property from gtk 2020-07-23 14:29:56 +04:00
23rd 42e0994581 Moved generating preview text from HistoryWidget to WebPageData. 2020-07-19 19:56:18 +03:00
23rd bb73687fc5 Added api_editing as separate file of API code for edit messages. 2020-07-17 18:22:38 +03:00
23rd c350e33dd8 Moved preparing MTPInputMedia to separate file. 2020-07-17 18:22:37 +03:00
Ilya Fedin ba50393e86 Update icon theme on the fly 2020-07-16 07:07:33 +04:00
23rd d9c566ac44 Added touchbar to media view overlay.
Fixed #7795.
2020-07-15 22:10:06 +04:00
23rd 8de6d0b63b Moved creation of touchbar buttons and sliders to separate file. 2020-07-15 22:10:06 +04:00
23rd 7cc55e24c0 Added touchbar manager. 2020-07-15 22:10:06 +04:00
23rd 199c746216 Added main touchbar. 2020-07-15 22:10:06 +04:00
23rd 2b9cce2f23 Moved touchbar item for text formatting to separate file. 2020-07-15 22:10:06 +04:00
23rd c50df6a6bc Moved touchbar scrubber item for stickers and emoji to separate file. 2020-07-15 22:10:06 +04:00
23rd 54149fb156 Moved panel of pinned dialogs for touchbar to separate file. 2020-07-15 22:10:06 +04:00
23rd 2f964d0415 Refactored and moved to separate file audio player in touchbar. 2020-07-15 22:10:06 +04:00
23rd 0970728273 Added common touchbar utils. 2020-07-15 22:10:06 +04:00
23rd b02dd889e0 Removed old touchbar from MainWindow. 2020-07-15 22:10:06 +04:00
23rd 9445ce4b09 Moved sending of bot's CallbackData and CallbackGame to separate file. 2020-07-14 19:03:41 +04:00
John Preston 2f5cb33bf2 Fix finalizing media in non-active account. 2020-07-14 19:02:27 +04:00
Ilya Fedin 000a7ae28b Choose output folder based on executable name and extension instead of generator name 2020-07-13 09:47:18 +04:00
Ilya Fedin 7d81159ccf Move QTextItemInt symbols to lib_ui 2020-07-13 09:46:15 +04:00
Ilya Fedin b587328fed Add support for custom titlebar on Linux with Qt < 5.15 2020-07-12 23:19:05 +04:00
Ilya Fedin 59b521d666 Implement xcb-based LastUserInputTime method 2020-07-12 22:19:44 +04:00
Ilya Fedin 7ebebc2bc3 Detect OpenAL effects at runtime 2020-07-02 11:30:13 +04:00
John Preston 1a07a388d0 Build window_title_qt only on Linux. 2020-06-29 21:37:56 +04:00
Ilya Fedin 0ede4bba72 Unity doesn't support _NET_WM_MOVERESIZE 2020-06-29 19:17:06 +04:00
Ilya Fedin 5e8e654324 Add cross-platform TitleWidget implementation based on startSystemMove/startSystemResize 2020-06-29 17:04:05 +04:00
Ilya Fedin bb8f9a1b7f Link to gtk3 without QLibrary if DESKTOP_APP_USE_PACKAGED is defined 2020-06-29 16:27:45 +04:00
Ilya Fedin 4922768086 Don't use QLibrary for glib 2020-06-29 16:27:45 +04:00
John Preston 65050bf9dd Move export management to Core::App. 2020-06-25 11:14:05 +04:00
John Preston 51c2bc7349 Create only one EmojiImageLoader to fix a crash. 2020-06-23 21:53:43 +04:00
John Preston 83538675ce Move a lot of settings to Core::Settings. 2020-06-23 21:53:42 +04:00
John Preston 4d6cc58f0d Move session settings to main_session_settings. 2020-06-23 21:53:42 +04:00
John Preston 357caf8007 Keep separate MTP::Config's for separate accounts. 2020-06-23 21:53:41 +04:00
John Preston 6fc5e22882 Allow several accounts in Core::App. 2020-06-23 21:53:40 +04:00
John Preston 3c4e959468 Replace observer_peer with rpl interface. 2020-06-23 21:53:40 +04:00
John Preston 0b028b959b Move updates handling MainWidget -> Api::Updates. 2020-06-23 21:53:39 +04:00
John Preston ad4afe9293 Move session data localstorage -> storage_account. 2020-06-23 21:53:39 +04:00
John Preston fc174f742a Move stickers code to Data::Stickers class. 2020-06-23 21:53:38 +04:00
Ilya Fedin 70acebc1ef Windows build can be built without updater too 2020-06-17 20:33:23 +04:00
John Preston 36fbdfb380 Simplify Image, remove ImageSource. 2020-06-01 18:09:33 +04:00
John Preston 6513422e40 Remove legacy image-related code. 2020-06-01 18:09:33 +04:00
John Preston 803593cd8d Change Stickers::Set from value to object type. 2020-06-01 18:09:33 +04:00
John Preston 64cf0e1a44 Fix caching of sent photos and document previews. 2020-06-01 18:09:32 +04:00
John Preston e27d2bc2d5 Move photo data to Data::PhotoMedia. 2020-06-01 18:09:32 +04:00
John Preston ea4044e38c Use TgVoip interface instead of VoIPController. 2020-06-01 18:09:31 +04:00
John Preston 053eace154 Prepare overview layouts for media clearing. 2020-06-01 18:09:31 +04:00
John Preston 3797753d16 Support different location types for thumbnails. 2020-06-01 18:09:30 +04:00
John Preston 888e42df34 Remove data_document_good_thumbnail module. 2020-06-01 18:09:30 +04:00
John Preston bdd3c51ab8 Move inline thumbnail image to DocumentMedia. 2020-06-01 18:09:30 +04:00
John Preston 7db53599e8 Use Data::DocumentMedia to store good thumbnails. 2020-06-01 18:09:29 +04:00
Ilya Fedin fa4236e9ea Add support for DESKTOP_APP_USE_PACKAGED on macOS 2020-05-25 10:29:40 +04:00
Ilya Fedin e0669e222d Update fcitx5-qt 2020-05-24 11:09:34 +04:00
Ilya Fedin 492dc2568c Add DESKTOP_APP_USE_PACKAGED support for Windows 2020-05-12 17:32:40 +04:00
Ilya Fedin 701e1d7b4d Add fcitx5 support 2020-05-12 09:26:04 +04:00
John Preston 6232dce1a3 Update emoji in the built-in data and sprites. 2020-05-06 19:29:02 +04:00
Ilya Fedin 27f6c8ce62 Move CMAKE_DL_LIBS to libtgvoip cmake file and add missed pthread
Remove unneeded minizip include directory from cmake

Remove unneeded compile definations

Opus is needed only by libtgvoip
2020-05-05 14:31:18 +04:00
Ilya Fedin 3135463017 Add new option to simplify creation of self-contained packages (snap/flatpak/appimage) 2020-05-05 14:31:18 +04:00
John Preston 266c1531ce Display PSA label instead of the proxy sponsor. 2020-04-30 11:35:01 +04:00
Ilya Fedin eac867ce85 Add possibility to enable autoupdate on non-special target 2020-04-10 15:06:09 +04:00
John Preston e8bf5bb5ce Move manage filters to a Settings section. 2020-03-27 20:36:05 +04:00
John Preston c4a0bc1fd5 Allow selecting custom filter icons. 2020-03-27 20:36:04 +04:00
John Preston 9ad5b8ff90 Add special filters icons. 2020-03-27 20:36:04 +04:00
John Preston 55900bbd3d Save pinned chats in filters to server. 2020-03-27 20:36:03 +04:00
John Preston 13fe0b6272 Allow adding chats to filter exceptions. 2020-03-27 20:36:02 +04:00
John Preston b8c11f3d8c Manage filters: delete, add suggested. 2020-03-27 20:36:02 +04:00
John Preston c83e297554 Implement dice media display. 2020-03-27 20:36:02 +04:00
John Preston d4b9b65724 First version of the filters side bar. 2020-03-27 20:36:01 +04:00
John Preston 71f7aae948 Replace dialogs mode with filters. 2020-03-27 20:36:01 +04:00
John Preston 1df1b9fb53 Fix build with external minizip. 2020-03-13 22:53:59 +04:00
Ilya Fedin 229d15c492 Add tag `launchable` into linux appdata 2020-03-13 11:01:54 +04:00
Ilya Fedin 6f1c1fd070 Fix packaged build 2020-02-25 00:50:26 +04:00
23rd 08cd7450ff Added storage/storage_cloud_blob.
- This file is needed to store same code parts related
 to management of dictionaries and emoji sets.
 - Moved extracting of zip files to storage_cloud_blob.
2020-02-24 18:48:33 +03:00
23rd 4b684a4926 Added spellchecker helper for common purposes. 2020-02-24 18:48:33 +03:00
23rd 65a7f2e7d8 Added dictionary management box. 2020-02-24 18:48:33 +03:00
23rd fcb5292a4f Added external_hunspell to CMake build. 2020-02-24 18:48:33 +03:00
John Preston b0e1ae3948 Prepare Data::Histories for requests interdependencies. 2020-02-21 18:48:29 +04:00
Ilya Fedin bbc516cf43 Move TDESKTOP_DISABLE_DBUS_INTEGRATION to cmake_helpers 2020-02-21 18:08:55 +04:00
John Preston c5c77ddb67 Rename Telegram Desktop to Telegram Lite. 2020-02-16 08:39:42 +04:00
John Preston 4544b091a0 Allow rotating content in media viewer. 2020-02-05 19:37:39 +04:00
John Preston 2e1e13b843 Rename mediaview.style to media_view.style. 2020-02-05 18:39:47 +04:00
John Preston ca5c9271a3 First prototype of picture-in-picture player. 2020-02-05 18:39:46 +04:00
Ilya Fedin 3b4dfa1381 Use LXQt's StatusNotifierItem implementation instead of appindicator 2020-02-05 18:38:34 +04:00
John Preston e6cec49646 Fix static libstdc++ linking in Updater.
Fixes #6939.
2020-01-29 14:54:25 +03:00
Nicholas Guriev 07560188cf Perform test for additional libatomic 2020-01-27 19:41:56 +03:00
John Preston f1d155c3f6 Added fireworks animation for right quiz answer. 2020-01-24 17:01:25 +03:00
John Preston 8c11e1724a Move poll results to a Info-like layer. 2020-01-23 10:09:33 +03:00
John Preston 3e0b2f5553 Add PollResultsBox. 2020-01-23 10:09:33 +03:00
Vitaly Zaitsev 59a8acc667 Implemented installation support for GNU/Linux.
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2020-01-22 16:35:35 +03:00
Ilya Fedin 6fdd1389e6 Make packaged build working 2020-01-17 13:34:27 +03:00
John Preston 208b5d7b5b Link libstdc++ statically in Updater.
Fixes #6939.
2020-01-17 10:45:14 +03:00
John Zimmermann 87f44e87cd Cmake: Also use /bin subdir for Ninja if the executable does not have a suffxi (e.g. Linux) 2020-01-17 10:43:40 +03:00
John Preston 100fed3622 Fix build for Linux 32 bit.
Fixes #6921.
2019-12-31 20:20:58 +03:00
John Preston 0693f98107 Fix build on Linux. 2019-12-29 18:57:19 +03:00
John Preston d47c138f23 Save streaming player between message edits. 2019-12-28 17:56:06 +03:00
John Preston a4ea4689a2 Autoplay full-width videos in albums. 2019-12-20 17:13:55 +03:00
23rd eb9c2ce39a Split build types by folders for GCC. 2019-12-19 18:27:52 +03:00
John Preston 2d7adbc68a All players create own Media::Streaming::Instance. 2019-12-11 15:09:21 +03:00
John Preston b73f1be856 Make some video player code reusable. 2019-12-10 15:13:12 +03:00
John Preston 431b7445c3 Allow editing sensitive content filtering. 2019-12-09 15:59:08 +03:00
John Preston cf0ea4a0a1 Read project version from build/version file. 2019-12-06 18:52:44 +03:00
John Preston aea5a8ff76 Respect TDESKTOP_DISABLE_GTK_INTEGRATION. 2019-12-06 17:46:45 +03:00
John Preston fd1a8014c4 Add Packer project to cmake configuration. 2019-12-06 15:47:25 +03:00
John Preston f1877641e5 Closed alpha version 1.9.1.8: Fix macOS build. 2019-12-06 14:22:46 +03:00
John Preston 9310728a11 Fix build on Windows. 2019-12-06 11:39:13 +03:00
John Preston 619dbe9b11 Initial Linux build. 2019-12-04 11:22:11 +03:00
John Preston 01ecd73a62 Implement build for Mac App Store. 2019-11-30 12:04:51 +03:00
John Preston 82f06cee55 Build OS X 10.10-10.11 version with Qt 5.6.2. 2019-11-29 15:10:33 +03:00
John Preston 90de0b687f Use faster style generation and better source groups. 2019-11-29 11:37:29 +03:00
John Preston 5bfb98b70d Initial build with Xcode. 2019-11-25 18:46:02 +03:00
John Preston fe1aacd37b Rename update.cpp to updater_win.cpp. 2019-11-25 18:34:02 +03:00
John Preston 11b02b4f88 Use namespaced library aliases. 2019-11-21 17:43:20 +03:00
John Preston 9e5262008f Add more options. 2019-11-21 14:56:17 +03:00
John Preston e5bd187d4d Use precompiled header from cmake 3.16. 2019-11-18 00:29:03 +03:00