Commit Graph

542 Commits

Author SHA1 Message Date
John Preston dd81f5d59f Replace base::lambda with shorter term.
base::lambda -> Fn (type alias for std::function).
base::lambda_once -> FnMut (type alias for base::unique_function).
base::lambda_guarded -> crl::guard.
base::lambda_call_type_t -> crl::deduced_call_type.
2018-06-04 18:38:27 +03:00
John Preston 67e698a374 Add support for requesting deep link info.
Also update API scheme.
Also remove auth.checkPhone requests.
2018-06-03 23:16:37 +03:00
John Preston 67ea175fc6 Show choose file box over the passport panel. 2018-06-03 23:16:37 +03:00
John Preston b0a9d26a94 Update API scheme. 2018-06-03 23:16:34 +03:00
John Preston 1392e05ab1 Move all gsl::byte helpers to base/bytes module. 2018-06-03 23:16:34 +03:00
John Preston f633ead3ab First version of IdentityBox with encrypted data. 2018-06-03 23:16:33 +03:00
John Preston e122353bfb Show better information in sessions list. 2018-06-03 23:14:44 +03:00
John Preston b198c9b975 Version 1.3.0.
- Improved censorship circumvention.
- Improved stability when working through proxy servers.
- Save several proxy servers to quickly switch between them.
- Use proxy for calls.
- Emoji and text replacement now happens immediately after typing
(instead of after sending) and can be rolled back using Backspace
or CTRL/CMD + Z. Replacement no longer happens when pasting text.

Added formatting shortcuts. Select text and use:
- CTRL/CMD + B/I for bold and italic
- CTRL/CMD + K to create or edit a custom link
- CTRL/CMD + SHIFT + M for monospace font
- CTRL/CMD + SHIFT + N to clear formatting
2018-06-01 01:02:13 +03:00
John Preston ad12d6cc46 Alpha version 1.2.25.
- Apply markdown formatting (```, `, **, __)
only when sending the message.
- Display connection quality bars in calls.
- Telegram Desktop can update itself through MTProto.
- Bug fixes and other minor improvements.
2018-05-31 23:39:12 +03:00
John Preston 8f63fa71c9 Cache updater username resolve results. 2018-05-30 17:34:21 +03:00
John Preston 267293d21b Closed beta 1.2.24.1. 2018-05-30 01:40:39 +03:00
John Preston 03037121aa Add support for autoupdate through MTProto. 2018-05-30 01:00:36 +03:00
John Preston d257b2ee17 Allow to customize check/load way in autoupdate. 2018-05-30 00:59:03 +03:00
John Preston 08897aa83a Alpha version 1.2.24.
- Add links with custom text from context menu or by Ctrl/Cmd + K.
2018-05-26 18:48:11 +03:00
John Preston cca46448fe Alpha version 1.2.23.
- Apply formatting from input field context menu.
- Apply formatting by hotkeys.
- Bug fixes and other minor improvements.
2018-05-25 23:39:45 +03:00
John Preston 4f7df6987c Alpha version 1.2.22.
- Use markdown in media captions
(**bold**, __italic__, `tag` and ```code```).
- Use emoji replacement in media captions,
group and channel titles and descriptions (:like: etc.)
- Markdown replacement now happens immediately
after typing (instead of after sending) and can be
rolled back using Backspace or Ctrl/Cmd + Z.
Replacement no longer happens when pasting text.
2018-05-24 20:25:05 +03:00
John Preston 678b9a8eb5 Alpha version 1.2.21.
- Support domain names in mtproto proxy.
- Bug fixes and other minor improvements.
2018-05-18 20:36:21 +03:00
John Preston 4478c0a143 Resolve domain names for proxy servers.
Also use dc_id-checked auth key creation.

Fixes #4695.
2018-05-18 10:57:11 +03:00
John Preston df9ec4b466 Alpha version 1.2.20.
- Emoji and text replacements are done while you type the message.
- Revert emoji and text replacements by pressing backspace.
- Disable emoji replacements or suggestions in Settings.
- Some critical bug fixes.
2018-05-13 21:25:31 +03:00
John Preston 0f54315495 Alpha version 1.2.19.
- Enable proxy for calls in Settings.
- Bug fixes and other minor improvements.
2018-05-08 21:09:45 +03:00
John Preston 48c1576d7f Add 'Use proxy for calls' option. 2018-05-07 00:29:53 +03:00
John Preston d2fa8ef0b0 Alpha version 1.2.18: Fix OS X old build. 2018-05-05 22:30:42 +03:00
John Preston 97b576f446 Alpha version 1.2.18.
- Improve working through proxy servers.
- Bug fixes and other minor improvements.
2018-05-05 22:07:05 +03:00
John Preston 1af2769209 Closed beta 1.2.17.4: Fix option lookup. 2018-05-05 21:55:39 +03:00
John Preston ca0f6c7ded Closed beta 1.2.17.3. 2018-05-05 21:55:39 +03:00
John Preston ad1f089802 Read autoupdate prefix from config. 2018-05-05 21:55:38 +03:00
John Preston df4daca15b Display connecting/online proxy state. 2018-05-05 21:55:38 +03:00
John Preston f794d8dbd8 Check proxy availability in ProxiesBox. 2018-05-05 21:55:38 +03:00
John Preston 900d1ddb36 Support multiple proxies in local storage. 2018-05-05 21:55:38 +03:00
John Preston 8e99135f37 Support tg://proxy links. 2018-05-05 21:55:37 +03:00
John Preston 48e913bf2c Use static version map for autoupdates. 2018-05-05 21:55:37 +03:00
John Preston 993cb987a6 Improve autoupdate code, move it from Application. 2018-05-05 21:55:37 +03:00
John Preston 7482025c10 Support work with different dcs on a single IP. 2018-05-05 21:55:37 +03:00
John Preston 4a9db99082 Use application level proxy settings. 2018-05-05 21:55:37 +03:00
John Preston 597a5c9d75 Version 1.2.17: Fix undefined behaviour on exit.
Core::Launcher didn't have virtual destructor it required.
2018-04-08 21:32:48 +04:00
John Preston dd53bd1c55 Version 1.2.16.
- Bug fixes and other minor improvements.
2018-04-07 12:20:46 +04:00
John Preston 9dcfa3ad6e Version 1.2.15.
- Bug fixes and other minor improvements.
2018-03-26 02:02:58 +04:00
John Preston 9aa2831fef Version 1.2.14.
- Discover new stickers.
Type one emoji to see suggestions from popular sticker sets.
Suggestions from your installed sticker sets will come first.
- Search for Stickers. Click on the new search icon
to access your sticker sets or find new ones.
- Quick Reply. Double click near a message for a quick reply.
2018-03-21 18:05:45 +04:00
John Preston 70eb29c1a9 Alpha version 1.2.13.
- Bug fixes and other minor improvements.
2018-03-21 13:46:32 +04:00
John Preston 7691654cb8 Alpha version 1.2.12.
- Bug fixes and other minor improvements.
2018-03-12 00:00:08 +03:00
John Preston 42a7e86e51 Alpha version 1.2.11.
- Bug fixes and other minor improvements.
2018-03-10 00:56:36 +03:00
Marco Trevisan 9dc03c4f0f Linux ARM compile fixes (#4399)
This fixes errors when compiling in ARM
2018-03-09 23:48:47 +03:00
John 73c0c4507a fix build against libressl 2018-03-09 21:12:34 +03:00
John Preston 054459d327 Alpha version 1.2.10.
- Bug fixes and other minor improvements.
2018-03-09 00:26:58 +03:00
John Preston f98fdeab3f Alpha version 1.2.9.
- Quick Reply. Double click near a message for a quick reply.
- Search for Stickers. Click on the new search icon to access
your sticker sets or find new ones.
2018-03-08 01:45:46 +03:00
John Preston 09aba596ac Open t.me/iv links in browser. 2018-03-04 15:52:00 +03:00
John Preston b4581a7bbf Closed beta 1.2.8.11. 2018-02-24 02:47:33 +03:00
John Preston e17dcbb8eb Closed beta 1.2.8.10: API updated to layer 77. 2018-02-21 16:56:43 +03:00
John Preston d5569487a4 Closed beta 1.2.8.9. 2018-02-20 20:55:20 +03:00
John Preston 49d2c97ceb Closed beta 1.2.8.8. 2018-02-16 21:00:19 +03:00
John Preston 98fb874b29 Closed beta 1.2.8.7. 2018-02-13 19:11:32 +03:00
John Preston e1f71d3919 Closed beta 1.2.8.6. 2018-02-10 01:15:16 +03:00
John Preston f23c23f696 Closed beta 1.2.8.5. 2018-02-08 12:20:55 +03:00
John Preston 5a5c5782a9 Replace crl::on_main to InvokeQueued in some cases.
If the event loop is reentered from the call it is unsafe to crl::on_main.
For example NSOpenPanel lags terribly if it is shown from crl::on_main.
2018-02-08 12:20:55 +03:00
John Preston a2a5c30e60 Closed beta 1.2.8.4. 2018-02-08 12:20:55 +03:00
John Preston 3c4c466f8e Add cashtags and bot allowed service messages. 2018-02-08 12:20:55 +03:00
John Preston 11671e85da Add scroll-to-down button to Feed. 2018-02-08 12:20:54 +03:00
John Preston b8614c60f9 Closed beta 1.2.8.3. 2018-02-08 12:20:54 +03:00
John Preston 8bacc74d8b Request dialog list entries when needed.
Also save the original server-side int32 date in HistoryItems.
2018-02-08 12:20:54 +03:00
John Preston d4f4698c69 Closed beta 1.2.8.2. 2018-02-08 12:20:53 +03:00
John Preston 6bb39451ea Closed beta 1.2.8.1. 2018-02-08 12:20:52 +03:00
John Preston fe1a90bd39 Move message context menu to a separate module. 2018-02-08 12:20:52 +03:00
John Preston bee474f6e9 Remove history_item and layout from pch.
Also move some code to separate modules.
Also create history item views by Window::Controller.
2018-02-08 12:20:47 +03:00
John Preston 4740d44159 Make HistoryView::Message a ClickHandlerHost. 2018-02-08 12:20:47 +03:00
John Preston 062b0b2165 Save item views in App::*Item() variables.
Also remove App::contextItem.
Also use owning pointers for history context menus.
2018-02-08 12:20:47 +03:00
John Preston f0b2e445f6 Prepare dialogs to open feeds. 2018-02-08 12:20:46 +03:00
John Preston 6a9556d42c Move non-settings session data to Data::Session.
Rename AuthSessionData to AuthSessionSettings, move data away.
2018-02-08 12:20:46 +03:00
John Preston f88cbf3d4b Fix crash in case of incorrect Text entities. 2018-02-08 12:20:45 +03:00
John Preston 55e56a6788 Alpha version 1.2.8.
- Bug fixes and other minor improvements.
2018-01-03 13:46:01 +03:00
John Preston ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +03:00
John Preston 94cf307ae0 Alpha version 1.2.7.
- Use fast reply button in group chats.
- Select a message you want to reply to
by pressing Ctrl+Up and Ctrl+Down.
2017-12-31 17:55:09 +03:00
John Preston af552fb4c0 Replace base/task_queue with crl. 2017-12-31 00:28:38 +03:00
John Preston 26e023058c Version 1.2.6.
- Grouped Photos. Group media into an album when sharing multiple photos and videos.
Choose the exact order of media you send.
2017-12-30 13:13:48 +03:00
John Preston 719f3428ec Alpha version 1.2.5:
- When viewing a photo from an album, you'll see other pictures
from the same group as thumbnails in the lower part of the screen.
- When composing an album paste additional media from the clipboard.
- Bug fixes and other minor improvements.
2017-12-29 21:21:57 +03:00
John Preston 2df4d19474 Move changelogs from ApiWrap to a separate module. 2017-12-29 21:17:07 +03:00
John Preston 907b6f0a78 Alpha version 1.2.4.
- Group media into an album when sharing multiple photos and videos.
- Bug fixes and other minor improvements.
2017-12-26 19:20:08 +03:00
John Preston ff65daa9fe Remove special case in SendFilesBox for an image. 2017-12-26 19:20:06 +03:00
John Preston 37b018257e Replace some std::shared_ptr with std::unique_ptr. 2017-12-18 14:38:14 +04:00
John Preston 14034c255e Replace QSharedPointer with std::shared_ptr. 2017-12-18 13:07:18 +04:00
John Preston b8204a317d Testing crl (concurrency runtime library). 2017-12-17 23:05:00 +04:00
John Preston defec611e3 Alpha version 1.2.3.
- Several crash fixes.
2017-12-17 12:41:35 +04:00
John Preston b0f191515a Alpha version 1.2.2.
- Grouped photos and videos are displayed as albums.
2017-12-16 20:52:41 +04:00
John Preston 0a4038d061 Fix build with TDESKTOP_DISABLE_CRASH_REPORTS.
Regression was introduced in 97c15865a5.

Fixes #4173.
2017-12-13 00:25:14 +04:00
John Preston 4bab7583ba Version 1.2.1.
- Bug fixes and other minor improvements.
2017-12-12 18:56:38 +04:00
John Preston e998bd0b3f Parse command line natively on Windows.
Use CommandLineToArgvW() so that unicode arguments are preserved.
This will fix path arguments with unicode symbols in them.
2017-12-12 18:56:37 +04:00
John Preston 251176df47 Move relaunch / update logic to Core::Launcher.
Also pass "-workdir" argument through relaunch / update.

Fixes #4149.
2017-12-12 18:56:36 +04:00
John Preston 97c15865a5 Move some code around.
Move logs:SignalHandlers to core/crash_reports:CrashReports.
Move all pre-launch windows to core/crash_report_window module.
Move some global code to core/launcher:Launcher.
It should replace settings / platform_specific module in some way.
2017-12-12 16:47:32 +04:00
John Preston 38f7f48c17 Open links in AboutBox without confirmation.
Fixes #4148.
2017-12-12 12:25:54 +04:00
John Preston 8af058edc9 Version 1.2.0.
- Radically improved navigation. New side panel on the right
with quick access to shared media and group members.
- Saved Messages. Bookmark messages by forwarding them to "Saved
Messages". Access them from the Chats list or from the side menu.
- Pinned Messages. If you are a channel admin, pin messages to
focus your subscribers' attention on important announcements.
- Easily recognize messages from group admins by the new admin badge.
- Also supported clearing history in supergroups and
added a host of minor improvements.
2017-12-10 22:32:08 +04:00
John Preston 534058fe9b Alpha version 1.1.29. 2017-12-09 22:21:38 +04:00
John Preston 452440f50b Alpha version 1.1.28.
- Bug fixes and other minor improvements.
2017-12-09 19:17:23 +04:00
John Preston 32f955404b Alpha version 1.1.27.
- Bookmark messages by forwarding them to "Saved Messages".
Access them from the Chats list or from the side menu.
2017-12-06 19:30:51 +04:00
John Preston 76a716007c Closed beta 1.1.26.2. 2017-12-05 20:49:45 +04:00
John Preston 1a273702d3 Revert closed beta version. 2017-12-04 13:52:22 +04:00
John Preston 4678de0440 Closed beta 1.1.26.1. 2017-12-04 13:51:44 +04:00
John Preston 8668d43032 Alpha version 1.1.26.
- Admin badges in supergroup messages.
- Fix crashing on launch in OS X 10.6.
- Bug fixes and other minor improvements.
2017-12-02 18:55:47 +04:00
John Preston 36fe4ff327 Alpha version 1.1.25.
- Bug fixes and other minor improvements.
2017-11-30 22:34:57 +04:00
John Preston cc1df6a068 Alpha version 1.1.24.
- Radically improved navigation. New side panel on the right
with quick access to shared media and group members.
- Pinned Messages. If you are a channel admin, pin messages
to focus your subscribers' attention on important announcements.
- Also supported clearing history in supergroups and added
a host of minor improvements.
2017-11-29 19:10:03 +04:00
John Preston 88b1552229 Closed beta 1.1.23.12. 2017-11-29 00:01:18 +04:00
John Preston f716041073 Closed beta 1.1.23.11. 2017-11-28 14:05:23 +04:00
John Preston 6a4aa184f3 Closed beta 1.1.23.10. 2017-11-24 21:42:19 +04:00
John Preston 4b1d15f968 Closed beta 1.1.23.9. 2017-11-23 19:46:08 +04:00
John Preston 5063a22155 Closed beta 1.1.23.8. 2017-11-22 18:03:00 +04:00
John Preston 5913e6d187 Closed beta 1.1.23.7. 2017-11-22 15:11:41 +04:00
John Preston 2387b66e86 Allow supergroup members to clear history. 2017-11-22 12:04:24 +04:00
John Preston 6ca105a290 Minimal layer 72 support. 2017-11-20 23:54:05 +04:00
John Preston 3ef0bcc5d5 Closed beta 1.1.23.6. 2017-11-17 22:52:16 +04:00
John Preston 0a5ba3490d Closed beta 1.1.23.5. 2017-11-16 21:20:27 +04:00
John Preston 5a159d0204 Improve string encoding. 2017-11-16 07:59:12 +04:00
John Preston 7db80d20f1 Closed beta 1.1.23.4. 2017-11-16 07:59:12 +04:00
John Preston 8355722f4e Closed beta 1.1.23.3. 2017-11-16 07:59:11 +04:00
John Preston d3c152022c Closed beta 1.1.23.2 2017-11-16 07:59:10 +04:00
John Preston ea0f6b9a12 Use 'if constexpr ()' instead of tag dispatch. 2017-11-16 07:59:05 +04:00
John Preston 21b1ba1f88 Move build to Ubuntu 14.04 and GCC 7.2.
To be able to run on the same distributions as before we need to have
the same GLIBC version dependency as in Ubuntu 12.04, which is 2.15.

For that we need to remove all usages of GLIBC features from 2.16 and above.
Currently there are three methods used, so they're wrapped in a separate
static library, linux_glibc_wraps.

It is a separate library because it must be compiled without '-flto' flag,
otherwise the inline __asm__ is not working and we get unresolved symbols.
2017-11-16 07:59:05 +04:00
John Preston ed061252a5 Move to Xcode 9.0 and fix errors in Clang build. 2017-11-16 07:59:05 +04:00
John Preston 7c4e4d7fa2 Closed beta 1.1.23.1. 2017-11-16 07:59:05 +04:00
John Preston f4d9618487 Improve layer / section exchange for Info. 2017-11-16 07:59:04 +04:00
John Preston f162462111 Move info between Layer and Narrow wrap. 2017-11-16 07:59:03 +04:00
John Preston 41ed2d1b84 New storage for shared media messages index. 2017-11-16 07:59:02 +04:00
John Preston e70052e966 Add piping and on_next, on_error, on_done, start. 2017-11-16 07:59:01 +04:00
John Preston aca957595a Version 1.1.23.
- See the message author photo and name
while searching specific chat messages.
- Fix "Send To" menu action on Windows.
2017-09-05 20:38:38 +03:00
John Preston 710f9d049f Version 1.1.22.
- Bug fixes and other minor improvements.
2017-09-04 15:34:40 +03:00
John Preston 1effaa4e03 Version 1.1.21.
- Bug fixes and other minor improvements.
2017-09-03 23:41:04 +03:00
John Preston 2e374e68c5 Fix working with layers.
Regression was introduced in df64c97.

New base::flags work correctly only if all mutually exclusive flag
values use mutually exclusive bits (a & b == 0 for exclusive (a, b)).

Closes #3856.
2017-09-03 22:49:33 +03:00
John Preston 8f82880b93 Version 1.1.20.
- Groups with unread mentions and replies are now marked
with an '@' badge in the chats list.
- Navigate new mentions and replies in a group
using the new '@' button.
- Mark your stickers as “favorite” to quickly access them
from the redesigned sticker panel.
- Add an official sticker set for your group which all members will
be able to use while chatting in your group (100+ member groups only)
2017-09-03 19:23:50 +03:00
John Preston df64c972d8 Replace QFlags with base::flags. 2017-09-03 15:45:47 +03:00
John Preston ee5c827f26 Closed beta 1.1.19.3. 2017-08-30 19:15:49 +03:00
John Preston 638d64d6f2 Closed beta 1.1.19.2. 2017-08-30 19:15:44 +03:00
John Preston 25ffaaaa2d Replace t_assert() with Assert().
Also use this assertions for Expects(), Ensures() and Unexpected().
2017-08-30 19:15:42 +03:00
John Preston b3da99c302 Replace gsl::not_null<T*> with just not_null<T*>. 2017-08-30 19:15:41 +03:00
John Preston 67bdb4cec8 Closed beta 1.1.19.1. 2017-08-30 19:15:37 +03:00
John Preston f7359093b4 Replace ContactsBox with PeerListBox in two cases.
- View contacts list in PeerListBox.
- Add participants when creating group / channel in PeerListBox.
2017-08-30 19:15:27 +03:00
John Preston 17cef93ac0 Use gsl::finally() instead of base::scope_guard(). 2017-08-30 19:15:26 +03:00
John Preston 7ad21ff713 Move std and gsl includes to precompiled header. 2017-08-25 14:39:33 +03:00
John Preston b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +03:00
John Preston a90a18920b Version 1.1.19.
- Search by messages of specific group members.
- Bug fixes and other minor improvements.
2017-08-01 21:45:04 +03:00
John Preston 9d81ea59dd Attempt to fix an out of memory crash. 2017-08-01 21:14:43 +03:00
John Preston 1b46cec4fb Version 1.1.18.
- Bug fixes and other minor improvements.
2017-07-27 14:26:48 +03:00
John Preston 9194c68bd3 Version 1.1.17.
- Bug fixes and other minor improvements.
2017-07-26 23:47:17 +03:00
John Preston c681f75ad3 Version 1.1.16.
- Autocompletion for emoji. Start typing :e to get suggestions.
- Fixed a bug with forwarding messages.
2017-07-26 15:56:32 +03:00
John Preston 4081ceff22 Version 1.1.15.
— Send **bold** and __italic__ text in your messages.
— Get a share link for posts in public supergroups.
— Quickly share posts from channels and media messages from bots.
— Search large supergroup members by name.
— Search channel members by name for admins.
— Use search in the service actions log.
— Ban supergroup members via the right click menu in the service actions log.
2017-07-23 15:39:32 +03:00
John Preston 9e0ca64e02 Closed beta 1001014001. 2017-07-23 13:30:02 +03:00
John Preston 34d2e78308 Allow to edit Bio in Settings. 2017-07-23 12:34:43 +03:00
John Preston 1618daaeae Alpha 1.1.14.
- Bug fixes and other minor improvements.
2017-07-19 11:35:37 +03:00
John Preston faf090781d No confirmation for known hosts links. 2017-07-15 15:41:15 +03:00
John Preston 58b79ab112 Alpha 1.1.13.
- Various bug fixes.
2017-07-14 15:31:22 +03:00
John Preston 76cafc5059 Alpha 1.1.12.
- Click on forwarded messages bar to change the recipient chat
in case you chose a wrong one first.
- Quickly share posts from channels and media messages from bots.
- Search in supergroup members by name.
- Search in channel members by name if you're a channel admin.
- Copy links to messages in public supergroups.
2017-07-11 20:28:37 +03:00
John Preston f6eccf85dc Alpha 1.1.11.
- Send **bold** and __italic__ text in your messages (in addition
to already supported `monospace` and ```multiline monospace```).
- Search in channel and supergroup admin event log.
- Ban members from right click menu in supergroup admin event log.
2017-07-06 20:11:25 +03:00
John Preston 60d886a59a Version 1.1.10.
- Filter added to channel and supergroup event log.
- Search by username in privacy exceptions editor fixed.
- Adding admins in channels fixed.
2017-07-04 18:32:05 +03:00
John Preston 341b44119f Version 1.1.9.
- Supergroups can now have up to 10.000 members.
- Appoint supergroup admins with granular rights.
Choose who can add users, manage messages, block members,
edit group info & username, add new admins, etc.
- Restrict and ban supergroup members with granular precision.
Read-only bans, GIF & sticker bans, media bans,
temporary bans and restrictions.
- Check the new event log to see all service actions taken by
members and admins of a channel or supergroup in the last 48 hours.
- Toggle night mode in the main menu.
2017-06-30 15:08:29 +03:00