Compare commits

...

2923 Commits

Author SHA1 Message Date
John Preston
8af684f7f7 Version 1.7.
Introducing Archived Chats:

- Archive any chat from the right-click menu.
- Chats with enabled notifications will pop out of the archive
when a notification arrives.
- Muted chats will stay in the archive.
- Pin an unlimited number of chats in your archive.
2019-05-08 23:55:33 +03:00
John Preston
0fe0311b45 Fix chats list accidental scrolling. 2019-05-08 23:48:04 +03:00
23rd
89a0cd3e81 Fixed closing folder by Escape when opened dialog in one column mode.
Dialog should be opened by shortcut.
2019-05-08 23:47:39 +03:00
John Preston
6de30b1137 Closed alpha version 1.6.7.3. 2019-05-08 12:44:01 +03:00
John Preston
d26924dd6b Allow multiline no-newline input fields.
Fixes poll option limit warning.
2019-05-08 12:36:13 +03:00
John Preston
4293a4857f Show user profile from channel Removed Users.
Fixes #5974.
2019-05-08 12:25:16 +03:00
John Preston
aec6e17b5d Allow revoking any messages in private chats. 2019-05-08 12:14:42 +03:00
John Preston
64dd5139da Show unread archive chat names in bold. 2019-05-08 12:05:15 +03:00
John Preston
e55e46a0f0 Show last chats in archive dialog row. 2019-05-08 11:50:39 +03:00
John Preston
4f65d0469c Use dedicated color for archive title. 2019-05-08 11:07:21 +03:00
John Preston
a0e2a925ee Filter command line arguments passed to Qt.
See https://www.bleepingcomputer.com/news/security/
qt5-based-gui-apps-susceptible-to-remote-code-execution/

This RCE exploit doesn't affect Telegram Desktop directly, because
Telegram Desktop uses statically linked Qt and does not load any
plugins from external shared libraries. But in any case it's better
to control how command line arguments can affect the app behaviour.

For now pass only the first command line part, the executable path.
2019-05-06 12:40:04 +02:00
John Preston
8bfef7d873 Improve collapsed rows in small chats list. 2019-05-03 17:02:00 +04:00
John Preston
2d4a743231 Update some icons. 2019-05-03 15:35:22 +04:00
John Preston
0247e876df Remove locally saved empty histories. 2019-05-03 15:18:18 +04:00
John Preston
39b7f307a4 Show muted mention icon in archive. 2019-05-03 15:12:48 +04:00
John Preston
4356b1c193 Allow collapsing archive in the chats list. 2019-05-03 15:08:53 +04:00
John Preston
6f885fb6cc Fix creating dialog rows for new groups. 2019-05-02 22:30:52 +04:00
John Preston
5f1cb9d31c Put archive action on top of the menu. 2019-05-01 17:10:11 +04:00
John Preston
9b430147c0 Remove some unused langpack keys. 2019-05-01 16:43:37 +04:00
John Preston
4e8c57a861 Fix assertion violation in marking history as read. 2019-05-01 16:43:19 +04:00
John Preston
d9ad3a4bbe Jump to chats list top on folder change. 2019-05-01 16:11:47 +04:00
John Preston
4ad8c4877c Close archive by escape even if chat is shown. 2019-05-01 16:11:47 +04:00
John Preston
edf4180d11 Don't suggest to archive Saved Messages. 2019-05-01 16:11:47 +04:00
John Preston
d48cafe1a3 Improve manage group box styles. 2019-05-01 16:11:47 +04:00
John Preston
aede79640d Ctrl+1..5 always activate pinned from main chats list. 2019-05-01 16:11:47 +04:00
John Preston
4dae89310d In archive allow scroll-down-by-pinned-drag. 2019-05-01 16:11:46 +04:00
John Preston
6102795856 Fix proxy promoted channel chats-list position. 2019-05-01 16:11:46 +04:00
John Preston
7669b8e12b Don't suggest to archive proxy sponsor. 2019-05-01 16:11:45 +04:00
John Preston
5c9a907c88 Closed alpha version 1.6.7.2. 2019-05-01 16:11:45 +04:00
John Preston
116b5d006a Divide public/private phrases for groups/channels. 2019-05-01 16:11:45 +04:00
John Preston
db35c3de3b Fix block chat list loading by date. 2019-05-01 16:11:45 +04:00
John Preston
be64f18e96 Fix dialogs list creation in support mode. 2019-05-01 16:11:45 +04:00
John Preston
39008bf6fe Fix reading of client side unread messages. 2019-05-01 16:11:44 +04:00
John Preston
c9552390e7 Fix stack overflow crash in emoji panel hiding.
A call to hideChildren before setting _hiding to the desired value
could lead through leaveEvent to a recursive call to hideAnimated.
2019-05-01 16:11:44 +04:00
John Preston
5c3f93eee1 Fix crash in replies.
Regression was introduced in b1df3c0ec4.
2019-05-01 16:11:44 +04:00
John Preston
cf0d4a0559 Improve design of video download state. 2019-05-01 16:11:44 +04:00
John Preston
ee5c819cef Fix render glitch in archive top bar. 2019-05-01 16:11:43 +04:00
John Preston
ca548a11d7 Fix assertion violation in History::inboxRead(). 2019-05-01 16:11:43 +04:00
John Preston
0b26475300 Fix render glitches in passcodebox. 2019-05-01 16:11:43 +04:00
John Preston
d74992b85b Closed alpha version 1.6.7.1. 2019-05-01 16:11:42 +04:00
John Preston
08bddc5579 Move messages data to AuthSession. 2019-05-01 16:11:42 +04:00
John Preston
cb3e649e61 Correctly handle cloud archive unread state. 2019-05-01 16:11:42 +04:00
John Preston
accb20a571 Improve archived toast notification. 2019-05-01 16:11:41 +04:00
John Preston
08101ba666 Forbid to archive Telegram Notifications. 2019-05-01 16:11:41 +04:00
John Preston
430a3c2cec Fix important switch hiding in folders. 2019-05-01 16:11:41 +04:00
John Preston
48ad171a29 Clear chats list context menu a bit. 2019-05-01 16:11:41 +04:00
John Preston
5f62c2100c Count unread marks in non-fully loaded folders. 2019-05-01 16:11:40 +04:00
John Preston
4c571f5bff Fix adding first chat to archive. 2019-05-01 16:11:40 +04:00
John Preston
52b9212625 Display top bar in archive. 2019-05-01 16:11:40 +04:00
John Preston
f56df0e1d9 Show folder using slide animation. 2019-05-01 16:11:39 +04:00
John Preston
6dd8f32f66 Fix build on Xcode. 2019-05-01 16:11:39 +04:00
John Preston
5ab1cd405a Fix nice vote percents. 2019-05-01 16:11:39 +04:00
John Preston
3dd2a6bb5b Update archive row on chat list name change. 2019-05-01 16:11:39 +04:00
John Preston
9ff02707bf Improve archive chat list entry layout. 2019-05-01 16:11:38 +04:00
John Preston
2d1dcb36cb Use folder_id / still_unread_count from updates. 2019-05-01 16:11:38 +04:00
John Preston
01d5589594 Add archived results in chats search. 2019-05-01 16:11:38 +04:00
John Preston
40532e32ab Enforce changelog message visibility. 2019-05-01 16:11:38 +04:00
John Preston
ceec71d3e6 Track real latest message in the folder. 2019-05-01 16:11:37 +04:00
John Preston
8fd811517b Count unread correctly in folders. 2019-05-01 16:11:37 +04:00
John Preston
58519300ea Support pinned chats in folders. 2019-05-01 16:11:37 +04:00
John Preston
607655941d Improve Ui::Menu interface. 2019-05-01 16:11:37 +04:00
John Preston
9acdc4eac1 Show folder bar on top when folder is opened. 2019-05-01 16:11:36 +04:00
John Preston
518ff146b2 Don't allow reordering of the archive. 2019-05-01 16:11:36 +04:00
John Preston
74c65f30f7 Load folder dialogs while scrolling. 2019-05-01 16:11:36 +04:00
John Preston
83306bb01f Replace QList with std::deque in notifications. 2019-05-01 16:11:36 +04:00
John Preston
f3ed7a674a Create dialog rows only with known folders. 2019-05-01 16:11:35 +04:00
John Preston
854870683b Add ability to archive/unarchive the chats. 2019-05-01 16:11:35 +04:00
John Preston
c58f097535 Correctly move histories between chat lists. 2019-05-01 16:11:35 +04:00
John Preston
0367319934 Load folder dialogs list. 2019-05-01 16:11:35 +04:00
John Preston
be0cf8d379 Use std::vector in rpl::lifetime. 2019-05-01 16:11:34 +04:00
John Preston
305a611211 Load dialogs list in ApiWrap and Data::Session. 2019-05-01 16:11:34 +04:00
John Preston
927735dff2 Start showing folder chats list. 2019-05-01 16:11:34 +04:00
John Preston
0c0d6bc411 Move chats / contacts lists to Data::Session. 2019-05-01 16:11:33 +04:00
John Preston
2862070348 Use vector instead of custom linked list. 2019-05-01 16:11:20 +04:00
John Preston
58d86af399 Remove SplittedWidget paint optimization.
It doesn't work with dialogs-to-top button anyway.
2019-05-01 16:11:16 +04:00
John Preston
76c3e9a529 Display title and userpic of archived chats. 2019-05-01 16:11:14 +04:00
John Preston
9bf8a8108d Comment out non-folder feed code. 2019-04-25 14:16:30 +04:00
John Preston
905a024aed Update API scheme to layer 99. 2019-04-25 14:16:29 +04:00
23rd
e1000b79a3 Fixed display of file sizes with invalid dimensions when edit media. 2019-04-25 14:11:07 +04:00
John Zimmermann
c2a10f9c56 Linux: manually set desktop file name
resolves #5180
2019-04-25 13:41:19 +04:00
John Zimmermann
4d42e7e5b9 Correctly set _desktopFile to Telegram.desktop if Telegram.desktop was found 2019-04-25 13:39:40 +04:00
Amos Bird
e200a7d502 Do not break type aliasing rule 2019-04-25 13:38:39 +04:00
23rd
55a6e70f74 Updated building-xcode.md. Moved number of threads into variable. 2019-04-24 23:32:50 +03:00
John Preston
6f242f284f Notarize update builds. 2019-04-23 19:24:36 +04:00
John Preston
25471f3952 Add notarization to build script. 2019-04-23 19:24:36 +04:00
John Preston
72690ee106 Enable hardened runtime on macOS build. 2019-04-23 19:24:36 +04:00
John Preston
edc8c23772 Fix custom download path in Mac App Store build.
Fixes #5903.
2019-04-13 19:49:13 +04:00
John Preston
0023fdc707 Version 1.6.7.
- Replace media when editing messages with media content.
- Jump quickly to the top of your chats list.
- Get emoji suggestions for the first word you type in a message.
- Help Telegram improve emoji suggestions in your language
using this interface https://translations.telegram.org/en/emoji
2019-04-13 10:46:58 +04:00
John Preston
2518250ae0 Fix wronly marking channel as forbidden.
Regression was introduced in 826d6011a1.

Fixes #5923.
2019-04-13 10:34:35 +04:00
John Preston
08cd46cd4c Fix crash in streaming caching. 2019-04-12 18:49:37 +04:00
John Preston
12614ab68c Fix possible crash with nullptr screen. 2019-04-12 17:30:43 +04:00
John Preston
7cfb122dea Fix crash with event loop nesting tracking. 2019-04-12 17:30:43 +04:00
John Preston
cc8f4aa24f Fix crash in history clear. 2019-04-12 17:30:42 +04:00
23rd
60e36b1411 Left animation to top only for dialogs up button. 2019-04-12 16:32:36 +04:00
John Preston
8aa0b31c1a Beta version 1.6.6: Fix removing saved peers from chats list.
Regression was introduced in a7f67c4bc9.
2019-04-11 11:46:54 +04:00
John Preston
56b6673e17 Beta version 1.6.6: Fix animations engine. 2019-04-11 10:43:13 +04:00
John Preston
c310cdbb8c Beta version 1.6.6.
- Bug fixes and other minor improvements.
2019-04-11 10:20:30 +04:00
John Preston
71f340d9b5 Revert "Don't restart animations timer."
This reverts commit 392d90dc1d.

Otherwise scrolling while typing animates lags terribly on macOS.
2019-04-11 10:16:02 +04:00
23rd
5187e6dc58 Added display of image dimensions instead of 0 bytes when is doc. 2019-04-11 10:11:09 +04:00
23rd
c21f5712f8 Disabled pasting images with bad size from clipboard for albums.
- Slightly refactored.
2019-04-11 10:10:25 +04:00
23rd
c6eccc655f Disabled sending images with bad size from remoteContent for albums. 2019-04-10 11:40:16 +04:00
23rd
3767483977 Added filename generation when edit media with non-local file. 2019-04-10 11:34:43 +04:00
Vitaly Zaitsev
14ad7a2479 Fixed "Show in Folder" feature on Gnome 3.30+.
Parameter --no-desktop is deprecated and should not be used.

Closes #5896.
2019-04-10 11:20:01 +04:00
23rd
ba8257ce64 Fixed top bar glitch when returning dialog back too fast. 2019-04-09 17:10:58 +03:00
John Preston
9bfa6d7cf4 Make animation tick less, almost like before.
Unfortunately otherwise animations look not smooth.

Fixes #5897.
2019-04-09 17:21:29 +04:00
John Preston
826d6011a1 Mask channel as forbidden on CHANNEL_PRIVATE error.
Fixes #5902.
2019-04-09 17:19:43 +04:00
23rd
fb847135b5 Added ability to edit GIFs.
- Added to Media::Clip::MakeReader new constructor to create
 animated preview with remoteContent.
2019-04-09 17:17:31 +04:00
23rd
49681525ed Added alignment of unread badge with userpic in history widget. 2019-04-09 17:16:46 +04:00
23rd
839feed329 Added delay for clicked callback of edit media button. 2019-04-09 17:15:48 +04:00
John Preston
392d90dc1d Don't restart animations timer. 2019-04-09 17:12:16 +04:00
John Preston
7808620764 Queue only one update call in animations manager. 2019-04-09 17:10:45 +04:00
John Preston
fe3181649b Fix build on macOS and Linux. 2019-04-09 17:10:44 +04:00
John Preston
b5be6df5e2 Copy text with expanded links only to external.
Paste valid custom links in message field if copied from messages.
2019-04-08 19:10:06 +04:00
John Preston
0f0c3b7461 Remove FlatLabel::_contextExpandLinksMode. 2019-04-08 16:22:07 +04:00
John Preston
ff51423125 Remove ExpandLinksNone, rename Text::originalText. 2019-04-08 15:53:11 +04:00
John Preston
cc2fd51097 Fix video thumbnails in video overview. 2019-04-08 14:35:25 +04:00
John Preston
321e4ffe9c Don't auto-resume video when seeking. 2019-04-08 14:34:31 +04:00
John Preston
fb244c00b9 Fix local history clearing. 2019-04-08 13:16:45 +04:00
John Preston
f980023f49 Update Xcode version to 10.2 in GYP script. 2019-04-07 11:18:38 +04:00
John Preston
6c17ed2242 Fix crash in event loop nesting. 2019-04-07 11:18:38 +04:00
23rd
a0926f2d70 Fixed display SendFilesBox via historyAttach button. 2019-04-06 22:15:39 +04:00
John Preston
d9a14e1227 Beta version 1.6.5.
- Bug fixes and other minor improvements.
2019-04-06 12:32:24 +04:00
John Preston
1ab4dbe466 Fix crash in application closing. 2019-04-06 12:12:24 +04:00
23rd
37af963717 Fixed work with _msgIdToEdit in FileLoadTask.
- Added check is allowed media editing in paintEvent.
 - Fixes #5885.
2019-04-06 11:24:11 +04:00
23rd
3744bdcbe7 Fixed redrawing of shadows when box size decreases. 2019-04-06 11:22:31 +04:00
23rd
4ad293e2ae Added alignment of dialogs up button with connecting button. 2019-04-06 11:20:02 +04:00
23rd
be89a0bf7e Fixed dialogs up button when column of dialogs is small. 2019-04-06 11:19:39 +04:00
John Preston
14de1fe485 Fix crash in shared links. 2019-04-05 22:45:57 +04:00
John Preston
bec39d89e1 Beta version 1.6.4: Fix dialogs up button glitch. 2019-04-05 19:52:45 +04:00
23rd
467f1449ab Beta version 1.6.4: Update dialogs up button position when resize. 2019-04-05 18:42:25 +03:00
John Preston
53c659cbda Beta version 1.6.4.
- Replace media when editing messages with media content.
- Jump quickly to the top of your chats list.
- Get emoji suggestions for the first word you type in a message.
- Help Telegram improve emoji suggestions in your language
using this interface https://translations.telegram.org/en/emoji
2019-04-05 15:53:46 +04:00
John Preston
5deee18247 Use channels.exportMessageLink to check links. 2019-04-05 15:50:16 +04:00
John Preston
60a991bcb0 Fix typing / send action updates handling. 2019-04-05 15:17:34 +04:00
John Preston
d3c5ed08ab Add qt_signal_producer.h to git. 2019-04-05 14:41:06 +04:00
John Preston
2bdce7dce6 Fix window activations handling without event loop nesting.
This was causing an assertion violation in Ui::PostponeCall.

- Add a generic Core::QtSignalProducer to convert Qt signals to rpl::producer.
- Track event loop nesting inside QtSignalProducer.
- Use QtSignalProducer for QWindow::activeChanged tracking.
2019-04-05 14:13:54 +04:00
23rd
41b2e7c9c7 Added floating button in dialog list to jump to top. 2019-04-05 14:13:18 +04:00
John Preston
6021923bf1 Closed alpha version 1.6.3.6: Fix instructions. 2019-04-04 21:51:06 +04:00
John Preston
839cedde65 Closed alpha version 1.6.3.6: Update to VS 2019. 2019-04-04 20:51:42 +04:00
23rd
92d10fd34c Redesigned edit media button. Slightly refactored.
- Added minimal height of thumbs.
 - Removed unused _statusw.
2019-04-04 20:51:00 +04:00
23rd
25e0e4b5d3 Fixed edit single media to photo with bad dimensions. 2019-04-04 20:23:44 +04:00
John Preston
43cc2145a8 Don't update radial animations in cycle. 2019-04-04 19:31:07 +04:00
John Preston
c3c46f8e29 Fix new animations engine bug. 2019-04-04 19:31:03 +04:00
John Preston
0744f43a0e Create private channel post links. 2019-04-04 19:31:02 +04:00
John Preston
73470c3a95 Handle private channel post links. 2019-04-04 19:30:59 +04:00
23rd
a6d0fa433e Refactored variables for edit media in HistoryItem.
- Replaced _isLocalUpdateMedia with client flag.
 - Removed _isEditingMedia.
2019-04-04 13:23:14 +03:00
23rd
a9fa49e372 Disabled edit media with gif files. 2019-04-04 11:02:42 +03:00
23rd
2cb69f0c2b Added ability to edit album items with remoteContent. 2019-04-04 11:01:10 +03:00
23rd
1da9bfc643 Removed unnecessary making thumbnail of remoteContent. 2019-04-04 10:13:13 +03:00
23rd
78227cd947 Fixed MIME checking for files when edit media. 2019-04-04 10:13:11 +03:00
John Preston
456a949d01 Fix working with document thumbnails. 2019-04-04 00:08:05 +04:00
John Preston
7f598e358a Fix edit media preview for Retina screen. 2019-04-04 00:08:05 +04:00
John Preston
a058e75a6d Fix crashes on macOS 10.14.4 by disabling GPU switches.
Fixes macOS regression when OpenGL apps crash on GPU switches.
See https://bugreports.qt.io/browse/QTCREATORBUG-22215

Fixes #5858.
2019-04-04 00:08:05 +04:00
23rd
48362cd4bc Added more appropriate phrase for invalid files in edit media. 2019-04-03 20:08:27 +03:00
23rd
bd653dfdff Refactored ApiWrap.
- Joined editUploadedPhoto with editUploadedDocument.
2019-04-03 20:00:12 +03:00
John Preston
bc03c80d8d Closed alpha version 1.6.3.6. 2019-04-03 16:57:49 +04:00
John Preston
2dcbe15f8b Ignore tab key in emoji suggestions for Support mode. 2019-04-03 16:57:48 +04:00
John Preston
b364cbbd69 Improve support accounts presentation.
- Change "Bot Info" to "User Info".
- Remove "Block user" and "Add to Group" buttons from profile page.
- Allow revoking messages from support chats.
2019-04-03 16:50:38 +04:00
John Preston
3e374eda51 Fix video messages with disabled autoplay. 2019-04-03 16:50:38 +04:00
John Preston
0ae63b072c Update some icons. 2019-04-03 16:50:38 +04:00
John Preston
f718410df3 Improve sticker sending by drag-n-drop preview. 2019-04-03 16:50:38 +04:00
John Preston
74e120bc7b Don't show digits in first word emoji suggestions. 2019-04-03 16:50:38 +04:00
John Preston
5f8ede194b Fix rendering of large images on macOS. 2019-04-03 16:42:08 +04:00
John Preston
4d321b1cf0 Fix crash in Clang in Xcode 10.2. 2019-04-03 13:09:49 +04:00
23rd
84858b8940 Added MEDIA_NEW_INVALID error handler. Disabled edit media with webp. 2019-04-02 20:28:54 +03:00
23rd
92f95fa9eb Fixed crash when edit album item with photo with invalid dimensions.
- Added InformBox for invalid files.
2019-04-02 18:14:12 +04:00
23rd
5d8888bb8b Refactored code.
- Refactored passing message id to edit media.
 - Removed get/setEditMedia from mainwidget.
 - Combined onEditMedia and onSendFileConfirm in single method.
 - Added argument in FileLoadTask to pass message id to edit media.
 - Renamed flags in apiwrap.
 - Added check for allowing edit media when use clipboard.
 - Removed unused fileIsValidForAlbum.
 - Removed LOGs.
 - Replaced _isNotAlbum with _isAlbum.
 - Removed _viaRemoteContent.
 - Removed _newMediaPath.
 - Added empty() to MessageGroupId.
2019-04-02 18:14:12 +04:00
23rd
4988d21819 Added ability to edit media via clipboard and remoteContent.
- Moved thumb updating to updateEditPreview() method.
 - Added _viaRemoteContent var to check when we use remoteContent.
 - Added setMimeDataHook to handle clipboard content.
2019-04-02 18:14:12 +04:00
23rd
94964c35ce Fixed false definition FileMediaInformation as Image. 2019-04-02 18:14:12 +04:00
23rd
d605b18ec0 Fixed checking for song without file path. 2019-04-02 18:14:12 +04:00
23rd
590e6c8e9d Fixed ability to cancel edit media in albums. 2019-04-02 18:14:12 +04:00
23rd
67572b0d9a Added canceling upload edit media to Data::Media destructors.
- We should stop upload media if message was deleted from other client.
2019-04-02 18:14:12 +04:00
23rd
5554867553 Fixed editing other messages when media is edited.
- Added new condition for skipping message in History::lastSentMessage.
 - Added reset of _savedMedia in HistoryMessage destructor.
2019-04-02 18:14:12 +04:00
23rd
f3102573ea Improved applying edition.
- Fixed cancel single media.
2019-04-02 18:14:12 +04:00
23rd
0e7ce97da7 Refacotred HistoryWidget::sendFileConfirmed.
- New way to edit media in message.
 - Added some "const".
 - Fixed uploading state in albums when edit media.
2019-04-02 18:14:12 +04:00
23rd
9d789c2657 Fixed sending groupId when edit media. 2019-04-02 18:14:12 +04:00
23rd
468975e9f3 Added to AbstractBox ability to center box when changing dimensions.
- Added using of force center for edit_caption_box.
2019-04-02 18:14:12 +04:00
23rd
145dda843e Added initial local reference for edited media. 2019-04-02 18:14:12 +04:00
23rd
6e69069ba2 Added Ctrl+E and Ctrl+O shortcut to edit media. 2019-04-02 18:14:12 +04:00
23rd
be2b2cbf7e Refactored ApiWrap::editMedia.
- Slightly refactored checkEntitiesAndViewsUpdate.
 - Slightly refactored HistoryMessage.
2019-04-02 18:14:12 +04:00
23rd
0e4d85a5e5 Added handler for MESSAGE_NOT_MODIFIED error when edit media. 2019-04-02 18:14:12 +04:00
23rd
653fd1bb63 Added initial implementation of cancel of media uploading for editing. 2019-04-02 18:14:12 +04:00
23rd
741501d1d9 Removed sending gif attributes when edit media.
- Removed handling gif for render animated preview.
2019-04-02 18:14:12 +04:00
23rd
89e1291d86 Added confirming only images and videos when edit album item.
- Added hiding of checkbox when edit album item.
2019-04-02 18:14:12 +04:00
23rd
25e3674819 Added allowsEditMedia() to Media. Slightly refactored. 2019-04-02 18:14:12 +04:00
23rd
c84f99cf3a Fixed uploading edit media with thumbnails. 2019-04-02 18:14:12 +04:00
23rd
820c7ba84e Added checkbox to send photo as file for edit media. 2019-04-02 18:14:12 +04:00
23rd
6735605f21 Added animated gif preview when users edits media. 2019-04-02 18:14:12 +04:00
23rd
d5a2daa8c9 Refactored edit_caption_box. 2019-04-02 18:14:12 +04:00
23rd
25177d9022 Added updating of thumbnails when user edits media. 2019-04-02 18:14:12 +04:00
23rd
f24ce584db Fixed item updating when upload editing media. 2019-04-02 18:14:12 +04:00
23rd
1ed83cf193 Fixed subscribeToUploader. 2019-04-02 18:14:12 +04:00
23rd
aaf61dfbad Fixed NewUnread message type. 2019-04-02 18:14:11 +04:00
23rd
be58e23775 Init edit media. 2019-04-02 18:14:11 +04:00
John Preston
db631acf80 Remove old animations code. 2019-04-02 14:33:54 +04:00
John Preston
74dc4e0c62 Allow disabling new animations. 2019-04-02 14:33:54 +04:00
John Preston
99bb09374d Use new animations engine everywhere. 2019-04-02 14:33:53 +04:00
John Preston
a6e96f9a28 Use new animations engine in all Basic-s. 2019-04-02 14:33:53 +04:00
John Preston
cd3c1c6dc0 Use new animations engine for typings. 2019-04-02 14:33:53 +04:00
John Preston
3971f27c66 Closed alpha version 1.6.3.4. 2019-04-02 14:33:53 +04:00
John Preston
c4357c7ad3 Animate suggestions select-by-keyboard. 2019-04-02 14:33:53 +04:00
John Preston
1da9385fe2 Scroll suggestions by dragging. 2019-04-02 14:33:53 +04:00
John Preston
9ba65e9ca0 Skip flags and some other suggestions. 2019-04-02 14:33:53 +04:00
John Preston
a12bc60ef5 Redesign emoji suggestions widget. 2019-04-02 14:33:53 +04:00
John Preston
f76dc74040 Show emoji by first word after a delay. 2019-04-02 14:33:53 +04:00
John Preston
932ed20c4b Refresh emoji after server responds. 2019-04-02 14:33:53 +04:00
John Preston
b353af00c9 Fix crash in login. 2019-04-02 14:33:53 +04:00
John Preston
ce2204e120 Add caching for emoji keywords. 2019-04-02 14:33:53 +04:00
John Preston
4b3a9fac67 Use several LRU input languages. 2019-04-02 14:33:53 +04:00
John Preston
54ca5772f8 Closed alpha version 1.6.3.3. 2019-04-02 14:33:53 +04:00
John Preston
2dacf1b2ef Accept any characters for suggestions. 2019-04-02 14:33:53 +04:00
John Preston
817e9aa43d Fix crash in emoji keywords init. 2019-04-02 14:33:53 +04:00
John Preston
dba677dcc7 Filter emoji languages by server. 2019-04-02 14:33:53 +04:00
John Preston
24dcde2f87 Closed alpha version 1.6.3.2. 2019-04-02 14:33:53 +04:00
John Preston
77fbf19a72 Use serverside keywords for emoji suggestions. 2019-04-02 14:33:53 +04:00
John Preston
3cd9d4b5ec Fix video messages playback on Retina. 2019-04-02 14:33:53 +04:00
John Preston
d3bf489bea Improve base::binary_guard interface. 2019-04-02 14:33:52 +04:00
John Preston
efb2972d28 Move delete-from-ToS to AuthSession. 2019-04-02 14:33:52 +04:00
23rd
3fa3428b4b Added ability to go to top of media panel by clicking on selected tab. 2019-04-02 14:33:52 +04:00
John Preston
84e9e37353 Closed alpha version 1.6.3.1: Fix build for Xcode. 2019-03-29 14:24:08 +04:00
John Preston
5c0f278775 Closed alpha version 1.6.3.1. 2019-03-29 14:24:08 +04:00
John Preston
8759d637ff Use StorageFileLocation in mtpFileLoader. 2019-03-29 14:24:07 +04:00
John Preston
95023ca770 Use StorageFileLocation in streaming loader. 2019-03-29 14:24:07 +04:00
John Preston
3f49796c43 Fix file reference updating. 2019-03-29 14:24:07 +04:00
John Preston
aa8f62da9d Support new ('modern') API file locations. 2019-03-29 14:24:07 +04:00
John Preston
eba2a98703 Add general StorageFileLocation abstraction. 2019-03-29 14:24:06 +04:00
John Preston
d36f6a0322 Update API scheme to layer 98. 2019-03-29 14:24:06 +04:00
John Preston
9ec3d24fec Send ImageSize instead of Video for image/gif. 2019-03-26 17:40:40 +04:00
John Preston
bf182697b9 Use streaming player speed in 2x playback. 2019-03-26 16:51:40 +04:00
John Preston
e87084715d Fix song / voice playback. 2019-03-26 16:51:40 +04:00
John Preston
3bd1bbc77a Use Streaming::Player in video messages playback. 2019-03-26 16:51:39 +04:00
John Preston
8aaa70a05a Fix infinite group set requests on bad API responses. 2019-03-26 16:51:10 +04:00
John Preston
9b247ce5ed Version 1.6.4: Fix leaving + rejoining for channels. 2019-03-25 16:47:19 +04:00
Royal Wizard
09ff556aa6 Version 1.6.3: Add child abuse report reason (#5828) 2019-03-25 16:07:30 +04:00
John Preston
a26d82eec6 Version 1.6.3:
- Bug fixes and other minor improvements.
2019-03-25 16:04:59 +04:00
John Preston
bb2e683dea Fix leaving channels and supergroups.
Fixes #5838.
2019-03-25 15:52:30 +04:00
John Preston
d7a67a6a1c Fix two crashes in groups edit. 2019-03-25 11:57:04 +04:00
John Preston
8c6e72b21a Hide Nobody option from profile photo privacy. 2019-03-25 11:57:04 +04:00
John Preston
0b5500fe75 Version 1.6.2.
- Delete any message on both ends in any private chat, anytime.
- Control whether your forwarded messages link back to your account.
- Control who may see your profile picture.
- Enjoy the new streamlined group management screen.
2019-03-24 18:53:06 +04:00
John Preston
2845f48430 Closed alpha version 1.6.1.1. 2019-03-24 12:12:45 +04:00
John Preston
4ba959e6e1 Use sticker set thumbnails in StickersBox. 2019-03-24 12:12:45 +04:00
John Preston
72d9ac508a Use sticker set thumbnails in the panel. 2019-03-24 12:12:45 +04:00
John Preston
386600baf9 Save and load sticker set thumbnails. 2019-03-24 12:12:44 +04:00
John Preston
eb1825defd Add revoking of full history. 2019-03-24 12:12:44 +04:00
John Preston
33069739ee Improve revoke phrases. 2019-03-24 12:12:44 +04:00
John Preston
dd8c526fb7 Prepare code for revoking of full history. 2019-03-24 12:12:43 +04:00
John Preston
2701e63406 Allow revoking only sent messages. 2019-03-24 12:12:43 +04:00
John Preston
b972da059a Show explaining preview of forwards privacy. 2019-03-24 12:12:42 +04:00
John Preston
81862215b4 Add forwards and profile photo privacy settings. 2019-03-24 12:12:42 +04:00
John Preston
a34e998c42 Handle fwd_from without a link to the account. 2019-03-24 12:12:42 +04:00
John Preston
6d1193a751 Update API scheme to layer 97. 2019-03-24 12:12:41 +04:00
John Preston
0cd7399dc9 Update API scheme to layer 96. 2019-03-24 12:12:41 +04:00
John Preston
f1b0b60340 Fix possible crash in MainWindow destructor. 2019-03-24 12:12:41 +04:00
John Preston
d1cf43f9a4 Fix streaming receivedTill reporting.
It was incorrect in case audio and video had different durations.
2019-03-24 12:12:40 +04:00
John Preston
a0b3b1affd Fix fade in widget animation.
Fixes #5812.
2019-03-24 12:12:40 +04:00
John Preston
2a7fdfc832 Fix call icon position in single column info page. 2019-03-24 12:12:40 +04:00
John Preston
672070e618 Fix icon position in EditPeerInfoBox. 2019-03-24 12:12:39 +04:00
John Preston
6a2b1bb48d Fix HTML export wrapper. 2019-03-24 12:12:39 +04:00
John Preston
db121c0839 Take album caption from any album item. 2019-03-22 14:22:49 +04:00
23rd
ca9db9fd3f Refactored code.
- Removed std::optional from EditPeerHistoryVisibilityBox.
 - Added std::optional for savedCallback in EditPeerTypeBox.
 - Guarded boxCallbacks.
2019-03-22 13:40:23 +04:00
23rd
ecccf673a9 Deleted unused code of Delete Button. 2019-03-22 13:40:23 +04:00
John Preston
e0d7cae3fe Fix build for macOS. 2019-03-22 13:40:23 +04:00
John Preston
241526f127 Improve code style a bit. 2019-03-22 13:40:22 +04:00
23rd
4148099115 Redesigned Delete Button in EditPeerInfoBox. 2019-03-22 13:40:22 +04:00
23rd
5edf200157 Fixed focus in EditPeerTypeBox. Slightly refactored code. 2019-03-22 13:40:22 +04:00
23rd
bd7ba3acb1 Refactored code.
- Slightly improved design.
 - Added "const" in EditPeerTypeBox & EditPeerInfoBox.
2019-03-22 13:40:22 +04:00
23rd
e024d9bbb0 Added opening EditPeerTypeBox when error of saving username was handled. 2019-03-22 13:40:22 +04:00
23rd
3d7b8b3162 Added Invite Link button. Refactored code.
- Removed unused includes.
 - Improved design for boxes.
 - Draw buttons for EditPeerInfoBox in single place.
 - Simplified conditions for all buttons.
 - Made AddSkip more flexible.
2019-03-22 13:40:22 +04:00
23rd
8887272577 Refactored code. Removed unused code.
- Deleted manage_peer_box from sources.
2019-03-22 13:40:22 +04:00
23rd
c86257568f Fixed issue when "Too much usernames" box appearing only after typing. 2019-03-22 13:40:22 +04:00
23rd
ae25538706 Added opening of EditPeerInfoBox in new way. 2019-03-22 13:40:22 +04:00
23rd
21e417433b Added waiting for full data update of peer to open EditPeerInfoBox. 2019-03-22 13:40:22 +04:00
23rd
cb272be805 Refactored code. Slightly improved animations and design. 2019-03-22 13:40:22 +04:00
23rd
b79d8d6c82 Removed Checkbox for Sign Messages and added Toggle Button.
- That is how it looks in mobile clients.
2019-03-22 13:40:22 +04:00
23rd
be8aed6a95 Added GroupTypeBox with Controller. 2019-03-22 13:40:22 +04:00
23rd
d06337dddc Added HistoryVisibilityBox. 2019-03-22 13:40:22 +04:00
23rd
0f3ec47074 Begin of EditPeerBox redesigning.
- Moved buttons from ManageGroupBox to EditPeerBox.
 - Added counting of permissions.
2019-03-22 13:40:21 +04:00
23rd
3a5bad4b7a Fixed incorrect display of uploaded video's thumbnail in edited message.
- After uploading a video the data_document changes a source of the 
 good thumbnail and loses an information about it (e.g. width, height, 
 bytesSize).
2019-03-22 13:39:12 +04:00
23rd
2aecd1035e Removed "Export history" from context menu for empty chats. 2019-03-22 13:38:09 +04:00
23rd
5d04842a80 Refactored edit_caption_box. 2019-03-22 13:36:47 +04:00
23rd
59c73a4814 Fixed drawing of custom thumbnails in edit_caption_box. 2019-03-22 13:36:47 +04:00
John Preston
25affe5484 Version 1.6.1.
- Bug fixes and other minor improvements.
2019-03-20 14:32:34 +04:00
John Preston
399aed4087 Remove setting for Mac App Store version. 2019-03-20 14:31:32 +04:00
John Preston
31dbe2278e Fix possible crash in local file streaming.
Cache file size instead of requesting it from file system each time.
2019-03-20 14:21:50 +04:00
John Preston
9ed064b7fc Fix crash in streaming parts loading. 2019-03-20 13:41:13 +04:00
John Preston
a59353df9f Fix possible crash in DomainResolver.
App::CallDelayed() could be queued twice for a single key, if before
the delayed call we cleared entry in _attempts and created it again.
2019-03-20 13:23:16 +04:00
John Preston
8acd47bf2f Fix pre-history visibility rights check. 2019-03-20 13:22:58 +04:00
John Preston
be53cb027c Possibly fix a crash in microphone testing. 2019-03-20 13:00:38 +04:00
John Preston
6ff8c1de05 Fix possible crash in layers destruction.
clearClosingLayers could've called itself from layer->setClosing.
2019-03-20 11:41:10 +04:00
John Preston
2ebbf062d0 Show webpage with embed_url as a video. 2019-03-19 13:21:13 +04:00
John Preston
fd538bc6c8 Version 1.6.
- Play video files and listen to music
without waiting for them to fully download.
- Press CTRL+0 (CMD+0 on macOS) to jump to your Saved Messages.
2019-03-18 12:24:03 +04:00
John Preston
c0959ceaeb Start video when moving to it in media viewer.
Fixes #5796.
2019-03-18 11:44:49 +04:00
John Preston
6c382c647c Fix caching of first slice in header. 2019-03-18 11:00:11 +04:00
John Preston
8f9bed0443 Fix document caption in media viewer.
Regression was introduced in 5cae57601a.

Fixes #5799, fixes #5802, fixes #5804.
2019-03-17 23:00:09 +04:00
John Preston
dc3996c077 Beta version 1.5.18: Update libtgvoip. 2019-03-15 16:57:18 +04:00
John Preston
5bfd5e4495 Beta version 1.5.18.
- Bug fixes and other minor improvements.
2019-03-15 16:11:55 +04:00
John Preston
d646de7184 Add button to download audio files. 2019-03-15 16:09:05 +04:00
John Preston
bc2b0f8392 Add button to download video files.
Fixes #5781.
2019-03-15 14:15:04 +04:00
John Preston
f2a7cf5c64 Improve shared videos design. 2019-03-15 12:09:48 +04:00
John Preston
0df628dc7a Fix notifications hiding on Linux.
Regression was introduced in 3372dfcd3e.

Only when platform-specific code can give us the global time of the
last user input event we rely on idle time for notifications hiding.

Fixes #5791.
2019-03-14 21:59:10 +04:00
John Preston
a5d1fbff98 Fix removing photo in webpage preview. 2019-03-14 17:14:18 +04:00
John Preston
5cae57601a Allow video download from media viewer. 2019-03-14 16:03:02 +04:00
John Preston
2b7fb7a9a6 Pause music only when video playback starts. 2019-03-14 14:45:08 +04:00
John Preston
feb238c5d9 Fix crash if asked to read more than 64MB at once. 2019-03-14 14:14:24 +04:00
John Preston
0d888eea85 Fix local cache time limit setting storing.
Fixes #5611.
2019-03-14 13:22:42 +04:00
John Preston
bfb6ecbac7 Fail streaming on error in any stream. 2019-03-14 12:47:18 +04:00
John Preston
2152fe6a79 Beta version 1.5.17: Improve large file streaming.
Allow header for streaming up to 8 MB.
2019-03-13 20:56:04 +04:00
John Preston
b113696fe6 Beta version 1.5.17.
- Bug fixes and other minor improvements.
2019-03-13 19:02:53 +04:00
John Preston
b65a24df96 Allow streaming videos with unknown duration.
When you stream image/gif as a soundless video the total duration is
unknown, so we accumulate packet->pts + packet->duration as duration.
2019-03-13 18:58:50 +04:00
John Preston
c655bf852f Fix crash in video player seek. 2019-03-13 16:28:07 +04:00
John Preston
be495c17bc Fix seek to video end. 2019-03-13 16:21:07 +04:00
John Preston
9785ff4be6 Add more checks in streaming. 2019-03-13 15:11:54 +04:00
John Preston
5ec37e9112 Use separate click handler for OpenWith. 2019-03-13 13:35:47 +04:00
John Preston
f9f84fd407 Fix idle time checking in MainWidget.
Regression was introduced in 78d00bcf22.

Fixes #5779, fixes #5780.
2019-03-13 11:21:56 +04:00
John Preston
ed93669693 Beta version 1.5.16: Update libtgvoip. 2019-03-12 19:04:22 +04:00
John Preston
e79ddf2459 Beta version 1.5.16: Fix audio stucking. 2019-03-12 18:57:48 +04:00
John Preston
5efe47cfb6 Beta version 1.5.16: Remove streaming logs. 2019-03-12 18:56:35 +04:00
John Preston
b8045cbcc7 Beta version 1.5.16.
- Play video files and listen to received music
without waiting for them to download.
- Press CTRL+0 (CMD+0 on macOS) to jump to your Saved Messages.
2019-03-12 17:05:11 +04:00
John Preston
aa1090a585 Fix text disappearing in support mode. 2019-03-12 16:54:15 +04:00
John Preston
0a5589f869 Remove deleted chats with users from list. 2019-03-12 16:08:41 +04:00
John Preston
383b29dbd8 Fix possible crash in calls.
Fixes #5732.
2019-03-12 15:26:29 +04:00
John Preston
13a9b967e9 Use user phrases for support accounts. 2019-03-12 14:38:59 +04:00
John Preston
b798654ca7 Set focus to intro widget.
Fixes #5705.
2019-03-12 14:38:59 +04:00
John Preston
a5e6890b77 Fix icon pixmap sizes on Retina with scaling. 2019-03-12 14:27:22 +04:00
John Preston
2a3a38531b Fix photo inline result sending.
Fixes #5594.
2019-03-12 13:49:16 +04:00
John Preston
4ebf6ebb6f Use the same poll option values as others. 2019-03-12 13:15:08 +04:00
23rd
6fe736c9fc Added Shortcut to jump to the Saved Messages. 2019-03-12 13:03:23 +04:00
John Preston
ef682e7023 Fix photos in overview with disabled autodownload.
Fixes #5599, fixes #5747.
2019-03-12 12:55:26 +04:00
John Preston
5c3f667fc3 Fix background reset on language change. 2019-03-12 12:55:26 +04:00
John Preston
a95a055acd After update try relaunching for 1 second on macOS. 2019-03-12 09:35:53 +04:00
John Preston
846499a4fb Fix volume saving to settings. 2019-03-12 09:09:53 +04:00
John Preston
6afb3f70bb Closed alpha version 1.5.15.6. 2019-03-11 21:03:26 +04:00
John Preston
c063d94aa5 Remove DocumentData::actionOnLoad. Fix GIF open. 2019-03-11 19:07:35 +04:00
John Preston
261720c941 Fix radial animations on macOS.
QOpenGLWidget doesn't draw antialiased ellipses and arcs,
so we use a software rasterizer and then draw the resulting image.
2019-03-11 13:51:15 +04:00
John Preston
7b3c452316 Change direction of infinite radial animation. 2019-03-11 13:19:38 +04:00
John Preston
aa00f9bd34 Fix new animations engine restarts. 2019-03-11 12:08:21 +04:00
John Preston
b0ff443eac Fix sending of saved GIFs. 2019-03-11 12:08:21 +04:00
John Preston
a886c598c1 Fix non-streamable videos layout. 2019-03-11 12:08:20 +04:00
John Preston
2ce4abfdfe Fix crash in media caching. 2019-03-11 12:08:20 +04:00
John Preston
18c42954ae Fix sparse frame painting on macOS. 2019-03-11 12:08:20 +04:00
John Preston
b57b4fa0f8 Fix reading first slice for good header cache. 2019-03-11 12:08:20 +04:00
John Preston
e66cde398a Closed alpha version 1.5.15.5. 2019-03-11 12:08:19 +04:00
John Preston
3706be77ea Fix macOS media viewer controls hiding. 2019-03-11 12:08:19 +04:00
John Preston
f481f1e142 Make videos larger, fix playback animation. 2019-03-11 12:08:19 +04:00
John Preston
84b09795f3 Store first slice in the header cache key. 2019-03-11 12:08:19 +04:00
John Preston
95954c4b1f Closed alpha version 1.5.15.4. 2019-03-11 12:08:18 +04:00
John Preston
a56a12a1ef Optimized video frame pushing. 2019-03-11 12:08:18 +04:00
John Preston
5c4b459f57 Use new animations in video viewer. 2019-03-11 12:08:18 +04:00
John Preston
9a616edf2a Add new animations engine. 2019-03-11 12:08:17 +04:00
John Preston
92332b45ea Don't reset zoom on video seek. 2019-03-11 12:08:17 +04:00
John Preston
5a7fcc3a22 Don't show fast share for own messages. 2019-03-11 12:08:17 +04:00
John Preston
6c441353c4 Closed alpha version 1.5.15.3. 2019-03-11 12:08:17 +04:00
John Preston
b742c95516 Support streamed video rotation. 2019-03-11 12:08:16 +04:00
John Preston
a59c3da3d0 Cache small files in one value. 2019-03-11 12:08:16 +04:00
John Preston
8399f4189f Don't show receivedTill for local loaders. 2019-03-11 12:08:16 +04:00
John Preston
67b9fe846b Improve video frame position checks. 2019-03-11 12:08:16 +04:00
John Preston
0f4ccce0e1 Update ffmpeg. 2019-03-11 12:08:15 +04:00
John Preston
01d763eed1 Use DocumentData::getDuration for all types. 2019-03-11 12:08:15 +04:00
John Preston
41c60419f1 Enable voice messages streaming. 2019-03-11 12:08:15 +04:00
John Preston
195164d9d4 Fix display / download of video messages. 2019-03-11 12:08:14 +04:00
John Preston
518d1da736 Fail streaming if no codec for a stream. 2019-03-11 12:08:14 +04:00
John Preston
aade3d4f27 Allow streaming video from overview. 2019-03-11 12:08:14 +04:00
John Preston
22356eb01c Fix initial video duration display. 2019-03-11 12:08:14 +04:00
John Preston
b5eb88a32f Closed alpha version 1.5.15.2. 2019-03-11 12:08:13 +04:00
John Preston
6887993f92 Report streaming failed. 2019-03-11 12:08:13 +04:00
John Preston
71b733a018 Display receivedTill in video player controls. 2019-03-11 12:08:13 +04:00
John Preston
e2eb9cea00 Apply sample_aspect_ratio in streaming. 2019-03-11 12:08:12 +04:00
John Preston
99e96a5b13 Allow looping video without audio in streaming. 2019-03-11 12:08:12 +04:00
John Preston
7093254b66 Fix crash in empty sticker set box. 2019-03-11 12:08:12 +04:00
John Preston
f4544b0964 Fix crash in passcode setup. 2019-03-11 12:08:12 +04:00
John Preston
c27456277e Support streaming of local files. 2019-03-11 12:08:11 +04:00
John Preston
2e824ace00 Fix video messages inline playback. 2019-03-11 12:08:11 +04:00
John Preston
dafa286b18 Show option to download on streaming error. 2019-03-11 12:08:11 +04:00
John Preston
003d01206f Allow .opus playback. 2019-03-11 12:08:10 +04:00
John Preston
f0963a332a Fix crash on failed streaming. 2019-03-11 12:08:10 +04:00
John Preston
91bdb66f0d Fix call icon position for the Info layer. 2019-03-11 12:08:10 +04:00
John Preston
ffb48c42b0 Closed alpha version 1.5.15.1. 2019-03-11 12:08:10 +04:00
John Preston
8171828c2a Fix build on GCC. 2019-03-11 12:08:09 +04:00
John Preston
a8aa66d191 Check frame format before sws_getCachedContext. 2019-03-11 12:08:09 +04:00
John Preston
e631d98230 Implement media cache management. 2019-03-11 12:08:09 +04:00
John Preston
1940c67a09 Disable music / video autodownload. 2019-03-11 12:08:09 +04:00
John Preston
c574119718 Implement file reference update in streaming. 2019-03-11 12:08:08 +04:00
John Preston
648cd44ddd Display correct video / music state. 2019-03-11 12:08:08 +04:00
John Preston
fde8dd9607 Play streaming audio in player. 2019-03-11 12:08:08 +04:00
John Preston
f1e0cd6c1d Play streaming video in mediaview. 2019-03-11 11:52:11 +04:00
John Preston
44df10d6cb Improve working with cache in streaming. 2019-03-11 11:49:54 +04:00
John Preston
b6a757842a Pause loading if loaded for 1 minute. 2019-03-11 11:49:54 +04:00
John Preston
4636c74586 Remove from memory old file slices. 2019-03-11 11:49:54 +04:00
John Preston
2208621050 First version of caching in media streaming. 2019-03-11 11:49:54 +04:00
John Preston
f133dd396c Return pair<iterator,bool> from flat_set::emplace. 2019-03-11 11:49:54 +04:00
John Preston
ccd04b98b9 Fix sync video to audio. 2019-03-11 11:49:54 +04:00
John Preston
d37b65e624 If stuck wait for three seconds of packets. 2019-03-11 11:49:54 +04:00
John Preston
3e9b811875 Implement precise seek in streaming. 2019-03-11 11:49:54 +04:00
John Preston
44c562d8ba Fix streaming seek, display progress. 2019-03-11 11:49:53 +04:00
John Preston
93c548c013 Support streaming speed changing. 2019-03-11 11:49:53 +04:00
John Preston
a7d9281768 Implement pause / resume in streaming. 2019-03-11 11:49:53 +04:00
John Preston
3b369fc98e Buffer audio when waiting data in streaming. 2019-03-11 11:49:53 +04:00
John Preston
e5cd7e6d40 Fix streaming from the middle of the file. 2019-03-11 11:49:53 +04:00
John Preston
99d05ba967 Sync video stream to audio stream. 2019-03-11 11:49:53 +04:00
John Preston
ec9512899e Support streaming playback speed 0.5 - 2. 2019-03-11 11:49:22 +04:00
John Preston
26ea6c4e63 Provide receivedTill for streamed tracks. 2019-03-11 11:49:22 +04:00
John Preston
8e44a7f5c4 Basic code for video streaming + testing on video. 2019-03-11 11:49:22 +04:00
John Preston
a093cb6274 Move some logic to Media::Streaming::Player. 2019-03-11 11:49:21 +04:00
John Preston
64f2f330f6 Render first frame when starting streaming. 2019-03-11 11:49:21 +04:00
John Preston
473e30e594 Basic code for media streaming + testing on music. 2019-03-11 11:49:21 +04:00
23rd
dc95756ec9 Fixed infrequent separation of grouped notifications. 2019-03-11 00:00:02 +04:00
23rd
2a935868a8 Added grouping of album files into a single notification.
- Added display of "Album" in inDialogsText().
2019-03-11 00:00:02 +04:00
23rd
f48d8538c0 Added ability to see attached stickers on photos. 2019-03-10 22:10:36 +04:00
23rd
3372dfcd3e Refactored checking of last input while notifications are displayed.
- Removed condition for Windows platform only.
 - Added smooth hiding of notifications in case video is watched or voice message is recorded.
 - psUserActionDone() was completely replaced with Core::App().updateNonIdle().
2019-03-10 22:02:58 +04:00
23rd
78d00bcf22 Refactored counting idle time.
- psIdleTime() was replaced with Platform::LastUserInputTime().
 - _lastTimeVideoPlayedAt was moved to Application as _lastNonIdleTime.
 - Call of updateNonIdle() was added while voice is recording.
 - Fixed #5695.
 - Thanks Preston. =)
2019-03-10 22:02:58 +04:00
23rd
9dc9e019f6 Added Search Shortcut in Shared Media.
- Works for Documents, Audio files and Shared links.
2019-03-10 10:58:05 +04:00
John Zimmermann
178c0078c1 docs: Fix setting the gcc-7 alternative with apt
#5766
2019-03-10 10:56:48 +04:00
Martin Delille
8478abe378 Add brew install cmake ninja 2019-03-10 10:29:37 +04:00
23rd
bfc9e43eb4 Added a handler for "MESSAGE_EMPTY" error to delete a local message.
- Added a determination of the zero-width-space as the space.
 - Fixes #3145.
2019-03-10 10:26:40 +04:00
John Preston
e174025a92 Fix travis build. 2019-03-09 15:27:36 +04:00
23rd
89f4408029 Added forwarded info in tooltip of sticker. 2019-03-09 15:24:35 +04:00
23rd
d7dc277003 Added author of channel post in tooltip.
- Added "const" to vars within HistoryMessageSigned::refresh().
2019-03-09 15:01:08 +04:00
23rd
32bc723745 Added scroll animation in dialogs list when it scrolls to top. 2019-03-09 13:56:33 +04:00
23rd
c2ad765424 Fixed extra space in a name of the post author after forwarding message. 2019-03-09 13:41:39 +04:00
23rd
9799afa064 Updated libvdpau to 1.2. 2019-03-06 14:41:04 +04:00
23rd
e880c14d61 Fixed crash in window resizing when layer is opened.
Regression was introduced in 26f1ade5ba.
2019-03-05 13:38:58 +04:00
23rd
e70465c633 Removed unnecessary calling of saveDraftToCloud() method when quit. 2019-02-20 11:46:37 +04:00
23rd
4ed1835d32 Fixed Ctrl + F shortcut for full screen toggle in media view. 2019-02-20 11:43:50 +04:00
23rd
19bbccd1a7 Improved "Create link" box title display. 2019-02-20 11:42:10 +04:00
23rd
9d8b80cbce Fixed Travis build.
Regression was introduced in 771a51224e.
2019-02-20 11:41:13 +04:00
John Preston
dec8264625 Fix extensive CPU usage on macOS when audio is played.
Regression was introduced in 91c85ec86b

The openal-soft version 1.19.1 tried to use semaphores created by sem_init,
which are not supported on macOS, so they just didn't work at all. This was
leading to an event loop thread spin-waiting instead of a normal sem_wait.

In the v1.19 upstream branch GCD semaphores are used on macOS.
2019-02-20 11:37:38 +04:00
John Preston
fe618bd652 Use crl::time/now instead of TimeMs/getms. 2019-02-19 11:06:33 +04:00
John Preston
d208236994 Accept binary_guard in crl::guard(). 2019-02-17 15:56:07 +04:00
John Preston
4d987f7278 Fix index_based_iterator for const containers. 2019-02-17 15:56:07 +04:00
23rd
193e454fd4 Fixed sending polls as reply to other messages.
Fixes #5550.
2019-02-17 15:55:44 +04:00
John Preston
bdfb9b4143 Ignore actions from other chats in HistoryWidget.
This should fix an issue that was noticed in #5701.
2019-02-17 15:09:02 +04:00
John Preston
c9716f3c72 Make crl::object_on_queue usages consistent. 2019-02-17 15:09:01 +04:00
John Preston
7c1704e68b Fix crash in EditCaptionBox. 2019-02-17 13:51:53 +04:00
John Preston
771a51224e Support errors in rpl::event_stream. 2019-02-17 10:55:29 +04:00
John Preston
cf275b152a Fix crash in layers closing.
Sometimes AbstractBox::setClosing invoked Ui::hideLayers that
destroyed LayerStackWidget and all its children, including the
closing AbstractBox. After that a unique_ptr stored on stack
and owning that box was destroyed and it lead to a crash.

Now LayerStackWidget always owns several closing boxes.
2019-02-17 10:55:28 +04:00
John Preston
98cb85df66 Polymorphic classes without virtual dtor warning. 2019-02-15 15:55:34 +04:00
John Preston
032694ad9e Move files to media/audio and media/clip. 2019-02-13 15:41:33 +03:00
John Preston
5437215677 Use premultiplied format for GIF frames. 2019-02-13 15:19:05 +03:00
John Preston
5ec80238a0 Fix permissions dependencies. 2019-02-13 15:19:05 +03:00
John Preston
ae6c152988 Version 1.5.15: Fix macOS media viewer overlay.
Regression was introduced in c1a0dad2b7.
2019-02-12 19:55:35 +03:00
John Preston
7d15cca1ee Version 1.5.15.
- Crash fix.
2019-02-12 19:02:08 +03:00
John Preston
83c5a67af5 Fix another crash in last message checking.
Regression was introduced in 83bc6fb39c.
2019-02-12 19:01:30 +03:00
John Preston
c9ad2cd1aa Version 1.5.14.
- Crash fix.
2019-02-12 16:56:23 +03:00
John Preston
fe1f198d99 Fix crash in last message checking.
Fixes #5683.
2019-02-12 16:53:46 +03:00
John Preston
818662c2e6 Version 1.5.13: Don't automatically load executable files. 2019-02-12 14:28:33 +03:00
John Preston
05d0d2a6d6 Version 1.5.13.
- Bug fixes and other minor improvements.
2019-02-12 14:03:34 +03:00
John Preston
c1a0dad2b7 Use QOpenGLWidget for macOS media viewer overlay.
Also move mediaview to media/view/media_view_overlay_widget.
2019-02-12 14:00:47 +03:00
John Preston
4caf26d069 Fix build for Xcode. 2019-02-11 15:56:25 +03:00
John Preston
83bc6fb39c Fix changelog dialogs list appearance.
Fixes #5678, fixes #5674.
2019-02-11 15:52:36 +03:00
John Preston
dbb7568b92 Fix changelogs blog link previews. 2019-02-11 15:52:36 +03:00
John Preston
45fda44924 Fix crash on bad sticker.
DocumentData::getStickerLarge and DocumentData::loaded go to a loop.
2019-02-11 15:52:36 +03:00
John Preston
26f1ade5ba Optimize connecting widget. 2019-02-10 21:35:44 +03:00
John Preston
9dd93a77a0 Always keep inline thumbnail images loaded. 2019-02-10 11:19:27 +03:00
John Preston
331d1baad6 Fix videos without thumbnails in MediaView.
Fixes #5668.
2019-02-10 11:18:54 +03:00
John Preston
d3159d86da Version 1.5.12: Fix manual loading GIFs to cache. 2019-02-09 18:00:48 +03:00
John Preston
f9e1513491 Version 1.5.12.
- Apply blur effects to backgrounds.
- Use the backgrounds you set in Telegram Desktop
in all other Telegram apps.
2019-02-09 16:46:43 +03:00
John Preston
b6e37b7730 Allow removing cloud wallpapers. 2019-02-09 16:36:07 +03:00
John Preston
f9d56eb4c1 Send installWallPaper requests. 2019-02-08 19:47:02 +03:00
John Preston
95565c39ed Upload wallpapers to the cloud. 2019-02-08 19:20:08 +03:00
John Preston
890aacaeee Allow to blur wallpapers from file. 2019-02-08 16:55:02 +03:00
John Preston
e2f0886950 Add option to blur chat background. 2019-02-07 19:36:30 +03:00
John Preston
fe21b5a502 Support blurred backgrounds. 2019-02-06 17:38:37 +03:00
John Preston
e7043c4d63 Show patterns with colors in galery. 2019-02-05 12:32:54 +03:00
John Preston
aae2101131 Sort backgrounds in the gallery. 2019-02-04 21:37:40 +03:00
John Preston
64afed0fb2 Fix crash for videos without thumbnails. 2019-02-04 19:04:36 +03:00
John Preston
4d9464ed87 Remove flags checking for backgrounds.
Also limit image size to 2960px.

Fixes #5641.
2019-02-04 18:53:00 +03:00
John Preston
b43191506a Fix preview of color-only backgrounds.
Regression was introduced in f506a5ea6c.
2019-02-04 18:03:31 +03:00
John Preston
c47781c25a Version 1.5.11.
- Bug fixes and other minor improvements.
2019-02-01 15:51:46 +03:00
John Preston
f0c4868b3e Ignore default banned rights for channel admins.
Fixes #5640.
2019-02-01 15:50:57 +03:00
John Preston
35e5c2329b Fix wall paper preview on Retina. 2019-02-01 15:41:43 +03:00
John Preston
74fc5524ab Fix dock and menu hiding on macOS.
Regression was introduced in 0681d10c51.
2019-02-01 15:41:43 +03:00
John Preston
2d4c99a6f7 Fix build for old OS X versions. 2019-02-01 13:23:35 +03:00
John Preston
69c73d0a2c Version 1.5.10.
- Bug fixes and other minor improvements.
2019-02-01 12:51:02 +03:00
John Preston
58510e0208 Improve chat list bot icon layout. 2019-02-01 12:50:30 +03:00
Jiachen YANG
0681d10c51 fixing mediaview fullscreen on X11 2019-02-01 12:38:32 +03:00
John Zimmermann
add2356c8a Generalize Unity Integration to not depend on libunity 2019-02-01 12:34:55 +03:00
John Preston
c66b2b2291 Fix setting offline on quit. 2019-02-01 12:23:37 +03:00
23rd
769923c6cc Fixed a keeping online status after application quit.
Fixes https://github.com/telegramdesktop/tdesktop/issues/5528.
2019-02-01 11:52:25 +03:00
23rd
27528d084f Added shortcuts to skip months in CalendarBox. 2019-02-01 11:49:14 +03:00
23rd
299aa69058 Added an icon for bots in the dialog list.
Fixes https://github.com/telegramdesktop/tdesktop/issues/1894 .
2019-02-01 11:48:45 +03:00
John Preston
d1cc09f40e Destroy layers in reverse order. 2019-02-01 11:47:30 +03:00
John Preston
a133b43eed Fix crash in dual background box show. 2019-02-01 11:32:34 +03:00
John Preston
9b57725b8c Fix bad function call in data export cancel. 2019-02-01 11:17:23 +03:00
John Preston
34b0f6f014 Fix crash in group migration. 2019-02-01 11:09:14 +03:00
John Preston
f5cc93ec64 Decouple MTP::Instance from Core::App. 2019-02-01 10:48:31 +03:00
John Preston
4f3263d979 Fix crash in MediaView with thumbless GIFs. 2019-02-01 10:28:04 +03:00
John Preston
b28e374e06 Fix Media::Audio::Instance destruction. 2019-02-01 10:09:55 +03:00
John Preston
918d58ef0a Better check unique results in support mode. 2019-02-01 09:53:15 +03:00
John Preston
5a388d9dde Improve Poland number formatting. 2019-02-01 09:18:31 +03:00
John Preston
0f4909621b Version 1.5.9.
- Bug fixes and other minor improvements.
2019-01-31 20:34:19 +03:00
John Preston
55d3d8adc3 Allow to delete users from exceptions. 2019-01-31 20:31:44 +03:00
John Preston
d2d6a6daa4 Fix proxy sponsor messages search display. 2019-01-31 15:56:57 +03:00
John Preston
a7f4ac2797 Search by hashtag inside groups. 2019-01-31 15:51:19 +03:00
John Preston
25b5027dc7 Only creator can restrict in old groups. 2019-01-31 15:20:15 +03:00
John Preston
93a967dc74 Add random_padding to dns requests. 2019-01-31 13:48:10 +03:00
John Preston
3cfc3dcecf Mark even more extensions as executables. 2019-01-30 17:59:55 +03:00
John Preston
e09510ea9f Fix crash in update checker destruction. 2019-01-30 17:58:23 +03:00
John Preston
4c289fc8fb Fix add members button in channels. 2019-01-30 13:49:36 +03:00
John Preston
58cf0fa2b1 Display date in background preview. 2019-01-29 20:03:51 +03:00
John Preston
5ca12a73c3 Use new HistoryWallPaper media type for wallpaper. 2019-01-29 19:26:19 +03:00
John Preston
fd8e9dad92 Fix pattern wallpapers with themes. 2019-01-29 14:52:33 +03:00
John Preston
df0fe0a460 Closed alpha version 1.5.8.2. 2019-01-29 14:52:33 +03:00
John Preston
646d15b257 Add LSFileQuarantineEnabled to the .plist 2019-01-29 14:52:33 +03:00
John Preston
2eb6848eb8 Fix background preview on retina screens. 2019-01-29 14:52:33 +03:00
John Preston
9b3c103f16 Backport patch for Mojave accessibility access request. 2019-01-29 14:52:33 +03:00
John Preston
6a2a13d346 Closed alpha version 1.5.8.1. 2019-01-29 14:52:33 +03:00
John Preston
b6edf4561d Add support for pattern wallpapers. 2019-01-29 14:52:33 +03:00
John Preston
c2744700c0 Mark more extensions as executables. 2019-01-29 14:52:33 +03:00
John Preston
f506a5ea6c Save wallpaper settings locally. 2019-01-29 14:52:33 +03:00
John Preston
2f702148e3 Fix manage channel actions visibility.
Fixes #5601.
2019-01-29 14:52:33 +03:00
John Preston
e10c928207 Update API scheme to layer 95. 2019-01-29 14:52:33 +03:00
John Preston
a1baa23a52 Use both thumbnails in photos and documents.
Fixes #5602.
2019-01-28 13:10:45 +03:00
John Preston
a70e72f75d Application->Sandbox, Messenger->Application. 2019-01-23 12:51:58 +04:00
John Preston
4111da1dd0 Move some calls from App namespace. 2019-01-22 17:10:01 +04:00
John Preston
e7804d014d Share background from preview. 2019-01-22 17:10:00 +04:00
John Preston
bf87de3706 Fix removing chats from dialogs. 2019-01-22 17:05:06 +04:00
John Preston
ebc2043055 Improve empty group display. 2019-01-22 11:50:21 +04:00
John Preston
69b1f6c4e1 Version 1.5.8.
- Global permissions for groups. Restrict all members in any group
from posting certain types of content.
- Unified group settings. Make groups public,
set admins with granular permissions and toggle persistent history
in just a few clicks in any group.
- Choose the emoji set you would like to use in Chat Settings.
- Choose input and output devices for Telegram Calls
in Settings > Advanced > Call Settings.
- Support for automatically downloading files and music.
2019-01-21 21:28:45 +04:00
John Preston
2708777167 Closed alpha version 1.5.7.2. 2019-01-21 18:06:20 +04:00
John Preston
6e0d62bb65 Re-apply document thumb only for stickers. 2019-01-21 17:43:24 +04:00
John Preston
6d706fd222 Improve unacessible permissions design. 2019-01-21 17:43:24 +04:00
John Preston
6066265717 Fix emoji suggestions in monospace. 2019-01-21 11:02:20 +04:00
John Preston
805e4d01e7 Allow re-downloading failed media. 2019-01-21 10:49:44 +04:00
John Preston
e209299af4 Fix invite link block visibility. 2019-01-21 10:40:25 +04:00
John Preston
b3f0a3c9f5 Make audio device selection box wider. 2019-01-21 10:37:31 +04:00
John Preston
1da8841ac7 fixup use Text 2019-01-21 10:37:20 +04:00
John Preston
7df5df6351 Improve phrases for removed users. 2019-01-21 10:26:19 +04:00
John Preston
bf85b0c109 Closed alpha version 1.5.7.1. 2019-01-18 16:41:08 +04:00
John Preston
314e30272b Replace SingleTimer with base::Timer. 2019-01-18 16:41:08 +04:00
John Preston
61b9a32504 Add 'Contact joined' notifications setting. 2019-01-18 16:41:08 +04:00
John Preston
01b7d4ffba Use Text to display empty group state. 2019-01-18 16:41:07 +04:00
John Preston
8643972f8c Send thumbs only for big files. 2019-01-18 16:41:07 +04:00
John Preston
1894b8fcf7 Handle t.me/bg links with wallpapers / colors. 2019-01-18 16:41:07 +04:00
John Preston
e59a68cd68 Refresh wallpaper file references. 2019-01-17 12:21:31 +04:00
John Preston
466c6da5e3 Save wallpaper information. 2019-01-17 12:21:31 +04:00
John Preston
b8cb792831 Read background image async. 2019-01-17 12:21:31 +04:00
John Preston
0f9c2a62fe Load fullres images of new wallpapers. 2019-01-17 12:21:31 +04:00
John Preston
04350af96f Use one place for saving restrictions. 2019-01-17 12:21:31 +04:00
John Preston
287b3509ab Optimize getPeerDialog requests. 2019-01-17 12:21:31 +04:00
John Preston
2a5bcd3eec Support empty group placeholder for creators. 2019-01-17 12:21:31 +04:00
John Preston
2a0b9a44dd Remove supergroup migrate messages. 2019-01-17 12:21:31 +04:00
John Preston
c552db04d7 Use 'exception' and 'remove user' phrases. 2019-01-17 12:21:30 +04:00
John Preston
22f1ffc72b Use different phrases for default restrictions. 2019-01-17 12:21:30 +04:00
John Preston
4f33be20d4 Add user to group on appointing of admin. 2019-01-17 12:21:30 +04:00
John Preston
9728ddeaf9 Handle migration to supergroups in boxes. 2019-01-17 12:21:30 +04:00
John Preston
3c44bdb6b7 Support auto-migrate to supergroups. 2019-01-17 12:21:30 +04:00
John Preston
b236844c94 Fix crash in admin log events. 2019-01-17 12:21:30 +04:00
John Preston
67d12fa6d2 Improve update handling for legacy chats. 2019-01-17 12:21:30 +04:00
John Preston
215856adc3 Improve AddSpecial box for legacy groups. 2019-01-17 12:21:30 +04:00
John Preston
07e010dfb5 Save admins in legacy groups. 2019-01-17 12:21:30 +04:00
John Preston
dba9ca2084 Replace TLHelp helpers with .match() 2019-01-17 12:21:30 +04:00
John Preston
9a60e744d3 Unify permissions checks in participants boxes. 2019-01-17 12:21:30 +04:00
John Preston
e1a2ab0d7e Log only source base name in assertions. 2019-01-17 12:21:30 +04:00
John Preston
a605c110a8 Support legacy groups in participant boxes. 2019-01-17 12:21:29 +04:00
John Preston
18c6be0d3b Unify legacy and megagroups information edit. 2019-01-17 12:21:29 +04:00
John Preston
ff728e2fc1 Add default permissions changes to admin log. 2019-01-17 12:21:29 +04:00
John Preston
eff90395b6 Add EditPeerPermissionsBox. 2019-01-17 12:21:29 +04:00
John Preston
f4d52b82b4 Allow reusing permissions edit controls. 2019-01-17 12:21:29 +04:00
John Preston
61419b57c8 Prepare legacy group restrictions checking. 2019-01-17 12:21:29 +04:00
John Preston
441989a8e1 Remove EditChannelBox. 2019-01-17 12:21:29 +04:00
John Preston
c5a41e1f55 Divide data/data_peer and remove from PCH. 2019-01-17 12:21:29 +04:00
John Preston
0ce4d66601 Rename restrictionReason to unavailableReason. 2019-01-17 12:21:28 +04:00
John Preston
d2d6b319b6 Update API scheme to layer 93. Broken. 2019-01-17 12:21:28 +04:00
John Preston
47edb71a68 Update API scheme to layer 92. 2019-01-17 12:21:28 +04:00
John Preston
1f8626b383 Move App::histories to Data::Session. 2019-01-17 12:21:28 +04:00
John Preston
0d6a36e187 Fix volume widget position.
Fixes #5467.
2019-01-17 12:20:50 +04:00
John Preston
548a0c8517 Fix MTP logging. 2019-01-17 12:20:50 +04:00
John Preston
09d85e25c1 Fix possible crash in SendFilesBox. 2019-01-17 12:20:50 +04:00
John Preston
51b5b14dea Beta version 1.5.7.
- Choose the emoji set you would like to use
in Settings > Chat Settings.
- Choose input and output devices for Telegram Calls
in Settings > Adavanced > Call Settings.
2019-01-11 17:31:36 +04:00
John Preston
0d290a2c28 Fix emoji icon in theme preview.
Fixes #5561.
2019-01-11 17:30:57 +04:00
John Preston
c1b3d589c7 Fix elision in document extension in MediaView.
Fixes #5555.
2019-01-11 17:30:57 +04:00
John Preston
65430d92ea Refactor calls settings panel. 2019-01-11 17:30:57 +04:00
John Preston
8711830f66 Move calls settings to Settings > Advanced.
Also add calls settings button to the calls list box.
2019-01-11 17:30:57 +04:00
John Preston
c4d919d46b Improve emoji quality while creating cache. 2019-01-11 17:30:57 +04:00
John Preston
3e7a688811 Fix tray icon counter on Linux.
Fixes #5525.
2019-01-11 17:30:57 +04:00
John Preston
2773a675d0 Improve sticker set download phrase. 2019-01-11 17:30:57 +04:00
John Preston
9bbdccc111 Postpone sticker send from StickerSetBox.
Fixes #5539.
2019-01-11 17:30:57 +04:00
John Preston
bb8defeb42 Improve change emoji set box design. 2019-01-11 17:30:57 +04:00
John Preston
545dbd0791 Return sticker-related context menu actions.
Regression was introduced in 3e22ada889.
2019-01-11 17:30:57 +04:00
John Preston
c7469075ab Closed beta version 1.5.6.1: Fix build in GCC. 2019-01-11 17:30:57 +04:00
John Preston
54fa974789 Closed beta version 1.5.6.1. 2019-01-11 17:30:57 +04:00
John Preston
2cd3cec478 Go through open history in support mode. 2019-01-11 17:30:00 +04:00
John Preston
c11b977f1d Fix lagging chat list update in support. 2019-01-11 17:30:00 +04:00
John Preston
30e8f17b37 [all] / [one from chat] in support search results. 2019-01-11 17:30:00 +04:00
John Preston
2c3190ce2a Hide LoadMore button in search mode. 2019-01-11 17:30:00 +04:00
John Preston
ea7796dccc Ctrl+[1-5] jump to the relevant pinned chat. 2019-01-11 17:30:00 +04:00
John Preston
a11ca58f36 Fix Ctrl+Insert in hashtag search results. 2019-01-11 17:30:00 +04:00
John Preston
496d711684 Improve support shortcuts handling. 2019-01-11 17:30:00 +04:00
John Preston
219b824338 Refresh filtered results on more dialogs. 2019-01-11 17:30:00 +04:00
John Preston
df389a365c Display emoji set loading radial animation. 2019-01-11 17:30:00 +04:00
John Preston
aa2c52c1f8 Unpack and prepare emoji asynchronously. 2019-01-11 17:30:00 +04:00
John Preston
f48ae29f22 Load emoji sets from the cloud. 2019-01-11 17:30:00 +04:00
John Preston
de00e0e15c Add simple switch emoji set box. 2019-01-11 17:30:00 +04:00
John Preston
79fea49272 Add updating emoji on the run. 2019-01-11 17:30:00 +04:00
John Preston
8190b10680 Support custom emoji sets loading. 2019-01-11 17:30:00 +04:00
Omkar Nath Singh
1ebd9562a2 Update copyright year (#5559) 2019-01-07 11:36:54 +04:00
John Preston
ebaf63393f Fix build for old OS X and MacAppStore. 2019-01-06 15:22:18 +04:00
John Preston
7c168740d9 Update instructions for Xcode 10.1. 2019-01-05 16:34:34 +04:00
Gregory K
11b991cddc Add call settings (#5540) 2019-01-05 15:08:02 +04:00
John Preston
8306e58b75 Fix build in Xcode / GCC. 2018-12-28 19:41:06 +04:00
John Preston
4002739682 Suggest adding bots to channels as admins. 2018-12-28 15:42:58 +04:00
John Preston
c259921269 Use qualified names for App::main and App::wnd. 2018-12-28 11:14:00 +04:00
John Preston
2eb3041c1f Beta version 1.5.6.
- Fix crash on macOS.
2018-12-27 19:55:36 +04:00
John Preston
d539d9b5d2 Fix postponed calls from crl::on_main() on macOS.
In libdispatch crl::on_main() implementation we bypass Application::notify() frame.
So we handle event loop nesting control manually by wrapping all invokations done
through crl::on_main() with the same methods we do from Application::notify().
2018-12-27 13:34:12 +04:00
John Preston
d17c985bcb Beta version 1.5.5.
- Support for auto-download of files and music.
- Improved auto-download settings.
2018-12-27 09:26:19 +04:00
John Preston
e2668e7cfa Default auto-download 8 MB files. 2018-12-27 09:24:46 +04:00
Omkar Nath Singh
18c2c61bee Update Ubuntu support version (#5372) 2018-12-26 15:09:20 +03:00
23rd
be0b0c1984 Fixed an editing of unsupported messages. 2018-12-26 15:10:56 +04:00
John Preston
b00ca217b3 Don't autoread mentions with voice/video messages.
Voice/video message unread flag is the same that mention unread flag.
If we mark such mentions as read together with all others we mark
media as watched/listened instantly when they appear on the screen.

So now we mark as read only simple mentions, without "unread" media.
2018-12-26 14:30:55 +04:00
John Preston
874d76b16b Ignore activations from ~PopupMenu in file dialog event loops. 2018-12-26 13:54:49 +04:00
John Preston
cfac261516 Create Application before ConcurrentTimerEnvironment.
Fixes #5498.
2018-12-26 13:02:43 +04:00
John Preston
7b5e5c2587 Move caption to the next album item on cancel.
After #4869 albums are sent with captions in the first media.
In case we cancel the first media leaving the rest of the album
the caption will be lost unless we move it to the new "first" media.
2018-12-26 11:24:12 +04:00
John Preston
db064381d9 Re-update libtgvoip.
The submodule was rolled back in 0b87db8b45.
2018-12-26 11:20:01 +04:00
John Preston
096c310e0e Display consistent caption/comment placeholder.
After latest PRs regarding sticker sending with comment (#5500)
and album sending with caption (#4869) the input field placeholder
in SendFilesBox was inconsistent with the sending behaviour. Fix it.
2018-12-26 10:53:21 +04:00
udf
0b87db8b45 Ignore only empty drafts while sending with clear_draft (#5424) 2018-12-26 10:52:48 +04:00
John Preston
71cf4a4885 Change default autodownload settings. 2018-12-26 09:58:27 +04:00
John Preston
a0c6104fae Redesign auto download box. 2018-12-25 22:15:22 +04:00
John Preston
8e54ac4dcf Rename autolock_box module to auto_lock_box. 2018-12-25 22:15:22 +04:00
John Preston
97b0288c7d Add automatic loading of videos/files. 2018-12-25 22:15:22 +04:00
John Preston
e3cc8652e4 New structs for media autodownload settings. 2018-12-25 22:15:22 +04:00
John Preston
8708a001c7 Always display nice percent values.
Sum of percent values should never exceed 100%. If any two answers
received same amount of votes, they should show same percent values.
This way sum could be less than 100% (three answers, one vote each),
but this looks better than giving extra vote to some random answer.
2018-12-25 22:12:35 +04:00
John Preston
6fc4facddf Improve updates sending script. 2018-12-25 19:42:02 +04:00
John Preston
e5536880fb Improve mouse/keyboard selection interactions.
Fixes #5458.
2018-12-25 16:41:40 +04:00
John Preston
44ff8f92ac Fix crash with invalid custom langpacks. 2018-12-25 15:22:25 +04:00
John Preston
95208267de Fix applying langpacks from file. 2018-12-25 15:22:01 +04:00
John Preston
9c579e0d5b Fix crash in wrong confirm email button. 2018-12-25 14:53:47 +04:00
John Preston
d1be4c6d96 Fix crash with event loop nesting. 2018-12-25 14:11:10 +04:00
John Preston
a65afdac95 Fix crash in RevokePublicLinkBox. 2018-12-25 12:48:12 +04:00
John Preston
22b47925d4 Fix assertion violation in calls. 2018-12-25 12:21:00 +04:00
John Preston
f291e365e5 Add slide animations in CreatePollBox. 2018-12-25 11:41:22 +04:00
John Preston
6f176803d4 Reload poll data each 30 seconds without update. 2018-12-24 21:03:53 +04:00
John Preston
b6a3bb4080 Allow closing CreatePollBox by escape. 2018-12-24 17:13:44 +04:00
23rd
c7c1deab81 Add caption to first item of album istead of sending separated message. 2018-12-24 17:12:18 +04:00
RMPR
2ded5870b5 Update supported Fedora version (#5502) 2018-12-24 17:03:40 +04:00
John Preston
57f2ae098f Show exact option votes count in a tooltip.
Fixes #5505.
2018-12-24 14:24:16 +04:00
John Preston
76c06923d5 Add ripple animation to poll voting. 2018-12-24 14:03:13 +04:00
John Preston
fb7ac874f0 Show poll question in pinned bar. 2018-12-24 13:25:02 +04:00
John Preston
12905f0dcb Version 1.5.4: Fix build in Xcode. 2018-12-24 12:16:05 +04:00
John Preston
68a313a58f Version 1.5.4.
- Bug fixes and other minor improvements.
2018-12-23 21:37:26 +04:00
John Preston
152115bf2e Disable multiline poll options. 2018-12-23 21:28:12 +04:00
John Preston
8bd3051224 Fix crop photo box title. 2018-12-23 21:23:36 +04:00
John Preston
aa94ca6619 Fix stuck inline mode.
Regression was introduced in 017ec87d60.

Fixes #5503.
2018-12-23 20:57:34 +04:00
John Preston
e397f72eb2 Lock poll creating.
Fixes #5504.
2018-12-23 20:47:00 +04:00
John Preston
4d495b8d7c Fix votes count in RTL languages. 2018-12-23 20:42:32 +04:00
John Preston
a142a2717c Fix no votes label. 2018-12-23 20:37:32 +04:00
John Preston
de4a477686 Mark event loop nesting more carefully.
Fixes #5506. I hope fixes #5508.
2018-12-23 16:08:48 +04:00
John Preston
4e692e2c1e Version 1.5.3: Fix build for GCC. 2018-12-23 01:31:12 +04:00
John Preston
8237e6f7a3 Version 1.5.3.
- Create polls in groups and channels - right from the chat menu.
2018-12-23 00:30:55 +04:00
23rd
d1a9f1feac Fixed caption when sending single WEBP as file. 2018-12-23 00:27:36 +04:00
John Preston
ef1d38462f Simplest polls data export. 2018-12-23 00:23:19 +04:00
John Preston
93c8e9aa1f Add poll vote sending animation. 2018-12-22 23:32:04 +04:00
John Preston
ac2dce4bb1 Fix polls percent display. 2018-12-22 22:48:25 +04:00
John Preston
f2e1d90c74 Add send vote / retract vote animation. 2018-12-22 22:36:00 +04:00
John Preston
8e28a229f2 Improve polls design. 2018-12-22 14:23:22 +04:00
John Preston
363f6cb329 Add question / options length warnings. 2018-12-22 10:29:03 +04:00
John Preston
b6f7832745 Add create poll box from groups three-dot menu. 2018-12-22 10:29:03 +04:00
John Preston
74c1db740d Implement polls voting and actions. 2018-12-21 17:09:33 +04:00
John Preston
4bb5dcf50c Simplest poll layout. 2018-12-21 17:09:32 +04:00
John Preston
b0d01389c6 Add .terminal extension as executable on macOS. 2018-12-21 17:09:32 +04:00
John Preston
3e22ada889 Remove HistoryMediaType type-tag. 2018-12-21 17:09:32 +04:00
John Preston
6d08394adc Divide history_media_types to several modules. 2018-12-21 17:09:31 +04:00
John Preston
47bdeeef9a Poll data and updates handling added. 2018-12-21 17:09:31 +04:00
John Preston
099440d008 Add test poll sending code. 2018-12-21 17:09:30 +04:00
John Preston
eb7201a55b Strictly match message / media types. 2018-12-21 17:09:30 +04:00
John Preston
6d9f40db30 Update API scheme to layer 91. 2018-12-21 17:09:30 +04:00
John Preston
7960706e60 Update API scheme to layer 90. 2018-12-17 11:01:30 +04:00
John Preston
8b0e54a95c Fix macOS main menu items. 2018-12-17 10:45:48 +04:00
John Preston
89e8f0ccc3 Fix pt-br FAQ link. 2018-12-17 10:12:44 +04:00
John Preston
0f67f75bed Version 1.5.2: Fix unread mentions in workmode. 2018-12-13 16:31:03 +04:00
John Preston
4836173fe6 Version 1.5.2: Fix video message duration. 2018-12-13 15:33:38 +04:00
John Preston
7378ad00b0 Version 1.5.2.
- Bug fixes and other minor improvements.
2018-12-13 12:59:48 +04:00
John Preston
e876c9b6a6 Disable support shortcuts when not support mode.
Fixes #5453.
2018-12-13 12:48:31 +04:00
John Preston
980d20473a Fix building Qt and openal-soft for OS X 10.6/7. 2018-12-12 21:44:49 +04:00
John Preston
22511270dd Fix building openal-soft on Xcode. 2018-12-12 17:59:26 +04:00
John Preston
89cf733d24 Add Ui::PostponeCall() on return to event loop. 2018-12-12 14:14:28 +04:00
John Preston
a167a8587b Fix crash in main menu right button click.
Fixes #5462.
2018-12-12 09:47:24 +04:00
John Preston
ffbd488e93 Clone nimf plugin in Travis Qt build. 2018-12-11 17:39:24 +04:00
John Preston
fa3117e41e Version 1.5.1: Fix build for Xcode. 2018-12-11 17:21:47 +04:00
John Preston
4be335b8ac Version 1.5.1.
- Bug fixes and other minor improvements.
2018-12-11 17:13:47 +04:00
John Preston
3904a9f9a0 Add guard in layers destruction. 2018-12-11 17:12:35 +04:00
John Preston
b683d84df1 Report memory usage in MB. 2018-12-11 16:26:33 +04:00
John Preston
3ad29f6eb7 Fix crash in media preview. 2018-12-11 16:22:27 +04:00
John Preston
cf227490d7 Fix using of base langpack for custom languages. 2018-12-11 16:00:24 +04:00
John Preston
ffd6f7b326 Fix some more missing emoji display.
Fixes #5388.
2018-12-11 15:59:45 +04:00
John Preston
ec2a1b3ddb Fix some missing emoji display. 2018-12-11 11:17:19 +04:00
John Preston
60711471fc Return VB script for UWP version preparing. 2018-12-10 21:41:44 +04:00
John Preston
92738b378c Version 1.5: Fix calls. 2018-12-10 19:37:52 +04:00
John Preston
c5e9c03de9 Version 1.5.
- Support for custom languages. Crowdsource a cloud-based
language pack for Telegram in any language using our
Translations platform - then apply it in real time.
- Interface scaling for large screens, up to 300%
(up to 150% for macOS retina screens).
- 'Count unread messages' setting for the Badge counter
in Settings > Notifications. Disable to show number of unread chats.
- Video messages displayed in shared media (under voice messages).
- Updated emoji. Farewell to question marks!

Also in this update:
- Listen to voice and video messages in 2X mode if you're in a hurry.
- Add a comment when sharing posts from channels.
- View all photos and videos in Twitter and Instagram link previews.
- Add emoji to media captions.
2018-12-10 17:32:24 +04:00
John Preston
6637e5b8e3 Revert "Disable custom languages for now."
This reverts commit 679347309e.
2018-12-07 20:25:18 +04:00
John Preston
b75442a10e No warning from verified peers. 2018-12-07 20:19:47 +04:00
John Preston
811bef41b8 Add caption limit check to updates posting. 2018-12-07 20:19:47 +04:00
John Preston
65242a503b Remove test code for other emoji font. 2018-12-07 20:19:47 +04:00
John Preston
77058b84cd Fix scroll style in local storage box. 2018-12-06 12:56:13 +04:00
5HARK
673962d6a1 Add nimf inputcontext plugin for linux version (#5050) 2018-12-06 11:30:08 +04:00
John Preston
c207f68fd9 Build nimf input method plugin with Qt. 2018-12-06 11:28:24 +04:00
Anton Skorochod
4416dab6c1 Allow UnityCounters for KDE5 resolves #4554 2018-12-06 10:57:07 +04:00
John Preston
f59e824ec1 Possibly fix a crash in image loader. 2018-12-05 15:50:41 +04:00
John Preston
310c68a744 Disable DemiBold fallback for Semibold.
This reverts changes from commit 089c4ceb30.

There were complaints that Persian font becomes unreadable :(
2018-12-05 14:51:47 +04:00
John Preston
2d1971123a Always add 'Saved messages' to index. 2018-12-05 14:41:54 +04:00
John Preston
efe3dfad5c Fix crash in radiobutton destruction.
It crashed if the button was destroyed from group _changedCallback.
2018-12-05 13:55:59 +04:00
John Preston
b10ccce44a Warn before running executable files. 2018-12-05 12:30:05 +04:00
John Preston
edadc51e05 Fix possible crash in dialogs saved peers. 2018-12-05 12:30:05 +04:00
John Preston
0e38671224 Log Qt fatal message to crash report. 2018-12-05 12:30:05 +04:00
John Preston
910b2f2b74 Use upstream range-v3 in Appveyor build.
It still fails because it uses 15.8 toolchain. Will be fixed on 15.9.
2018-12-05 12:29:16 +04:00
John Preston
57387903fd Beta version 1.4.8.
- Add emoji to media captions.
- Switch off the 'Count unread messages' option
in Settings > Notifications if you want to see
the unread chats count in the badge instead.
2018-12-04 20:15:54 +04:00
23rd
8b1ac9fa6e Fixed skipping message with MediaWebPage on KeyUp. 2018-12-04 20:01:17 +04:00
23rd
ad8c0737d6 Refactored key handler in mediaview.cpp.
Refactored key handler in mediaview.cpp.
2018-12-04 19:23:08 +04:00
Jonathan de Jong
87d4d46ce7 Add IDs to JSON exports (#5426)
* Added IDs to various JSON objects.

Including an `_id` addition inside chat message, which get appended to `actor` or `from` entries.
2018-12-04 19:22:17 +04:00
John Preston
61add763ae Restart instead of Unblock for bots. 2018-12-04 15:46:07 +04:00
John Preston
6562a1f6af Add 'Count unread messages' option. 2018-12-04 14:32:48 +04:00
John Preston
71efd10c83 Fix crash on layer -> section migration. 2018-12-04 14:32:47 +04:00
John Preston
679347309e Disable custom languages for now. 2018-12-04 14:32:47 +04:00
John Preston
c8a05137f4 Fix mime type usage for some MP3 files.
They had "audio/mpeg3" instead of "audio/mp3". Fixes #5392.
2018-12-04 14:32:47 +04:00
John Preston
f56d80236e Ignore inline bot with overlapping markdown. 2018-12-04 14:32:47 +04:00
John Preston
1b19e870c0 Fix crash in channel setup box. 2018-12-04 14:32:46 +04:00
John Preston
684ce09bb5 Add some automation for updates posting. 2018-12-04 14:32:46 +04:00
John Preston
9f08faf263 Closed alpha version 1.4.7.6. 2018-12-03 19:33:35 +04:00
John Preston
3bd0efa91e Use 1.7x instead of 2x in voice messages. 2018-12-03 19:33:34 +04:00
John Preston
679330c1c0 Update download icons. 2018-12-03 19:33:34 +04:00
John Preston
47d5e54c48 Fix t.me/username links with upper-case letters. 2018-11-30 13:25:08 +04:00
John Preston
03b0c0cff4 Fix crash in forwarding box. 2018-11-30 09:45:22 +04:00
John Preston
776dd8b928 Closed alpha 1.4.7.5: Fix build on Xcode. 2018-11-29 16:53:54 +04:00
John Preston
c2a2f8dabd Closed alpha version 1.4.7.5. 2018-11-29 16:33:40 +04:00
John Preston
393244d44b Update libopus to 1.3. 2018-11-29 16:33:01 +04:00
John Preston
e6b9caac61 Update libtgvoip. 2018-11-29 16:15:22 +04:00
John Preston
81c4166389 Use CodeBlocks+Makefiles in cmake on Linux.
It gives the files layout in the Qt Creator.
2018-11-29 15:43:31 +04:00
John Preston
0b619e50ba HistoryHider moved to Window namespace. 2018-11-28 15:48:35 +04:00
John Preston
59ecf375b0 Move tg:// handlers to a separate module.
Also move joinGroupByHash and stickerSetBox from MainWidget.
2018-11-26 17:31:13 +04:00
John Preston
338129faea Destroy boxes in Ui::hideLayer(). 2018-11-26 15:00:31 +04:00
John Preston
151a64f817 Close mediaview on confirm link box.
Fixes #5420.
2018-11-26 11:41:27 +04:00
John Preston
3461f3dfc7 Destroy file loaders not delayed. 2018-11-26 11:33:29 +04:00
John Preston
23dc9ef494 Destroy layers not delayed. 2018-11-26 11:33:29 +04:00
John Preston
2fc5b69465 Fix auto word wrap in intro description. 2018-11-26 11:32:53 +04:00
John Preston
f8fc554f78 Closed alpha version 1.4.7.4. 2018-11-23 19:04:14 +04:00
John Preston
3f58c930e3 Use separate download folder for support. 2018-11-22 17:15:52 +04:00
John Preston
7705999e57 Don't occupy bot chats in support mode. 2018-11-22 17:00:14 +04:00
John Preston
0a754b8982 Adding emoji in SendFilesBox and EditCaptionBox. 2018-11-22 16:48:50 +04:00
John Preston
8d3f5820ca Allow TabbedSelector with only emoji. 2018-11-22 14:30:48 +04:00
John Preston
ef4f0168f8 Remove Qt MOC dependency for tabbed selector. 2018-11-22 10:50:41 +04:00
John Preston
9f5b09c263 Add emoji autocomplete to all fields. 2018-11-21 14:09:46 +04:00
John Preston
a1c61daea6 Add contact opens chat in support mode. 2018-11-21 10:51:49 +04:00
John Preston
90c1c21646 Fix switching between hashtag results. 2018-11-21 10:43:49 +04:00
John Preston
bf9069524a Allow long support user information. 2018-11-21 10:43:35 +04:00
John Preston
905376de1d By default load messages for the last week. 2018-11-21 10:43:07 +04:00
John Preston
6fa556e8ea Closed alpha version 1.4.7.3. 2018-11-20 19:50:36 +04:00
John Preston
9a8ab84ecb Add edit / view of user information for support. 2018-11-20 19:50:36 +04:00
John Preston
5e1b8212b2 Show tsfname in occupied chats. 2018-11-20 19:50:36 +04:00
John Preston
7ca821f38c Leave chats search query in support mode. 2018-11-20 19:50:36 +04:00
John Preston
5c718c7c9a Improve support template ordering. 2018-11-20 19:50:36 +04:00
John Preston
7e104805c0 Handle AUTH_KEY_UNREGISTERED on password submit. 2018-11-20 19:50:36 +04:00
John Preston
21fab77c4b Add support for incomplete login attempts. 2018-11-20 19:50:36 +04:00
John Preston
770f4a78aa Allow '-' character in code inputs. 2018-11-20 19:38:40 +04:00
John Preston
c522e047c6 Fix crash in support switches. 2018-11-20 19:38:40 +04:00
John Preston
92f6949ecc Closed alpha version 1.4.7.2. 2018-11-20 19:38:40 +04:00
John Preston
478eeea73e Add custom Qt message handler for crashes. 2018-11-20 19:38:40 +04:00
John Preston
163ee73719 Fix switch to prev/next in Support. 2018-11-20 19:38:40 +04:00
John Preston
479a6d9ad2 Add some more shortcuts for Support. 2018-11-20 19:38:40 +04:00
John Preston
b3ffbeb63e Improve code for Shortcuts handling. 2018-11-20 19:38:40 +04:00
John Preston
8a3615281c Support structured bindings in base::flat_map. 2018-11-20 19:38:40 +04:00
John Preston
d6b4448d3c Show reload toast inside Support::Templates. 2018-11-20 19:38:40 +04:00
John Preston
123523ef62 Separate some lang phrases. 2018-11-20 19:38:39 +04:00
John Preston
4960e08a24 Display occupied chats using drafts for support. 2018-11-20 19:38:39 +04:00
John Preston
60103f7ad6 Use upstream range-v3 on MSVC.
The build works using MSVS 15.9 and latest range-v3 code.
2018-11-20 19:38:39 +04:00
John Preston
d3a261de89 Scroll to cursor after template replacement. 2018-11-20 19:38:39 +04:00
John Preston
ecce1edded Unify version format in MainMenu / About. 2018-11-20 19:38:39 +04:00
John Preston
fb8eafab81 Fix migrating from legacy lang storage. 2018-11-20 19:38:39 +04:00
John Preston
a6de296703 Closed alpha version 1.4.7.1. 2018-11-20 19:38:39 +04:00
John Preston
be3e43e6cb Confirm 2sv recovery email by code. 2018-11-20 19:38:39 +04:00
John Preston
93678a07a8 Use API-provided translations link. 2018-11-20 19:38:39 +04:00
John Preston
155b8f1c45 Update API scheme to layer 89. 2018-11-20 19:38:39 +04:00
John Preston
e737fa59b3 Submit local Peer2PeerNobody setting to the cloud. 2018-11-16 20:17:58 +04:00
John Preston
8d27d8efcf Use cloud-based settings for p2p in calls. 2018-11-16 20:17:58 +04:00
John Preston
5174c002cf Update API scheme to layer 88. 2018-11-16 20:17:58 +04:00
John Preston
26b8515cb5 Improve languages box and language local storing.
Use current language native name instead of lng_language_name value.
2018-11-16 20:17:58 +04:00
John Preston
cf5bd31203 Suggest switch to even empty language. 2018-11-16 20:17:58 +04:00
John Preston
d485287a59 Close languages box by Escape key. 2018-11-16 20:17:58 +04:00
John Preston
d0e48a02a1 Apply lang pack versions from config. 2018-11-16 20:17:58 +04:00
John Preston
36b702702b Support [inputN|n]otifyBroadcasts setting. 2018-11-16 20:17:58 +04:00
John Preston
75db59a8bb Fix user and chat flags handling. 2018-11-16 20:17:58 +04:00
John Preston
48548e9303 Improve phrases for custom langpacks. 2018-11-16 20:17:58 +04:00
John Preston
5163905954 Add a Delete/Share menu for unofficial languages. 2018-11-16 20:17:58 +04:00
John Preston
27d58e1e2a Fix lang_auto boundaries check. (thanks Randl) 2018-11-16 20:17:58 +04:00
John Preston
78da810114 Extend pinned messages support.
Support them in saved messages and normal groups.
2018-11-16 20:17:58 +04:00
John Preston
6d65cf2382 Redesign languages box with a search filter. 2018-11-16 20:17:58 +04:00
John Preston
162da089ec Handle t.me/setlanguage links.
Also support custom langpacks with base langpacks.
2018-11-16 20:17:58 +04:00
John Preston
228fb2f80d Update API scheme to layer 87. 2018-11-16 20:17:58 +04:00
John Preston
8ed600bf3f Add some debug logs. 2018-11-16 20:17:58 +04:00
John Preston
e3b6e1325e Use AL_DIRECT_CHANNELS_SOFT for audio playback.
See https://github.com/telegramdesktop/tdesktop/issues/2580.
2018-11-16 20:17:58 +04:00
John Preston
9101d64b20 Show unavailable admin options as unchecked. 2018-11-16 20:17:58 +04:00
John Preston
089c4ceb30 Use DemiBold fallback for Open Sans Semibold. 2018-11-16 20:17:58 +04:00
23rd
dc8abc74ed Fixed editing of the last message on KeyUp.
Skip stickers, video-messages, call-messages and edit following message.
2018-11-16 20:10:19 +04:00
Vitaly Zaitsev
31e3a426a6 Refactored FallbackFontConfig() to use native Qt methods.
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2018-11-16 20:09:33 +04:00
23rd
00969df06f Made isAudioFile() check more strictly.
Thanks John Preston.
2018-11-15 09:43:39 +04:00
23rd
c482ccfd4e Show all audio in "Files" category with FILE layout. 2018-11-15 09:43:39 +04:00
Nicholas Guriev
b6432e7d13 Switch to Ayatana Indicators 2018-11-13 10:30:54 +04:00
Omkar Nath Singh
35a3cb35d5 OpenAL soft license link update (#5379) 2018-11-12 22:42:37 +03:00
John Preston
2cadabd60c Added fc-custom.conf to git. 2018-11-12 17:36:24 +04:00
John Preston
997d1fbc80 Move custom fonts.conf to resources. 2018-11-12 17:34:47 +04:00
John Preston
8ee958bfa0 Force custom bundled fonts.conf if fontconfig is new.
If system fontconfig version is 2.13 or above use custom FONTCONFIG_FILE.
Fixes #4493, fixes #4240.
2018-11-12 15:26:36 +04:00
John Preston
8b64c96381 Separate some lang keys.
Fixes #5146.
2018-11-12 14:39:22 +04:00
John Preston
aba6cc2c64 Don't force WEBP format for stickers.
Fixes #5374.
2018-11-12 14:39:21 +04:00
John Preston
0718520f36 Disable default fallback to Segoe UI.
Fixes #5368.
2018-11-12 14:39:21 +04:00
John Preston
93b7a797d2 Allow non-lower template keys replacements. 2018-11-12 14:39:21 +04:00
John Preston
4ab0e693c1 Write memory usage to crashdump on Windows. 2018-11-12 14:39:21 +04:00
John Preston
af5f85a288 Fix crash with dangling DocumentData pointers. 2018-11-12 14:39:20 +04:00
John Preston
0a69f3c7fd Beta version 1.4.7.
- Crash fix.
2018-11-10 12:16:40 +04:00
John Preston
48889ce56e Better fix for a crash on quit. 2018-11-10 12:16:29 +04:00
John Preston
4532e59933 Beta version 1.4.6: Fix crash on quit. 2018-11-10 10:10:47 +04:00
John Preston
91d784f9bd Beta version 1.4.6: Fix libtgvoip for Linux. 2018-11-09 21:29:40 +04:00
John Preston
6f56097c53 Beta version 1.4.6.
- Bug fixes and other minor improvements.
2018-11-09 20:13:59 +04:00
John Preston
5b0ad0508a Update libtgvoip. 2018-11-09 20:13:59 +04:00
John Preston
f1c06d6743 Store StickerData::image in unique_ptr. 2018-11-09 19:16:47 +04:00
John Preston
e5949dbb86 Restore player delegate non-delayed (crashfix). 2018-11-09 19:16:27 +04:00
John Preston
2b95b96fa3 Store replyPreview in unique_ptr<Image>. 2018-11-09 19:14:31 +04:00
John Preston
147079ce2a Fix crash in unloaded userpic handling. 2018-11-09 18:01:54 +04:00
John Preston
e992702783 Load chats in chunks in support mode. 2018-11-09 17:54:34 +04:00
John Preston
2d05281ba9 Add configuration for OpenAL effects usage. 2018-11-09 16:28:15 +04:00
John Preston
9a1069c1ae Fix resuming audio on call end. 2018-11-09 11:27:12 +04:00
John Preston
561d3e0670 Beta version 1.4.5: Fix build script. 2018-11-08 22:00:08 +04:00
John Preston
d7a41ce8f7 Beta version 1.4.5.
- Listen to voice and video messages in 2X mode if you're in a hurry.
- Find video messages in the shared voice messages section.
- Add a comment when you share posts from channels.
- View all photos and videos in Twitter and Instagram link previews.
- Bug fixes and other minor improvements.
2018-11-08 17:29:29 +04:00
John Preston
784b0a2248 Revert "Show invite link owner in service message."
This reverts commit 27103889a4.
2018-11-08 17:17:00 +04:00
John Preston
346cb4e203 Fix some bugs in double playback speed.
- Apply double speed for all voice tracks, not only for the current.
- Use dedicated atomic in Mixer for the voice speed (fix race).
- Store the playback speed in user settings, not in global settings.
- Use float64 for setting (just consistency, no float-s right now).
2018-11-08 17:06:22 +04:00
Magnus Groß
de8518a112 Implement double playback speed
This adds double playback speed for both voice messages and round video
messages.
The 2x playback speed setting is global and is saved in local storage.

Fixes #4907
2018-11-08 17:05:34 +04:00
John Preston
8ef67c393b Fix build after openal-soft update.
Regression was introduced in 91c85ec86b.
2018-11-08 15:27:06 +04:00
Kirill Romanov
496c361bdc Gnome notification fix (#5215)
* Set notification desktop entry hint

* Set X-GNOME-UsesNotifications flag
2018-11-08 14:58:04 +04:00
John Preston
3646301ce4 Fix build for old OS X versions. 2018-11-08 14:48:15 +04:00
Magnus Groß
9042109d04 Travis: Fix failing to remove OpenAL Cache
rm: cannot remove ‘include/AL/al.h’: Permission denied

See https://travis-ci.org/telegramdesktop/tdesktop/jobs/452071589 for
more info
2018-11-08 10:50:53 +04:00
Magnus Groß
91c85ec86b Update OpenAL-Soft
Update to version 1.19.1
2018-11-08 10:50:53 +04:00
John Preston
7d3919e3f7 Correctly parse version in the snap. 2018-11-08 10:50:26 +04:00
John Preston
3a928aac9f Update version by a python script. 2018-11-08 10:35:48 +04:00
John Preston
8b6e24e83d Build alphas only for official targets. 2018-11-08 10:33:44 +04:00
John Preston
ef38572d5a Detect and send supports_streaming bit for videos. 2018-11-07 18:10:00 +04:00
John Preston
a2b04c9d71 Improve checks for a hidden webpage url. 2018-11-07 14:55:38 +04:00
23rd
c20ab0b93e Removed unused variables in input_fields.cpp. 2018-11-07 14:53:21 +04:00
John Preston
c496a34f57 Fix single accented letter suggestion in hashtags.
Fixes #5335.
2018-11-07 14:28:35 +04:00
John Preston
27103889a4 Show invite link owner in service message. 2018-11-07 14:28:35 +04:00
Marco Trevisan (Treviño)
e781b29d57 snap: use own app_id and api_hash 2018-11-07 14:28:22 +04:00
John Preston
751506d5b5 Better adjust shared media count. 2018-11-06 13:50:31 +04:00
John Preston
2061248224 Push stable / beta commits to launchpad on release. 2018-11-06 13:49:48 +04:00
Marco Trevisan (Treviño)
dcb748c544 destkop: add keywords stanza
They are used by mayor desktops to search through apps.

Remove this modification from snapcraft
2018-11-06 09:50:59 +04:00
Marco Trevisan (Treviño)
ec37867d72 snap: copy .desktop file and icon from part source path 2018-11-06 09:50:59 +04:00
Marco Trevisan (Treviño)
20c1b58307 snap: use content interfaces for themes icons and sounds
Reduce the space used and support proper theming
2018-11-06 09:50:59 +04:00
John Preston
e482f041a8 Allow disabling even system proxy settings.
Fixes #4944.
2018-11-05 18:52:01 +04:00
John Preston
ef64d9c188 Show round videos in Info layer. 2018-11-05 17:18:54 +04:00
John Preston
466444e17d Extract float player controller. 2018-11-05 15:16:09 +04:00
John Preston
b420f5b41b Fix crash in round video playback. 2018-11-05 14:00:53 +04:00
John Preston
53a719e1b1 Display round videos in shared voice messages. 2018-11-05 12:22:09 +04:00
John Preston
5f665b8ecb Add a comment field to ShareBox. 2018-11-04 15:58:32 +04:00
John Preston
65b2db2160 Don't provide 'api_id' and 'api_hash' by default.
We ask the developer to obtain his own api credentials, because
the bundled 'api_id' / 'api_hash' are strictly limited by the server.

The old credentials still could be used for test purposes,
but the developer will need to explicitly opt-in to use them.
2018-11-04 15:57:50 +04:00
John Preston
617d21129f Show confirmation on hidden webpage url. 2018-11-04 15:51:40 +04:00
John Preston
2d1fdc4485 Seek video to start if position is small. 2018-11-04 15:51:40 +04:00
John Preston
5aa2e66d02 Show large photos in web pages with IV. 2018-11-04 15:51:40 +04:00
John Preston
8850d974a2 Pass correct FileOrigin for userpics. 2018-11-04 15:51:40 +04:00
John Preston
e6c4c48261 Animate check in album sending. 2018-11-04 15:51:39 +04:00
John Preston
8eb0f3b60a Remove some unneeded Q_OBJECTs. 2018-11-04 15:51:39 +04:00
John Preston
5192049194 Resume audio when call ends. 2018-11-04 15:51:39 +04:00
John Preston
fabf830132 Allow up to 128 MB of cached images. 2018-11-04 15:51:39 +04:00
John Preston
c9159e2191 Clear memory on MediaView closing. 2018-11-04 15:51:39 +04:00
John Preston
f2348fc749 Fix document unloading. 2018-11-04 15:51:39 +04:00
John Preston
264ab285a7 Fix ImageSource unloading. 2018-11-04 15:51:39 +04:00
John Preston
f28a92be1d Fix another crash in DocumentData destructor. 2018-11-04 15:51:39 +04:00
John Preston
d38a6e5047 Closed alpha version 1.4.4.2. 2018-11-04 15:51:39 +04:00
John Preston
3447aac940 Prefix client-side lang_code-s with #. 2018-11-04 15:51:39 +04:00
John Preston
711b8cfa36 Fix auto interface scale by primary screen dpi. 2018-11-04 15:51:39 +04:00
John Preston
91a6af71a0 Limit video messages size. 2018-11-04 15:51:39 +04:00
John Preston
885e7f0471 Fix pen reset in TextPainter of empty text. 2018-11-04 15:51:39 +04:00
John Preston
8c1e546123 Fix crash in DocumentData destructor.
~DocumentData sometimes calls ~Image that calls RemoteSource::unload.
It tries to schedule delayed loaded deletion and accesses Auth().
But ~DocumentData is called from ~Session, so Auth() is unaccessible.
2018-11-04 15:51:39 +04:00
John Preston
fd4dedcbdf Use good video thumbnail in albums. 2018-11-04 15:51:39 +04:00
John Preston
88a82eecf3 Fix crash in unloaded null Image. 2018-11-04 15:51:39 +04:00
John Preston
906122a334 Insert Segoe UI and San Francisco font substitutions.
Fixes #1791, fixes #3354, fixes #4454.
2018-11-04 15:51:39 +04:00
John Preston
6f1529d730 Backport Qt fix for font weights on macOS Mojave. 2018-11-04 15:51:39 +04:00
John Preston
46162ed3c4 Fix grouped media corner in one layout. 2018-11-04 15:51:39 +04:00
John Preston
3b911f19f6 Fix collage/slideshow extracting in GCC.
It was depending on argument evaluation order before that fix.
2018-11-04 15:51:39 +04:00
John Preston
4e6f55e176 Closed alpha version 1.4.4.1: Fix build for macOS. 2018-11-04 15:51:38 +04:00
John Preston
14cae1b59a Closed alpha version 1.4.4.1. 2018-11-04 15:51:38 +04:00
John Preston
9aa23dac80 Fix ripple glitch on theme switching. 2018-11-04 15:51:38 +04:00
John Preston
eb099c70e6 Fix removing members from search results.
Fixes #5236.
2018-11-04 15:51:38 +04:00
John Preston
4837117719 Use photo as video thumbnail in WebPageData. 2018-11-04 15:51:38 +04:00
John Preston
550b67236e Reactive main window only if app is active.
Otherwise when we choose "Show in Folder" app looses focus,
then destroys PopupMenu and instantly regains focus back.
2018-11-04 15:51:38 +04:00
John Preston
8000ff2cd7 Generate high quality thumbnail on sending video. 2018-11-04 15:51:38 +04:00
John Preston
da358615e0 Generate high quality video thumbnail when loaded. 2018-11-04 15:51:38 +04:00
John Preston
8f387891e2 Show group / channel in ConfirmInviteBox. 2018-11-04 15:51:38 +04:00
John Preston
a961615076 Clear unused emoji cache with DB. 2018-11-04 15:51:38 +04:00
John Preston
bf31722931 Show collage/slideshow as an album in MediaView. 2018-11-04 15:51:38 +04:00
John Preston
251f51ca1b Show collage/slideshow as an album in web page. 2018-11-04 15:51:38 +04:00
John Preston
e8722e1cb2 Separate (c), (r), (tm) and emoji.
Fixes #3300.
2018-11-04 15:51:38 +04:00
John Preston
6db4972208 Fix blurry App Switcher icon on macOS.
Fixes #5267.
2018-11-04 15:51:38 +04:00
John Preston
f0e18ac619 Add better unloading for ImageSource. 2018-11-04 15:51:38 +04:00
John Preston
8e7117fa22 Don't unload all media on switching between chats. 2018-11-04 15:51:38 +04:00
John Preston
959859f57c Forget least used documents gradually. 2018-11-04 15:51:37 +04:00
John Preston
f8eef7c9a6 Forget least used images gradually. 2018-11-04 15:51:37 +04:00
John Preston
595134cab5 Move image-related modules to ui/image/. 2018-11-04 15:51:37 +04:00
John Preston
8b76428c7e Create ImagePtr-s using a factory method. 2018-11-04 15:51:37 +04:00
John Preston
591fbf0ec6 Replace image source after photo sending. 2018-11-04 15:51:37 +04:00
John Preston
4b5b79e415 Use final Image with different Images::Source-s. 2018-11-04 15:51:37 +04:00
John Preston
5a50248055 Remove Image::toDelayedStorageImage downcaster. 2018-11-04 15:51:36 +04:00
John Preston
113f665295 Move Image and derived to ui/image. 2018-11-04 15:51:36 +04:00
John Preston
d56a3d015b Add more plural rules support. 2018-11-04 15:51:36 +04:00
John Preston
85c59762a4 Fix broken emoji. 2018-11-04 15:51:36 +04:00
John Preston
01b4e1946a Show reset scale button if window doesn't fit. 2018-11-04 15:51:36 +04:00
Viktor Oreshkin
17cde3426a Update CONTRIBUTING.md
Add translations (see #5273)
2018-11-04 15:49:14 +04:00
John Preston
19e407532b Beta version 1.4.4: Fix emoji cache. 2018-10-17 16:04:13 +03:00
John Preston
c5d20a21f7 Beta version 1.4.4: Correct caption limit. 2018-10-17 14:43:18 +03:00
John Preston
54f2b1b2d8 Beta version 1.4.4: Fix emoji quality. 2018-10-17 14:43:17 +03:00
John Preston
5e872e4d2d Beta version 1.4.4: Fix build for GCC. 2018-10-17 10:07:22 +03:00
John Preston
a429e22b93 Beta version 1.4.4: Add some checks. 2018-10-17 09:25:24 +03:00
Grishka
44eac2bf07 Added support for platform-specific microphone permission in calls 2018-10-17 08:53:23 +03:00
John Preston
500ecb464c Beta version 1.4.4.
- Interface scaling for large screens, up to 300%
(up to 150% for macOS retina screens).
- Updated emoji.
2018-10-16 23:23:29 +03:00
John Preston
5b4abe69aa Add interface scale (100%..150%) for Retina.
Fixes #69, fixes #3126, fixes #3789.
2018-10-16 23:00:55 +03:00
John Preston
f2866442d2 Fix location thumb image sizes 2018-10-16 17:32:12 +03:00
John Preston
3cdfa1014a Fix reading saved self. 2018-10-16 11:38:09 +03:00
John Preston
0d4ad1b635 Remove old settings code. 2018-10-16 11:38:09 +03:00
John Preston
19a9a990b6 Allow using any interface scale between 100%-300%. 2018-10-16 11:38:09 +03:00
John Preston
149639a53d Add and bundle @3x icons.
Also bundle only 1x, @2x, @3x and generate 125% and 150%.
2018-10-16 11:38:09 +03:00
John Preston
2812d2911f Remove media_volume icon, use volume slider. 2018-10-15 11:06:27 +03:00
John Preston
2b2b9c2f03 Check emoji cache signature asynchronously. 2018-10-15 09:04:07 +03:00
John Preston
b847c8424a Use single emoji sprite and scale + cache it. 2018-10-15 09:03:29 +03:00
John Preston
59a97ffb99 Generate and keep only one emoji copy (400%) bundled. 2018-10-13 18:03:46 +03:00
John Preston
d5ec85c1d8 Add support for more emoji. 2018-10-13 18:03:46 +03:00
John Preston
979db97859 Version 1.4.3.
- Bug fixes and other minor improvements.
2018-10-13 08:01:27 +03:00
John Preston
e896971fa4 Allow instant template selection (support). 2018-10-11 19:07:37 +03:00
John Preston
ec49ff31ef Disable autodownload on login (support). 2018-10-11 15:13:36 +03:00
John Preston
1ec9137fd7 Clear locations data on logout. Fixes a crash.
Also clear user notification center delegate on macOS.
2018-10-10 08:29:31 +03:00
John Preston
d6f4886c5b Version 1.4.2.
- Crash fix.
2018-10-10 00:21:48 +03:00
John Preston
b6128b6fe0 Fix undefined behaviour in base::weak_ptr.
Regression was introduced in 1c79f85d00.

Invalid casts lead to crashes in macOS notifications handling.
Casts were T* -> has_weak_ptr* -> void* -> T* which was not working
in case T had has_weak_ptr as not first base class.

Now it uses just T* -> has_weak_ptr* -> T* casts.
2018-10-10 00:19:47 +03:00
John Preston
9436789d6d Version 1.4.1: Fix Linux Updater. 2018-10-09 22:07:38 +03:00
John Preston
fd53385c1f Version 1.4.1: Fix build for old OS X. 2018-10-09 21:58:56 +03:00
John Preston
0e9ad5d82b Fix build for Mac App Store. 2018-10-09 20:03:41 +03:00
John Preston
759bbe63dc Version 1.4.1.
- Reduce crashes due to the out of memory exceptions.
- Load map previews through mtproto.
- Bug fixes and other minor improvements.
2018-10-09 19:27:18 +03:00
John Preston
e8a390c251 Use TelegramForcePortable for alpha versions. 2018-10-09 19:27:18 +03:00
John Preston
631e51a493 Hashtag search results as dialogs (support). 2018-10-09 19:27:18 +03:00
John Preston
81a9554caa Move some settings to the main menu (support). 2018-10-09 19:27:18 +03:00
John Preston
3f1f070d3f Move sessions list up in Settings. 2018-10-09 19:27:18 +03:00
John Preston
987fa198c8 Use original emoji for the autocomplete tooltip.
Fixes #5235.
2018-10-09 19:27:18 +03:00
John Preston
2444acb041 Fix image data forgetting.
In case image was almost loaded (loader was ready, but not destroyed yet),
forget() didn't do anything, leaving bytes and image inside loader untouched.

Now we check loader state in forget() so that bytes and image are passed to
Image instance before they're forgot from the memory. This will improve memory
clearing while scrolling through chats with images and switching between them.
2018-10-09 19:27:18 +03:00
John Preston
3992cea084 Draw map point on HistoryLocation. 2018-10-09 19:27:18 +03:00
John Preston
f9632d5c43 Fix possible buffer overflow in Linux Updater.
Fixes #5227.
2018-10-09 19:27:18 +03:00
John Preston
f43752b3ad Fix memory leak in reply previews.
Regression was introduced in 2e7f4c2f21.

Fixes #5237.
2018-10-09 19:27:18 +03:00
John Preston
44496c7053 Disable notifications on login (support). 2018-10-09 19:27:18 +03:00
John Preston
9f90d3a7fc Load maps using mtproto instead of google. 2018-10-09 19:27:18 +03:00
John Preston
be6e329e94 Don't switch chats on ctrl+shift+send (support). 2018-10-09 19:27:18 +03:00
John Preston
83919492d3 Ignore unread counts from deleted (support). 2018-10-09 19:27:18 +03:00
John Preston
9d4d3cc5e3 Show toast when reloading templates (support). 2018-10-09 19:27:17 +03:00
John Preston
ee8819681f Don't jump to unread from chat bottom (support). 2018-10-09 19:27:17 +03:00
John Preston
a0ff432ac8 Don't scroll dialogs up (support). 2018-10-09 19:27:17 +03:00
John Preston
a27e9ad734 Use black icon for support mode (support). 2018-10-09 19:27:17 +03:00
John Preston
6ba0755e15 Move support to the main settings (support). 2018-10-09 19:27:17 +03:00
John Preston
1b4f3a7529 Show short previews in templates (support). 2018-10-09 19:27:17 +03:00
John Preston
b322f986a8 Provide user phone on auth session create.
We need the phone in the constructor to switch on the support mode.
2018-10-09 19:27:17 +03:00
John Preston
e712a51833 Disable animations on login (support). 2018-10-09 19:27:17 +03:00
John Preston
06629e8cd9 Improved calendar layout for export. 2018-10-09 19:27:17 +03:00
John Preston
841abc2e87 Limit single chat export by dates. 2018-10-09 19:27:17 +03:00
John Preston
f362702856 Add UI to specify export time range. 2018-10-09 19:27:17 +03:00
John Preston
0f535a98a7 Closed alpha bersion 1.4.0.1: Fix macOS build. 2018-10-09 19:27:17 +03:00
John Preston
cf338e669a Closed alpha version 1.4.0.1. 2018-10-09 19:27:17 +03:00
John Preston
eaa50adf75 Remove irrelevant menu items (support). 2018-10-09 19:27:17 +03:00
John Preston
052fabcae3 Use old keys after template autoupdate (support). 2018-10-09 19:27:17 +03:00
John Preston
a6b325f0d0 Allow sending contact info in templates (support). 2018-10-09 19:27:17 +03:00
John Preston
1411dfb711 Add autoupdating for templates (support). 2018-10-09 19:27:17 +03:00
John Preston
ccaec28d0b Read and autocomplete templates (support). 2018-10-09 19:27:16 +03:00
John Preston
36f72191ad Allow any version to be used as a portable.
You need to place TelegramForcePortable folder near the application.
2018-10-09 19:27:16 +03:00
John Preston
25cefc6eab Allow fix chats order and auto switch (support). 2018-10-09 19:27:16 +03:00
John Preston
29432d5d6a Remove some unused themes code. 2018-10-09 19:27:16 +03:00
John Preston
20e303d3e6 Read chats only on sending (support). 2018-10-09 19:27:16 +03:00
John Preston
1c79f85d00 Optimize base::weak_ptr. 2018-10-09 19:27:16 +03:00
Tien Do
4f43f1dd0f Remove duplicated packages in brew install (#5222) 2018-10-08 02:39:59 +03:00
23rd
81a2cf9086 Updated CONTRIBUTING.md: Fixed spelling of 'upstream'. (#5206) 2018-09-29 19:23:50 +02:00
John Preston
8c440cc3c5 Version 1.4.0: Fix beta to stable updates. 2018-09-28 16:08:38 +03:00
John Preston
b66f32fe9e Version 1.4.0: Fix build for old OS X versions. 2018-09-28 15:50:47 +03:00
John Preston
3521255d9e Version 1.4.0.
- Fully redesigned Settings section.
- New theme selector in Chat Settings.
- New local storage settings: Control how much disk space is used
by the cache and for how long the cached files are stored.
- Improved local caching for images and GIF animations.
- New settings: Peer-to-Peer settings for calls,
disable animations for low performance computers.
- Various other improvements.
2018-09-28 15:00:14 +03:00
John Preston
d485a05935 Reorder chat settings sections. 2018-09-28 14:20:36 +03:00
John Preston
7ee1af5348 Move advanced notifications settings from box. 2018-09-28 00:18:30 +03:00
John Preston
f493d69bd2 Fix emoji button with disabled animations. 2018-09-27 23:41:49 +03:00
John Preston
a70613d929 Fix client side generated changelogs display.
Also use message date if available in MediaView.
2018-09-27 23:31:48 +03:00
John Preston
352fc55234 Move back by Back key in Intro / Info / Settings. 2018-09-27 17:28:57 +03:00
John Preston
fdfc767930 Allow custom lang loading using Alt+Shift+Click. 2018-09-27 17:27:31 +03:00
John Preston
9b449a1d26 Allow switching off debug logs in closed alpha. 2018-09-27 16:36:27 +03:00
John Preston
18b74b9045 Beta version 1.3.17.
- Fully redisigned Settings section.
- New theme selector in Chat Settings.
- New settings: Peer-to-Peer settings for calls,
disable animations for low performance computers.
- Various other improvements.
2018-09-26 21:23:09 +03:00
John Preston
1cf4d3b4d2 Rename default themes. 2018-09-26 21:23:08 +03:00
John Preston
a7772b922c Improve sticker file reference refreshing. 2018-09-26 21:23:08 +03:00
John Preston
131f7ec5bb Add install beta toggle to Settings > Advanced. 2018-09-26 21:23:08 +03:00
John Preston
971d0efda9 Support toggling installs of beta versions. 2018-09-26 21:23:08 +03:00
John Preston
6e566e0165 Swap 'alpha' and 'beta'. Happy debugging! 2018-09-26 21:23:08 +03:00
John Preston
a949c5e287 Fix crash in theme applying. 2018-09-26 16:06:30 +03:00
John Preston
7ec4d9af3e Closed beta version 1.3.16.7. 2018-09-26 14:37:08 +03:00
John Preston
9b85dd27ca Allow to choose one of four default themes. 2018-09-26 14:36:55 +03:00
John Preston
cf9f7ef508 Fix several bugs for macOS 10.14. 2018-09-26 13:18:59 +03:00
John Preston
7f39d917ab Delayed notification hide without animations. 2018-09-21 21:14:52 +03:00
John Preston
2e5a0e056c Move to std::optional. 2018-09-21 19:28:46 +03:00
John Preston
850efbde95 Closed beta version 1.3.16.6. 2018-09-21 13:50:03 +03:00
John Preston
a11fb2816b Use current language in change language box.
Fixes #5174.
2018-09-21 13:49:13 +03:00
John Preston
23c2ae49c6 Add media date after index in default export name.
Fixes #5167.
2018-09-21 13:08:41 +03:00
John Preston
96556d4a4c Fix single chat export buttons.
Fixes #5120.
2018-09-21 12:51:06 +03:00
John Preston
d601b60903 Fix disabled animations dialogs repaint. 2018-09-21 10:12:53 +03:00
John Preston
e451dec70c Fix update button in new settings. 2018-09-20 23:05:28 +03:00
John Preston
51cbb9b310 Closed beta version 1.3.16.5. 2018-09-20 21:26:32 +03:00
John Preston
1c4f374e3c Improve automatic media download box design. 2018-09-20 21:26:10 +03:00
John Preston
fd0719db6d Add animations enable/disable setting.
Open chats / users on mouse press if animations are disabled.
2018-09-20 21:26:10 +03:00
John Preston
04dd4e30a8 Rename General->Advanced in Settings. 2018-09-20 21:26:10 +03:00
John Preston
1ffbec0215 Finish animations disabling.
Replace some infinite animations with static layouts.
2018-09-20 21:26:10 +03:00
John Preston
f68466b072 Don't scroll chats up when searching in chat. 2018-09-20 21:26:09 +03:00
John Preston
02a8b693af Remove RPATH from official builds.
Fixes #4634.
2018-09-20 10:30:41 +03:00
John Preston
53219bcf70 Fix two bugs with supergroup history disappearing. 2018-09-20 10:02:02 +03:00
John Preston
81f9c70279 Closed beta version 1.3.16.4. 2018-09-19 19:22:15 +03:00
John Preston
233a87a8bc Always export to subfolder of Downloads. 2018-09-19 19:22:15 +03:00
John Preston
00e4cfc345 Move data and storage to advanced settings. 2018-09-19 19:22:15 +03:00
John Preston
9388e154cf Improve edit privacy box design.
Also move calls peer-to-peer settings to EditPrivacyBox.
2018-09-19 19:22:15 +03:00
John Preston
3ba2a7931e Autosave bio in settings edit section. 2018-09-19 19:22:14 +03:00
John Preston
377689ae86 Fix build for Xcode 10. 2018-09-19 19:22:14 +03:00
John Preston
62ffd93cb7 New icons for the main menu. 2018-09-19 19:22:14 +03:00
John Preston
fe9f02e485 Improve self-destruct setting edit. 2018-09-19 19:22:14 +03:00
John Preston
130aa67ba0 Some settings reordered in sections. 2018-09-19 19:22:14 +03:00
John Preston
97a4c76043 Closed beta version 1.3.16.3. 2018-09-19 19:22:14 +03:00
John Preston
3d89a34adf Fix crash in theme editor.
Fixes #5143.
2018-09-19 19:22:14 +03:00
John Preston
5c7155c3a5 Improve privacy and security settings subsections. 2018-09-19 19:22:14 +03:00
John Preston
f582fbf010 Update icons in AddContactBox. 2018-09-19 19:22:14 +03:00
John Preston
c2039da600 Improve new settings design. 2018-09-19 19:22:14 +03:00
John Preston
ffc4cd3415 Closed beta version 1.3.16.2.
- Fix crashes in Windows caused by MSVC 15.8.4 regression.
- Add calls peer-to-peer setting to Privacy&Security.
2018-09-19 19:22:14 +03:00
John Preston
c4ca180745 Add call peer-to-peer setting in Privacy&Security. 2018-09-19 19:22:14 +03:00
John Preston
673fea47bd Don't close info settings with changes by click. 2018-09-19 19:22:14 +03:00
John Preston
83fda73ce3 Workaround MSVC 15.8.4 regression.
It crashes with non-type-erased producers.
2018-09-19 19:22:14 +03:00
John Preston
a5f407a458 Closed beta version 1.3.16.1: Fix build for Xcode. 2018-09-19 19:22:14 +03:00
John Preston
88175aff1f Closed beta version 1.3.16.1.
- New settings design.
2018-09-19 19:22:14 +03:00
John Preston
2f408cd773 Remove old settings. 2018-09-19 19:22:14 +03:00
John Preston
7d8ba66211 Core::UpdateApplication using new settings. 2018-09-19 19:22:14 +03:00
John Preston
c1ae9e9680 Implement intro wrap for new settings. 2018-09-19 19:22:14 +03:00
John Preston
34665cd6da Save self to local storage map. 2018-09-19 19:22:13 +03:00
John Preston
0c8709ca5f Replace App::self() with Auth().user().
Always have self Auth().user() when AuthSession exists.
2018-09-19 19:22:13 +03:00
John Preston
12ebae01b0 Show current privacy values in settings section. 2018-09-19 19:22:13 +03:00
John Preston
165511fb14 Add warning for unsaved Bio section closing. 2018-09-19 19:22:13 +03:00
John Preston
fbf3c005ff Implement new settings design with icons etc. 2018-09-19 19:22:13 +03:00
John Preston
bbe6d2d13b Implement information settings section. 2018-09-19 19:22:13 +03:00
John Preston
633ff4b60e Implement privacy and security settings section. 2018-09-19 19:22:13 +03:00
John Preston
b8c2c3991f Implement chat settings section. 2018-09-19 19:22:13 +03:00
John Preston
38f788f545 Implement general settings section. 2018-09-19 19:22:13 +03:00
John Preston
9af70551f3 Implement notifications settings section. 2018-09-19 19:22:13 +03:00
John Preston
316d015d23 Add three dot menu to settings. Edit + logout. 2018-09-19 19:22:13 +03:00
John Preston
cfce189201 Improve main menu > settings transition animation.
Remove full window cache in case of settings shown as a section.
2018-09-19 19:22:13 +03:00
John Preston
482ecf12ff Fix settings show animation. 2018-09-19 19:22:13 +03:00
John Preston
50b0b61118 Accept typing codes in settings. 2018-09-19 19:22:13 +03:00
John Preston
a7b1d83a3c Add upload new profile photo button to settings. 2018-09-19 19:22:13 +03:00
John Preston
8c1cc51c2e Move peer photo update from Messenger to ApiWrap. 2018-09-19 19:22:13 +03:00
John Preston
e2207e33ef Add FAQ and support buttons to settings. 2018-09-19 19:22:13 +03:00
John Preston
3f543347b8 Add language and scale settings. 2018-09-19 19:22:12 +03:00
John Preston
a7725f03bb Add cover to settings main section. 2018-09-19 19:22:12 +03:00
John Preston
f0d092f126 Section dummies for new Settings. 2018-09-19 19:22:12 +03:00
John Preston
4f16ad6757 Move old settings to old_settings. 2018-09-19 19:22:12 +03:00
Magnus Groß
689aed7258 Show Emoji replacement tooltip on hover
When using the mouse, hovering over a emoji causes the corresponding
replacement text to appear in a tooltip. This feature is disabled, if
the option "Suggest emoji replacements" is disabled.

This closes #3739, closes #743 and closes #4211.
2018-09-19 13:54:46 +03:00
23rd
e966213ff8 Added shortcut to open dialog for attachements. 2018-09-19 12:25:16 +03:00
Emil Engler
4169927d83 Update README.md (#5144): Add snapcraft 2018-09-06 14:19:42 +03:00
John Preston
eacc6b7b6e Alpha version 1.3.16.
- Update libtgvoip, fix crash in calls.
- Fix crash in local cache database.
- Clear old local cache asynchronously.
2018-09-04 22:37:22 +03:00
John Preston
4b87363a20 Check value size before putting to cache db. 2018-09-04 22:37:22 +03:00
John Preston
9ba331693f Async clear of legacy local storage.
Sync call to QDir::entryList is a bad idea for the user data folder.
Some users reported hanging on startup with 1.25M legacy cache files.
Now we enumerate up to 10000 files at once asynchronously and clear.
2018-09-04 22:37:22 +03:00
John Preston
12be795de7 Update libtgvoip. 2018-09-02 16:49:08 +03:00
John Preston
49f56a38fb Fix changelog entry. 2018-09-01 21:44:46 +03:00
John Preston
4e80d54be1 Alpha version 1.3.15.
- Improved local caching for images and GIF animations.
- Control how much disk space is used by the cache
and for how long the cached files are stored.
2018-09-01 18:56:09 +03:00
John Preston
2096007ed9 Fix clearing leaked files with a passcode. 2018-09-01 18:56:09 +03:00
John Preston
47ce695142 Remove some unused lang keys. 2018-09-01 18:56:08 +03:00
John Preston
80cd74edc8 Closed beta version 1.3.14.2: Fix fallthrough. 2018-09-01 18:56:08 +03:00
John Preston
55583c2237 Closed beta version 1.3.14.2. 2018-09-01 18:56:08 +03:00
John Preston
069232ec1b Allow changing limits for cache in Settings. 2018-09-01 18:56:08 +03:00
John Preston
5733f4079f Allow updating some database settings. 2018-09-01 18:56:08 +03:00
John Preston
55fe977d54 Add some tests for Database. 2018-09-01 18:56:08 +03:00
John Preston
736789a9ed Closed beta version 1.3.14.1: Fix for OS X old. 2018-09-01 18:56:08 +03:00
John Preston
7150811aef Closed beta version 1.3.14.1. 2018-09-01 18:56:08 +03:00
John Preston
63103ede81 Update libtgvoip. 2018-09-01 18:56:08 +03:00
John Preston
c86252777b Remove leaked (unknown) files in user data folder. 2018-09-01 18:56:08 +03:00
John Preston
2bcdf27b03 Workaround GCC bug. 2018-09-01 18:56:08 +03:00
John Preston
2001d3c617 Allow cleaner to work after database is closed. 2018-09-01 18:56:08 +03:00
John Preston
8210a51fdc Fix build for Xcode.
Also guard database compactor so that it won't work after closing.
2018-09-01 18:56:08 +03:00
John Preston
08ff324b1b Work with Cache::Database in LocalStorageBox. 2018-09-01 18:56:08 +03:00
John Preston
55f60866cb Set correct cache tags for different file types. 2018-09-01 18:56:08 +03:00
John Preston
e2f08d4161 Write uint8 tags to Database and count stats.
Also pass rvalues to Database where copies are required anyway.
2018-09-01 18:56:08 +03:00
John Preston
2e7f4c2f21 Use Storage::Cache::Database for file caching. 2018-09-01 18:56:08 +03:00
John Preston
a58c082cfa Fix base::binary_guard. 2018-09-01 18:56:08 +03:00
John Preston
5824afa941 Add copy() and move() to Cache::Database. 2018-09-01 18:56:08 +03:00
John Preston
adcc11c474 Ignore database actions after IO error. 2018-09-01 18:56:08 +03:00
John Preston
4769a1a49f Added 100k test for storage cache. 2018-09-01 18:56:08 +03:00
John Preston
f6a6a39d3b Fix compactor and add simple tests for it. 2018-09-01 18:56:08 +03:00
John Preston
2940023cb0 Simplify db tests. 2018-09-01 18:56:08 +03:00
John Preston
d426f7242a Implement Storage::Cache::Compactor for database. 2018-09-01 18:56:08 +03:00
John Preston
2f9d65b4eb Add a generic BinlogReader. 2018-09-01 18:56:08 +03:00
John Preston
a4c1d5fe9d Move cache database to a separate module.
Also start compactor code.
2018-09-01 18:56:08 +03:00
John Preston
13c7c99965 Ignore put queries that don't change anything. 2018-09-01 18:56:08 +03:00
John Preston
fbfa7e7be3 Write date/time inside Store cache record. 2018-09-01 18:56:08 +03:00
John Preston
e5dda6dd49 Write removes/touches in bundles. Apply limits. 2018-09-01 18:56:08 +03:00
John Preston
b9af3c7f34 Add base::ConcurrentTimer.
Write removes from cache database once an hour.
2018-09-01 18:56:08 +03:00
John Preston
64b8adb3d0 Isolate lib_base library. Use crl::time in getms. 2018-09-01 18:56:08 +03:00
John Preston
cb371f09ac Clear old versions of Storage::Cache::Database. 2018-09-01 18:56:08 +03:00
John Preston
9147c12687 Add basic implementation of Storage::Cache DB. 2018-09-01 18:56:08 +03:00
John Preston
b5c870d677 Add xxHash library for checksums. 2018-09-01 18:56:08 +03:00
John Preston
62a396b661 Fix Storage::File lock with killing and add tests. 2018-09-01 18:56:08 +03:00
John Preston
81731139e9 Add tests for storage encrypted file.
Also fix some bugs found by the tests.
2018-09-01 18:56:08 +03:00
John Preston
8a371b9c1b New storage encrypted file. 2018-09-01 18:56:08 +03:00
John Preston
51092fb6a9 Fix file references for faved stickers. 2018-09-01 18:56:08 +03:00
John Preston
018abd6aad Merge remote-tracking branch 'origin/dev' 2018-09-01 18:55:29 +03:00
Henning Schild
5292d75617 Linux: disable RegisterCustomScheme when internal updater is disabled
Closes: https://github.com/telegramdesktop/tdesktop/issues/5118
Signed-off-by: Henning Schild <henning@hennsch.de>
2018-09-01 10:12:09 +03:00
Nicholas Guriev
401e1166f9 Workaround internal compiler error in GCC
Closes: #5111
2018-09-01 10:10:14 +03:00
John Preston
45c1427f91 Version 1.3.14.
- Fix a crash in calls.
2018-08-27 19:07:59 +03:00
John Preston
73be099d7f Update libtgvoip. 2018-08-27 18:18:08 +03:00
John Preston
735faa2d11 Force dump_syms existence in official build script. 2018-08-27 18:08:16 +03:00
John Preston
46946c7323 Use correct SHA1_ functions.
Fixes #5103.
2018-08-27 14:36:26 +03:00
John Preston
d98bbca353 Version 1.3.13.
- Export data from individual chats using the '...' menu.
- Added a new night theme.
- You can now assign custom themes as night and day themes
to quickly switch between them.
- Support for Telegram Passport 1.1 and improved password hashing
algorithm to better protect Telegram Passport data.
2018-08-25 13:50:51 +03:00
John Preston
83fcb8e8ed Fix native names handling in passport. 2018-08-22 17:02:06 +03:00
John Preston
ec61aa0080 Edit last non-service message on KeyUp. 2018-08-22 09:50:36 +03:00
John Preston
4211501acf Improve media viewer window decorations. 2018-08-22 09:50:35 +03:00
John Preston
ae6afad885 Closed beta version 1.3.13.4. 2018-08-20 17:34:26 +03:00
John Preston
3b8cee64b8 Closed beta version 1.3.13.3. 2018-08-20 17:26:28 +03:00
John Preston
a8da0c18ee Closed beta version: 1.3.13.2: Fix broken beta. 2018-08-20 17:26:28 +03:00
John Preston
dac0471157 Closed beta version 1.3.13.2. 2018-08-20 17:26:28 +03:00
John Preston
07007ee5a5 Closed beta version 1.3.13.1. 2018-08-20 17:26:28 +03:00
John Preston
b78c08a30a Bump version to 1.3.13. 2018-08-20 17:26:28 +03:00
John Preston
5a487bc30c Refresh file references in saveGif/faveSticker. 2018-08-20 17:26:28 +03:00
John Preston
c913c77fef Refresh file references when sending stickers. 2018-08-20 17:26:28 +03:00
John Preston
557d363d02 Refresh file references when downloading files. 2018-08-20 17:26:28 +03:00
John Preston
839885910c Pass FileOrigin in all file downloads. 2018-08-20 17:26:28 +03:00
John Preston
ee16070abe Update API scheme to layer 86. 2018-08-20 17:26:27 +03:00
John Preston
b8b5ab6378 Improve native name phrases in passport.
Also auto-save *_name to *_name_latin for english countries.
2018-08-20 17:25:33 +03:00
John Preston
5b88f4d3d2 Update API scheme. 2018-08-20 17:25:06 +03:00
John Preston
34eb834d94 Update libtgvoip to 2.2.2. 2018-08-17 19:32:30 +03:00
John Preston
82a3cd9bdb Use most-filled document from OneOf list. 2018-08-17 19:31:24 +03:00
John Preston
e25ecce887 Ask native names after all other fields are done. 2018-08-17 16:42:07 +03:00
John Preston
9f6d683415 Improve passport rows phrasing.
Also fix translations validation on value save.
2018-08-17 15:07:41 +03:00
John Preston
dc114d62c5 Handle APP_VERSION_OUTDATED in saving/accepting. 2018-08-17 14:11:09 +03:00
John Preston
6bf3006eb9 Rename payload->nonce in new passport scopes. 2018-08-17 14:01:23 +03:00
John Preston
fddc3d6ad9 Workaround MSVC 15.8 regressions. 2018-08-17 14:01:16 +03:00
John Preston
f76a2bc224 Add translations support to passport. 2018-08-14 20:48:23 +03:00
John Preston
6558a32794 Add [first|middle|last]_name_native support. 2018-08-14 15:51:12 +03:00
John Preston
b935d54fe7 Support common error for the whole value.
It is removed (considered fixed) if anything changes in the data.
2018-08-14 14:37:03 +03:00
John Preston
cb827406ca Don't open passport links from inside the app.
They contain secret payload that should not be known to Telegram.
2018-08-14 09:49:14 +03:00
John Preston
36fcf2c60e Add middle_name support to passport.
Also allow editing document without its details.
2018-08-14 09:42:06 +03:00
John Preston
7c173bd63f Ignore errors for not asked fields. 2018-08-14 08:43:40 +03:00
John Preston
3c43f621ce Start improved passport support. 2018-08-14 08:43:04 +03:00
John Preston
bdab477040 Update API scheme to layer 84. 2018-08-11 22:03:34 +03:00
John Preston
550c159ca8 Update API scheme to layer 83. 2018-08-04 23:11:04 +03:00
John Preston
aeec5d1542 Alpha version 1.3.12.
- Bug fixes and other minor improvements.
2018-08-04 21:53:40 +03:00
John Preston
b4aa213c64 Make MediaView modal with MainWindow transient parent on Linux.
There is hope :) that it will force MediaView to be floating in tiling WMs.

Possibly fixes #5048.
2018-08-04 21:12:34 +03:00
John Preston
a241e10208 Bypass window manager for toast notifications.
Regression was introduced in be043a4437.

Fixes #5052.
2018-08-04 21:12:34 +03:00
John Preston
90f6642d33 Use always the same sizes for group layout.
For the floating point precision to matter less in the album layout
decisions use always full image sizes for layout
when sending an album and when displaying it.

Fixes #5049.
2018-08-04 16:48:15 +03:00
John Preston
7bd289ed0f Update the new night theme.
Fixes #5054.
2018-08-04 15:17:48 +03:00
John Preston
c8aa35d23c Don't show PopupMenu for inactive window on macOS.
This is a fixup for 06bf67c146.
2018-08-04 15:17:23 +03:00
John Preston
4e0e472f97 Remove request for debug logs in issue template.
They contain sensitive data and should not be shared publicly.
2018-08-03 14:34:12 +03:00
John Preston
a76658ba46 Alpha version 1.3.11.
- Added a new night theme.
- You can now assign custom themes
as night and day themes to quickly switch between them.
2018-08-02 17:46:50 +03:00
John Preston
6796204126 Fix build for Xcode. 2018-08-02 17:46:50 +03:00
John Preston
1c5e91c9a8 Refresh EditCaptionBox thumbnail when loaded. 2018-08-02 17:46:49 +03:00
John Preston
7f16675d2f Fix via @bot display in Saved Messages.
Fixes #5034.
2018-08-02 17:46:49 +03:00
John Preston
6c7c442ad2 Remove excess RGB -> HSV -> RGB transformation.
Fixes #5043.
2018-08-02 17:46:49 +03:00
John Preston
82fb2151a0 Update libtgvoip submodule to 2.2. 2018-08-02 17:46:49 +03:00
John Preston
36b7c1c720 Fix default night mode applying. 2018-08-02 17:46:49 +03:00
John Preston
06bf67c146 Don't show PopupMenu for inactive window on macOS.
On macOS context menu (right click) doesn't activate the window that was clicked.
- You can't  activate it yourself if some other application is active.
- It's hard to make menu work while window still is inactive (like macOS menus).
Because when you left-click anything after right click Qt makes the window
something-like-focused (it shows on top and receives input), but not really
(it still displays as inactive, cursor not blinking and all). Looks like Qt bug.
2018-08-01 20:14:55 +03:00
John Preston
8cc0fbc687 Fix unmute-by-finished timers.
Fixes #5039.
2018-08-01 19:58:50 +03:00
John Preston
c846a14118 Fix suggest export box layout. 2018-08-01 16:15:51 +03:00
John Preston
097424c535 Fix request pending webpage. 2018-07-31 22:56:05 +03:00
John Preston
c7ed36d558 Check for composition in WM_NCACTIVATE. 2018-07-31 22:56:04 +03:00
John Preston
95eab45108 Fix export messages pagination.
Also fix reply highlight.
Also fix channel service messages.
Also improve single chat export progress display.
2018-07-31 22:56:04 +03:00
John Preston
f852813734 Improved night mode switching. 2018-07-31 22:56:04 +03:00
John Preston
ca6a331a26 Don't close send files box by outside click. 2018-07-31 22:56:04 +03:00
John Preston
bfae205fbe Fix animation in single column layout. 2018-07-31 22:56:04 +03:00
John Preston
aaa1245430 Add some javascript handlers to HTML export. 2018-07-31 22:56:03 +03:00
John Preston
a99ae76ad4 Allow single chat history export. 2018-07-31 22:56:03 +03:00
John Preston
6429e8b532 Improve theme applying. 2018-07-31 22:56:03 +03:00
John Preston
cb338e330f Allow independently change default / night themes. 2018-07-31 22:56:03 +03:00
John Preston
d12bd0824d Upgrade night theme. 2018-07-31 22:56:03 +03:00
John Preston
4c0551ebb1 Fix crash in tcp connection implementation. 2018-07-31 22:56:02 +03:00
John Preston
06fc23fc59 Fix possible premature export bar destruction. 2018-07-31 22:56:02 +03:00
John Preston
41977bf515 Fix build for Xcode. 2018-07-31 22:56:02 +03:00
John Preston
ffd2817d18 Destroy InputField::Inner before InputField.
Inner has a pointer to parent and uses it assuming it is InputField.
If Inner lives longer than InputField (till ~QWidget) then in some
cases it accesses InputField as a (not completely) destroyed object.
2018-07-31 22:56:02 +03:00
John Preston
c48937a2f5 Display export progress starting with 1 / N. 2018-07-31 22:56:02 +03:00
John Preston
091d1157da Fix clearing callbacks for timeout-ed requests. 2018-07-31 22:56:02 +03:00
John Preston
be043a4437 Remove BypassWindowManagerHint in MediaView / Passport.
It makes all kinds of usages buggy, including choose file dialog.

Fixes #4936.
I hope fixes #4950, I hope fixes #4955, I hope fixes #3553.
2018-07-31 22:55:30 +03:00
John Preston
fae0bccc9c Don't use registry quiet hours entry any more.
In the latest Windows 10 those settings aren't stored in registry.
2018-07-31 22:53:37 +03:00
John Preston
b44cf4a094 Remove error box on download start failure. 2018-07-31 22:53:37 +03:00
John Preston
90f4187ca9 Don't accept tg:// links in passport callbacks.
Fixes #5021.
2018-07-31 22:51:06 +03:00
John Preston
ae272074b9 Add a confirmation for internal passport links.
Fixes #5020.
2018-07-31 20:56:54 +03:00
John Preston
9972f7b90e Use server time in dialogs list sorting.
This way it won't mess up when you change your local time.
2018-07-31 17:34:14 +03:00
Marco Trevisan
f68cefbdc1 Snap packaging support (#4505)
* qtbuilder: inherit from make plugin instead of autotools

* qtbuilder: update to properly support snapcraft 2.23

We don't use the default 'source' property as it will recursively download
all the submodules and we don't want that.

Implement newer get_pull_properties.

* gyp-cmake: only strip in Release mode and if we've a binary

* telegram-snap: add first basic snapcraft.yaml to build tdesktop from src

We need to build upstream versions of libva, ffmpeg (with opus support),
openal, portaudio with custom flags and patched versions of gyp, and Qt.

This requires some custom plugins for patching sources, mix repos and
new build plugins for qt and gyp+cmake.

* plugins: properly support snapcraft 2.23

Implementing get_pull_properties class methods

* patches: add qt patch for saving tray icon in .cache

TMPDIR overriding isn't needed anymore

* snapcraft: add xdg-open support to open URIs

* snapcraft: move external libraries to desktop-integration part

* snapcraft: set QTCOMPOSE pointing to proper x11-data

* desktop-integration: add libpulse0 to enable voice/video recording / playing

* qtbuilder: add support for local patches that overrides remote ones

* qtbuilder: make qt-version optional

This allows to build upstream git version

* gyp-cmake: inherit from CMakePlugin reusing artifacts + organize

* patched-python: add support for patching using local files

* snapcraft.yaml: use distro's portaudio instead of building ours

* telegram: disable desktop file generation and custuom scheme registration

* snapcraft.yaml: update version to 0.10.20

* .travis.yaml: add support for building using travis

* qtbuilder: add g++ as build packages

* snapcraft: use distro opus version

* snapcraft: lzma for qt and ffmpeg

* snapcraft: add libdbusmenu for qt

* openal: add oss4-dev as build dependency

* travis: test some hacks to speed things up

* Move plugins to new dir

* QtBuilder: add qt-extra-plugins support

To include plugins that are out of the main qt repo

* QtBuilder: generate branch based on qtversion

* GypCMake: allow to define custom environment variables

* snapcraft: set name to 'telegram-desktop'

* snapcraft: add 'network-status' interface to Telegram app

To automatically reconnect

* snapcraft: use prime instead of snap for flitering files

* snacpraft: update dependencies and versions to build against git

* snapcraft: build with GCC-7

hackish solution

* QtBuilder: add environment support

* QtBuilder: add qt-extra-plugins to get_pull_properties

* snapcraft: set name of the app to telegram-desktop too

* snapcraft: build opus from git (v1.2.1)

So it does upstream, let's follow them

* telegram: apply patch to get proper home path from $HOME

* snapcraft: add version-script to generate proper version from upstream

* telegram: simplify the start command

* snapcraft: get rid of snapd-xdg-open

* snapcraft: use gtk3 and unity integration

* qt5: build using gcc7 too

* telegram-desktop: update desktop file

* telegram: add support unity launcher when snapped

We should actually fix this inside libunity

* gcc7: remove toolchain source.list after install

* desktop-integration: add pulse-audio as dependency again

* telegram-desktop: define XCURSOR_PATH to get system cursors

* gui: move files to snap folder

* libtgvoip: don't enable SSE2 in unsupported archs

* snapcraft: add -alpha sufix on versions and do not include git for tags

* telegram: add patch for building in ARM chips

* desktop-integration: include libunity

* telegram-desktop: no need to define XCURSOR_PATH anymore, desktop helper will do

* snapcraft: compile libunity from upstream to get proper launcher integration

Drop custom patch, it's just better to do it here. This means we
go back to upstream telegramdesktop desktop-id too.

* telegram: get desktop file and icon from telegram part source

* snapcraft: improve snap description

* gcc7: not needed to add devscripts or equivs

Unless we try to build gcc7 here, which well... A bit time consuming.

* libunity: use upstream branch (my changes just merged)

* ci: remove travis integration, it takes to long b.s.io does it already

* telegram: don't do unneeded checks in armhf

* telegram: more signed/unsigned char fixes for ARM, ignore errors for now

* telegram: add getclock definitions for ARM

* telegram: arm support, always use signed chars

* telegram: don't need to use signed chars in ARM anymmore

As we've fixed all the issues

* telegram: replace .desktop file icon with snap one, add keywords

* snapcraft: use diversity check on alpha value

* telegram: detect Ubuntu desktop adding support for badges and indicators

* telegram: unset WAYLAND_DISPLAY to get it running properly

* Add a README

* telegram: just add network-observe plug

* snapcraft: add beta detection

* snapcraft: only add network-manager plug, users might connect it

We should actually have a connection-observe plug.

* patches: add patch to use a customizable working dir in debug

* snapcraft: define again QT_IM_MODULE and QTCOMPOSE fix compose key

Setting compose to proper paths will allow to get composition key
working again in snapped QT apps.

* desktop-integration: add indicator-gtk3 and chinese fonts

* desktop-integration: don't snap fonts, use desktop interface

Fonts are now bind-mounted from host by the desktop interface

* patches: apply patches using 3way merge if they fail

* patches: update telegram-arm-support to apply cleanly

* snapcraft: disable wayland using desktop script env

* snapcraft: libunity has been SRU'ed, we can go back to archive version

* patches: update arm support patch

* breakpad: use upstream versions

* telegram, patches: remove upstreamed patches

* patches: disable Werror

It causes failures in some archs, and we don't care much at this
level (for now).

* patches: remove libtgvoip msse2 patch

* Revert "patches: remove libtgvoip msse2 patch"

Not yet in the submodule used by telegram desktop

This reverts commit 2e6f4cc619.

* snapcraft: show bash debugging on version script

* desktop-gtk3: update mime database and icon-cache during install

This saves some startup time

* telegram: add gsettings plug

* telegram-launch: use user-common as home and migrate if needed

* Import snap folder from telegram-snap repo

* patches, qtbase: use indicator icon in unity or ubuntu

Patch already applied upstream, remove from snap only

* .gitignore: add snap related files

* telegram-launch: merge downloaded files folder if found

* snap: remove patches not needed for upstream

* snap, patch, libtgvoip: sync with upstream

* telegram-launch: remove default dir after moving download files

* snap: remove libtgvoip patches, we can just update the submodule

The actual module update should be managed in a different
commit though.

* snapcraft: explain why gcc7 part is needed

* snapcraft: update summary text

* qt: no need to build gstreamer, and reorder configflags

* plugins: add copyright informations

* telegram: add common-id and parse-info with AppData

Use the appstream integration that snapcraft now supports.

* openal: use v1.18 branch as upstream does now

* qtbuilder: support tags in versions better

* qtbuilder: use shutil.rmtree to remove files

* telegram: set QT_IM_MODULE only if not set

* telegram: add removable-media plug

* telegram-launch: ignore ibus as input method

And add support for getting it from $TELEGRAM_QT_IM_MODULE env var

* snapcraft: use git describe to get revision

* snapcraft: use override-* stanzas for scriptlets

* snap: exit scriptlets on first error

* snap: remove summary, inherit from AppData

* lib_export: use includes paths as defined per platform
2018-07-21 17:35:37 +03:00
Omkar Nath Singh
08841ed895 Update Fedora version
Working fine on Fedora 28.
2018-07-17 00:42:34 +03:00
John Preston
a919737f6e Version 1.3.10.
- Bug fixes and other minor improvements.
2018-07-13 14:19:25 +03:00
John Preston
8f3510b3c4 Use reverse chronological order in export. 2018-07-13 14:17:50 +03:00
John Preston
6c588a8f2f Closed beta 1.3.9.3. 2018-07-12 22:27:24 +03:00
John Preston
4c9ef606f3 Display unread/mention mark in small left column.
Fixes #4939.
2018-07-12 22:25:10 +03:00
John Preston
0b7bb806b7 Improve export HTML layout. 2018-07-12 21:15:36 +03:00
John Preston
78558e513c Closed beta 1.3.9.2. 2018-07-12 18:35:59 +03:00
John Preston
52e7ddf079 Add '-externalupdater' command-line argument.
Now no-autoupdater mode can be switched on in runtime.
Also TDESKTOP_DISABLE_AUTOUPDATE build is disabled in CI (trivial).

Fixes #4895.
2018-07-12 18:35:59 +03:00
John Preston
e2bc6990c7 Fix crash in taskbar icon refresher.
Regression was introduced in 3b956c598.
2018-07-11 23:20:21 +03:00
John Preston
06c3082fdf Fix popular sticker suggestions.
Regression was introduced in ddb4527159.

Fixes #4966.
2018-07-11 23:15:55 +03:00
John Preston
54cd55523b Fix crash in markdown preprocessing. 2018-07-11 17:56:09 +03:00
John Preston
556f75ef6c Rewrite TCP socket reading using bytes::vector.
I hope this fixes a strange assertion violation.
2018-07-11 17:56:09 +03:00
John Preston
951634a717 Closed beta 1.3.9.1. 2018-07-11 17:56:09 +03:00
John Preston
51d7e177a6 Fix error layout in passport email/phone. 2018-07-11 17:56:09 +03:00
John Preston
81e074115d Fix build for Xcode.
Regression was introduced in a8d35b67aa.
2018-07-11 17:56:09 +03:00
John Preston
9eb34e496f Update langs. 2018-07-11 17:56:08 +03:00
John Preston
da60739893 Allow uploading many scans at once in passport. 2018-07-11 17:56:08 +03:00
John Preston
7be1f16313 Don't display errors list in passport. 2018-07-11 17:56:08 +03:00
John Preston
39b0d9e46f Handle the outdated app error in passport. 2018-07-11 17:56:08 +03:00
John Preston
7be9e0fb94 Warn on passport save before upload is finished. 2018-07-11 17:56:07 +03:00
John Preston
e3e8d083ea Remember passport credentials for 30 minutes. 2018-07-11 17:56:07 +03:00
John Preston
9929bfb281 If only selfie is missing use special phrases. 2018-07-11 17:56:07 +03:00
John Preston
effa277a3b Update libtgvoip to 2.1.1. 2018-07-11 17:56:07 +03:00
John Preston
2661f81fd1 Fix field bar cancel button visibility.
Fixes #4913.
2018-07-11 17:56:07 +03:00
John Preston
661de0c326 Improve phrases in passport. 2018-07-11 17:56:06 +03:00
John Preston
e1fd43b2a4 Fix crash in text post processing.
Fixes #4948.
2018-07-11 17:56:06 +03:00
John Preston
b697824540 When following a post link push reply-return.
Fixes #4856.
2018-07-11 17:56:06 +03:00
John Preston
eb3eef4b80 Fix notify settings saving (mute vs silent).
Fixes #4855.
2018-07-10 12:18:41 +03:00
John Preston
c3736c6fa3 Improve photo/video/sticker/GIF export layout. 2018-07-10 12:18:41 +03:00
John Preston
0ef7503917 Improve export history pagination. 2018-07-10 12:18:41 +03:00
John Preston
cef50e5f52 Export file thumbs, use in video messages. 2018-07-10 12:18:41 +03:00
John Preston
cb8ff398a5 Improved html message layout. 2018-07-10 12:18:41 +03:00
John Preston
eeb1a6b769 Add service messages HTML layout. 2018-07-10 12:18:41 +03:00
John Preston
66822f7333 Add some HTML design to export, except messages.
NB Testing the layout, the app is not in a working condition.
2018-07-10 12:18:41 +03:00
John Preston
e466dc9fc7 Fix default build.
Regression was introduced in a8d35b67aa.
2018-07-10 12:14:53 +03:00
Sven-Hendrik Haase
947204bb9d Add missing include to <gsl/gsl> (#4886) 2018-07-03 20:23:14 +03:00
Sven-Hendrik Haase
f37f097dec Add include to <memory> (#4887) 2018-07-03 20:22:52 +03:00
Marco Trevisan
a8d35b67aa lib_export: use includes paths as defined per platform (#4935) 2018-07-03 12:56:51 +03:00
John Preston
4e0d94f347 Version 1.3.9: Fix build for Xcode. 2018-06-28 20:26:31 +01:00
John Preston
c7e773dd9a Version 1.3.9.
- Mark chats in the chat list as Read or Unread.
- Improved censorship circumvention.
2018-06-28 20:12:07 +01:00
John Preston
e64d102efd Better display of first_name + last_name. 2018-06-28 20:01:26 +01:00
John Preston
49ea9434f2 Better nested key-value html serialization. 2018-06-28 18:52:57 +01:00
John Preston
e21c354428 Improve suggest export logic. 2018-06-28 18:44:07 +01:00
John Preston
d0614efd65 Prevent displaying two export suggest boxes. 2018-06-28 18:29:52 +01:00
John Preston
b0baf75fdd Fix forwarded names in saved messages export. 2018-06-28 18:25:23 +01:00
John Preston
efb3e92525 Show "Saved messages" chat name in export UI. 2018-06-28 18:12:13 +01:00
John Preston
5cdc563c9e Add saving of shared contacts vcards in export. 2018-06-28 18:03:44 +01:00
John Preston
a43dfc567c Allow injecting fail handlers in export.
Handle CHANNEL_PRIVATE while exporting all channel messages.
2018-06-28 17:25:50 +01:00
John Preston
ea6e4c6006 Display correct info in pinned message. 2018-06-28 16:28:45 +01:00
John Preston
98930792c3 Fix fast reply and right action in sent messages.
Fixes #4903.
2018-06-28 16:24:39 +01:00
John Preston
165d1aacae Fix tilde formatting in InputField.
Regression was introduced somewhen while uniting input field classes.

Fixes #4829.
2018-06-28 16:07:53 +01:00
John Preston
831f1b6aee Fix crash in file inline bot results.
Fixes #4904.
2018-06-28 16:01:32 +01:00
John Preston
2f5fb3688a Fix crash for invalid inline bot stickers. 2018-06-28 15:15:47 +01:00
John Preston
d8897a0cc8 Make export done button adaptive to text. 2018-06-28 04:39:23 +01:00
John Preston
3b956c598b Fix data export window theme changing.
Fixes #4902.
2018-06-28 04:39:10 +01:00
John Preston
1ee71bbd5c Update GSL to v1.0.0 2018-06-27 22:58:33 +01:00
John Preston
b7ab4fd086 Improve triple-backtick replacement. 2018-06-27 22:58:33 +01:00
John Preston
44c6050bf2 Fix field autocomplete in empty chat. 2018-06-27 22:58:33 +01:00
John Preston
35c759c6bc Mark [un]read from chats list. 2018-06-27 22:58:32 +01:00
John Preston
372cf275e0 Skip draft updates while sending with clear_draft.
I hope fixes #4845, fixes #4852, fixes #4861.
2018-06-27 22:58:32 +01:00
John Preston
33095966af Move sendMessage and sendInlineResult to ApiWrap. 2018-06-27 22:58:32 +01:00
John Preston
ff53404d5b Update API scheme to layer 82. 2018-06-27 22:58:32 +01:00
John Preston
941288b58e Handle new paddings in improved TCP protocol. 2018-06-27 22:58:31 +01:00
John Preston
22441ef80c Handle improved protocol secrets. 2018-06-25 20:22:03 +01:00
John Preston
8c2f11de7d Send correct paddings in improved TCP protocol. 2018-06-25 19:55:52 +01:00
John Preston
c7a4d67cfb Version 1.3.8.
- Testing new data export.
- Bug fixes and other minor improvements.
2018-06-24 16:17:46 +01:00
John Preston
688275ea81 Fix update request timeout. 2018-06-24 16:17:46 +01:00
John Preston
266102df2f Some phrases fixed, some logs added. 2018-06-24 16:17:46 +01:00
John Preston
f7aadc352b Handle LOCATION_INVALID error. 2018-06-24 15:44:53 +01:00
John Preston
1ae3af0e80 Split messages.html by 1000 messages. 2018-06-24 15:44:53 +01:00
John Preston
97d27fe869 Closed beta 1.3.7.4. 2018-06-24 15:44:53 +01:00
John Preston
fcd2e28abb Add some logs. 2018-06-24 15:44:53 +01:00
John Preston
2522e66969 Move export descriptions to lang. 2018-06-24 15:44:53 +01:00
John Preston
b9250edb33 Some more export data improvements. 2018-06-24 15:44:53 +01:00
John Preston
54cab2c5a5 Add other additional data export. 2018-06-24 15:44:53 +01:00
John Preston
6231db1411 Closed beta 1.3.7.3. 2018-06-24 15:44:53 +01:00
John Preston
ef5a395c60 Improve export folder structure. 2018-06-24 15:44:53 +01:00
John Preston
a200771868 Don't suggest export if one is running. 2018-06-24 15:44:53 +01:00
John Preston
914e043abe Improve export phrases. 2018-06-24 15:44:53 +01:00
John Preston
9d66f9cc03 Add basic HTML export. 2018-06-24 15:44:53 +01:00
John Preston
e708065446 Closed beta 1.3.7.2: Fix build for Windows. 2018-06-23 01:02:20 +01:00
John Preston
9c64cdb9c4 Closed beta 1.3.7.2. 2018-06-23 00:57:12 +01:00
John Preston
9f8d61ab2f Add information about saved data. 2018-06-23 00:56:53 +01:00
John Preston
0143fd28af Suggest start export when time comes. 2018-06-23 00:56:53 +01:00
John Preston
844d030332 Save export settings to local storage. 2018-06-23 00:56:53 +01:00
John Preston
ae18ece549 Ask export path with other export options. 2018-06-23 00:56:53 +01:00
John Preston
10a0c6a086 Update phrases. 2018-06-23 00:56:53 +01:00
John Preston
51189fd244 Fix empty chats assertion violation. 2018-06-23 00:56:53 +01:00
John Preston
1e10529f20 Fix Linux build. Use -flto for static libraries.
Some unbelievable crashes happen in MTP codegen-ed serialization
if the binary is using -flto with MTP in non-flto static library.

To build and link static libraries with -flto additional GYP patch
is required, so that ar/ranlib/nm use gcc- wrappers.
2018-06-23 00:28:44 +01:00
John Preston
8d701ebb4f Fix rpl::variable assignment. 2018-06-22 17:45:05 +01:00
John Preston
269bb94138 Closed beta 1.3.7.1: Fix build with GCC. 2018-06-22 01:44:28 +01:00
John Preston
9b98ff52ea Closed beta 1.3.7.1: Fix build for Xcode. 2018-06-22 01:25:54 +01:00
John Preston
52f2f96f36 Closed beta 1.3.7.1: Fix Release build. 2018-06-22 01:01:45 +01:00
John Preston
b53e40f1bf Closed beta 1.3.7.1. 2018-06-22 00:48:32 +01:00
John Preston
4e0d11f517 Add export format selection (text / json). 2018-06-22 00:48:18 +01:00
John Preston
1a24ba857c Parse message entities, export in JSON. 2018-06-22 00:48:18 +01:00
John Preston
1e254b958e Update crl submodule. 2018-06-22 00:48:18 +01:00
John Preston
23140b3d6a Fix build for old OS X. 2018-06-21 23:35:28 +01:00
John Preston
8c901d8f71 Fix build for Xcode. 2018-06-21 22:25:14 +01:00
John Preston
856356ce75 Add web authorizations export. 2018-06-21 22:15:27 +01:00
John Preston
b5a65a4519 Add export to JSON. 2018-06-21 21:42:50 +01:00
John Preston
d056c00c67 Use split ranges to export all messages. 2018-06-21 19:58:54 +01:00
John Preston
36fb6dac89 Call finish takeout. Handle errors. 2018-06-21 14:50:56 +01:00
John Preston
fcda883878 Show messages count in an exported chat. 2018-06-20 22:22:10 +01:00
John Preston
40c0286942 Export userpics in a separate file. 2018-06-20 21:53:31 +01:00
John Preston
59df447fed Request frequent contacts calls category. 2018-06-20 21:39:04 +01:00
John Preston
a253d34c00 Name files by index, not by media date. 2018-06-20 21:32:52 +01:00
John Preston
0a5eac50be Unite Dialogs and LeftChannels in Export. 2018-06-20 19:21:36 +01:00
John Preston
156c3d288c Allow selecting export folder. 2018-06-20 19:12:47 +01:00
John Preston
154e5660de Confirm export stop on quit and logout. 2018-06-20 18:30:57 +01:00
John Preston
13e6b91ac7 Remove old done widget in Export. 2018-06-20 17:45:52 +01:00
John Preston
a89ad5d0fb Add export my data button in Settings. 2018-06-20 17:41:59 +01:00
John Preston
e11c27048b Add export statistics for the final screen. 2018-06-20 17:10:38 +01:00
John Preston
e8dd277a00 Improve export progress / finished design. 2018-06-20 16:59:27 +01:00
John Preston
329db0d8e9 Export panel minimizes to a top bar, like a Call. 2018-06-20 01:02:36 +01:00
John Preston
eaf3ea9289 Fix dialogs list in export. 2018-06-20 01:01:41 +01:00
John Preston
4156beaa3c Export top peers as frequent contacts. 2018-06-19 21:40:16 +01:00
John Preston
4115d3d13d Display export progress. 2018-06-19 19:31:30 +01:00
John Preston
5f01751660 Display errors in export UI.
All errors are now fatal errors :(
2018-06-19 13:35:21 +01:00
John Preston
7d4e23448e Better steps division in export. 2018-06-18 22:52:13 +01:00
John Preston
c7aa5ed544 _DEBUG-test ConcurrentSender generic handlers. 2018-06-17 21:29:50 +01:00
John Preston
1bfe409c93 Export my messages from left channels. 2018-06-17 21:15:40 +01:00
John Preston
e8d619c740 Some export bugs fixed. 2018-06-17 18:18:34 +01:00
John Preston
2dc3ec955a Add downloaded files cache in export.
Also write downloaded photo paths.
2018-06-17 13:47:47 +01:00
John Preston
07ff7c6cb0 Request only my messages by settings bits. 2018-06-17 13:47:07 +01:00
John Preston
8d52ca6be6 Apply file type/size restrictions in export. 2018-06-17 09:54:38 +01:00
John Preston
df91b2bfeb Export settings layout ready. 2018-06-16 20:48:38 +01:00
John Preston
9d02e539c8 Update scheme for special export methods.
Export all saved contacts.
2018-06-16 20:48:38 +01:00
John Preston
241fee80a7 Export full messages information.
Also add some more .match() calls to MTP codegen-ed classes.
2018-06-14 21:34:53 +03:00
John Preston
83786ddeaf Export chat messages photos and documents.
Also rename .visit() with .match() in MTP types.
Also add base::match_method() and base::match() for base::variant.
Also add base::match() and .match() for base::optional_variant.
2018-06-14 01:09:48 +03:00
John Preston
0e9793b845 Move MimeType from utils to core/mime_type.
Also move to Core namespace.
2018-06-14 01:08:47 +03:00
John Preston
2b36dd660b Export chat messages text. 2018-06-13 16:12:36 +03:00
John Preston
35ffc03988 Use .visit() in export data parsing. 2018-06-12 22:59:58 +03:00
John Preston
5a9d1a3fce Add .visit(many, callbacks) method to MTP types. 2018-06-12 22:59:58 +03:00
John Preston
6776d88688 Add chats list export. 2018-06-12 21:09:21 +03:00
John Preston
affe9defb5 Fix authorization import in FILE_MIGRATE case.
Regression was introduced in dd933cf61c.
2018-06-12 16:30:00 +03:00
John Preston
d3fdf433cd Export sessions list. 2018-06-12 01:02:05 +03:00
John Preston
cec8114b99 Add simple files and contacts export.
Also move all API calls in export to Export::ApiWrap.
2018-06-12 01:02:05 +03:00
John Preston
0a1a5ed70e Use abstract export writer for different formats. 2018-06-12 01:02:05 +03:00
John Preston
c587c011d2 Start data export in lib_export. 2018-06-12 01:02:04 +03:00
John Preston
c2fa149ffd Replace InvokeQueued with on_main for has_weak_ptr. 2018-06-12 01:02:04 +03:00
John Preston
c63c75018d Update crl submodule. 2018-06-12 01:02:04 +03:00
John Preston
b0077d98f0 Version 1.3.7: Fix file dialog parent widget.
Regression was introduced in 67ea175fc6.

Fixes #4817.
2018-06-11 23:40:30 +03:00
John Preston
b5bc7a22af Version 1.3.7: Possible bug fix.
Attempt to fix strange crash in SPMediaKeyTap.
2018-06-11 22:31:44 +03:00
John Preston
e60311811b Version 1.3.7.
- Push fixes to stable version.
2018-06-11 22:28:34 +03:00
John Preston
8700c1b08f Alpha version 1.3.6: Make it another alpha. 2018-06-11 10:42:20 +03:00
John Preston
d8b51670e7 Version 1.3.6.
- Bug fixes and other minor improvements.
2018-06-11 10:39:59 +03:00
John Preston
68c2f563c6 Write logs without QTextStream. 2018-06-11 10:37:29 +03:00
John Preston
bf775cb4ca Fix history items cleanup. 2018-06-09 11:52:37 +03:00
John Preston
5c4b81434e Alpha version 1.3.5.
- Bug fixes and other minor improvements.
2018-06-08 23:12:00 +03:00
John Preston
cd1c7c56d3 Skip old and currently-sending draft updates. 2018-06-08 23:06:26 +03:00
John Preston
427ceb9a9a Submit MuteSettingsBox by Enter. 2018-06-08 22:26:23 +03:00
John Preston
2a110f0d3e Improve passport styles. 2018-06-08 22:26:08 +03:00
John Preston
d0ed75f3b5 Update langs. 2018-06-08 21:32:20 +03:00
John Preston
be2abd594f Alpha version 1.3.4.
- Bug fixes and other minor improvements.
2018-06-07 22:29:27 +03:00
John Preston
75a40b83ae Notify settings unknown => draw chats as muted.
Also request common notify settings at the app launch.
2018-06-07 22:28:09 +03:00
John Preston
472a677bca Fix crash in special scan upload. 2018-06-07 22:11:55 +03:00
John Preston
dca6e10beb Fix markdown apply to text with emoji. 2018-06-07 22:00:46 +03:00
John Preston
122ab94f3d Fix text color glitch after palette update.
Once again fixes #4774.
2018-06-07 21:25:10 +03:00
John Preston
2ab40de8b9 Alpha version 1.3.3.
- Bug fixes and other minor improvements.
2018-06-07 10:50:34 +03:00
John Preston
35659536c5 Fix first passcode unlock.
Fixes #4811.
2018-06-07 10:44:38 +03:00
John Preston
31ec831c71 Alpha version 1.3.2.
- Bug fixes and other minor improvements.
2018-06-07 08:17:30 +03:00
John Preston
866c5e9b7b Request common notify settings when needed.
If user / group has default notify settings we need common user
or common group notify settings to display the badge properly.
2018-06-06 22:56:35 +03:00
John Preston
d6a00523a8 Add crash annotations for file dialog. 2018-06-06 21:45:32 +03:00
John Preston
9ebeddbed8 Request, show and require accept for updated ToS. 2018-06-06 21:37:01 +03:00
John Preston
c85fd368fe Possible fix of travis build. 2018-06-06 15:16:21 +03:00
John Preston
16f3ca87f5 Allow boxes that don't hide by escape / click. 2018-06-06 14:54:00 +03:00
John Preston
e47d110f28 Fix cascade popup menus in Linux.
Fixes #4749.
2018-06-06 14:29:40 +03:00
John Preston
20b67ee000 Fix build for GCC. 2018-06-06 13:59:53 +03:00
John Preston
d8a4ede4b5 Fix incoming calls.
Regression was introduced in 1392e05ab1.

Fixes #4804.
2018-06-06 13:28:43 +03:00
John Preston
5ed15cd0b3 Fix EditColorBox.
Regression was introduced in bfc748cd31.

Fixes #4803.
2018-06-06 13:04:37 +03:00
John Preston
87c07a13a1 Display sticker date on mouse over.
Fixes #3636.
2018-06-06 12:46:17 +03:00
John Preston
73ce722147 Use separate month lang keys with and without day.
Fixes #4797.
2018-06-06 12:38:44 +03:00
John Preston
233be5ec13 Fix crash in web request destructors. 2018-06-06 12:32:38 +03:00
John Preston
50b78034a5 Activate window if second instance is launched.
Regression was introduced in 275ec3e679.
2018-06-06 12:06:07 +03:00
John Preston
777bf7d8d9 Fix video seeking.
Regression was introduced in d0e854e9d8.

Each time you hide() a widget its mousePress state is reset and
mouseMoveEvent() / mouseReleaseEvent() handlers are never called.

So you can't toggle (hide + show) widgets that are mouse-pressed.

Fixes #4802.
2018-06-06 11:58:07 +03:00
John Preston
4a4544c883 Update libtgvoip. 2018-06-05 21:52:43 +03:00
John Preston
d03d699331 Improve base::optional, add emplace(). 2018-06-05 21:51:05 +03:00
John Preston
d16cbbf279 Set window inner focus async. Fixes #4560. 2018-06-05 21:51:05 +03:00
John Preston
72f95b984f Replace cDebug() with Logs::DebugEnabled(). 2018-06-05 21:51:05 +03:00
John Preston
9055b33e92 Alpha version 1.3.1: Fix build for GCC. 2018-06-05 00:33:37 +03:00
John Preston
812ffb4297 Alpha version 1.3.1: Fix build for old OS X versions. 2018-06-04 23:58:39 +03:00
John Preston
958d55a594 Alpha version 1.3.1.
- Bug fixes and other minor improvements.
2018-06-04 23:26:19 +03:00
John Preston
4559888113 Fix layout glitches in sessions list.
Fixes #4794.
2018-06-04 23:25:21 +03:00
John Preston
294ed1bb17 Update libtgvoip to 2.1. 2018-06-04 23:14:00 +03:00
John Preston
a52392241d Fix some possible crashes. 2018-06-04 22:48:17 +03:00
John Preston
31998406dd Save settings any time emoji skin color is chosen.
Fixes #4788.
2018-06-04 21:34:18 +03:00
John Preston
5a63fc7bbb Fix search from user in a group. 2018-06-04 21:32:13 +03:00
John Preston
a2d4b9260e Add AUTH_KEY_DROP_ service notification support.
Also move logout code to Messenger.
2018-06-04 21:18:52 +03:00
John Preston
1d1bd5e1e7 Fix reply-returns in just sent messages. 2018-06-04 19:58:35 +03:00
John Preston
a42fb1f7b7 Fix microphone sandbox access request.
Fixes #4783.
2018-06-04 18:39:20 +03:00
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
8d1cdea31a Update passport phrases. 2018-06-04 14:43:49 +03:00
John Preston
fae4b92d8d Add store version label to sessions list. 2018-06-04 13:41:53 +03:00
John Preston
18f38f0983 Fix build for Xcode. 2018-06-03 23:16:38 +03:00
John Preston
a29e8f9a06 Moved Passport panel code to Ui::SeparatePanel. 2018-06-03 23:16:38 +03:00
John Preston
5c0cc8a947 Append param to query or hash of callback_url. 2018-06-03 23:16:38 +03:00
John Preston
308fb19da4 Improve name/postcode validation. 2018-06-03 23:16:38 +03:00
John Preston
6aecb81c23 Update scheme, special scans for identity type. 2018-06-03 23:16:38 +03:00
John Preston
72b29dd90d Fix GCC warning about uchar > 255 comparison. 2018-06-03 23:16:38 +03:00
John Preston
2f5f1fbac9 Closed beta 1.2.17.1. 2018-06-03 23:16:38 +03:00
John Preston
ab797b4dff Preprocess images before passport upload. 2018-06-03 23:16:38 +03:00
John Preston
ab5f35e952 Warn user about passport reset.
Also suggest country by phone number in passport.
2018-06-03 23:16:38 +03:00
John Preston
275ec3e679 Don't activate main window with passport request. 2018-06-03 23:16:38 +03:00
John Preston
44b551898d New notifications API, defaults for users/chats. 2018-06-03 23:16:38 +03:00
John Preston
4a8b6ff5ba Don't send data in address_document. 2018-06-03 23:16:38 +03:00
John Preston
60582a24ab Fix passport selfie requirements. 2018-06-03 23:16:38 +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
46af87a00a Allow Vector<bytes> in scheme. 2018-06-03 23:16:37 +03:00
John Preston
d6d942bc64 Change e-mail to email in langs. 2018-06-03 23:16:37 +03:00
John Preston
5cb44834dc Allow restoring password by email in passport. 2018-06-03 23:16:37 +03:00
John Preston
6795ecea61 Update API scheme for passport errors. 2018-06-03 23:16:37 +03:00
John Preston
22bdf15825 Display scope errors in passport. 2018-06-03 23:16:37 +03:00
John Preston
704e3c9423 Don't save values while uploading scans. 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
6c2a39f1fc Re-encrypt secure secret with password change. 2018-06-03 23:16:37 +03:00
John Preston
395f22063b Short poll email confirmation in passport. 2018-06-03 23:16:37 +03:00
John Preston
9f6130cd20 Allow 2sv password setup in passport. 2018-06-03 23:16:37 +03:00
John Preston
5b615519e8 Suggest full passport reset in case of bad secret. 2018-06-03 23:16:37 +03:00
John Preston
03b7a3ca2b Handle errors when saving passport values. 2018-06-03 23:16:37 +03:00
John Preston
4f1a633019 Fix faved+recent stickers icon highlight. 2018-06-03 23:16:36 +03:00
John Preston
362b3bc578 Add bot message secure-values-sent phrases. 2018-06-03 23:16:36 +03:00
John Preston
6de3112c8a Stop passport authorization with confirm. 2018-06-03 23:16:36 +03:00
John Preston
1064208be9 Display errors on partial form submit. 2018-06-03 23:16:36 +03:00
John Preston
49578836be Allow edit/delete contact info in passport. 2018-06-03 23:16:36 +03:00
John Preston
e4ae5bfcad Allow deleting documents in passport. 2018-06-03 23:16:36 +03:00
John Preston
e82430cb50 Strict value validation in passport. 2018-06-03 23:16:36 +03:00
John Preston
e7ce4ca10a Show scans/selfie saving errors. 2018-06-03 23:16:36 +03:00
John Preston
f8b2e474b9 Validate passport values before saving. 2018-06-03 23:16:36 +03:00
John Preston
8969a7d929 Fix passport for Xcode and macOS.
Also use different bundle id for debug builds.
2018-06-03 23:16:36 +03:00
John Preston
ead31757d7 Submit passport results. 2018-06-03 23:16:36 +03:00
John Preston
c20cf243db Improve phrases and icons in passport. 2018-06-03 23:16:35 +03:00
John Preston
9142313a6b Fix partial value saving in passport. 2018-06-03 23:16:35 +03:00
John Preston
ccb57a6d69 Allow to add selfie in passport. 2018-06-03 23:16:35 +03:00
John Preston
11fd757e99 Use Ui::PhoneInput for passport phone edit. 2018-06-03 23:16:35 +03:00
John Preston
1c48f33dc1 Allow gender edition in passport. 2018-06-03 23:16:35 +03:00
John Preston
9903546a2d Allow date edition in passport. 2018-06-03 23:16:35 +03:00
John Preston
e4e05a14b7 Allow selecting country in passport. 2018-06-03 23:16:35 +03:00
John Preston
62389f5ef7 Choose document type in passport. 2018-06-03 23:16:35 +03:00
John Preston
4e2a109a46 Passport phone/email verification added. 2018-06-03 23:16:35 +03:00
John Preston
35dcbe0aa0 Save value without closing the passport panel. 2018-06-03 23:16:35 +03:00
John Preston
d0e854e9d8 Allow showing boxes in passport panel. 2018-06-03 23:16:35 +03:00
John Preston
f1519b76f6 Allow to enter phone and email in the passport. 2018-06-03 23:16:34 +03:00
John Preston
94bfd59b76 Fill all required fields in identity and address. 2018-06-03 23:16:34 +03:00
John Preston
2790919733 Move scans upload to a separate module. 2018-06-03 23:16:34 +03:00
John Preston
f0b7ff24b1 Update API scheme. 2018-06-03 23:16:34 +03:00
John Preston
5cfead762d New design of the passport in a separate window. 2018-06-03 23:16:34 +03:00
John Preston
a2dabfde56 Separate form controller from view controller. 2018-06-03 23:16:34 +03:00
John Preston
b0a9d26a94 Update API scheme. 2018-06-03 23:16:34 +03:00
John Preston
2bc60fa54f Save secure files to local storage. 2018-06-03 23:16:34 +03:00
John Preston
c2aa9c571c Follow secure file upload/download progress. 2018-06-03 23:16:34 +03:00
John Preston
083b520eee 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
b2014f403e Secure files upload / download support. 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
07e8a2bd85 Initial layout of the passport authorization form. 2018-06-03 23:16:33 +03:00
John Preston
ddb4527159 Start passport support: handle link, receive form. 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
b4a2e84aa3 Fix palette update in InputField.
Fixes #4774.
2018-06-03 21:57:52 +03:00
John Preston
b64bbc7708 Fix stickers with large info string layout.
Fixes #4781.
2018-06-03 21:33:24 +03:00
John Preston
364aaaae5b Fix recent stickers icon.
Fixes #4780.
2018-06-03 20:58:28 +03:00
John Preston
2bd8737410 Fix sticker inline bot results.
Fixes #3317.
2018-06-03 20:48:02 +03:00
John Preston
e62e7d1de2 Merge remote-tracking branch 'origin/master' into dev 2018-06-03 19:40:32 +03:00
Vitaly Lipatov
bffd852b4e remove obsoleted ui/effects/widget_slide_wrap.* (closes #4776) (#4777)
unused since commit c302219
2018-06-02 11:05:36 +03:00
John Preston
fdfdd0acce Fix long names in sending files preview. 2018-06-01 23:05:19 +03:00
John Preston
80be464d95 Handle ToS correctly when signing up. 2018-06-01 21:04:54 +03:00
John Preston
2878e46d2b Attempt to fix a strange crash on Linux. 2018-06-01 21:04:52 +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
cf7a779689 Fix mixed markup sending. 2018-06-01 01:01:50 +03:00
John Preston
53b3b24867 Fix build with disabled autoupdate. 2018-06-01 01:01:50 +03:00
John Preston
8edf4c8711 Alpha version 1.2.25: Fix build for Xcode. 2018-05-31 23:42:48 +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
7db7c05da8 Add Kosovo as a country with a phone code. 2018-05-31 21:31:44 +03:00
John Preston
43d19920e0 Apply markdown only when sending the message. 2018-05-31 21:30:28 +03:00
John Preston
bfc748cd31 Pass modifiers inside InputField submitted signal.
Also use non-MOC connections for all InputFields.
Also use Ctrl/Cmd + Enter to submit fast share box.
Fixes #4769.
2018-05-31 15:20:28 +03:00
John Preston
b3059248d4 Display colored reply preview.
Fixes #4768.
2018-05-31 14:13:11 +03:00
John Preston
0cbad9098e Active window on drop to InputField. 2018-05-31 13:35:14 +03:00
John Preston
5c5438c12e Add terms of service to the Intro. 2018-05-31 13:22:58 +03:00
John Preston
734c410879 New notifications API, defaults for users/chats. 2018-05-30 18:44:46 +03:00
John Preston
4b4e22d59d Display bot privacy policy command. 2018-05-30 17:34:21 +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
20ee1fa0d3 Log error code for macOS launc-after-update problem. 2018-05-30 01:39:50 +03:00
John Preston
c70e9b529a Offer to delete on editing to empty message. 2018-05-30 01:18:33 +03:00
John Preston
e42e973ed5 Show fast share button in personal chats. 2018-05-30 01:18:10 +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
59a1e13955 Use each AbstractConnection only for one time. 2018-05-28 22:43:14 +03:00
John Preston
4e858ba839 Improve connections debug logs. 2018-05-28 11:36:12 +03:00
John Preston
0eb3d20250 Use https in default auto-update prefix.
Fixes #4674.
2018-05-27 14:26:45 +03:00
John Preston
c0896f5357 Update libtgvoip to fix a possible crash. 2018-05-27 13:58:14 +03:00
John Preston
f334e2d0f4 Clear formatting at the start of the field. 2018-05-27 13:48:30 +03:00
John Preston
dfbe11efdb Fix editing of markup with links. 2018-05-27 13:48:04 +03:00
John Preston
becbad32c9 Hide stickers by emoji when editing message. 2018-05-27 13:46:47 +03:00
John Preston
46976c4e03 Display signal bars in calls. 2018-05-27 12:35:38 +03:00
John Preston
1e4cf4c466 Support correct Ukrainian plural rules. 2018-05-26 19:52:39 +03:00
John Preston
2e1517474d Alpha version 1.2.24: Fix link preview. 2018-05-26 19:02:36 +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
7252e9b266 Apply max length limit to initial text. 2018-05-26 18:39:13 +03:00
John Preston
07d8dafa5e Allow inserting links with custom text.
Fixes #4737.
2018-05-26 18:07:51 +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
3f7947b404 Use input method commit events to commit replacements.
Partially fixes #4727.
2018-05-25 23:36:32 +03:00
John Preston
4870558827 Apply formatting from context menu or shortcuts. 2018-05-25 23:31:18 +03:00
John Preston
c23ec41622 Don't replace 'code' tag inside a possible 'pre'.
Partially fixes #4728.
2018-05-25 21:02:44 +03:00
John Preston
544aef19b4 Revert markdown by backspace only temporarily.
Don't revert if you move cursor by arrows or Home/End.
2018-05-25 21:02:38 +03:00
John Preston
24834ced9e Fix input field palette setup.
Fixes #4732. Fixes #4734.
2018-05-25 20:50:36 +03:00
John Preston
10fa6f0c13 Ignore 'Replace emoji' setting in markdown.
Partially fixes #4727. Fixes #4731.
2018-05-25 20:50:26 +03:00
John Preston
7a32ad5409 Improve proxy phrases. 2018-05-25 20:46:15 +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
3d75d21a3e Fix build in Linux 32bit. 2018-05-24 20:25:04 +03:00
John Preston
250718e766 Fix build for Xcode. 2018-05-24 20:25:04 +03:00
John Preston
a5cbade8ec Update libtgvoip. 2018-05-24 20:25:04 +03:00
John Preston
3ac50cf77f Move message text to send media box caption field. 2018-05-24 17:57:41 +03:00
John Preston
f35bf41d26 Enable instant replaces in title edit fields. 2018-05-24 17:57:35 +03:00
John Preston
f1816815a9 Refresh last post on proxy promotion refresh. 2018-05-24 17:12:57 +03:00
John Preston
37bf9ffcff Show bad proxy configuration error. 2018-05-24 16:40:19 +03:00
John Preston
5e7642b42a Support markdown and replaces in media captions. 2018-05-24 16:03:21 +03:00
John Preston
6f6ec217e3 Support markdown replaces in Ui::InputField. 2018-05-24 15:31:48 +03:00
John Preston
017ec87d60 Replace FlatTextarea with InputField. 2018-05-22 13:45:22 +03:00
John Preston
30dd8fe070 Unite InputField and InputArea.
Also support and use instant replaces in InputField-s.
2018-05-20 23:37:59 +03:00
John Preston
8e442563f2 Enable checked auth key creation. 2018-05-20 23:20:48 +03:00
John Preston
c43dcf0567 Alpha version 1.2.21: Add some setup langs. 2018-05-18 21:57:06 +03:00
John Preston
f2a5a29d12 Alpha version 1.2.21: Fix build for Xcode. 2018-05-18 21:07:31 +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
96f7c0c02e Don't try to logout CDN dcs. 2018-05-18 19:41:59 +03:00
John Preston
66b7b6da2a Replace xD by emoji only after space. 2018-05-18 18:25:05 +03:00
John Preston
38daffdbfe Handle the ADMINS_TOO_MUCH error for channels. 2018-05-18 17:16:14 +03:00
John Preston
0238c03956 Return emoji replace by ":o" after a space.
Fixes #4700.
2018-05-18 17:15:02 +03:00
John Preston
425e56b3ea Apply proxy settings in mtproto-key-destroyer. 2018-05-18 15:20:28 +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
a053384618 Fix mtproto-proxy working with domain names.
Also refactor a bit TcpConnection and HttpConnection classes.
2018-05-17 13:27:49 +03:00
John Preston
694e8cd19f Remove MSVC compiler bug workaround.
It works fine in Visual Studio 2017 15.7.1.
2018-05-17 11:15:54 +03:00
John Preston
4bcd1e3c59 Allow editing last sent saved message by up key.
Also update libtgvoip.
Also replace 🤷 with a shrug.
2018-05-15 21:13:37 +03:00
John Preston
5f063c0151 Display information about proxy sponsor. 2018-05-15 20:22:28 +03:00
John Preston
5a1d4d55c6 Display a disclaimer about proxy sponsor. 2018-05-15 19:38:27 +03:00
John Preston
d3f85b4c4e Display channels promoted by proxy on top. 2018-05-13 21:26:35 +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
4f9507ed97 Fix build for Xcode 9.3.1 and OS X 10.6-10.7. 2018-05-13 21:12:44 +03:00
John Preston
f761b6aa9e Backport critical bugfix from '4f959b6b30' commit to Qt patch. 2018-05-13 20:35:40 +03:00
John Preston
168a7ce2e5 Add "Suggest emoji replacements" checkbox.
Also emoji suggestions insert an instant emoji replacement.
2018-05-13 18:56:08 +03:00
John Preston
4b763a76df Instant in-field emoji and text replaces.
Fixes #4410. Fixes #522.
2018-05-13 18:14:02 +03:00
John Preston
8764da787b Don't logout on some server-side problems. 2018-05-13 12:19:34 +03:00
John Preston
7d8ba15252 Allow to report messages in supergroups. 2018-05-10 17:15:16 +03:00
John Preston
96c0c30f7c Fix possible crash. 2018-05-10 17:15:04 +03:00
John Preston
bb6ab5314c Fix recent stickers saving and possible crash.
Regression was introduced in 97c15865a5.
2018-05-10 15:03:02 +03:00
John Preston
e3c6abfc3d Fix possible crash in reply returns. 2018-05-10 14:56:36 +03:00
John Preston
5c5bccae0b Fix proxy icon on retina and on theme changes.
Fixes #4668.
2018-05-10 13:34:06 +03:00
John Preston
296e009808 Fix proxy icon doubling.
Fixes #4666.
2018-05-10 13:24:52 +03:00
John Preston
4d84781a65 Display connecting state in history top bar. 2018-05-10 13:16:21 +03:00
John Preston
710b9bf454 Fix build for MSVC 15.7.
Fixes #4661. Fixes #4667.
2018-05-10 11:13:13 +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
c3fc91a6fc Fix couple of possible crashes. 2018-05-08 21:06:56 +03:00
John Preston
d2048f3c25 New connecting status design. 2018-05-08 20:31:33 +03:00
John Preston
cc2c13d018 Fix build with TDESKTOP_DISABLE_AUTOUPDATE.
Fixes #4655.
2018-05-07 00:34:58 +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
257dfa6b3f Improve phone rules checking. 2018-05-05 21:55:39 +03:00
John Preston
678d2a58c5 Improve proxy row design. 2018-05-05 21:55:39 +03:00
John Preston
e0431d270b Allow cdn requests through mtproto proxy. 2018-05-05 21:55:39 +03:00
John Preston
7797e5a3b7 Improve proxies box design. 2018-05-05 21:55:39 +03:00
John Preston
d15b0cdb08 Improve infinite radial animation. 2018-05-05 21:55:39 +03:00
John Preston
1af2769209 Closed beta 1.2.17.4: Fix option lookup. 2018-05-05 21:55:39 +03:00
John Preston
e6906b84f3 Closed beta 1.2.17.3: Fix layout. 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
f9ff676e57 Improve proxies box design and progress animation. 2018-05-05 21:55:38 +03:00
John Preston
db7041f2dc Send different dns requests for simple config. 2018-05-05 21:55:38 +03:00
John Preston
ad1f089802 Read autoupdate prefix from config. 2018-05-05 21:55:38 +03:00
John Preston
62c812858e Improve config re-requesting. 2018-05-05 21:55:38 +03:00
John Preston
4bf66cb6e9 Better special config implementation. 2018-05-05 21:55:38 +03:00
John Preston
95fee543ec Try all available endpoints 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
9935a36c3d Create and edit proxy box. 2018-05-05 21:55:38 +03:00
John Preston
a7c77682d7 Apply, delete and restore proxies in the box. 2018-05-05 21:55:38 +03:00
John Preston
8bbea976ea Display proxies list in a box. 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
dc9483e07a Fix possible deadlock.
Some unknown code (like getSession) was called while holding
_requestsByDcLock mutex which could lead to a deadlock.

Now all access points to _requestsByDc are simple.
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
65f968ec1b Update API scheme to layer 78. 2018-05-05 21:55:37 +03:00
John Preston
93f6d4b6e7 Support many config endpoints for one dc+params. 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
909acb25fd Requesting config if can't connect. 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 Zimmermann
a2606c4fc4 fix libressl-2.7 compat (#4633) 2018-04-28 21:57:02 +03:00
Max Razumov
647c609bf8 Update supported version of Ubuntu (#4612) 2018-04-28 21:55:15 +03:00
John Preston
cf98025177 Use exact tagged version of OpenAL.
I hope if fixes #4531.
2018-04-18 22:10:21 +04:00
John Preston
e0f20e9f82 Version 1.2.17: Add changelog entry. 2018-04-08 21:34:33 +04: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
d055908f4f Version 1.2.16: Improve release build scripts. 2018-04-08 18:23:12 +04:00
John Preston
f3eac6b259 Version 1.2.16: Fix text processing crash in OS X 10.6. 2018-04-08 18:21:40 +04:00
John Preston
87d6081408 Version 1.2.16: Fix build in Xcode 9.3. 2018-04-07 12:47:08 +04:00
John Preston
dd53bd1c55 Version 1.2.16.
- Bug fixes and other minor improvements.
2018-04-07 12:20:46 +04:00
Kirsan
3ff033cdf3 Fix for https://github.com/telegramdesktop/tdesktop/issues/4544
(cherry picked from commit d99c757d44d7c31fbb0eb290f273ad4d2d464255)
2018-04-07 12:13:52 +04:00
John Preston
c1c3b6a7e5 Disable emoji suggestions for :-D/:-P 2018-04-07 11:51:17 +04:00
John Preston
64d5a6acd5 Fix game scores display. 2018-04-07 11:41:48 +04:00
John Preston
e5b2e0a6b5 Fix memory clearing from photos/documents. 2018-04-07 11:01:32 +04:00
John Preston
9895b45293 Fix calls supported layer arguments. 2018-04-07 11:00:43 +04:00
John Preston
811fc43b63 Fix Qt text processing crash.
Fixes #4551.
2018-03-30 18:18:35 +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
67bda19458 Fix inline bot messages with previews. 2018-03-26 02:01:13 +04:00
John Preston
6c38919c3d Scroll history to down when sharing contact. 2018-03-26 01:47:05 +04:00
John Preston
ce9445287c Extend huge local cache map crash annotations. 2018-03-26 00:56:41 +04:00
John Preston
d4bd8862bd Fix switching between stickers pan and panel.
Fixes #4537.
2018-03-26 00:54:02 +04:00
John Preston
6904e023d3 Increment dropdown emoji selection in recent list.
Fixes #4539.
2018-03-26 00:28:23 +04:00
John Preston
91a7a77bb0 Fix case-insensitive emoji suggestions.
Fixes #4528, fixes #4511, fixes #4535.
2018-03-26 00:18:14 +04:00
John Preston
d9306e3e30 Fix parent link refresh for GIF webpage preview.
Fixes #4534.
2018-03-26 00:18:14 +04:00
John Preston
efdd3df129 Fix working with webpage preview GIFs.
Fixes #4533.
2018-03-26 00:18:14 +04:00
John Preston
63098d3c7d Work better with 'unlimited' config time limits. 2018-03-26 00:18:14 +04:00
Vasilii Babich
aa5781b550 Update some details in Xcode build instructions. 2018-03-25 19:29:38 +04:00
John Preston
d6e1862c08 Fix crash in AdminLog view with deleted delegates. 2018-03-22 02:27:14 +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
13e07b1623 Add some debug information. 2018-03-21 13:46:22 +04:00
John Preston
27ce1f8d44 Show something inside an 'empty' message. 2018-03-20 18:51:51 +04:00
John Preston
38c20fc3c2 Return one old way for requesting special config. 2018-03-20 18:21:36 +04:00
John Preston
4a32b00068 Setting for cloud stickers suggestions. 2018-03-20 01:09:03 +04:00
John Preston
3406f88fdc Single place for joining channels, in ApiWrap. 2018-03-20 01:09:03 +04:00
Marco Trevisan
c96cb37680 Travis flags update (#4506)
* travis: don't build alsoft tools, examples and tests

* travis: don't try to build with mir client support
2018-03-16 17:39:29 +03:00
John Preston
0d415837a0 Destroy old info button in top bar widget.
Fixes #4503.
2018-03-15 18:22:55 +03:00
John Preston
9dc48522d8 Fix multi-forward notification layout (long name). 2018-03-15 03:12:00 +03:00
John Preston
31b82a5d92 Show audio file performer-title in dialogs list. 2018-03-15 03:12:00 +03:00
John Preston
87ab4d9dd1 Improve local search in sticker sets.
- Don't index special sticker sets, like "Favorite stickers".
- Show "Not found." if no local results and waiting for server-side.
2018-03-15 03:11:59 +03:00
John Preston
b6e7625016 Improve case-insensitive emoji suggestions. 2018-03-15 03:11:59 +03:00
Sven-Hendrik Haase
c5e6bfce95 Fix wrong uname flag used
This is required because uname -p actually returns "unknown" for some hardware. The uname help documents this by stating that -p is non-portable. The -m flag is the one to use.
2018-03-14 15:01:26 +03:00
John Preston
7a849b2899 Fix crash on album parts being deleted. 2018-03-13 13:54:24 +03:00
John Preston
999fa39d7c Fix shared links layout for webpage previews.
Fixes #4489.
2018-03-13 13:29:56 +03:00
John Preston
7de15ce5cf Fix inline bots with photos. 2018-03-13 13:29:42 +03:00
John Preston
f792b0052f Refresh caption Text after media is being sent.
Fixes #4488.
2018-03-13 13:19:06 +03:00
John Preston
57d0b1d215 Show error when joining a full group. 2018-03-12 10:55:30 +03: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
c76e4b6b3c Fix: cancel empty reply by Escape. 2018-03-11 23:58:14 +03:00
John Preston
bda39cc6f6 Cancel empty reply by Escape. 2018-03-11 23:48:18 +03:00
John Preston
060cdfea86 Cancel reply when setting a forwarding draft. 2018-03-11 23:42:03 +03:00
John Preston
b1cc7b25ba Add group/channel info limit in EditPeerInfoBox. 2018-03-11 23:22:43 +03:00
John Preston
1e0fe70dc3 Focus correct widget in intro steps.
The old way some random shown widget could've been focused.
2018-03-11 22:55:28 +03:00
John Preston
8ed167c5fa Change domain fronting url and host header. 2018-03-11 22:55:28 +03:00
John Preston
dabf8414be Remove old debug information. 2018-03-11 22:21:17 +03:00
John Preston
a0eb64428e Use new config fields for revoke settings. 2018-03-11 22:21:17 +03:00
Patrick Eigensatz
dd1beb1d91 Let emoji suggestions be case insensitive
Closes #3985
2018-03-11 22:01:18 +03:00
John Preston
bb35d71fdc Attempt to fix access to a deleted item view. 2018-03-10 15:47:19 +03:00
John Preston
42a7e86e51 Alpha version 1.2.11.
- Bug fixes and other minor improvements.
2018-03-10 00:56:36 +03:00
John Preston
2f3540dadc Fix sending an album after cancel of one media. 2018-03-10 00:55:59 +03:00
John Preston
eb00641dfa Mark autoplayed voice/video messages as read. 2018-03-10 00:55:58 +03:00
John Preston
bfe7bf2c11 Paste image to SendFilesBox even if it has an url.
Fixes #4483.
2018-03-10 00:55:58 +03:00
Marco Trevisan (Treviño)
e88c575d4a linux: use $HOME to determine actual user path
As it could be different in confined environments.
2018-03-10 00:55:24 +03:00
Marco Trevisan (Treviño)
0de9c62675 linux-desktop-environment: detect Ubuntu properly enabling features
In Ubuntu (running in GNOME) we support AppIndicator and
Unity counters still.
2018-03-10 00:52:06 +03:00
Sean
9dc3847dbe Fix Typo 2018-03-10 00:50:05 +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 Preston
def21367a3 Allow to reply by double click on the timestamp. 2018-03-09 21:22:31 +03:00
John Preston
33fe1b6389 Show no results message in share box search. 2018-03-09 21:22:31 +03:00
John Preston
76cb5677b2 Fix webpage edit display in channel admin log. 2018-03-09 21:22:31 +03:00
John Preston
8c3b7f6417 Ignore second tray icon click in short time.
Fixes #4479.
2018-03-09 21:22:31 +03:00
John Preston
e6c0f0f774 Up arrow always edits last available message.
Fixes #4480.
2018-03-09 21:22:31 +03:00
John Preston
6bd5301828 Fix crash when accessing a deleted item view. 2018-03-09 21:22:31 +03:00
John
73c0c4507a fix build against libressl 2018-03-09 21:12:34 +03:00
John Preston
506b0806d6 Fix build instructions for Linux. 2018-03-09 01:55:18 +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
66ac4d6150 No fast reply and double click reply if selecting.
Also fix messages selection glitch.
2018-03-09 00:21:27 +03:00
John Preston
ab8e7897cc No search for peers when searching by a hashtag. 2018-03-08 17:14:26 +03:00
John Preston
2b9133be90 Don't remove field focus on empty text selection.
Fixes #4467.
2018-03-08 16:03:59 +03:00
John Preston
56fece6216 Move from req_pq to req_pq_multi in protocol impl. 2018-03-08 15:55:05 +03:00
John Preston
d381836f01 Don't add separate icon for faved pack.
Also update stickers search icons.
2018-03-08 15:54:55 +03:00
John Preston
c6efb588dc Fix crash in digit-only hashtag skipping. 2018-03-08 15:02:34 +03:00
John Preston
5404dfef08 Search sticker sets locally by short name. 2018-03-08 14:37:01 +03:00
John Preston
cba12980f9 Display correct amount of stickers in search. 2018-03-08 14:12:30 +03:00
John Preston
61700577d0 Fix possible crash with invalidated views. 2018-03-08 13:47:31 +03:00
John Preston
321f5d879d Fix crash in faving stickers.
Don't fill dates in any sets except CloudRecentSetId.
Otherwise some assertions will be violated later.
2018-03-08 12:57:05 +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
90179188b9 Improve sticker by emoji ordering.
First display recent by send/install date, then trending, then other.
2018-03-08 00:26:35 +03:00
John Preston
ccef155f7a Receive and track recent sticker usage date. 2018-03-07 20:43:26 +03:00
John Preston
f0a95032a5 Show cloud stickers by emoji. 2018-03-07 16:53:12 +03:00
John Preston
c3ff5f2603 Limit amount of displayed recent stickers. 2018-03-07 15:04:05 +03:00
John Preston
ee182ea684 API scheme downgraded to layer 76. 2018-03-06 20:48:24 +03:00
John Preston
7f73cc3085 Fix file media with views counter layout. 2018-03-06 19:14:39 +03:00
John Preston
dcf70b2847 Add ".download" for .lnk and .scf file names.
This is a workaround for some windows shell vulnerabilities.

See http://www.defensecode.com/whitepapers/
Stealing-Windows-Credentials-Using-Google-Chrome.pdf
2018-03-06 19:04:47 +03:00
John Preston
cb5ba7edda Use a separate lang key for sticker pack remove. 2018-03-06 18:41:52 +03:00
John Preston
7940ef24ab Disallow hashtags of digits only. 2018-03-06 18:29:45 +03:00
John Preston
0f901b3728 Update API and use WebDocument for inline bots. 2018-03-06 16:49:44 +03:00
John Preston
09aba596ac Open t.me/iv links in browser. 2018-03-04 15:52:00 +03:00
John Preston
b930ac7bf9 Don't add unread mentions in channels. 2018-03-03 16:09:31 +03:00
John Preston
7f1bc4635a Update libtgvoip. 2018-03-03 16:01:22 +03:00
John Preston
d4253d2025 Fix reply previews display. 2018-03-03 15:55:53 +03:00
John Preston
b007fcb537 Add sticker sets search. 2018-03-03 14:21:32 +03:00
John Preston
e6dd7d7684 Fix crash in item view refresh. 2018-03-01 20:17:39 +03:00
John Preston
128663d95b Reply by double clicking a message. 2018-02-28 15:07:15 +03:00
John Preston
ef8b6d1a3d Process currency amounts before display. 2018-02-28 15:06:57 +03:00
John Preston
b4baebc230 Fix mediaview download icon in night mode. 2018-02-24 16:38:51 +03:00
John Preston
b4581a7bbf Closed beta 1.2.8.11. 2018-02-24 02:47:33 +03:00
John Preston
a285dca39e Apply webpage media from sent message via bot. 2018-02-24 02:46:35 +03:00
John Preston
00aa6d5ac3 Allow monospace block to end on ellipsis. 2018-02-22 21:16:01 +03:00
John Preston
027db285bc Add Info::Channels section + feed channels search. 2018-02-22 20:38:00 +03:00
John Preston
c3c9ba7e51 Add feed icons. 2018-02-22 20:37:49 +03:00
John Preston
a1be63f890 Jump to date by date click in feed. 2018-02-22 15:35:46 +03:00
John Preston
f066f3f139 Enable jump to date in feed. 2018-02-22 00:17:36 +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
1ae22c8606 Fix assertion violation when no feed. 2018-02-21 16:38:56 +03:00
John Preston
d5569487a4 Closed beta 1.2.8.9. 2018-02-20 20:55:20 +03:00
John Preston
336e691dbc Add unread counter from feed to common counter. 2018-02-20 20:53:55 +03:00
John Preston
17a4d19beb Add a create feed channels list box. 2018-02-20 19:56:41 +03:00
John Preston
74aa1ad71e Ungroup all feed channels from context menu. 2018-02-18 17:00:14 +03:00
John Preston
f8c2f339a0 Create changelogs after data in AuthSession. 2018-02-18 16:26:28 +03:00
John Preston
1dd66184a1 Fix assertion violation on hashtag click. 2018-02-18 16:23:30 +03:00
John Preston
ddab8c1473 Fix fast share button hover area. 2018-02-18 16:22:58 +03:00
John Preston
49d2c97ceb Closed beta 1.2.8.8. 2018-02-16 21:00:19 +03:00
John Preston
351a423337 Highlight found messages in feed. 2018-02-16 20:59:35 +03:00
John Preston
07528be1e6 Support search in feed + scroll to search result. 2018-02-16 19:45:58 +03:00
John Preston
bc171f625a Remove some more symbols from filenames. 2018-02-15 15:34:38 +03:00
John Preston
0f775e1e66 Support feeds search display in dialogs list. 2018-02-14 23:18:21 +03:00
John Preston
98fb874b29 Closed beta 1.2.8.7. 2018-02-13 19:11:32 +03:00
John Preston
cfd5c2a650 Add feed notifications edit box. 2018-02-13 19:11:00 +03:00
John Preston
22a5b7faf6 Fix GIF playback glitch after loading. 2018-02-13 12:48:42 +03:00
John Preston
fe262701c0 Add notification toggle in feed channels. 2018-02-12 18:52:55 +03:00
John Preston
e1f71d3919 Closed beta 1.2.8.6. 2018-02-10 01:15:16 +03:00
John Preston
906cb95e67 Channels list in feed info with leave channel. 2018-02-10 01:14:26 +03:00
John Preston
f23c23f696 Closed beta 1.2.8.5. 2018-02-08 12:20:55 +03:00
John Preston
99c686e3e1 Display feed channels list in feed info. 2018-02-08 12:20:55 +03:00
John Preston
a144e35f84 Add content to feed info cover widget. 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
6726826c17 Display empty feed placeholder. 2018-02-08 12:20:55 +03:00
John Preston
e102cb1469 Handle channelDifferenceTooLong in media and feed. 2018-02-08 12:20:54 +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
269defa82d Fix forwarded Saved Messages layout. 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
0c5efb935d Read feed while scrolling. 2018-02-08 12:20:54 +03:00
John Preston
a7f67c4bc9 Better chats list entries management.
Make unread counts and last message base::optional<>.
Remove ChannelHistory.
2018-02-08 12:20:54 +03:00
John Preston
edcaccba1f Limit media count in one HistoryGroupedMedia. 2018-02-08 12:20:54 +03:00
John Preston
5ebecb4de3 Display feed userpic in single column layout. 2018-02-08 12:20:53 +03:00
John Preston
9f3048c1dc Hide service messages from feed. 2018-02-08 12:20:53 +03:00
John Preston
2586268b81 Remove HistoryJoined, use plain HistoryService. 2018-02-08 12:20:53 +03:00
John Preston
280ddb4629 Request full feed channels list before messages. 2018-02-08 12:20:53 +03:00
John Preston
20889d7003 Mark history as having pending resized items. 2018-02-08 12:20:53 +03:00
John Preston
d4f4698c69 Closed beta 1.2.8.2. 2018-02-08 12:20:53 +03:00
John Preston
adcce61b52 Fix date/unread bar display in albums. 2018-02-08 12:20:53 +03:00
John Preston
17b913fb13 Fix feed messages loading both ways. 2018-02-08 12:20:53 +03:00
John Preston
366ea1edc3 Notify about feed channels list changes. 2018-02-08 12:20:53 +03:00
John Preston
3a5a002be2 Add crash debug information. 2018-02-08 12:20:53 +03:00
John Preston
533fba8c70 Improve message context menu in feed. 2018-02-08 12:20:53 +03:00
John Preston
7435bd7fb0 Implement drag-n-drop from HistoryView::ListWidget. 2018-02-08 12:20:53 +03:00
John Preston
681b9b5ba3 Improve text selection in bubbles. 2018-02-08 12:20:53 +03:00
John Preston
600737c44f Fix copy selected items text in old and new lists. 2018-02-08 12:20:53 +03:00
John Preston
e5f3bed801 Improve drag selection in HistoryView::ListWidget. 2018-02-08 12:20:52 +03:00
John Preston
2fdc3169ce Fix / improve support for album items selection. 2018-02-08 12:20:52 +03:00
John Preston
722264f634 Add /Qspectre Visual C++ compiler option. 2018-02-08 12:20:52 +03:00
John Preston
a858ab5d0b Fix crash in DocumentData destructor.
Keep AuthSession pointer in DocumentData for loader destruction.
2018-02-08 12:20:52 +03:00
John Preston
63c1212ef1 Allow multiple items selection in HistoryView. 2018-02-08 12:20:52 +03:00
John Preston
2aa477176c Fix build for Xcode / GCC. 2018-02-08 12:20:52 +03:00
John Preston
6bb39451ea Closed beta 1.2.8.1. 2018-02-08 12:20:52 +03:00
John Preston
099a3c4642 Fix paste of image from Firefox.
It sometimes adds a strange path to empty temp file to mime data.
2018-02-08 12:20:52 +03:00
John Preston
9515520088 Update API scheme. 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
65df137610 Add group/ungroup action in channel peer menu. 2018-02-08 12:20:51 +03:00
John Preston
ced0c4d8f0 Move HistoryMessageDate to view elements. 2018-02-08 12:20:51 +03:00
John Preston
f3804429e4 Update GSL submodule. 2018-02-08 12:20:51 +03:00
John Preston
a47981054f Feed info profile placeholder. 2018-02-08 12:20:51 +03:00
John Preston
b9ad8bb700 Feed top bar placeholder. 2018-02-08 12:20:51 +03:00
John Preston
47ad5ea98a Display active feed state in dialogs list. 2018-02-08 12:20:51 +03:00
John Preston
840b42934b Use server-side my_results in contacts.search. 2018-02-08 12:20:51 +03:00
John Preston
4527c03c0d Use "Feed" name for chats list index and search. 2018-02-08 12:20:51 +03:00
John Preston
89941a8e83 Fix layout update notifications in Info::Media. 2018-02-08 12:20:50 +03:00
John Preston
ebd4651ac2 Manage unread bar using HistoryView::Element-s. 2018-02-08 12:20:50 +03:00
John Preston
861ab85ca1 Fix voice/video messages in chats/feed. 2018-02-08 12:20:50 +03:00
John Preston
f9154c4ed0 Fix albums layout and editing in feed. 2018-02-08 12:20:50 +03:00
John Preston
b91ebad8be Improve items resize in history and feed. 2018-02-08 12:20:50 +03:00
John Preston
e6baf8ef5b Fix layout of some media, enable GIF autoplay. 2018-02-08 12:20:50 +03:00
John Preston
d326c7e3fa Remove HistoryItemInstantiated. 2018-02-08 12:20:49 +03:00
John Preston
950126865e Handle item view refresh, fix groups. 2018-02-08 12:20:49 +03:00
John Preston
91f369a0b3 Handle view resize/repaint requests for mainView. 2018-02-08 12:20:49 +03:00
John Preston
d1a9d3992b API scheme updated to layer 76. 2018-02-08 12:20:49 +03:00
John Preston
2dd2ad5cdb Replace peerMessagesUpdated with notifications. 2018-02-08 12:20:49 +03:00
John Preston
04c8c95634 Use notify* instead of mark* in Data::Session. 2018-02-08 12:20:49 +03:00
John Preston
8a56ede187 Move all (item/view/media) maps to Data::Session. 2018-02-08 12:20:49 +03:00
John Preston
7425e80f05 Use HistoryMedia as view, add Data::Media. 2018-02-08 12:20:48 +03:00
John Preston
97a9089ebf Move draw / getState code to HistoryView::Message.
Item dimensions broken for now.
Also remove history.h from pch.
2018-02-08 12:20:48 +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
8060cb7426 Start HistoryView::Message class for item view. 2018-02-08 12:20:47 +03:00
John Preston
794e31505b First version of feed section view. 2018-02-08 12:20:46 +03:00
John Preston
50b120bc22 Fix glitch in single column back button click. 2018-02-08 12:20:46 +03:00
John Preston
f0b2e445f6 Prepare dialogs to open feeds. 2018-02-08 12:20:46 +03:00
John Preston
782e70b171 Support basic feed display in chats list. 2018-02-08 12:20:46 +03:00
John Preston
9d2239291d Add support for pinned feeds management. 2018-02-08 12:20:46 +03:00
John Preston
a2891807f8 Prepare dialogs to hold a history or a feed. 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
724fe65d72 Start feeds support. 2018-02-08 12:20:45 +03:00
John Preston
46612ef128 Remove Notify::userIsContactChanged().
Replace with Notify::peerUpdatedDelayed().
2018-02-08 12:20:45 +03:00
John Preston
139ef5411a Prepare code for dialogFeed handling. 2018-02-08 12:20:45 +03:00
John Preston
ac57000437 Move contacts list loading to ApiWrap. 2018-02-08 12:20:45 +03:00
John Preston
31234cb487 API scheme updated to layer 75. 2018-02-08 12:20:45 +03:00
John Preston
05e36a064f API scheme updated to layer 74. 2018-02-08 12:20:45 +03:00
John Preston
f88cbf3d4b Fix crash in case of incorrect Text entities. 2018-02-08 12:20:45 +03:00
John Preston
7814ee0f7a Fix building crashpad for macOS. Update instructions.
Some tests were disabled by a crashpad patch because the changes to make
them work with new SDK are relatively big and no need to backport them.

Fixes #4353.
2018-02-08 11:27:50 +03:00
Alexander Nestorov
9f4e5e4603 Fix xcode build instructions (#4345) 2018-01-26 03:55:31 +03:00
Vitaliy Rudnyh
810fb45750 building-xcode.md: Add depot_tools to $PATH (#4331)
Otherwise "crashpad" would not compile.
2018-01-23 04:08:33 +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
f65e8824fb Add single LEGAL file with license and copyright. 2018-01-03 13:04:34 +03:00
John Preston
2868899d81 Fix possible assertion violation.
Allow removing local HistoryItem's after the album was already sent.
2018-01-03 12:06:02 +03:00
John Preston
54dd05c556 Improve crash debug information. 2018-01-03 11:23:34 +03:00
John Preston
6b25160e3f Don't paint QPixmap-s in theme preview icons. 2018-01-02 22:23:54 +03:00
John Preston
0ef3e19bc2 Use QImage instead of QPixmap for theme preview.
Working with QPixmap from non-main thread is not defined.
2018-01-02 22:10:49 +03:00
John Preston
e89350d4b7 Reuse resample code from FFMpegLoader for video.
AbstractAudioFFMpegLoader used in FFMpegLoader and ChildFFMpegLoader.
2018-01-02 20:22:13 +03:00
John Preston
95399bef2b Improve swresample library usage.
It looks like different AVFrame-s can have different audio encoding
parameters, so now we setup/re-setup swr context using parameters
from current audio frame. Hopefully it will fix some audio crashes.
2018-01-02 19:18:53 +03:00
John Preston
06c724df01 Clear callbacks async in MTP::Instance.
Also fix previous build.
2018-01-02 16:44:12 +03:00
John Preston
3325106837 Add some debug information for crashes. 2018-01-01 23:23:18 +03:00
John Preston
9c72470c17 Fix possible crash in player closing. 2018-01-01 22:12:38 +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
2cc1fde5e4 Remove thumb glitch when uploading files. 2017-12-31 15:21:08 +03:00
John Preston
6796ac688a Apply web page media updates. 2017-12-31 12:55:08 +03:00
John Preston
9551cfaf9b Use more specific color keys for media overview parts.
File icons and radial animations should use derived keys instead of msgInBg.
Fixes #4246.
2017-12-31 01:28:25 +03:00
John Preston
8ef9ec0567 Fix glitches for transparent album preview parts. 2017-12-31 01:28:21 +03:00
John Preston
af552fb4c0 Replace base/task_queue with crl. 2017-12-31 00:28:38 +03:00
John Preston
ae7e5be5cd Add fast reply button in groups. 2017-12-30 21:54:15 +03:00
Matthew Tran
74b126f309 Add reply shortcut 2017-12-30 21:52:30 +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
6236590ca4 Fix SendFilesWay radiobuttons when adding media.
Also add /LTCG flag for static libraries Release builds on Windows.
2017-12-30 00:06:43 +03:00
John Preston
ea51f976f2 Alpha version 1.2.5: Workaround GCC 7.2 ICE. 2017-12-29 21:47:49 +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
2a409e3734 Add files from clipboard to composed album.
Fixes #4243.
2017-12-29 20:02:23 +03:00
John Preston
0171a4e874 Handle click on group thumb item in MediaView. 2017-12-29 17:58:53 +03:00
John Preston
59e5ffe743 Don't insert mime text in field for url list.
Fixes #4241.
2017-12-29 17:58:32 +03:00
John Preston
2bcbb5a5be Display group / userpic thumbnails in MediaView. 2017-12-29 16:44:36 +03:00
John Preston
5b4694a4eb Move text options constant to a separate module.
Also start MediaView group thumbs code.
2017-12-28 16:06:06 +03:00
John Preston
54d6673d0b Display photos and videos together in MediaView. 2017-12-28 13:12:07 +03:00
John Preston
e07a7a4b4c Improve phrases. No Restricted Users in channels info. 2017-12-27 22:44:04 +03:00
John Preston
f2d11e7432 Fix video grouped thumb on Retina displays. 2017-12-27 22:16:26 +03:00
John Preston
1a115cc7e5 Fix file upload progress display.
Regression was introduced in 5d18d7c813.
2017-12-27 21:57:37 +03:00
John Preston
a00941f7ce Update crl and libtgvoip submodules. 2017-12-27 21:49:08 +03:00
John Preston
634d21e486 Fix animation in album reordering. 2017-12-27 14:00:32 +03:00
John Preston
95d8742e3c Fix round corners on Retina displays. 2017-12-27 13:08:18 +03:00
John Preston
bd8dee0972 Fix crash in audio player hiding. 2017-12-27 10:18:09 +03:00
John Preston
b34099f49e Alpha version 1.2.4: Fix phrases and box cursor. 2017-12-26 20:49:04 +03:00
John Preston
0380e66c30 Alpha version 1.2.4: Fix build for old OS X versions. 2017-12-26 19:53:51 +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
21f4bbbe7b Update kicked count in Channel Info box. 2017-12-26 19:20:08 +03:00
John Preston
69d9072ff0 Allow fast admin removing in supergroups/channels. 2017-12-26 19:20:08 +03:00
John Preston
d5ae9bcba2 Close box when showing a layer section from it. 2017-12-26 19:20:08 +03:00
John Preston
86c0dfb295 Read "participants_count" field from c_channel(). 2017-12-26 19:20:08 +03:00
John Preston
01821c30e5 Fix message field focus loss in Saved Messages. 2017-12-26 19:20:08 +03:00
John Preston
7f66e0fdfe Hide remove member button for supegroup admins. 2017-12-26 19:20:08 +03:00
John Preston
2569df9e5a Rename some Ui methods.
myEnsureResized -> Ui::SendPendingMoveResizeEvents.
myGrab -> Ui::GrabWidget.
myGrabImage -> Ui::GrabWidgetToImage.
2017-12-26 19:20:08 +03:00
John Preston
5f8143e6a4 Fix build in Xcode. 2017-12-26 19:20:08 +03:00
John Preston
1fc7dabd3e Allow media reordering when sending an album. 2017-12-26 19:20:08 +03:00
John Preston
5d18d7c813 Send album after cancel of some media uploads.
Also display checks when part of the album medias are uploaded.
2017-12-26 19:20:07 +03:00
John Preston
4e8f5541af Fix caption editing in grouped media. 2017-12-26 19:20:07 +03:00
John Preston
a8ac18e4fd Save send way (album, photos, files) to settings. 2017-12-26 19:20:07 +03:00
John Preston
a6c15217c0 Fix grouped layout algorithm to match other apps. 2017-12-26 19:20:07 +03:00
John Preston
57351dd42a Remove QTextLayout that appears to be not needed. 2017-12-26 19:20:07 +03:00
John Preston
58d21ff916 Add album support to SendFilesBox. 2017-12-26 19:20:07 +03:00
John Preston
8e45b09083 Use different indentation for rpl operators.
It works better with Visual Studio IDE.
2017-12-26 19:20:07 +03:00
John Preston
44014e62ba Move EditCaptionBox to a separate module. 2017-12-26 19:20:06 +03:00
John Preston
ff65daa9fe Remove special case in SendFilesBox for an image. 2017-12-26 19:20:06 +03:00
John Preston
ec515080b5 Improve saved messages search results display. 2017-12-26 19:20:06 +03:00
John Preston
255dbf9405 Fix indexing of shared media.
Add new messages to shared media index even if !loadedAtBottom().
2017-12-26 19:20:06 +03:00
John Preston
aebb40dc1e Fix volume control disappearing in audio player. 2017-12-26 19:20:06 +03:00
John Preston
b20c2b4774 Always allow group admins to edit invite link.
Show Group Info even if supergroup admin can't edit information.
2017-12-26 19:20:06 +03:00
John Preston
3b3a705a67 First working code for sending albums. 2017-12-26 19:20:06 +03:00
Friedrich von Never
711aa51046 Fix handling of dashes in the style directory path
Now Telegram Desktop could be built if a path to the source directory
contains dashes.
2017-12-26 19:16:11 +03:00
John Preston
4d54cf1370 Update crl submodule. 2017-12-19 10:33:47 +04:00
John Preston
e023092744 Use RectPart(s) instead of ImageRoundCorner(s). 2017-12-18 21:54:11 +04:00
John Preston
2e421e8aed Allow unicode quotes as markdown entry separators.
Fixes #3867.
2017-12-18 21:06:44 +04:00
John Preston
afe9d38c48 Don't ruin links by markdown parsing.
Fixes #3851.
2017-12-18 20:49:40 +04:00
John Preston
3f751bfbb0 Activate window on dropEvent. 2017-12-18 20:25:24 +04:00
John Preston
b1f33890d6 Workaround GCC segmentation fault. 2017-12-18 19:52:58 +04:00
John Preston
92333e982c Move message components to history_item_components.
Also fix channel signatures rendering.
2017-12-18 19:52:36 +04:00
John Preston
16ca2d39c5 Fix _height value in inline bot result Gif layout.
This fixes render glitches in GIFs column with opened MediaView.
2017-12-18 18:10:24 +04:00
John Preston
977dee3599 Fix fast sharing from channels.
Grouped flag is only allowed for grouped media in forward requests.

Fixes #4198.
2017-12-18 17:29:48 +04:00
John Preston
546766fb13 Update FullMsgId context in HistoryMedia links. 2017-12-18 17:13:41 +04:00
John Preston
ddf4a36bdc Remove mtproto/session.h from precompiled header. 2017-12-18 16:40:15 +04:00
John Preston
fa3a76b3d8 Fix layout bug in grouped media rendering.
Also remove st::mediaPadding.
2017-12-18 15:40:43 +04:00
John Preston
d5de064019 Shuffle code around a bit.
Crash reports point to addToUnreadMentions() call being corrupted.
New reports could show is it responsible or setLastMessage() call.
2017-12-18 15:17:58 +04: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
cbbccd0364 Hide history visibility edit for public groups. 2017-12-18 10:18:51 +04:00
John Preston
b8204a317d Testing crl (concurrency runtime library). 2017-12-17 23:05:00 +04:00
John Preston
499e3113b9 Allow HistoryGroupedMedia cloning.
We use it for local forwarded message creation, it should be main().
2017-12-17 17:01:34 +04:00
John Preston
656e4869e6 Move UnreadBadge to ui/unread_badge. 2017-12-17 15:04:47 +04:00
John Preston
defec611e3 Alpha version 1.2.3.
- Several crash fixes.
2017-12-17 12:41:35 +04:00
John Preston
49def354bd Fix bug causing crash in group recounting. 2017-12-17 12:33:08 +04:00
John Preston
712b3f481c Move online phrase code from app module.
Also fix possible assertion violation in online change timeout.
2017-12-17 12:13:26 +04:00
John Preston
b3a723c871 Fix crash in message history context menu.
Regression was introduced in 6d48ca850e.
2017-12-17 11:25:02 +04:00
John Preston
de16a66a4a Alpha version 1.2.2: Fix build for Xcode. 2017-12-16 21:09:37 +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
89ccaccb88 Display right edited badge in group with caption. 2017-12-16 20:50:43 +04:00
John Preston
1f070da202 Recount grouping after leader caption edit. 2017-12-16 20:50:43 +04:00
John Preston
963e969d2a Fix selected messages copy with grouping. 2017-12-16 20:50:43 +04:00
John Preston
4734700ac5 Improve opening history with one loaded message.
When we add just one last item, like we do while loading dialogs,
we want to remove a single added grouped media, otherwise it will
jump once we open the message history (first we show only that
media, then we load the rest of the group and show the group).

That way when we open the message history we show nothing until a
whole history part is loaded, it certainly will contain the group.
2017-12-16 20:50:43 +04:00
John Preston
d9da2edd7c Improve grouped media display. 2017-12-16 20:50:43 +04:00
John Preston
6d48ca850e Correct reply/forward/delete for grouped items. 2017-12-16 20:50:43 +04:00
John Preston
3e7ac7eb26 Use first media caption for group caption. 2017-12-16 20:50:43 +04:00
John Preston
520a644150 Fix drag by date of grouped media. 2017-12-16 20:50:43 +04:00
John Preston
3a56b7cabd Forward grouped items. Fast share grouped items. 2017-12-16 20:50:43 +04:00
John Preston
efa72578cd Fix grouped media display in MediaView. 2017-12-16 20:50:43 +04:00
John Preston
b6087ce7ce Select/forward/delete group of messages. 2017-12-16 20:50:42 +04:00
John Preston
537400d8b2 Enable distinct selecting of grouped media. 2017-12-16 20:50:42 +04:00
John Preston
4c9931ab02 Support grouped media rendering. 2017-12-16 20:50:42 +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
Christoph
2d5188b968 Remove wrong alpha version
Fix #4171
2017-12-12 21:43:01 +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
b2f29b674d Send audio files with correct attributes.
Regression was introduced in 8b69e6ab99.

Fixes #4163.
2017-12-12 18:56:38 +04:00
John Preston
574f4a73cb Add some checks to video sound stream decoding. 2017-12-12 18:56:37 +04:00
John Preston
05e3ddce0c Fix userpic removing.
Regression was introduced in 68009b6fba.

Fixes #4152.
2017-12-12 18:56:37 +04:00
John Preston
3c101b0a50 Remove limit on chats list width.
Fixes #4146.
2017-12-12 18:56:37 +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
9d4558de2b Fix build in Visual Studio 15.5.1.
Looks like compiler had some regressions when updating from 15.4.5.

Range-V3-VS2015 also needs to cherry-pick this commit:
https://github.com/ericniebler/range-v3/commit/9f990c48d0
See https://github.com/Microsoft/Range-V3-VS2015/issues/26
2017-12-12 12:25:54 +04:00
John Preston
38f7f48c17 Open links in AboutBox without confirmation.
Fixes #4148.
2017-12-12 12:25:54 +04:00
John Preston
9534121676 Fix issue number :/ Fixes #4150. 2017-12-11 15:19:13 +04:00
John Preston
10b76d921b Fix window scaling issue on macOS.
Fixes #4149.
2017-12-11 15:06:05 +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
8b69e6ab99 Rename some methods in DocumentData.
Also fix voice message mark as read when autoplaying after previous.
Also show play icon and don't show playlist for audio files that do
not have shared music files attributes but have audio file mime type.
2017-12-10 14:28:04 +04:00
John Preston
4ef3de5287 Always specify seek position in TimeMs.
This way it won't rely on the sample rate of the audio file.

Fixes #4139.
2017-12-10 12:52:38 +04:00
John Preston
9fff2bf4c7 Fix one more crash in HistoryWidget. 2017-12-10 00:32:35 +04:00
John Preston
534058fe9b Alpha version 1.1.29. 2017-12-09 22:21:38 +04:00
John Preston
6d62673e9e Fix crash in HistoryWidget. 2017-12-09 22:21:38 +04:00
John Preston
677dbd5d6e Alpha version 1.1.28: Fix build for Xcode. 2017-12-09 20:01:40 +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
5a7d8bcffb Add audio playlist using Info::Media::ListWidget. 2017-12-09 19:13:06 +04:00
John Preston
63e89ddc9a Fix replies by stickers and inline bot results. 2017-12-09 16:39:41 +04:00
John Preston
4e2c8bbc26 Use SharedMediaMergedViewer() for audio player.
That way audio files and voice/video messages will play in context
(one after another with ability to go to next or previous in player)
almost always, no matter at what part of message history we are.
2017-12-09 14:02:51 +04:00
John Preston
9bbcbd4bb3 Remove all legacy media overview code. 2017-12-08 22:34:26 +04:00
John Preston
273ac5eaf1 Add some more public keys. 2017-12-08 20:26:27 +04:00
John Preston
951db83ab6 Index bad audio files to Shared Files Overview.
Fixes #4120.
2017-12-08 19:53:04 +04:00
chaplin89
a868c7bc8b Avoid generating multiple time the forward declarations in the headers generated by codegen_style. 2017-12-08 19:49:24 +04:00
John Preston
a403ad7d37 Always pass all users to add group member box. 2017-12-08 18:25:29 +04:00
John Preston
90f5f7dded Fix possible crash in timer timeout values. 2017-12-08 18:15:00 +04:00
John Preston
aef88559e8 Fix possible crash in HistoryWidget.
Stack in crash reports leads to something like that:
- HistoryWidget::showHistory
- _scroll->setOwnedWidget
- Ui::ScrollArea::onScrolled
- sendSynteticMouseEvent
- Info::Media::ListWidget::enterEventHook
- Info::Media::ListWidget::mouseAction?Update
- Overview::Layout::ItemBase::clickHandlerActiveChanged
- AuthSessionData::requestItemRepaint
- HistoryWidget::repaintHistoryItem

Workaround:
- Don't accept repaint item requests while _list is not set yet.
2017-12-08 17:54:55 +04:00
John Preston
6295d85ef2 Fix possible assertion violation in PeerListBox.
Very long stack in crash reports leads to something like that:
- PeerListBox::prepare
- PeerListBox::createMultiSelect
- PeerListBox::updateScrollSkips
- BoxContent::setInnerTopSkip
- _scroll->scrollToY
- sendSynteticMouseEvent
- ChatHelpers::TabbedPanel::showAnimated
- QWidget::render
- QWidgetPrivate::sendPendingMoveAndResizeEvents
- PeerListBox::resizeEvent
- _select->resizeToWidth(0)
- MultiSelect::Inner::computeItemsGeometry(0)

Workaround:
- Don't scrollToY if PeerListBox width was not yet set.
- Initial _scrollBottomFixed is false (at first createMultiSelect).
2017-12-08 17:36:17 +04:00
John Preston
a27ea2d631 Fix possible crash in mtpFileLoader.
If several cdn file parts hashes are received in getCdnFileHashesDone
and some middle one of them cancels the entire loader (for example
because of a file write error) a !_finished assert violation happens.
2017-12-08 17:13:13 +04:00
John Preston
de8de84a33 Fix possible crash in CalendarBox.
If month change notification was posted async there was a possibility
to get a mousePressEvent() with already new Context field values, but
with old _selected value. Those two could be inconsistent leading to
an assert violation in (_selected + _context->daysShift() >= 0).
2017-12-08 16:44:52 +04:00
John Preston
80bb6b65a7 Fix possible crash. 2017-12-08 15:53:28 +04:00
John Preston
f8963d7e4b Read silent flag from PeerData, not SilentToggle. 2017-12-08 15:52:12 +04:00
John Preston
c79d16a0d6 Auto-choose first search row in PeerListBox. 2017-12-08 13:30:30 +04:00
John Preston
aa16bcd604 Add a special key for saved messages userpic bg. 2017-12-08 13:23:55 +04:00
John Preston
935232eaa2 Don't use AEC on modern macOS. 2017-12-08 13:13:05 +04:00
John Preston
e273695cc9 Fix planar audio playback (for example .flac).
Also add some more crash information logging.

Fixes #4120.
2017-12-08 12:57:43 +04:00
John Preston
827784e3b2 Focus search field in Info layer. 2017-12-08 12:22:02 +04:00
John Preston
b501af0b8f Add search button to info members header. 2017-12-08 12:14:30 +04:00
John Preston
8f87cfe29d Fix explicit working dir by "-workdir" in Windows.
Regression was introduced in ff84962148.

Fixes #4129.
2017-12-08 12:13:42 +04:00
John Preston
79398fe6cf Add call button to Info::Profile top bar. 2017-12-07 19:17:53 +04:00
John Preston
355747d7bf Remove send actions in Saved Messages.
Fixes #4122.
2017-12-07 18:27:59 +04:00
John Preston
a032f24d58 Fix explicit working dir by "-workdir" argument.
Regression was introduced in ff84962148.

Fixes #4123.
2017-12-07 17:56:36 +04:00
John Preston
320105f201 Allow searching for '@' in the chats filter field.
Fixes #4121.
2017-12-07 17:43:06 +04:00
John Preston
54984efa0a Fix small files layout in Saved Messages.
Minimal message and media width are less because of the goto-button.
2017-12-07 17:43:05 +04:00
John Preston
d57f5460b7 Use ShowForwardMessageBox in Info::Media. 2017-12-07 17:43:05 +04:00
John Preston
5bc47e5203 Move shareContact and readServerHistory to ApiWrap.
Also allow non-confirming contact info sharing to Saved Messages.
2017-12-07 17:43:05 +04:00
John Preston
f0a03223e8 Share contact instantly to Saved Messages. 2017-12-07 12:56:10 +04:00
John Preston
007ab3b7b8 Fix crash in RSA public key wrapper. 2017-12-07 09:34:11 +04:00
Nicholas Guriev
f813bb704f Optimize key initialization
* Do not do redundant copying of numbers.
2017-12-07 09:15:10 +04:00
Nicholas Guriev
93809ec404 Fix build against OpenSSL 1.1
Closes: #3196
2017-12-07 09:15:10 +04:00
Mike Zueff
64e9958585 Fixed awesome WM tray icon. 2017-12-07 09:11:39 +04:00
John Preston
067138f1bf Alpha version 1.1.27: Update lang phrases. 2017-12-06 20:00:31 +04:00
John Preston
cfa88b840a Alpha 1.1.27: Fix build error. 2017-12-06 20:00:31 +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
ff84962148 Stop using current working directory on Windows.
Links generated by system sometimes have weird working directories,
like C:\Windows\system32. Stop trying to use current working folder
as a place for program data. Instead always try to use current exe
folder and if we were unable use app data folder.
2017-12-06 19:07:19 +04:00
John Preston
727f8aec13 Fix admin/creator status in megagroup members list. 2017-12-06 18:55:10 +04:00
John Preston
d77afef8b0 Hide Share contact button in saved messages. 2017-12-06 18:41:37 +04:00
John Preston
775cede16f Use separate phrases for clearing saved messages. 2017-12-06 18:39:27 +04:00
John Preston
c6d3fd883a Display right action button not too high. 2017-12-06 18:15:41 +04:00
John Preston
1473c14668 Forward messages to Saved Messages instantly. 2017-12-06 17:56:40 +04:00
John Preston
6764a3cc86 Replace SelectedItemSet with MessageIdsList.
Use vector<FullMsgId> everywhere instead QMap<..,HistoryItem*>.
The old way the app crashed in case some messages were deleted.
If the items are needed use HistoryItemsList=vector<HistoryItem*>.
2017-12-06 14:13:38 +04:00
John Preston
3845985a6b Fix third column appearing on window resize. 2017-12-06 11:05:34 +04:00
John Preston
76a716007c Closed beta 1.1.26.2. 2017-12-05 20:49:45 +04:00
John Preston
993877b0d4 Change main menu cloud icon to saved messages. 2017-12-05 20:48:03 +04:00
John Preston
8b3d203861 Display saved messages senders correctly. 2017-12-05 20:38:13 +04:00
John Preston
85d8273009 Implement correct saved messages history layout.
Forwarded info is displayed as a message author info (name/photo).
Outgoing messages without forwarded info are displayed as out().
Messages with save_from_ info have a button for GoToOriginal().
2017-12-05 20:14:28 +04:00
John Preston
f8e094392f Fix ripple animation glitch in history top bar. 2017-12-05 20:14:15 +04:00
John Preston
46bafc2dcc Support Saved messages in chats list and forwards. 2017-12-05 18:07:01 +04:00
John Preston
e4ce08e64e Show other shared media links in Saved Photos. 2017-12-05 16:23:08 +04:00
John Preston
aebdc2fd94 Add custom userpic rendering for Saved Messages. 2017-12-05 15:50:32 +04:00
John Preston
1d85c8a6b6 API scheme updated to layer 73. 2017-12-05 12:44:27 +04:00
John Preston
5eeb8143b6 Move EmptyUserpic from data_peer to empty_userpic. 2017-12-05 12:44:27 +04:00
John Preston
68009b6fba Refactor userpic storage and access in PeerData. 2017-12-05 11:58:18 +04:00
John Preston
62568daffe Refactor NotifySettings in PeerData. 2017-12-04 21:48:45 +04:00
John Preston
116e3fd9c5 Fix admin stars disappearing in members list. 2017-12-04 16:08:43 +04:00
John Preston
76f951e3e6 Show members list in the third column. 2017-12-04 15:45:15 +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
e1c68892d4 Show third column only when explicitly requested.
This allows you to show info in layer from mention links.
2017-12-04 13:42:05 +04:00
John Preston
629c216a7f Fix storage size variables, use qint64.
Fixes #4110.
2017-12-03 20:51:31 +04:00
John Preston
f3c8da4819 Request all admins when first opening a supergroup. 2017-12-03 20:43:42 +04:00
John Preston
9ba482f56f Fix crash in edit group info box. 2017-12-03 19:24:33 +04:00
John Preston
2a59802a16 Alpha version 1.1.26: Fix release script. 2017-12-02 18:57:13 +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
d6f7cae024 Fix two crashes in OS X 10.6.
Disable rtl control chars (harfbuzz-ng crashes on them).
Disable creating state of not yet created top level windows.
2017-12-02 16:10:52 +04:00
John Preston
8391d43057 Use EditPeerInfoBox for editing groups.
This allows to edit group invite links.
Rename EditNameTitleBox to EditNameBox, used only from Settings.
2017-12-02 16:04:22 +04:00
John Preston
da77c10f60 Hide three-dot peer menu when peer changes. 2017-12-02 15:11:01 +04:00
John Preston
301aa9572f Apply channel admin edition changes. 2017-12-02 15:07:27 +04:00
John Preston
675499df4d Fix render bug in single column layout. 2017-12-02 14:22:48 +04:00
John Preston
0a1165dac9 Remove locking in crash annotations.
We removed ffmpeg crash annotations so now all are from main thread.
2017-12-02 13:28:15 +04:00
John Preston
a495de7cf8 Ask OpenAL to use kDefaultFrequency (48 kHz). 2017-12-02 13:27:32 +04:00
John Preston
2161858088 Fail resampling audio with inconsistent frames. 2017-12-02 12:58:52 +04:00
John Preston
001be82566 Add some more checks to file downloader. 2017-12-02 12:32:43 +04:00
John Preston
85b3d3f64d Display admin badges in supergroups.
Also prefer std containers to Qt and OrderedSet in data_peer.
2017-12-01 22:38:44 +04:00
John Preston
3bdce06e19 Use peer colors uniformly with mobile apps. 2017-12-01 14:21:40 +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
afd1548533 Attempt to fix a crash in touch event handlers. 2017-11-30 22:18:39 +04:00
John Preston
595af2c6d9 Rename weak(QObject*) to make_weak(QObject*). 2017-11-30 22:04:13 +04:00
John Preston
2bbf17b672 Fix t.me/share links.
Regression was introduced in ffc20e4492.

Fixes #4099.
2017-11-30 21:47:58 +04:00
John Preston
43570d1613 Check current chat before auto-closing it.
Close current chat only if it is the one being delete-and-exit'ed.
2017-11-30 21:35:35 +04:00
John Preston
2432845df2 Optimize and rename base::weak_unique_ptr.
Rename base::enable_weak_from_this -> base::has_weak_ptr.
Rename base::weak_unique_ptr -> base::weak_ptr.
Rename base::make_weak_unique -> base::make_weak.
Rename base/weak_unique_ptr.h -> base/weak_ptr.h
2017-11-30 21:33:27 +04:00
John Preston
0bf854bf18 Fix edit name button in Settings.
Regression was introduced in 703b944839.
2017-11-30 18:01:01 +04:00
John Preston
a0c8d522ef Save window extension on layer->section migration.
If the third section is shown inside the existing window remember
it as a zero window extension or third section show. That way it
will hide correctly when it is closed by X button.

Partially fixes #4091.
2017-11-30 17:08:51 +04:00
John Preston
c10588a7dc Merge group-supergroup history in jump-to-date.
Fixes #4094.
2017-11-30 16:50:13 +04:00
John Preston
13ab055fe0 Add debug information about crash in ffmpeg. 2017-11-30 15:41:15 +04:00
John Preston
2e972fb678 Hide "Delete for {user}" in chats with bots.
Fixes #3818.
2017-11-30 15:06:30 +04:00
John Preston
5b7059dccd Fix crash in shared media save state. 2017-11-30 12:15:21 +04:00
John Preston
ad6ddcb507 Fix crash in selecting unsent messages.
Also add some more checks in file downloads and serialization.
2017-11-30 11:14:31 +04:00
John Preston
6994201d50 Fix travis and appveyor builds. 2017-11-29 22:33:16 +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
41b143cb7e Fix and improve back navigation with three columns. 2017-11-29 00:01:04 +04:00
John Preston
196ff7f4c1 Don't apply count from getParticipants(Recent). 2017-11-28 22:30:01 +04:00
John Preston
ff16897dde Improve supergroup members list reusability. 2017-11-28 20:20:05 +04:00
John Preston
300e55e610 Fix delete button in shared media selections. 2017-11-28 19:16:28 +04:00
John Preston
f716041073 Closed beta 1.1.23.11. 2017-11-28 14:05:23 +04:00
John Preston
a63abe5154 Add some more crash debug information. 2017-11-28 14:05:11 +04:00
John Preston
c04991f707 Redesign round checkbox animations. 2017-11-28 00:54:31 +04:00
John Preston
ddd57517df Fix text overflow in history top bar. 2017-11-27 19:09:26 +04:00
John Preston
d014b47958 Move Info::TopBarOverride to Info::TopBar.
This allows to improve animations in shared media items selection.
2017-11-27 15:43:57 +04:00
John Preston
6afe18503d wip redesign info top bar 2017-11-26 21:05:52 +04:00
John Preston
837dac50fa Fix build for the original range-v3. 2017-11-26 18:20:22 +04:00
John Preston
6a4aa184f3 Closed beta 1.1.23.10. 2017-11-24 21:42:19 +04:00
John Preston
20c9280ada Add some more debug info for crashes. 2017-11-24 21:41:31 +04:00
John Preston
fea122ae12 Handle PHONE_NUMBER_BANNED error in login. 2017-11-24 21:41:09 +04:00
John Preston
86c0205faa Handle USERS_TOO_FEW error in group creation. 2017-11-24 20:33:06 +04:00
John Preston
9f76be9d26 Elide 'Delete for {user}' checkbox text. 2017-11-24 20:28:14 +04:00
John Preston
7705696d54 Hide all PopupMenu when enabling local passcode. 2017-11-24 20:06:35 +04:00
John Preston
bb7ab625c1 Fix channel admin rights checking. 2017-11-24 20:05:50 +04:00
John Preston
da386f2c2e Update user status in Info::Profile cover. 2017-11-24 19:51:47 +04:00
John Preston
0ced28f991 Nice animations when selecting shared media items. 2017-11-24 19:47:09 +04:00
John Preston
9dc39cb758 Add slide animation to Info::TopBarOverride. 2017-11-24 18:12:39 +04:00
John Preston
9eacb11f3c Fix render lag in widgets resizeEvent()->show().
ScrollArea calls show() in ScrollBar::resizeEvent. If this event
handlers was called from SendPending...() you could set fake .._Shown
attribute on, call resizeEvent() and remove this attribute even if it
should not be removed already - after call to show().
2017-11-24 17:07:36 +04:00
John Preston
4b1d15f968 Closed beta 1.1.23.9. 2017-11-23 19:46:08 +04:00
John Preston
7395cc21b8 Update libtgvoip, opus to 1.2.1 and ffmpeg to 3.4. 2017-11-23 19:41:59 +04:00
John Preston
efdba3a482 Handle errors in getMessages(). 2017-11-23 19:41:13 +04:00
John Preston
39428841e4 Improve selected shared media items layout.
Also fix night mode theme bug in report spam panel.
2017-11-23 18:58:00 +04:00
John Preston
981063596a Add nice scroll to the bottom of the Info layer. 2017-11-23 17:10:50 +04:00
John Preston
67d4eb688a Reverse user and chat profile photos. 2017-11-23 13:58:12 +04:00
John Preston
da71938d18 Link libstdc++ statically in Updater.
This will allow running it on Ubuntu 12.04 when it was built on 14.04.
2017-11-23 09:29:58 +04:00
John Preston
2850d456d0 Closed beta 1.1.23.8: Test an upstream fix backport for macOS issue. 2017-11-22 21:53:10 +04:00
John Preston
5063a22155 Closed beta 1.1.23.8. 2017-11-22 18:03:00 +04:00
John Preston
98896ab5ac Fix crash in RpWidget::event() from alive().done() 2017-11-22 18:02:29 +04:00
John Preston
5913e6d187 Closed beta 1.1.23.7. 2017-11-22 15:11:41 +04:00
John Preston
f477aea2a5 Add some more debug info for crashes. 2017-11-22 15:10:11 +04:00
John Preston
5803edb77b Add members from info to mgInfo->lastParticipants. 2017-11-22 13:56:00 +04:00
John Preston
f6ba59ed14 Improve group stickers choose process.
Allow to choose from featured if used has no his own sets.
Allow to choose group sticker set from group info box.
2017-11-22 13:31:02 +04:00
John Preston
542ba89f25 Edit pre-history visibility in megagroups. 2017-11-22 12:04:45 +04:00
John Preston
2387b66e86 Allow supergroup members to clear history. 2017-11-22 12:04:24 +04:00
John Preston
75d8d01b17 Allow pinned messages in channels. 2017-11-21 18:27:48 +04:00
John Preston
b337d54623 Use custom base::overload() helper. 2017-11-21 18:27:48 +04:00
John Preston
44e94bfbf5 Add workaround for macOS leaveEvent() bugs.
On macOS sometimes when mouse leaves the window we don't receive leaveEvent()
calls in the nested widgets, like buttons, only for the window itself.
2017-11-21 18:27:48 +04:00
John Preston
d93c1ccbaa Improve compile time. 2017-11-21 14:20:52 +04:00
John Preston
6ca105a290 Minimal layer 72 support. 2017-11-20 23:54:05 +04:00
John Preston
bccd801874 API scheme updated to layer 72. 2017-11-20 16:33:12 +04:00
John Preston
eb8800f2d4 Replace $ with _ in rpl::mappers. 2017-11-20 16:32:55 +04:00
John Preston
ac99318f34 Use ranges:: algorithms instead of base:: 2017-11-20 16:24:00 +04:00
John Preston
bc7c88c511 Fix build in Xcode / GCC. 2017-11-19 20:31:58 +04:00
John Preston
f1f955b7ac Pass already-members when adding members to channel. 2017-11-19 18:41:52 +04:00
John Preston
68bc8d0231 Add range-v3 library. 2017-11-19 18:37:07 +04:00
John Preston
04a1cff24a Fix wrong unread counter in history top bar. 2017-11-19 15:52:15 +04:00
John Preston
de15da8a93 Improve info layer presentation. 2017-11-19 15:37:15 +04:00
John Preston
59938791ef Closed beta 1.1.23.6: Log crash info. 2017-11-18 00:04:22 +04:00
John Preston
3ef0bcc5d5 Closed beta 1.1.23.6. 2017-11-17 22:52:16 +04:00
John Preston
15d2ce150d Remove Send Message animation in !Wrap::Side 2017-11-17 21:02:49 +04:00
John Preston
33ae4b176a No shared media empty placeholders while loading. 2017-11-17 20:20:31 +04:00
John Preston
4aae4f9399 Show channel members inside Info as well. 2017-11-17 20:06:20 +04:00
John Preston
fc4c31b673 Make members header a button. 2017-11-17 19:34:51 +04:00
John Preston
88d7f172ca Improve unread counter for HistoryTopBarWidget. 2017-11-17 18:54:01 +04:00
John Preston
bef87c6dff Allow showing chat members in a special section. 2017-11-17 17:23:36 +04:00
John Preston
747ebd2136 Make links clickable in channel descriptions. 2017-11-17 11:42:53 +04:00
John Preston
41873412e7 Fix crash and improve info navigation. 2017-11-17 11:33:20 +04:00
John Preston
0811190527 Closed beta 1.1.23.5: Fix build for Xcode and GCC. 2017-11-17 11:09:43 +04:00
John Preston
0a5ba3490d Closed beta 1.1.23.5. 2017-11-16 21:20:27 +04:00
John Preston
55616a4d1b Inject active peer profile on the stack bottom.
Always have active peer profile on the bottom of third column stack.
2017-11-16 21:19:41 +04:00
John Preston
c872cd76e1 Improve window extension by third column. 2017-11-16 20:43:52 +04:00
John Preston
cf977cb41a Improve history -> profile top bar navigation. 2017-11-16 19:24:01 +04:00
John Preston
903aa46e5c Disable tabs in third column info. 2017-11-16 13:13:17 +04:00
John Preston
131efa11be Various fixes. 2017-11-16 11:45:55 +04:00
John Preston
5a159d0204 Improve string encoding. 2017-11-16 07:59:12 +04:00
John Preston
7fdeab829f Paint native title instead of using custom. 2017-11-16 07:59:12 +04:00
John Preston
4e1b94d37d Allow 3 photo/video in the minimal third column. 2017-11-16 07:59:12 +04:00
John Preston
388d743d29 Add confirmation on leaving group/channel. 2017-11-16 07:59:12 +04:00
John Preston
8dfccf55d1 Add shared media empty placeholders. 2017-11-16 07:59:12 +04:00
John Preston
fafcd02e7c Improve Emoji / GIFs list variable width support. 2017-11-16 07:59:12 +04:00
John Preston
defa0ae4d0 Improve stickers list variable width support. 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
a86788f4d7 Improve info section navigation.
Also fix render glitch in StickersListWidget.
2017-11-16 07:59:12 +04:00
John Preston
aecc119bac Add fast chat photo upload to info profile. 2017-11-16 07:59:11 +04:00
John Preston
8dd3f24285 Replace Profile::UserpicButton with one from Ui:: 2017-11-16 07:59:11 +04:00
John Preston
830c6a4894 Replace PeerAvatarButton with UserpicButton. 2017-11-16 07:59:11 +04:00
John Preston
3d37ac9235 Replace NewAvatarButton with UserpicButton.
This new control should also replace PeerAvatarButton and
Profile::UserpicButton and deliver all the best of those three.
2017-11-16 07:59:11 +04:00
John Preston
3deea14559 Remove old shared media overview section.
Also move window/top_bar_widget to history/history_top_bar_widget.
2017-11-16 07:59:11 +04:00
John Preston
534b578598 Fix crash when switching two columns at once. 2017-11-16 07:59:11 +04:00
John Preston
8355722f4e Closed beta 1.1.23.3. 2017-11-16 07:59:11 +04:00
John Preston
866ff628b7 Fix render bug, enable wide third column. 2017-11-16 07:59:11 +04:00
John Preston
fe9630bb20 Allow to resize third column. 2017-11-16 07:59:11 +04:00
John Preston
bca9b3ca3f Extract a reusable Ui::ResizeArea class. 2017-11-16 07:59:11 +04:00
John Preston
3a25313e61 Fix restoring shared media state. 2017-11-16 07:59:11 +04:00
John Preston
fc66550a32 Support variable width tabs slider. 2017-11-16 07:59:11 +04:00
John Preston
0255d0c59e Support any size in the tabbed selector. 2017-11-16 07:59:10 +04:00
John Preston
5c12b0e5fa Use /permissive- flag for Visual Studio builds. 2017-11-16 07:59:10 +04:00
John Preston
aa160e775c Fix huge CPU consumption in the group info profile. 2017-11-16 07:59:10 +04:00
John Preston
d3c152022c Closed beta 1.1.23.2 2017-11-16 07:59:10 +04:00
John Preston
dbb011fc56 Add members link in info for channel admins. 2017-11-16 07:59:10 +04:00
John Preston
a6df928d45 Improve copy of info profile phrases. 2017-11-16 07:59:10 +04:00
John Preston
dd3ae22e08 Save data from EditPeerInfoBox. 2017-11-16 07:59:10 +04:00
John Preston
8ff0120642 Add EditPeerInfoBox without saving. 2017-11-16 07:59:10 +04:00
John Preston
3998fad7ef Add manage supergroup / channel box. 2017-11-16 07:59:10 +04:00
John Preston
7f8cdf85d5 Grow history stack following joinchat links. 2017-11-16 07:59:10 +04:00
John Preston
1871425b2d Add 'X' and admin star in group info members. 2017-11-16 07:59:10 +04:00
John Preston
5f0ba48309 Add top bar menu and notifications toggle. 2017-11-16 07:59:10 +04:00
John Preston
9743dc1ffb Add some more actions to three dot menu. 2017-11-16 07:59:10 +04:00
John Preston
fcf2b9d1a7 Add some more actions to info profile. 2017-11-16 07:59:10 +04:00
John Preston
9f37820901 Add bot Help and Settings buttons in info. 2017-11-16 07:59:09 +04:00
John Preston
4295a823c6 Improve bot About section in info profile. 2017-11-16 07:59:09 +04:00
John Preston
8191ebfc49 Improve peer context menu for info. 2017-11-16 07:59:09 +04:00
John Preston
3fe12f1249 Display verified badge in the info. 2017-11-16 07:59:09 +04:00
John Preston
230c83d218 Follow group->supergroup migration in info. 2017-11-16 07:59:09 +04:00
John Preston
11a3308cf5 Scroll to field on search query update. 2017-11-16 07:59:09 +04:00
John Preston
3992ff6b59 Switch add member and search members buttons. 2017-11-16 07:59:09 +04:00
John Preston
a05c7a815a Fix animation lag in info layer wrap. 2017-11-16 07:59:09 +04:00
John Preston
a7807420fa Fix animation lag in shared media. 2017-11-16 07:59:09 +04:00
John Preston
47a52b0587 Moved several modules from history/ to data/. 2017-11-16 07:59:09 +04:00
John Preston
d67a8a4708 Fix edit bio in Settings. 2017-11-16 07:59:09 +04:00
John Preston
9c01bbca95 Fix invoice amount display. 2017-11-16 07:59:09 +04:00
John Preston
554eb3a342 Move stickers state variables to AuthSessionData.
Also allow to click on the selected set when choosing megagroup
sticker set and allow to paste a t.me link to the set there.
2017-11-16 07:59:09 +04:00
John Preston
9a56b2d20f Move dialogsWidthRatio to AuthSessionData. 2017-11-16 07:59:09 +04:00
John Preston
4771ea7cd4 Display "{from}:" in global search results.
Regression was introduced in c09fbcfeb3.
2017-11-16 07:59:09 +04:00
John Preston
aec496d520 Remove RTL Override symbols from filenames. 2017-11-16 07:59:09 +04:00
John Preston
cb5c59c86c Fix build and crash in Xcode. 2017-11-16 07:59:09 +04:00
John Preston
628c8e10f7 Search and save state in common groups. 2017-11-16 07:59:09 +04:00
John Preston
a6361d6221 Move common_groups info module. 2017-11-16 07:59:08 +04:00
John Preston
39c5898fa4 Save media search state to memento. 2017-11-16 07:59:08 +04:00
John Preston
09d1e3629a Add media search to all info modes. 2017-11-16 07:59:08 +04:00
John Preston
86ad15612a Use Info::Controller for the whole info section. 2017-11-16 07:59:08 +04:00
John Preston
c9152b0b3a Cache media search results until empty query. 2017-11-16 07:59:08 +04:00
John Preston
eb2719fad1 Added search to files and links shared media. 2017-11-16 07:59:08 +04:00
John Preston
a27edcad1c Extract SparseIdsList module from SharedMedia.
This way it can be reused in search results management.
2017-11-16 07:59:08 +04:00
John Preston
15cc4502b4 Save scroll top state to media memento. 2017-11-16 07:59:08 +04:00
John Preston
f6ed3dff7f Rewrite base::lambda_guard, use only one pointer.
Support base::enable_weak_from_this for guarding, not only QObject,
in base::lambda_guard, in App::CallDelayed and in App::LambdaDelayed.

Allow only one guarding pointer, no places in code use more than one.
2017-11-16 07:59:08 +04:00
John Preston
101d4f6444 Use std::function for base::lambda implementation.
base::lambda becomes just std::function and base::lambda_once becomes
base::unique_function - a move-only wrapper around std::function.

This is required because Visual C++ 2017 15.4.1 has a compiler bug
with static member variables of class templates, they may collide.

The std::function uses inheritance and virtual functions instead of
custom vtables done by static members of class templates used in
custom base::lambda implementation, so they work fine.
2017-11-16 07:59:08 +04:00
John Preston
fde3ff1bbf Simplify rpl::consumer. 2017-11-16 07:59:08 +04:00
John Preston
53de44f272 Clear selection after forward in info shared media. 2017-11-16 07:59:08 +04:00
John Preston
f5c5c32d1d Add context menu to info shared media. 2017-11-16 07:59:08 +04:00
John Preston
9a988d89e3 Remove std::any dependency (for now).
Xcode 9 still doesn't have std::any :(
2017-11-16 07:59:08 +04:00
John Preston
b51f865c54 Save info members list state to memento. 2017-11-16 07:59:08 +04:00
John Preston
fb46c33d7f Add context menu support to info members list. 2017-11-16 07:59:07 +04:00
John Preston
856ca22aad Display online count in the info profile section. 2017-11-16 07:59:07 +04:00
John Preston
508fa14385 Workaround render glitches on new MacBooks.
For unknown reason large windows have bad render glitches in High Sierra.
Forcing of OpenGL composition (by adding a fake child QOpenGLWidget) fixes it.
2017-11-16 07:59:07 +04:00
John Preston
5b190c5098 Preserve TopBarOverride in Info WrapWidget.
Also support better selection in info shared media.
Also fix build for Xcode.
2017-11-16 07:59:07 +04:00
John Preston
6b5e06de50 Removed collapsing of shared media. 2017-11-16 07:59:07 +04:00
John Preston
be5f4c9a71 Allow delete / forward selected in shared media.
Also use PeerListBox with a chats list with global search controller
instead of HistoryHider for forward / share contact.
2017-11-16 07:59:07 +04:00
John Preston
7b69282c7e Add rpl::merge(). 2017-11-16 07:59:07 +04:00
John Preston
54cc3e6315 Shared media multiple items selection. 2017-11-16 07:59:07 +04:00
John Preston
66146c382d Improve paths for Xcode build. 2017-11-16 07:59:07 +04:00
John Preston
989f0cc683 Fix build in Xcode. 2017-11-16 07:59:07 +04:00
John Preston
e02d209e6f Fix build with GCC. 2017-11-16 07:59:07 +04:00
John Preston
6445c0563e Fix reading from freed memory in rpl::take(). 2017-11-16 07:59:07 +04:00
John Preston
583b0fa778 Display common groups in Info profiles. 2017-11-16 07:59:07 +04:00
John Preston
fee517384c Disable round videos in shared media for now. 2017-11-16 07:59:07 +04:00
John Preston
aa260d263b Don't forget current item in MediaView. 2017-11-16 07:59:07 +04:00
John Preston
a08dd1f6e1 Fix build for macOS. 2017-11-16 07:59:06 +04:00
John Preston
f107866b42 Add basic click handler support to info shared media. 2017-11-16 07:59:06 +04:00
John Preston
7f3c97fb01 Add info media preloading to both sides. 2017-11-16 07:59:06 +04:00
John Preston
65cc4d3fbc Support item repaint in Info media overview. 2017-11-16 07:59:06 +04:00
John Preston
fdd89d65ca Allow using custom comparators in flat_[map|set]. 2017-11-16 07:59:06 +04:00
John Preston
ecbc0ae57e Show info media overview using Overview::Layout. 2017-11-16 07:59:06 +04:00
John Preston
7905694b31 Add tabs and other types links to Info::Media. 2017-11-16 07:59:06 +04:00
John Preston
335704e176 Fix layer resize animation glitches. 2017-11-16 07:59:06 +04:00
John Preston
c0bb8a8af7 Return third section when returning in main section. 2017-11-16 07:59:06 +04:00
John Preston
76b8078bd9 Save section expand state in Info memento. 2017-11-16 07:59:06 +04:00
John Preston
c6c75a1980 Animate Info-to-Info transitions. 2017-11-16 07:59:06 +04:00
John Preston
93c15e5ee6 Use internal section stack in Info::WrapWidget. 2017-11-16 07:59:06 +04:00
John Preston
525cde3498 Use make_state for flatten_latest(). 2017-11-16 07:59:06 +04:00
John Preston
c4d33f9986 Add rpl::take(count). 2017-11-16 07:59:06 +04:00
John Preston
f0ad78d808 Change *[Fast|Animated] to anim::type in SlideWrap. 2017-11-16 07:59:06 +04:00
John Preston
83850d9b86 Change *[Fast|Animated] to anim::type in FadeWrap. 2017-11-16 07:59:06 +04:00
John Preston
0c4bda71fd Remove some unused / rare phrases. 2017-11-16 07:59:05 +04:00
John Preston
d1687ab963 Improve info wrapping in section / layer.
Also move layerwidget to window/layer_widget.
Also replace ui/effects/widget_fade_wrap with ui/wrap/fade_wrap.
2017-11-16 07:59:05 +04:00
John Preston
ea0f6b9a12 Use 'if constexpr ()' instead of tag dispatch. 2017-11-16 07:59:05 +04:00
John Preston
5cc7cb1d85 Allow empty arg list in rpl next/error handlers. 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
1cd126d728 Disable not type-erased consumers on GCC. 2017-11-16 07:59:05 +04:00
John Preston
6861059d18 Fix build for old OS X with Qt 5.3.2 2017-11-16 07:59:05 +04:00
John Preston
80d9938e96 Support and use not type-erased consumers. 2017-11-16 07:59:05 +04:00
John Preston
fddcdf359b Use not type-erased producers in code. 2017-11-16 07:59:05 +04:00
John Preston
cdda7f8f9a Allow not type-erased producers. 2017-11-16 07:59:05 +04:00
John Preston
086e46c162 Add and use only rpl::start_with_*() methods. 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
4180ed09a5 Add user actions to info profile. 2017-11-16 07:59:05 +04:00
John Preston
f50bf0b97f Show old overview / common groups for now. 2017-11-16 07:59:05 +04:00
John Preston
2c75b4836d Improve sorting by online in info profile. 2017-11-16 07:59:05 +04:00
John Preston
292e57ffc7 Use PeerListBox content in info profile. 2017-11-16 07:59:04 +04:00
John Preston
1a0e524b49 Optimize third column (create it only once).
Before historyPeer and historyPeerCanWrite were independent, so we
created a new Info section for both of them changing.

Now we use Data::CanWriteValue(peer) and rpl::flatten_latest().
2017-11-16 07:59:04 +04:00
John Preston
ffc20e4492 Divide structs into several data/ modules. 2017-11-16 07:59:04 +04:00
John Preston
f2a5862714 Add members list to info profile. 2017-11-16 07:59:04 +04:00
John Preston
faeb1483f2 Divide info_profile_lines in different modules. 2017-11-16 07:59:04 +04:00
John Preston
a4c2138e74 Finalize move of info-profile modules. 2017-11-16 07:59:04 +04:00
John Preston
1c5d410373 Move info-profile modules to info/profile/
Next commit fixes the build.
2017-11-16 07:59:04 +04:00
John Preston
b9fb9af74f Info shared media and common groups counters. 2017-11-16 07:59:04 +04:00
John Preston
812dcb5e8d Update styles to match the design. 2017-11-16 07:59:04 +04:00
John Preston
703b944839 Return FlatLabel.margins in getMargins(). 2017-11-16 07:59:04 +04:00
John Preston
e1ba9f8ff8 Hide send message in Info for current chat. 2017-11-16 07:59:04 +04:00
John Preston
3db696d52f Add rpl::combine_previous() operator. 2017-11-16 07:59:04 +04:00
John Preston
6d0dbebda9 Fix tabbed selector section / panel exchange. 2017-11-16 07:59:04 +04:00
John Preston
f4d9618487 Improve layer / section exchange for Info. 2017-11-16 07:59:04 +04:00
John Preston
b7077eb71d Enable third column info by default. 2017-11-16 07:59:03 +04:00
John Preston
1a4d326abb Show Info if writing is forbidden. 2017-11-16 07:59:03 +04:00
John Preston
48cbdd9d40 Don't toggle tabbed section from OneColumn. 2017-11-16 07:59:03 +04:00
John Preston
26532ab9b4 Fix small chats list column bug with boxes. 2017-11-16 07:59:03 +04:00
John Preston
c0e780a28f Allow small dialogs list with three columns. 2017-11-16 07:59:03 +04:00
John Preston
5c4daeee4c Add rpl::variable, improve filter / combine. 2017-11-16 07:59:03 +04:00
John Preston
1c5abaa518 Remove mutex locks from rpl for now. 2017-11-16 07:59:03 +04:00
John Preston
5586d231de Switch Info between columns and layer. 2017-11-16 07:59:03 +04:00
John Preston
3fbb643d51 GCC bug workaround.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67274
2017-11-16 07:59:03 +04:00
John Preston
766e7dadb1 Use improved rpl::start(). 2017-11-16 07:59:03 +04:00
John Preston
ee9763c98f Improve rpl::combine() and rpl::start(). 2017-11-16 07:59:03 +04:00
John Preston
5e7aa4ff81 Move third column from HistoryWidget to MainWidget. 2017-11-16 07:59:03 +04:00
John Preston
f162462111 Move info between Layer and Narrow wrap. 2017-11-16 07:59:03 +04:00
John Preston
088d23d557 Start new Info section (profile + shared media). 2017-11-16 07:59:02 +04:00
John Preston
fbcd5e2f1e Try to use const-ref better in rpl. 2017-11-16 07:59:02 +04:00
John Preston
c302219f9e Use rpl in some widgets and effects. 2017-11-16 07:59:02 +04:00
John Preston
21d136e224 myEnsureResized() now forces recursive create. 2017-11-16 07:59:02 +04:00
John Preston
487ddb5694 Add some rpl operators. 2017-11-16 07:59:02 +04:00
John Preston
873ccf8096 Implement SharedMediaWithLastViewer using rpl. 2017-11-16 07:59:02 +04:00
John Preston
696478843e Implement UserPhotosViewer using rpl. 2017-11-16 07:59:02 +04:00
John Preston
2690618da2 Add Storage::UserPhotos and UserPhotosSlice. 2017-11-16 07:59:02 +04:00
John Preston
68a0e32a3d Add SharedMediaSliceWithLast for chat photos. 2017-11-16 07:59:02 +04:00
John Preston
449986456e Add SharedMediaSliceMerged for migrated histories. 2017-11-16 07:59:02 +04:00
John Preston
2363a6bd44 Add SharedMediaSlice to observe shared media.
Start testing / using it in MediaView.
2017-11-16 07:59:02 +04:00
John Preston
41ed2d1b84 New storage for shared media messages index. 2017-11-16 07:59:02 +04:00
John Preston
b873fee1cf Use rvalue references in rpl next / error. 2017-11-16 07:59:01 +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
101fdb1fba Add event_stream for events with many consumers. 2017-11-16 07:59:01 +04:00
John Preston
ebe4bbbf0f Add core rpl::producer/consumer implementation. 2017-11-16 07:59:01 +04:00
Roman Voropaev
63669c1612 Added cmake to %PATH% (#4066)
It's later used in OpenAL building.
2017-11-15 21:16:44 +01:00
John Preston
1c8db1e2e9 Fix travis build for the latest ffmpeg code. 2017-11-13 13:55:11 +04:00
Christoph
62463d2c3e Remove notes about the signature (#4015)
* Remove notes about the signature

It's handled by a bot now 🎉

* Remove check from travis

* Remove check from appveyor
2017-10-26 23:35:55 +02:00
John Preston
247f8f4fcc Fix instructions markup. 2017-10-11 22:33:49 +01:00
Duncan Ogilvie
34d15e7216 don't call vcvarsall.bat in AppVeyor script (#3945)
Follow-up for #3920

Signed-off-by: Duncan Ogilvie mr.exodia.tpodt@gmail.com (github: mrexodia)
2017-09-29 20:24:04 +02:00
John Preston
d46a5f693f Remove unused lang phrases and some code. 2017-09-28 19:18:27 +03:00
eegorov
8bfe407610 New build option: without GTK and appindicator
Signed-off-by: Egor Y. Egorov <egor.y.egorov@gmail.com> (github: eegorov)
2017-09-28 18:32:51 +03:00
visuve
08e3a54a58 Mark missing ctors deleted
- Satisfy the rule of five

Signed-off-by: Veli-Matti Visuri <veli-matti.visuri@cerescon.fi> (github: visuve)
2017-09-28 18:23:42 +03:00
visuve
8c92f42de3 Fix uninitialized values
- Use C++11 default member initializers

Signed-off-by: Veli-Matti Visuri <veli-matti.visuri@cerescon.fi> (github: visuve)
2017-09-28 18:23:42 +03:00
Alexander GQ Gerasiov
07106897a6 Fix CVE-2016-10351: Insecure cWorkingDir permissions.
Set 700 permisson on dir on every start.

Signed-off-by: Alexander GQ Gerasiov <gq@cs.msu.su>
2017-09-28 18:19:27 +03:00
Duncan Ogilvie
5d5b89c82d Customized BUILD_DIR in install.bat (#3920)
This is a very simple change that allow people to build Telegram like AppVeyor does it, but not in C:\TBuild (often C is "System Reserved" and cannot be used). Instead you can build it anywhere (from the visual studio 2017 x86 command prompt) like this:

    >set BUILD_DIR=%CD%
    >git clone https://github.com/telegramdesktop/tdesktop.git
    >cd tdesktop
    >.\.appveyor\install.bat
    >msbuild Telegram\Telegram.sln /property:Configuration=Debug /p:Platform=Win32

Some notes:

- I replaced all C:\TBuild with %BUILD_DIR%, even if it is decided not to merge this, keep that.
- %BUILD_DIR%\Libraries\prepare.bat might fail to extract the 7z Qt libraries for some reason (even if 7z.exe is in PATH) this has not been fixed

Signed-off-by: Duncan Ogilvie mr.exodia.tpodt@gmail.com (github: mrexodia)
2017-09-28 12:03:39 +02:00
Jan Niklas Hasse
e42cc02d0e Prefer AppIndicator if DBus interface is available
Starting with Ubuntu 17.10 the interface will be provided by an
extension (shipped by default):

https://github.com/ubuntu/gnome-shell-extension-appindicator

Legacy tray icons have been completely removed in GNOME 3.26. By
checking the interface, this will allow users of other distributions
with GNOME to also use Telegram's indicator with the extension.

Signed-off-by: Jan Niklas Hasse <jhasse@bixense.com> (github: jhasse)
2017-09-28 12:59:46 +03:00
Yonsh Lin
11a46a1072 Fix IME being interrupted after reconnection
Signed-off-by: Yonsh Lin <yonsh@live.com> (github: yonsh)
2017-09-28 12:57:25 +03:00
Monote
a0fbbf2fb6 Fix build instructions for MSVC (#3878)
Fixed 'change directory' commands for following build process step-by-step.

Signed-off-by: Andrew Aponte <coyshibe@gmail.com> (github: monote)
2017-09-11 14:04:25 +03:00
John Preston
74e46f7b80 Fix travis / appveyor CI builds. 2017-09-06 17:12:26 +03:00
John Preston
b8d1b8d6c1 Update build docs for VS 2017.
Closes #3117. Closes #3729.
2017-09-06 17:11:30 +03:00
John Preston
7ae1ef0a1a Migrate to VS2017. 2017-09-06 17:11:06 +03:00
John Preston
13aa42c883 Use GYP rule for Qt MOC only on Telegram project. 2017-09-06 12:12:04 +03: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
c09fbcfeb3 Display author photo / name in search results. 2017-09-05 20:21:56 +03:00
John Preston
def97b3f70 Update faved sticker / saved GIF remove button. 2017-09-05 19:34:36 +03:00
John Preston
da373e3334 Update emoji / sticker icons. 2017-09-05 17:44:14 +03:00
John Preston
28a0402253 Fix command line parsing. 2017-09-05 17:38:40 +03:00
John Preston
a09fa1b267 Fix sending files from "Send To" in Windows.
Regression was introduced in 8e433971c9.
2017-09-05 16:45:58 +03:00
Christoph
ea082e9604 Retry cloning dep. if prebare.bat is missing (#3861)
Signed-off-by: auchri <auer.chrisi@gmx.net>
2017-09-04 21:46:57 +02:00
John Preston
917be105ac Version 1.1.22: Faved stickers limit is 5 right now. 2017-09-04 16:29:35 +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
34a43fc62f Update langs. 2017-09-04 15:34:11 +03:00
John Preston
5e77fe8412 Don't display admin stars if admins are disabled. 2017-09-04 15:21:54 +03:00
John Preston
52195ff95a Fix saving chat admins.
Regression was introduced in 0880c01a20.
2017-09-04 15:21:53 +03:00
John Preston
5b77bd5aa0 Limit maximum IP length in case of corrupted data. 2017-09-04 15:21:52 +03:00
John Preston
fbf8cd04b5 Fix travis build.
Regression was introduced in 5faca8d4f6.

GYP patch for GCC precompiled header support was accidentally removed.
2017-09-04 14:30:33 +03:00
Christoph
7f776c70db Fix typo in changelog date
Signed-off-by: Christoph <auer.chrisi@gmx.net>
2017-09-04 08:49:15 +02:00
John Preston
1effaa4e03 Version 1.1.21.
- Bug fixes and other minor improvements.
2017-09-03 23:41:04 +03:00
John Preston
66c94515f3 Fix crash in setting group sticker set. 2017-09-03 22:50:16 +03:00
John Preston
c2a1cc2ae8 Fix crash in contacts list box global search.
Regression was introduced in f7359093b4.
2017-09-03 22:50:16 +03:00
John Preston
ad41a81b66 Fix window size reset on every launch.
Regression was introduced in b08732cf28.

In MediaView constructor a call to setWindowState(WindowFullScreen)
invokes QWindowSystemInterface::flushWindowSystemEvents() which then
delivers some delayed system window resize event for the main window,
resetting its size to something default.
2017-09-03 22:50:15 +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
cd8d73c7ad Langs updated. 2017-09-03 19:14:47 +03:00
John Preston
c76389e126 Allow to use base::lambda independently. 2017-09-03 15:45:49 +03:00
John Preston
76489a7885 Fix stack overflow in passcode lock check.
A regression was introduced in e209737b1a.

We call MainWindow::doWeReadMentions() in the history paintEvent,
that calls Auth().checkAutoLock() and may start passcode locking.

Passcode locking starts animation and grabs the window content,
calling history paintEvent() which leads to deadlock.

Now we call Auth().checkAutoLock() asyncronously.
2017-09-03 15:45:48 +03:00
John Preston
df64c972d8 Replace QFlags with base::flags. 2017-09-03 15:45:47 +03:00
John Preston
a1344e862a Add base/flags for bit flags on scoped enums. 2017-09-03 15:45:46 +03:00
John Preston
5faca8d4f6 Add Catch unittest framework and some tests. 2017-09-03 15:45:45 +03:00
John Preston
48e2a5472e Return not_null<History*> in App::history(). 2017-09-03 15:45:43 +03:00
John Preston
5a20014b1a Highlight all mentions when marking them read. 2017-08-30 19:15:53 +03:00
John Preston
20efa47126 Fix layout for the log entries of caption edits. 2017-08-30 19:15:52 +03:00
John Preston
5a1d52f82e Fix unread mentions navigation issues.
When the unread bar was destroyed we first jumped to the bottom
of the history by updateHistoryGeometry() and only after that
animated scroll to the desired message started. The last messages
were always painted (and marked as read) in that case.
2017-08-30 19:15:51 +03:00
John Preston
4c604b34c1 Allow service messages to be unread mentions. 2017-08-30 19:15:50 +03:00
John Preston
ee5c827f26 Closed beta 1.1.19.3. 2017-08-30 19:15:49 +03:00
John Preston
643bedd4cf Display faved stickers before recently used. 2017-08-30 19:15:48 +03:00
John Preston
af165115f8 Fix media caption line breaks in MediaView. 2017-08-30 19:15:48 +03:00
John Preston
5964261db5 Allow to view sticker set from admin event log. 2017-08-30 19:15:47 +03:00
John Preston
d4814c5cb0 Display only mention badge if one unread message. 2017-08-30 19:15:46 +03:00
John Preston
a8df4453ff Fix cancel search in peer ripple painting. 2017-08-30 19:15:45 +03:00
John Preston
638d64d6f2 Closed beta 1.1.19.2. 2017-08-30 19:15:44 +03:00
John Preston
c97227825f Send images as files if no way to send as photos.
Fixes #3710.
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
cc4023d26a Improve unread mentions badge layout. 2017-08-30 19:15:39 +03:00
John Preston
ca15fa3a97 Use sync notifications for name changes.
Search index updates must be sync or it may use new values twice.
2017-08-30 19:15:38 +03:00
John Preston
67bdb4cec8 Closed beta 1.1.19.1. 2017-08-30 19:15:37 +03:00
John Preston
e13ed9b909 Remove main()->peerUpdated and some other signals. 2017-08-30 19:15:36 +03:00
John Preston
8e433971c9 Improve current executable path computing.
Fixes #960 (hopefully).
2017-08-30 19:15:35 +03:00
John Preston
f2801d4775 Fix possible crash in file download after error.
Regression was introduced in 2fa2fa41c5.

In file download failed handler we suggest to try to load the file
once again to the same location. After some changes we started to
forget filename before failed handler. That resulted in large files
loading to memory instead of hard drive.

Add a precondition in FileLoader to prevent such bugs in the future.
2017-08-30 19:15:34 +03:00
John Preston
6cedf20c39 Remove old crash debug information. 2017-08-30 19:15:33 +03:00
John Preston
7df63db9b3 Hide "Ban Users" admin rights changes in channels. 2017-08-30 19:15:32 +03:00
John Preston
0303f18ac6 Fix check for _mouseSelection flag in dialogs.
Fixes #3781.
2017-08-30 19:15:32 +03:00
John Preston
81fb32504b Apply faved stickers limit when faving. 2017-08-30 19:15:31 +03:00
John Preston
a72453fb1b Remove ContactsBox and contacts_box module. 2017-08-30 19:15:30 +03:00
John Preston
b816d33d48 Replace add bot to group box with PeerListBox. 2017-08-30 19:15:29 +03:00
John Preston
782114d644 Add and use base::make_weak_unique() helper. 2017-08-30 19:15:28 +03:00
John Preston
0880c01a20 Replace group admins ContactsBox with PeerListBox. 2017-08-30 19:15:28 +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
012d59ab42 Use nullptr instead of std::unique_ptr<Type>(). 2017-08-30 19:15:25 +03:00
John Preston
0bea2620b5 Replace BoxContent::closeHook() with boxClosing. 2017-08-30 19:15:24 +03:00
John Preston
95af8da66a Call correct destructor in base::Observable.
base::Subscription::Node doesn't have a virtual destructor.
2017-08-30 19:15:23 +03:00
John Preston
71e0e6ac4d Mark history as read at the bottom in any case. 2017-08-30 19:15:22 +03:00
John Preston
bca444b92e Add base::optional as a wrapper of base::variant. 2017-08-30 19:15:21 +03:00
John Preston
ae1dacb7d7 Add base/algorithm for range-based algorithms. 2017-08-30 19:15:21 +03:00
John Preston
e209737b1a Display and follow unread mentions in history. 2017-08-30 19:15:13 +03:00
John Preston
7ad21ff713 Move std and gsl includes to precompiled header. 2017-08-25 14:39:33 +03:00
John Preston
c8810f87b9 Move a lot of code from scheme.h to scheme.cpp. 2017-08-25 14:39:32 +03:00
John Preston
1207ddb2ea Add flat_map and flat_set using std::deque. 2017-08-25 14:39:31 +03:00
John Preston
edbc3f8fde Use QDataStream directly on QByteArray. 2017-08-25 14:39:30 +03:00
John Preston
dd9d604966 Fix incorrect scroll jumps.
If we invoke showHistory(h, msgId) several times we call
forgetScrollState() for this history being on the same scroll place.

To compute it again we need to call visibleAreaUpdated() even if
the real scroll position was not changed.
2017-08-25 14:39:29 +03:00
John Preston
65d81f96f3 Remove some App::wnd() occurences. 2017-08-25 14:39:28 +03:00
John Preston
b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +03:00
John Preston
fa818407e6 Improve group sticker set setup box. 2017-08-25 14:39:25 +03:00
John Preston
7f5a91d2bb Allow to hide empty megagroup sticker set. 2017-08-25 14:39:24 +03:00
John Preston
25f18c0c3a Allow to fave stickers from deleted sticker packs. 2017-08-25 14:39:23 +03:00
John Preston
472a714ef1 Apply faved stickers limit when faving a new one. 2017-08-25 14:39:22 +03:00
John Preston
9b01621791 Add height for checkbox/radiobutton ripple effect. 2017-08-25 14:39:20 +03:00
John Preston
f04b25ea26 Allow setting group stickers set. 2017-08-25 14:39:19 +03:00
John Preston
ab35829358 Remove App::app(), App::uploader(), App::api().
Also use Auth() instead of AuthSession::Current*().
2017-08-25 14:39:18 +03:00
John Preston
417f5684dc Add ability to disable animations. 2017-08-25 14:39:16 +03:00
John Preston
a143505fd6 Remove lambda_slot() and lambda_slot_once(). 2017-08-25 14:39:15 +03:00
John Preston
cb5b6d0cb8 Add megagroup stickerset to StickersListWidget. 2017-08-25 14:39:13 +03:00
John Preston
d44b303fb3 Suggest faved stickers by emoji.
Request added faved sticker emoji if its pack is not loaded yet.
2017-08-25 14:39:12 +03:00
John Preston
8188724920 Remove faved stickers from StickersListWidget. 2017-08-25 14:39:11 +03:00
John Preston
070456882e Manage faved stickers from sticker context menu. 2017-08-25 14:39:09 +03:00
John Preston
134bc13169 Show faved stickers in StickersListWidget. 2017-08-25 14:39:07 +03:00
John Preston
667eb288d7 Add faved stickers set loading and saving.
Also move stickers loading methods to ApiWrap.
2017-08-25 12:58:13 +03:00
John Preston
b0cc61c621 API scheme updated to layer 71. 2017-08-25 12:58:12 +03:00
John Preston
99afa1196c Improve search in peer / search from user design. 2017-08-25 12:58:11 +03:00
John Preston
0a6535ea94 Show "choose from user" box when typing "from:". 2017-08-25 12:58:10 +03:00
John Preston
ce51abd9d0 Change dialogs filter text area for two icons. 2017-08-25 12:58:09 +03:00
Nicholas Guriev
a2c93bc040 Fix updates of mute status in context menu of dialog list
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru>
2017-08-25 12:56:50 +03:00
Or Bin
7bcb6d556f Minor fixes for VS2015 build instructions
Signed-off-by: Or Bin <orbin50@gmail.com> (github: OrBin)
2017-08-06 10:08:10 +02:00
nyuszika7h
31b460fe46 Improve multiple people typing/playing message
This is consistent with the Android version, and is more clear.

Also, in languages that use singular for all numbers, it avoids
confusion between "3 people are typing" and "a person named '3' is
typing".

Signed-off-by: nyuszika7h <nyuszika7h@gmail.com> (github: nyuszika7h)
2017-08-04 18:24:37 +02:00
Nicholas Guriev
24fc162e71 Mute settings box
Closes: #3153
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-08-04 18:16:54 +02:00
John Preston
98f3e9a853 Version 1.1.19: Update langs. 2017-08-01 22:57:41 +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
6f746c238a Search for messages from a specific user in group. 2017-08-01 21:38:01 +03:00
John Preston
8c60ac78aa Rename and split dialogswidget module.
Also remove some debug information for crash fix.
2017-08-01 21:15:03 +03:00
John Preston
91fda6b654 Add search from group member button to dialogs. 2017-08-01 21:15:02 +03:00
John Preston
6f27e310ae Send reply and forward when choosing bot command. 2017-08-01 21:14:45 +03:00
John Preston
96a2af842f Remove glitch with video messages floating player. 2017-08-01 21:14:44 +03:00
John Preston
9d81ea59dd Attempt to fix an out of memory crash. 2017-08-01 21:14:43 +03:00
John Preston
91f0d049db Fix saving a loaded file as another existing file. 2017-08-01 21:14:42 +03:00
John Preston
27151d5e25 Show who banned or restricted user in supergroup. 2017-08-01 21:14:41 +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
027340a8e0 Copy public channel link instead of following it. 2017-07-27 14:24:37 +03:00
John Preston
0517f9f780 Insert emoji instead of text replacement. 2017-07-27 13:22:51 +03:00
John Preston
80ee40eb18 Add debug info for out of memory crash. 2017-07-27 13:14:39 +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
2dadc9bd7a Langs updated. 2017-07-26 23:46:16 +03:00
John Preston
180f83c528 Fix crash in InnerDropdown widget animations. 2017-07-26 23:43:18 +03:00
John Preston
dfa7cb1826 Version 1.1.16: Fix build for Qt 5.3.2 and GCC. 2017-07-26 19:10:04 +03:00
John Preston
fdcb28f1a0 Version 1.1.16: Hide emoji replaces list for now. 2017-07-26 17:59:08 +03:00
John Preston
0e059ec788 Version 1.1.16: Add some debug info. 2017-07-26 17:56:01 +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
9bf40c927e Improve emoji suggestions and replace on send.
Bring recent emoji up in suggestions.
Apply saved skin color to emoji suggestions.
Write to recents when choosing emoji suggestion.
2017-07-26 15:55:04 +03:00
John Preston
df2aeb0c58 Provide emoji suggestions as a service. 2017-07-26 15:55:03 +03:00
John Preston
2dec9c46a7 Add emoji autocomplete to history message field. 2017-07-26 15:55:02 +03:00
John Preston
8f8100af3a Add emoji autocomplete data and algorithm. 2017-07-26 15:55:01 +03:00
John Preston
65371ec1b8 Fix selected text render on Retina.
QPainter::viewport() can be a too large rect to be passed as a
clipping region to QPainter on Retina displays.

QPainter in case of Retina displays tries to transform QRegion using
scale matrix and fails with "QRegion: creating region from big
polygon failed" warning message and disables painting completely.
2017-07-26 15:51:24 +03:00
John Preston
647d6ae443 Fix language switch when getting difference. 2017-07-26 15:50:39 +03:00
John Preston
216692cd9b Remove the Link row in Settings.
Anyway it duplicates the Username row.
2017-07-26 14:56:58 +03:00
John Preston
2e5930eb58 Update full peer in profile and settings.
Not more than once in five seconds get the full info to update bio.
2017-07-26 14:53:49 +03:00
John Preston
24b3b2a658 Fix forwarded from for single message forward.
Closes #3699, closes #3701, closes #3700.
2017-07-26 09:07:05 +03:00
John Preston
e1e286aa13 Allow to fast share not games to channels.
Fixes #3692.
2017-07-26 09:07:01 +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
7db57b72f1 Some langs updated. 2017-07-23 15:37:44 +03:00
John Preston
9e0ca64e02 Closed beta 1001014001. 2017-07-23 13:30:02 +03:00
John Preston
cc55e3b027 Don't jump in chats list scroll while reordering.
While we reorder the pinned chats we move chat rows around which
sometimes produces auto scroll event that will try to reorder more.

This should probably fix assertion violation that was debugged using
additional information from commits 8b96f72, c7e63ff and a935075.
2017-07-23 13:20:11 +03:00
John Preston
f78335aa67 Fix keyboard scrolling in ContactsBox. 2017-07-23 12:48:49 +03:00
John Preston
f283aa033b Fix a couple of layout bugs for username edit. 2017-07-23 12:34:44 +03:00
John Preston
7ff175a81e Display user Bio in profile. 2017-07-23 12:34:43 +03:00
John Preston
34d2e78308 Allow to edit Bio in Settings. 2017-07-23 12:34:43 +03:00
John Preston
9bd89121e8 Replace self-destruct media service messages text.
Also support runtime components with align up to std::max_align_t.
2017-07-23 12:34:42 +03:00
John Preston
2e0513a30f Check CDN file hashes. 2017-07-23 12:34:41 +03:00
John Preston
cf02a4cc31 API scheme updated to layer 70. 2017-07-23 12:34:40 +03:00
John Preston
5a1ec3c9e0 Fix display of Search members button in profile. 2017-07-23 12:33:39 +03:00
John Preston
fa70bf9e0c Fix text message edit admin event log entries.
Regression was introduced in a513b1c.

In case of text messages entry->_page minimal height is counted in
the whole message minimal height and should not be added.
2017-07-23 12:33:39 +03:00
John Preston
9bd983bb9d Alpha 1.1.14: Update langs. 2017-07-19 11:38:59 +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
ed4c3cccb2 Add admins from search in admins list box.
When searching in admins list box show all group members and allow
to appoint a new administrator right from this box.
2017-07-19 11:18:20 +03:00
John Preston
90311dbf24 Fix CDN file download. 2017-07-18 22:01:22 +03:00
John Preston
f7a354bfd1 Display "edited" mark on channel signed messages. 2017-07-18 22:00:33 +03:00
John Preston
a513b1c7b3 Fix media caption edit admin event log entries. 2017-07-18 21:59:53 +03:00
John Preston
077e128e9a Don't uncheck a radiobutton on second click. 2017-07-18 20:11:44 +03:00
John Preston
794ad7bda7 Fix main menu night theme layout for non-English.
The place for the phrase was too small because of huge left padding.
2017-07-18 20:10:55 +03:00
John Preston
10906e2e16 Fix crash in change language box.
Each time a radiobutton was triggered it was destroyed in refresh().
2017-07-18 20:09:48 +03:00
John Preston
a5e0b19b79 Copy correct text for a forwarded reply message. 2017-07-18 19:48:10 +03:00
John Preston
7c6bb132ce Don't display reply preview if it doesn't fit. 2017-07-18 19:47:56 +03:00
John Preston
3ba210b6e4 Automatically return window to screen.
Fixes #3551.
2017-07-18 19:38:11 +03:00
John Preston
faf090781d No confirmation for known hosts links. 2017-07-15 15:41:15 +03:00
John Preston
ab62b1591f Fix duplicated entries in calls log box.
Notify about new call service messages only for unread messages.
2017-07-15 15:41:04 +03:00
John Preston
397e1dde78 Move reply bar to the top of the sticker.
That way a fast share button in channels isn't overlapping with it.
2017-07-15 15:05:46 +03:00
John Preston
a935075782 Add some more assertions and info for crash debug.
An assertion violation happens some time so add some debug info.
2017-07-15 14:22:17 +03:00
John Preston
588aabc6d7 Fix render bug in pinned chats reordering.
If the last chats row was painted a wrong lastPaintedPos was used.
2017-07-15 14:20:53 +03:00
John Preston
ca47e4ebfd Alpha 1.1.13: Fix build for Xcode. 2017-07-14 15:52:53 +03:00
John Preston
58b79ab112 Alpha 1.1.13.
- Various bug fixes.
2017-07-14 15:31:22 +03:00
John Preston
cabf35f2b3 Allow to create channel invite link in boxes.
SetupChannelBox (public/private) and MaxInviteBox are suggesting
to copy the channel invite link. Now they suggest to create it
in case the channel didn't have the invite link already.
2017-07-14 15:28:08 +03:00
John Preston
949104d879 Improve queued by pts updates handling.
The updates are ordered by pts and applied in the correct order.
Also some pts-dependent updates handling was moved to ApiWrap.
2017-07-14 14:57:05 +03:00
John Preston
101ec9a1c1 Remove duplicated Copy Link context menu items.
When right clicking on a real link don't add a message link copy.
Fixes #3662
2017-07-14 14:56:57 +03:00
John Preston
7cc38f8f6a Improve disabled Ui::Checkbox layout. 2017-07-14 12:47:44 +03:00
John Preston
9e73e22e13 Add channel members in ParticipantsBoxController.
Also remove MembersBox, it was replaced completely.
2017-07-14 09:46:57 +03:00
John Preston
4c6e1b2b1f Fix members kick from group members dropdown. 2017-07-13 19:25:28 +03:00
John Preston
3db913f15b Remove layer deletion by timer in MainWindow.
It could be: schedule deletion -> show new box -> delete it by timer.
This fixes the error box display when adding users to groups.
2017-07-13 19:14:31 +03:00
John Preston
bd1547cd5e Show error when trying to delete a large channel.
Server doesn't allow to delete a channel with more than 1000 users.
2017-07-13 19:12:20 +03:00
John Preston
c7e63ffef5 Add some more assertions and info for crash debug.
An assertion violation happens some time so add some debug info.
2017-07-13 18:11:26 +03:00
John Preston
a69304fd25 Fix crash in forwarding messages.
HistoryHider holds pointers to items, so it should watch for
the history items being removed and remove the pointers.
2017-07-13 17:57:25 +03:00
John Preston
e0c74c9546 Fix crash in handlePendingHistoryUpdate().
This method is called from InvokeQueued, so the auth session could
be destroyed already and should be checked before being accessed.
2017-07-13 17:44:45 +03:00
John Preston
2f816942b8 Use objects instead of pointers for corners.
Also don't change mask corner images when color theme is changed.
This prevents race condition in mask corner images access, because
the GIF frame readers access mask corner images from other threads.
2017-07-13 17:42:46 +03:00
John Preston
9fd8b040b7 Fix crash in history switch.
Don't call anything heavy between changing _history and _list.
2017-07-13 17:42:28 +03:00
John Preston
f5a405e6f1 Fix auto media download settings box layout. 2017-07-12 16:53:42 +03:00
John Preston
c79561e97f Add a couple of actions log phrases for channels. 2017-07-12 16:34:13 +03:00
Nicholas Guriev
38a53687a0 Fix a couple of typos
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-07-12 14:08:36 +03:00
Viktor Oreshkin
94e43f8f8a Fix openssl ldflags on macOS
If ld finds ssl/crypto dylibs it prefers them to static archived objects
And because of that produced .app links dynamically to openssl, so it
won't launch unless users install openssl.
There are two solutions: either uninstall openssl completely from build
machine on each build, or use paths to .a files.
Obviously latter is preferred.

Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-07-12 14:06:40 +03:00
John Preston
7b4393ba48 Fix radiobutton list boxes dimensions.
Closes #3655
2017-07-12 14:05:29 +03:00
John Preston
56cb5ac9c6 Alpha 1.1.12: Search in supergroup for count > 50.
Also move search in supergroup members to Actions profile block.
2017-07-11 21:40:51 +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
48bd693679 Allow to copy message links in public supergroups. 2017-07-11 20:21:24 +03:00
John Preston
f32af6999b Add a fast share button in channels and bots. 2017-07-11 20:11:06 +03:00
John Preston
ac99784bf7 Change chat for forwarded items by click on them.
Closes #3637
2017-07-11 13:23:15 +03:00
John Preston
d94ef82327 Fix opening a forwarded GIF in MediaView on click.
Fixes #3645
2017-07-11 13:21:01 +03:00
John Preston
06d4ea2975 Use ParticipantsBoxController for members list.
Add search in channel/supergroup members inside PeerListBox.
Also MembersBox is not used anymore.
2017-07-11 12:17:27 +03:00
John Preston
b79ddb7a1c Handle click on userpic in edit admin/banned box.
In admins/banned/restricted lists on row click the edit box is shown.
Now click on the userpic in this box allows to get to user profile.
2017-07-10 15:43:30 +03:00
John Preston
58a592ba47 Allow to see admin / banned rights for everyone.
Even if you can't edit admin / banned rights you can see them.
2017-07-10 15:29:55 +03:00
John Preston
9344504781 Show error when adding a non-group bot to admins. 2017-07-10 13:56:29 +03:00
John Preston
f7543e3261 Improve EditAdmin/RestrictedBox design. 2017-07-10 13:55:16 +03:00
John Preston
0402b4f5f4 Add X / V vector icon to checkbox Toggle view.
Also use them in the admin rights / restrictions boxes.
2017-07-09 18:06:27 +03:00
John Preston
d5c5549c1a Make Checkbox text position relative to the View. 2017-07-07 14:27:13 +03:00
John Preston
21d2f6a44f Generalize Checkbox layout.
Now any Checkbox can have Check, Radio or Toggle layout.
Radiobutton is now a subclass of Checkbox with default Radio layout.
2017-07-07 14:16:37 +03:00
John Preston
0ecef54e2b Alpha 1.1.11: Update langs and libtgvoip. 2017-07-06 20:40:49 +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
28f7dc73a5 Optimize markdown parser, use less regex matches. 2017-07-06 19:57:19 +03:00
John Preston
8d43bdb084 Use std::unique_ptrs for ITextBlocks. 2017-07-06 18:59:47 +03:00
John Preston
8550099110 Improve markdown parsing. 2017-07-06 18:59:38 +03:00
John Preston
921c27c9b1 Apply markdown bold/italic when editing a message. 2017-07-06 18:19:50 +03:00
John Preston
148c04fb41 Fix multiline monospace pre blocks editing.
Now we pass current flags and lnkIndex to the NewlineBlock, so that
we don't get one multiline pre block split to separate line blocks.
2017-07-06 17:10:33 +03:00
John Preston
eaf91bba58 Parse bold / italic markdown entities. 2017-07-06 16:44:11 +03:00
John Preston
da0d78135d Some refactoring in working with text entities.
Also move this code to TextUtilities namespace.
2017-07-06 14:37:42 +03:00
John Preston
f38fad2f92 Correctly apply edit admin in channel.
For example update adminCount / membersCount. For that we pass not
only the newRights values, but also oldRights values to applyEdit*().
2017-07-06 00:11:49 +03:00
John Preston
73e550f432 Update libtgvoip. 2017-07-05 22:51:38 +03:00
John Preston
8b96f7214e Add some assertions and info for crash debug.
An assertion violation happens some time so add some debug info.
2017-07-05 22:41:50 +03:00
John Preston
8202a1633b Fix crash in single instance forcing.
Local server communication is allowed before Messenger constructor.
2017-07-05 21:45:46 +03:00
John Preston
7013a0dfef Update channel admin counter after removing admin. 2017-07-05 21:36:09 +03:00
John Preston
0c43aabfec Allow to ban from actions log user context menu. 2017-07-05 21:11:31 +03:00
John Preston
1a7353fb43 Fix phrase in HistoryJoined for supergroups. 2017-07-05 16:23:52 +03:00
John Preston
4d3e7ac30c Fix applying a draft with a reply in it.
Fixes #3407
2017-07-05 16:20:34 +03:00
John Preston
7d342b9c6d Add search to channel / supergroup recent actions. 2017-07-05 16:11:08 +03:00
John Preston
e1709c11da Check weak pointer in AddParticipantBoxController.
This may fix some crashes.
2017-07-05 12:39:21 +03:00
John Preston
6d3a6d20b5 Version 1.1.10: Fix build for Xcode and GCC. 2017-07-04 19:17:44 +03:00
John Preston
91a6853f3c Version 1.1.10: Update langs. 2017-07-04 18:40:59 +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
397797aac7 Add default changelog for the new stable version.
Also add a non-translated changelog for the new alpha/beta versions.
2017-07-04 18:32:04 +03:00
John Preston
61461d0a87 Improve boxes with checks / radios layout. 2017-07-04 16:59:00 +03:00
John Preston
0ae661edf0 Add channel / supergroup admin event log filter. 2017-07-04 16:31:18 +03:00
John Preston
fc6aa288c2 Show all returned rows in RevokePublicLinkBox.
Fixes #3617
2017-07-03 16:57:46 +03:00
John Preston
58dcba71a4 Switch to PeerListBox in channel admin management.
This will fix the problem with adding admins to channels.
Also this will add local search to channel admins list.
Fixes #3615
2017-07-03 16:17:52 +03:00
John Preston
5ca3a81fe2 Fix global search by username in PeerListBox. 2017-07-03 16:17:44 +03:00
John Preston
f316e3bd17 Add debug logs for window position and autoupdate. 2017-07-03 15:23:41 +03:00
John Preston
ebb10fb8ed Improve night mode theme.
Also fix custom notification border painting with reply button.
2017-07-03 13:51:38 +03:00
John Preston
d08dbb835f Paint admin stars with different color in profile. 2017-07-03 13:31:37 +03:00
John Preston
0d38106ed0 Fix Edit option display for supergroup creator.
Supergroup creator saw the Edit option for other users messages.
2017-07-03 13:13:32 +03:00
Viktor Oreshkin
bca0e1e16c Fix remove option in normal groups
If user invites X to group and then X becomes an admin, user won't be
able to remove X anymore, so remove option shouldn't be shown.

Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-07-02 22:29:24 +03:00
John Preston
96d1fe336a Fix assertion violation when editing an admin.
There is a possibility that an EditAdminBox will be shown for someone
who can't add admins right now (in case server says he can edit one).

In that case assertion about the admins checkbox is false and we fix
that. Currently server sometimes does return this flag by mistake.
2017-07-02 22:26:24 +03:00
John Preston
305e15dd03 Fix service message date in admin event log. 2017-07-02 22:26:23 +03:00
John Preston
22287d4c03 Version 1.1.9: Update langs. 2017-06-30 16:02:52 +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
John Preston
0798a0148a Don't change custom background in night mode.
This will at least make it a bit better in #3598.

The real solution with remembering custom backgrounds for both
night mode on and off doesn't fit with current theming way too well.
2017-06-30 15:03:51 +03:00
John Preston
51c0df79fe Support emoji display in PeerListBox status texts. 2017-06-30 14:36:13 +03:00
John Preston
42febdb240 Fix alpha version changelog notification.
We should call window->serviceNotification() because it checks for
the service chat history being loaded before adding the message.

The method in MainWidget was renamed to prevent bugs in the future.
2017-06-30 14:30:11 +03:00
John Preston
5fe1175602 Fix crash when message for forward is deleted.
The messages prepared for forwarding are not a map (MsgId -> item),
but just a map (random int -> item), so we need to loop over them.
2017-06-30 13:46:41 +03:00
John Preston
bf57a1506f Fix assertion violation in the admin events log.
Add support for a log entry about group/channel photo being removed.
2017-06-30 13:35:35 +03:00
John Preston
7b496b3741 Improve in-app changelogs for alpha version. 2017-06-30 13:32:10 +03:00
John Preston
197cdc3928 Alpha 1.1.8.
- Toggle night mode in the main menu.
2017-06-30 09:23:31 +03:00
John Preston
8d14112c5a Update langs. 2017-06-30 09:21:46 +03:00
John Preston
61659244b7 Add night mode switch to the main menu.
Also fix a bug with the default background applying.
2017-06-30 09:21:46 +03:00
John Preston
19023b4cc2 Display a toggle in Menu for Checkable actions. 2017-06-30 09:21:46 +03:00
John Preston
5dcf341aaa Display "no users" in empty add participant box. 2017-06-30 09:21:45 +03:00
John Preston
4993ff1921 Finalize rename / move. 2017-06-30 09:21:45 +03:00
John Preston
d1536d0572 Rename / move history and historywidget modules. 2017-06-30 09:21:45 +03:00
John Preston
836fe119d9 Improve display of admin event log entries.
Don't show the Forward, Delete and Go to message in MediaView.
Better handle round video floating player in admin event log.
2017-06-30 09:21:45 +03:00
John Preston
0b3644b334 Improve phrase on copying selected items as text.
This is a better implementation of #3346.
2017-06-30 09:21:45 +03:00
John Preston
7357119b1a Fix scroll top overflow. Fixes #3524 2017-06-30 09:21:45 +03:00
John Preston
545915e481 Fix name/fwd/reply/viabot info display for media. 2017-06-30 09:21:45 +03:00
John Preston
6f90dc2374 Fix empty admin event log display. 2017-06-30 09:21:45 +03:00
John Preston
91dcfff423 Add unpinned message admin log event action. 2017-06-30 09:21:45 +03:00
John Preston
58b4798b79 Fix tooltip hiding when window is hidden by Cmd+H.
For some reason deleteLater() called for the tooltip from the main
window deactivation signal is really handled only on app quit :/
So now we use InvokeQueued(p, [p] { delete p; }); there instead.

Fixes #3461
2017-06-30 09:21:45 +03:00
John Preston
843d63c221 Fix edit channel controls layout. 2017-06-30 09:21:44 +03:00
John Preston
3b864d63b9 Fix crash in audio player destructor. 2017-06-30 09:21:44 +03:00
John Preston
2a51e2aa59 Workaround GCC bug and fix Linux build. 2017-06-30 09:21:44 +03:00
John Preston
67f2daa43c Closed beta 1001007003: Fix build for old OS X. 2017-06-30 09:21:44 +03:00
John Preston
c3db57a4fc Closed beta 1001007003: Fix Xcode build. 2017-06-30 09:21:44 +03:00
John Preston
885b82b437 Closed beta 1001007003. 2017-06-30 09:21:44 +03:00
John Preston
6487d91722 Add users to a channel check by admin rights.
Also add an admin right checkbox for add users in channels.
2017-06-30 09:21:44 +03:00
John Preston
5b4f70ff96 Fix crash in layer stack unwinding. 2017-06-30 09:21:44 +03:00
John Preston
75fdd5315f Add some more colors for theming. 2017-06-30 09:21:44 +03:00
John Preston
8ee5c70708 Fix admin custom status text in supergroups. 2017-06-30 09:21:44 +03:00
John Preston
b398444b91 Show manage banned and restricted to creator. 2017-06-30 09:21:44 +03:00
John Preston
9e6f2a5d2e Remember connection type settings. 2017-06-30 09:21:43 +03:00
John Preston
7245319351 Prefer static dc options when using a proxy. 2017-06-30 09:21:43 +03:00
John Preston
82912f4a0b Handle socks internal links. 2017-06-30 09:21:43 +03:00
John Preston
1968ca07de Display connecting to proxy state with a link. 2017-06-30 09:21:43 +03:00
John Preston
8c04bed572 Display empty event log placeholder.
Also hide the filter button for now.
2017-06-30 09:21:43 +03:00
John Preston
ae56c5266f Fix rich text entities in log entry original. 2017-06-30 09:21:43 +03:00
John Preston
0a9db8533b Save admin log state to memento and restore it. 2017-06-30 09:21:43 +03:00
John Preston
85e234938d Fix inline keyboard. Disable it in the event log.
Also disable game preview click handler in the event log.
2017-06-30 09:21:43 +03:00
John Preston
816ee794e8 Event log context menu + improved text selection. 2017-06-30 09:21:43 +03:00
John Preston
624f33c5e2 Allow to select and copy text in the events log.
Also better handle window resize in the events log.
2017-06-30 09:21:42 +03:00
John Preston
693c30d264 Handle mouse events in log entry message parts.
Also highlight mentions and hashtags in them.
2017-06-30 09:21:42 +03:00
John Preston
17e08f9291 Separate theme keys for emoji category icon color. 2017-06-30 09:21:42 +03:00
John Preston
cedf8a65e7 Better channel log entry layout inside messages.
Also move HistoryService class to a separate module.
2017-06-30 09:21:42 +03:00
John Preston
0a39e7e2b1 Support userpics and dates in channel log events. 2017-06-30 09:21:42 +03:00
John Preston
5c87b42135 Use plain HistoryItem in channel admin events log.
Instead of using a complex AdminLog::Item use just HistoryItem*.
2017-06-30 09:21:42 +03:00
John Preston
e39b95175b Handle channel event log mouse events. 2017-06-30 09:21:42 +03:00
John Preston
1791b251ad Fix tabbed section / panel render glitches. 2017-06-30 09:21:42 +03:00
John Preston
507b7d7193 Add to each history item its own width value. 2017-06-30 09:21:41 +03:00
John Preston
839e59075d Display log entry original data in HistoryMessage. 2017-06-30 09:21:41 +03:00
John Preston
4962fdf5ae Add phrases and layout for all events in log. 2017-06-30 09:21:41 +03:00
John Preston
fee8690ca6 Channel action log items display and layout. 2017-06-30 09:21:41 +03:00
John Preston
25a718c54b Start recent channel actions log section. 2017-06-30 09:21:41 +03:00
John Preston
401bc86f27 Closed beta 1001007002: New channel rights.
Also fix build in Xcode.
2017-06-30 09:21:41 +03:00
John Preston
c3ad0ae129 Always show that bot-admin reads all messages.
A bot with any admin rights has access to messages.
2017-06-30 09:21:41 +03:00
John Preston
8fe56b9a7d Show blocked / restricted users to all admins. 2017-06-30 09:21:41 +03:00
John Preston
1b649299ff Show edit admin non-mutual-contact error message. 2017-06-30 09:20:31 +03:00
John Preston
6ba57e713e Use forwarded messages only for one selected chat.
Different chats now can have different forwarded "drafts".
2017-06-29 11:40:26 +03:00
John Preston
758cf0388e Edit who can add users to supergroup.
Add a couple of radiobuttons to EditChannelBox for that.
Also a 'change info' admin now can edit 'signatures' in a channel.
2017-06-29 11:40:25 +03:00
John Preston
9de95cee23 Drop link preview if you can't send them.
Just drop the preview when message with a web page preview is
forwarded and we're restricted to send them in the megagroup.
2017-06-29 11:40:23 +03:00
John Preston
b35d2505a4 Better mentions highlighting in PeerListBox. 2017-06-29 11:40:23 +03:00
John Preston
240ced395b Apply changes in ParticipantsBoxController.
When we add admin / banned / restricted user in a channel using
AddParticipantBoxController we now apply the added user in the box.
2017-06-29 11:40:22 +03:00
John Preston
9e8e49b8d9 Add other search to admin/ban/restrict in channel.
Search in chats / contacts / global in AddParticipantBoxController.
Also move all channel participants box controllers to another module.
2017-06-29 11:40:21 +03:00
John Preston
b76bfe2008 Add admin/banned/restricted box using PeerListBox. 2017-06-29 11:40:20 +03:00
John Preston
3dd26dac6e Show supergroup / channel admins in PeerListBox.
Also show "Creator" / "Promoted by" status for those admins.
2017-06-29 11:40:19 +03:00
John Preston
04e587b999 Hide Add Users checkbox if megagroup is democracy.
Also unite invite_users and invite_link flags.
2017-06-29 11:40:17 +03:00
John Preston
adcecaa195 Make search in restricted/blocked box paginated. 2017-06-29 11:40:17 +03:00
John Preston
6fe0fe6fd6 Use lightButtonFg[Over] for Hide All Notifications.
Fixes #3521.
2017-06-29 11:40:15 +03:00
John Preston
7fdac9cd94 Add restricted users box like kicked users box.
Also allow server-side search inside restricted users list.
Also allow server-side search inside kicked users list.
Also allow PeerListController to work not only in PeerListBox.
2017-06-29 11:40:14 +03:00
John Preston
5c0a1bafe2 Add supergroup restriction placeholders / labels. 2017-06-29 11:40:13 +03:00
John Preston
7d2d5c6100 Edit admin and restricted rights in channels. 2017-06-29 11:40:11 +03:00
John Preston
513a9f8d45 Add rich supergroup/channel admin support. 2017-06-29 11:40:10 +03:00
John Preston
330b4a0b00 API scheme updated to layer 68. 2017-06-29 11:40:08 +03:00
John Preston
8ae159dd66 Add special dc options config request. 2017-06-29 11:40:07 +03:00
John Preston
2de96682db Fix phone call decline reason.
If the call was declined fast enough the reason was hangup while it
should be busy.
2017-06-29 11:40:06 +03:00
John Preston
80273c57d0 Fix jumping to an old group message before migration.
Fixes #3513.
2017-06-29 11:40:05 +03:00
John Preston
fe3c33fb52 Change a phrase for the userpic photo area selection.
Fixes #3390.
2017-06-29 11:40:04 +03:00
John Preston
c9a26fd006 Fix call panel with empty user photo on Retina. 2017-06-29 11:40:03 +03:00
John Preston
11d4c50202 Closed beta 1001007001: Fix build in GCC. 2017-06-29 11:40:02 +03:00
John Preston
7dd50fa931 Closed beta 1001007001: Fix build in Xcode. 2017-06-29 11:40:01 +03:00
John Preston
5d0e89db5d Switch to the server side changelogs. 2017-06-29 11:40:00 +03:00
John Preston
d9785f6071 Closed beta 1001007001.
First cloud langpacks version.
2017-06-29 11:39:59 +03:00
John Preston
f3e65d400d Display languages native names in the box.
Also don't suggest the old official languages in a popup.
2017-06-29 11:39:58 +03:00
John Preston
85e6f55536 Support new plural keys format.
All the old plural phrases were changed to work with the new format.
2017-06-29 11:39:56 +03:00
John Preston
b6046d829f Save the default language after logging in.
We suggest an appropriate language in the intro if server has users
system language langpack. But if user doesn't switch to it we save
the default ("en") language so that he won't be bothered again.
2017-06-29 11:39:55 +03:00
John Preston
665a1acfd8 Apply language with app restart if logged in.
Confirm and restart if logged in, just quickly apply if not.
2017-06-29 11:39:54 +03:00
John Preston
d51fd7b3ad Update intro change language link.
Also now MTP::Sender isn't bound to MTP::Instance, because Intro
Widget is MTP::Sender, but Intro::PhoneWidget destroys current
MTP::Instance.
2017-06-29 11:39:53 +03:00
John Preston
b94099e25b Realtime UI translation in all fields and buttons. 2017-06-29 11:39:51 +03:00
John Preston
5fc4f4ed36 Realtime UI translation in Intro.
Also support realtime translation testing by F7-F6-F7-F8 keys.
2017-06-29 11:39:49 +03:00
John Preston
d47a38dfcf Show change language link in intro. 2017-06-29 11:39:48 +03:00
John Preston
f5353080e7 Use Qt UI language if system was not determined.
Also rename platform/mac/specific_mac.cpp to .mm
2017-06-29 11:39:47 +03:00
John Preston
6fb980ca79 Improve custom language loading.
Apply custom language without relaunching the app.
2017-06-29 11:39:46 +03:00
John Preston
3f0b57ec11 Retranslate Settings when language is changed.
Also suggest user to change language from 'en' to his for one time.
2017-06-29 11:39:45 +03:00
John Preston
f5dfeb0c50 Support cloud languages list and switching.
Add Lang::Current().updated() observable for retranslating the UI.
2017-06-29 11:39:43 +03:00
John Preston
139d4e72b5 Start cloud langpack support.
Change the way langpacks are stored.
Support custom langpacks in the new storage.
2017-06-29 11:39:42 +03:00
John Preston
2334ba1fe1 Use QString + Lang::Tag() instead of Lang::String. 2017-06-29 11:39:40 +03:00
John Preston
110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +03:00
John Preston
f643446d1b Rename / move lang files to lang/ subdir.
Next commit fixes the build.
2017-06-29 11:39:36 +03:00
John Preston
a813793007 API scheme updated to layer 67. 2017-06-29 11:39:35 +03:00
John Preston
972fdb5c76 Fix _historyDown button position.
This button is a child widget of _scroll so the position is relative.
2017-06-29 11:39:34 +03:00
John Preston
0e4b057220 Fix transparent reply previews.
The transparent reply previews (for stickers) were not filled by
transparent background before resizing, now there is a flag for that.
2017-06-29 11:39:33 +03:00
John Preston
6869cc7d04 Fix non-square reply preview in selected messages.
After introducing video messages and sticker reply previews they may
be not a rounded rectangle but any transparent image. So instead of
painting a selected rounded rect over them we just colorize them with
an overlay color like it is done with the selected sticker images.
2017-06-29 11:39:32 +03:00
Viktor Oreshkin
68ddabea5c Don't clear undo history when applying draft
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-29 11:10:13 +03:00
Zankio
60c84bbf51 Add hime inputcontext plugin for linux version
(#3129)

Signed-off-by: Zankio <xxoojoeooxx1@gmail.com>
(github: zankio)
2017-06-29 10:49:31 +03:00
Nikita K
4c61f27826 Fix inconsistency of max width for message content
Signed-off-by: Nikita Kalashnikov <mendor@yuuzukiyo.net> (github: Mendor)
2017-06-28 19:36:18 +03:00
Viktor Oreshkin
3f3b9f3608 Show date from fwdHeader on tooltip
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-28 19:21:34 +03:00
Eduardo Sánchez Muñoz
2eff766e88 Always use UTF-8 to open files in list_sources.py.
This avoids problems with some locale settings.

Signed-off-by: Eduardo Sánchez Muñoz <eduardosanchezmunoz@gmail.com> (github: eduardosm)
2017-06-28 19:19:44 +03:00
Viktor Oreshkin
8b54910538 Fix markdown in issue template
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-06 22:48:28 +03:00
John Preston
66662e02a6 Fix crash in video player seeking.
Regression was introduced in 87ff770020.

Seek handler may destroy controller so first the playback is updated.
2017-05-31 11:58:43 +03:00
John Preston
81e728ada0 Version 1.1.7.
- Improved video messages: radial playback progress,
Picture-in-Picture support, duration countdown.
- Voice and video messages now automatically play one after another.
2017-05-30 21:33:02 +03:00
John Preston
47c22c6cec Update langs. 2017-05-30 21:31:31 +03:00
John Preston
983c2c0869 Support non-standard binary names in autoupdater.
On Linux and Windows support non-standard application binary name.
2017-05-30 21:26:53 +03:00
Fake ID
ab3f9fbea2 Update build.sh (#3449)
Fixed typo: "Build successful done!" -> "Build successfully done!"

Telegram Desktop Developer Certificate of Origin

By making a contribution to this project, I certify that:

(a) The contribution was created in whole by me or is based upon
    previous work that, to the best of my knowledge, is in the
    public domain and I have the right to put it in the public domain.

(d) I understand and agree that this project and the contribution are
    public and that a record of the contribution (including all
    metadata and personal information I submit with it, including my
    sign-off) is maintained indefinitely and may be redistributed.

(e) I am granting this work into the public domain.

Signed-off-by: Fake Id 30 <junayeed@protonmail.com>
(github: fakeid30)
2017-05-28 21:52:22 +02:00
John Preston
a1f2fb46f9 Fix scroll history to down with unread bar.
Regression was introduced in 972b5078f6.

When we show history at a specific message or at unread messages we
need to clear and destroy old showFrom and unreadBar like it is done
in historyLoaded(), otherwise we always scroll to existing unreadBar.
2017-05-27 13:28:17 +03:00
John Preston
9a18ecf93d Fix the chats list width saving with passcode.
Regression was introduced in 0339b1b54b.

If the passcode is enabled the main widget is created after the main
window was fully initialized, so the first main widget resize already
used the shrink algorithm while creating the third column.

No we shrink the left column only after the main widget was started.
2017-05-27 13:28:16 +03:00
Evgenij Protasevich
bcd8c87c65 Update building-cmake.md (#3441)
* Added installation command for libtool and automake: #3437
* Fixed git url for FFmpeg libva.git. The project was moved to https://github.com/01org/libva.git #3436

Signed-off-by: Evgenij Protasevich <proeatalk@gmail.com> (github: proea)
2017-05-27 09:50:10 +02:00
John Preston
21df34ad55 Alpha 1.1.6. 2017-05-26 23:10:20 +03:00
John Preston
2c1e27add0 Fix crash in group members list. 2017-05-26 23:05:04 +03:00
John Preston
878e46c61a Alpha 1.1.5.
Also fix build in Xcode.
2017-05-26 19:03:41 +03:00
John Preston
7cea6ede1a Improve input field placeholders with IME.
Respect the IME preedit string when toggling the placeholder.
2017-05-26 18:50:25 +03:00
John Preston
57f0158ade Disable quiet hours check in Windows before 10.
We had several reports about wrong values in registry on Windows 8.1,
like the quiet hours are enabled and all notifications are skipped,
without anything like that being enabled in Windows settings.
2017-05-26 17:40:46 +03:00
John Preston
9e3f13ba2e Destroy members dropdown when the peer changes.
Also use object_ptr for passing widget in InnerDropdown.
2017-05-26 17:36:59 +03:00
John Preston
6148b78745 Read after AVERROR_INVALIDDATA in video sound.
Partially reverse c1c3e4af5b that stopped on error in such cases.
2017-05-26 17:18:58 +03:00
John Preston
e24b0559d3 Fix message history stick to bottom.
Scroll animation should finish when we want to jump to the bottom.
2017-05-26 16:06:18 +03:00
John Preston
10e34aa996 Fix a crash in round videos with a message text. 2017-05-26 15:20:11 +03:00
John Preston
6052a0de0e Fix crash in history geometry update. 2017-05-25 03:11:59 +03:00
John Preston
78d4f29af3 Alpha 1.1.4: Fix build script for macOS.
Regression was introduced in b86da76613.
2017-05-24 23:00:23 +03:00
John Preston
b04c03a5c3 Alpha 1.1.4.
- Fix a crash in animated history scrolling.
- Fix a bug with pinned chat to supergroup upgrade.
2017-05-24 22:59:17 +03:00
John Preston
1cc5b224c7 Fix pinned chat to supergroup upgrade bug.
Pinned chats were always updated in dialogs list, even after being
migrated to supergroups. That was bringing them back to chats list.
2017-05-24 22:54:41 +03:00
John Preston
9665d5cb45 Fix crash and improve animated scrolling.
Also fix reply returns traversing after animated scrolling.
2017-05-24 22:28:24 +03:00
John Preston
e0978f86d1 Alpha 1.1.3: Fix some render in macOS. 2017-05-24 17:36:58 +03:00
John Preston
413be7d76d Alpha 1.1.3.
Also update libtgvoip.
2017-05-24 16:59:40 +03:00
John Preston
972b5078f6 Improve animated scroll to message.
Use it in replies navigation and in jumping to message history end.
2017-05-24 16:25:21 +03:00
John Preston
25587d7e8e Replace different side enums with RectPart.
Including Ui::Shadow::Side, App::RectPart and ImportantTooltip::Side.
2017-05-24 16:25:20 +03:00
John Preston
c91e29d15d Improve floating player show / hide animations.
Also replace Window::Corner with a generic RectPart enumeration.
2017-05-24 16:25:20 +03:00
John Preston
03aeaadd5b Update floating player position. 2017-05-24 16:25:19 +03:00
John Preston
18195f9c4e Rename EmojiPanelTab to ChatHelpers::SelectorTab. 2017-05-24 16:25:18 +03:00
John Preston
75dcce0b3c Save floating player position in localstorage. 2017-05-24 16:25:17 +03:00
John Preston
ee6d80673a Snap floating player to column and corner. 2017-05-24 16:25:17 +03:00
John Preston
8f290451b6 Handle mouse clicks in floating player widget. 2017-05-24 16:25:16 +03:00
John Preston
c58a48276f Hide floating player if video message is visible. 2017-05-24 16:25:15 +03:00
John Preston
b7550f63c9 Add a floating player for round video messages. 2017-05-24 16:25:15 +03:00
John Preston
0bfff65306 Add an animated scroll to current media message. 2017-05-24 16:25:14 +03:00
John Preston
6bde8cdce4 Remove legacy debug information. 2017-05-24 16:25:13 +03:00
John Preston
9332032839 Click on media player goes to voice/video message. 2017-05-24 16:25:12 +03:00
John Preston
7873cb4373 Using media player for voice / video messages.
Media::Player::Widget displays the current voice / video message
if it is played and the current song otherwise.

It is created when a voice / video message starts and is destroyed
when all the voice / video messages in the playlist are finished.
2017-05-24 16:25:12 +03:00
John Preston
2661fe5cd5 Fix crash in clear history after report spam. 2017-05-24 16:25:11 +03:00
John Preston
43c8046e4c Don't handle telesco.pe links like t.me links.
It is better to open web version of telesco.pe/username instead of
a channel, because it shows only the round videos. You can share a
t.me link to your channel if you wish to share the full channel.

It is not bad to open web version of telesco.pe/username/post instead
of a specific post in a channel, because the video message is shown
in the web page preview and can be viewed without following the link.
2017-05-24 16:25:10 +03:00
John Preston
611a3e2f8a Handle voice playlist in Media::Player::Instance.
This allows video and voice messages to autoplay one after another.
2017-05-24 16:25:09 +03:00
John Preston
b9119e5ef6 Play video messages as Type::Voice.
Use AudioMsgId instead of videoPlayId.
Any audio track now can be a child loader track of some video clip.
Use Type::Voice instead of Type::Video for round video messages.
Video messages play / pause / resume the same way as voice messages.
2017-05-24 16:25:09 +03:00
John Preston
1e6d4d6b41 Activate mediaview instead of main window.
If the mediaview is currently shown and we receive an activation
event for the main window we should activate and focus mediaview.
2017-05-24 16:25:08 +03:00
John Preston
5915f3f928 Display radial playback progress in round videos. 2017-05-24 16:25:07 +03:00
John Preston
87ff770020 Make Media::Clip::Playback independent of slider.
Now animation of the playback progress is processed inside the
Media::Clip::Playback and the sliders just hold plain float64 value.
2017-05-24 16:25:06 +03:00
John Preston
8446fa5a4d Change round video playback duration to countdown. 2017-05-24 16:25:06 +03:00
John Preston
efb59e8c3a Show GIF in Mediaview on click.
This way you can watch GIF on full screen and switch between them.
2017-05-24 16:25:05 +03:00
John Preston
2377873c45 Add items to overviews inside HistoryMedia.
This allows one history item to exist in several media overviews.
See voice message, which should be in VoiceFiles and RoundVoiceFiles.
2017-05-24 16:25:04 +03:00
John Preston
2049f3e55a Fix Mac App Store entitlements. 2017-05-19 17:13:33 +03:00
John Preston
e102793d93 Fix Appveyor CI build. 2017-05-18 12:55:05 +03:00
John Preston
b86da76613 Move project files tdesktop to tdesktop/Telegram.
After adding the libtgvoip submodule its project was created by GYP
outside the project folder, because the relative path to libtgvoip.gyp
is "../ThirdParty/libtgvoip/" and projects are created in the same
relative folders.

Now we place MSVC and Xcode projects in tdesktop/Telegram, so the
libtgvoip project is created at tdesktop/ThirdParty/libtgvoip.
2017-05-18 12:04:39 +03:00
John Preston
59100a51c6 Version 1.1.2 update and changelog. 2017-05-18 00:07:06 +03:00
John Preston
bf0f956325 Preserve panels state through visibility toggles.
Emoji/Stickers/GIFs panel saves all the state between activations.
2017-05-18 00:02:31 +03:00
John Preston
132d884600 Fix Ui::ImportantTooltip render on OS X 10.6-10.7. 2017-05-17 23:49:20 +03:00
John Preston
b4d10ca693 Alpha 1.1.1: Update langs. 2017-05-17 17:37:19 +03:00
John Preston
38a99c4669 Alpha 1.1.1: Improved protocol, emoji tooltip. 2017-05-17 17:35:47 +03:00
John Preston
e2b212dba9 Update libtgvoip submodule. 2017-05-17 17:34:28 +03:00
John Preston
c1598ff4ed Highlight mentions in sticker set box title. 2017-05-17 17:32:36 +03:00
John Preston
299143108b Improve protocol support. 2017-05-17 16:39:17 +03:00
John Preston
0339b1b54b Shrink dialogs column when enabling emoji sidebar.
Try to hold the ratio between the chat width and the dialogs list
width when the emoji sidebar is created by shrinking the left column.
2017-05-17 15:38:42 +03:00
John Preston
9f7c45e35c Fix enabling emoji sidebar from a small window.
Extend the window size after the tabbedSelectorSectionEnabled flag
is already set to true. Otherwise we extend the window and switch
to a normal from single column layout before showing the sidebar.
2017-05-17 14:50:00 +03:00
John Preston
966dcd5509 Fix render lag in the new tooltip.
Geometry update, animation cache grab and show call should be invoked
queued, because they depend on the later controls geometry update.
2017-05-17 14:15:08 +03:00
John Preston
52f7c8f064 Mark connection as inited only on a non-error response. 2017-05-17 14:01:58 +03:00
John Preston
b88a49d2f8 Show a tooltip about the emoji section toggling. 2017-05-17 12:40:03 +03:00
John Preston
0eb2d28d90 Show floating date only when scrolling up. 2017-05-16 16:41:47 +03:00
Igor Gnatenko
185bdb6704 localstorage: qFlags is working only on enumeration types
Closes: https://github.com/telegramdesktop/tdesktop/issues/3379
Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>
2017-05-15 14:03:28 +03:00
John Preston
206dcd1102 Fix calls in Mac App Store build. 2017-05-15 11:18:37 +03:00
John Preston
8a60658af7 Fix crash in calls panel closing. 2017-05-15 11:17:59 +03:00
John Preston
0b77c0bce8 Version 1.1: Show user name in call top bar. 2017-05-14 22:46:05 +03:00
John Preston
983a13f66b Version 1.1: Display changelog. 2017-05-14 20:33:54 +03:00
John Preston
820b07b2bc Version 1.1: Calls. 2017-05-14 19:15:30 +03:00
John Preston
0496a52cdd Alpha 1.0.38: Fix webpage layout.
Webpage layout is broken if title contains a newline.
Remove all newline characters from webpage / game / invoice title.
2017-05-13 17:31:00 +03:00
John Preston
9da9775043 Update langs. 2017-05-13 17:30:38 +03:00
John Preston
e3ddac1686 Handle t.me/iv links, just open the requested url. 2017-05-13 15:14:34 +03:00
John Preston
8d02d81a9a Switch layout to Normal in a wide enough window.
A lot of people didn't know how to bring the dialogs column back
after it was gone in a wide single column MainWindow.

Now we switch to a two column layout if the window allows it,
preserving the emoji / stickers / GIFs section in case it is shown.
2017-05-13 15:02:07 +03:00
John Preston
565b56fb5f Pause all media if a call is created.
Pause video, voice messages, songs and stop video messages.
2017-05-12 20:44:18 +03:00
John Preston
040ee90aec Fix call panel animation in OS X 10.6-10.7. 2017-05-12 19:25:56 +03:00
John Preston
843f983051 Skip call ended sound if ended from other device. 2017-05-12 19:09:34 +03:00
John Preston
9dfd7f4ba9 Play the outgoing call sound only in Ringing state. 2017-05-12 18:53:59 +03:00
John Preston
b74dea8662 Move logo images to Messenger. Set call panel icon. 2017-05-12 18:28:44 +03:00
John Preston
7593be4361 Display a userpic placeholder in the call panel. 2017-05-12 17:33:30 +03:00
John Preston
5fe75fbd5f Attempt to fix an assertion violation.
In some cases HistoryItem::attachToBlock was not calling
History::setHasPendingResizedItems (if it was not pending resize).

That could lead to addition of a whole block of items without
setting pending resize for the history and it violated the history
invariant of the _blocks y/height and their _items y/height.

Now each time we attachToBlock an item we also setPendingResize it.
2017-05-12 17:05:06 +03:00
John Preston
d581e00299 Improve history items management.
Encapsulate HistoryBlock::y and HistoryBlock::height.
2017-05-12 16:53:08 +03:00
John Preston
3f2bed8a92 Improve report spam code. Fix a possible crash.
HistoryWidget::setReportSpamStatus was called even if the _peer
has changed to nullptr, which used this _peer and crashed.
2017-05-11 20:08:08 +03:00
John Preston
ba1f1af83e Test QImage instead of QPixmap for render.
Trying to fix a strange crash inside QWidget::render().
2017-05-11 19:29:57 +03:00
John Preston
8bb4d31409 Fix crash in HistoryWidget::mousePressEvent.
When the mouse was over edit / reply and the history was closed,
mouse click handler still tried to jump to the message. Now we
update the mouse over state each time the history changes.
2017-05-11 19:11:08 +03:00
John Preston
0557eeddbd Switch base::TaskQueue to Qt sync primitives.
std::mutex in the current build environment is not supported
by Windows XP, I guess because Ninja uses v140 platform toolset.
2017-05-11 17:21:43 +03:00
John Preston
c438692d49 Fix Travis build. 2017-05-10 15:05:19 +03:00
John Preston
086684ca69 Use SSE2 flags (instead of SSE4.1) for Linux build. 2017-05-10 14:04:31 +03:00
John Preston
d6a919c372 Alpha 1.0.37: Multiple crash fixes.
Also rate call box style is improved.
2017-05-10 11:01:34 +03:00
John Preston
8a4a7897a0 Fix contract violation in Call::startIncoming.
Also fix call answer while dhConfig is not received yet.
2017-05-10 10:58:02 +03:00
John Preston
e99739ca0e Alpha 1.0.36: First public release of calls. 2017-05-09 23:51:07 +03:00
John Preston
96062039c7 Improve RateCallBox design. 2017-05-09 23:46:43 +03:00
John Preston
c78cc331d1 Discard call in case of an error.
Also add a couple of call error messages.
2017-05-09 23:46:43 +03:00
John Preston
061bd109d2 Closed beta 1000035003: Try new sounds + fixes. 2017-05-09 23:46:42 +03:00
John Preston
e7dcd5ab15 Don't decline awaited incoming call on app quit. 2017-05-09 23:46:41 +03:00
John Preston
530a385d4e Add sound override support by codes in Settings. 2017-05-09 23:46:40 +03:00
John Preston
23874a0a26 Animate call answer button with an outer ripple. 2017-05-09 23:46:39 +03:00
John Preston
3b46382550 Add logging for libtgvoip when we have DebugLogs. 2017-05-09 23:46:39 +03:00
John Preston
b3d5ac1660 Fix call discard when hanging up before request. 2017-05-09 23:46:38 +03:00
John Preston
622fbdb64b Fix BN_div/mod_word() usage. 2017-05-09 23:46:37 +03:00
John Preston
d0afe83beb Fix call panel in macOS build. 2017-05-09 23:46:36 +03:00
John Preston
771bba4e01 Closed beta 1000035002: Sounds in separate qrc. 2017-05-09 23:46:36 +03:00
John Preston
ded6933867 Add call button answer->hangup->redial animation. 2017-05-09 23:46:35 +03:00
John Preston
2214e980ef Add call panel show / hide animation. 2017-05-09 23:46:34 +03:00
John Preston
299dc3fc96 Reuse call panel if current call is in Busy state. 2017-05-09 23:46:33 +03:00
John Preston
0a6e012e90 Add call debug window on Ctrl+Click Show Info.
It is available only when debug logs are enabled.
2017-05-09 23:46:33 +03:00
John Preston
96a0fcb28f Closed beta 1000035001. 2017-05-09 23:46:32 +03:00
John Preston
fd24aff6b1 Play sounds in calls. 2017-05-09 23:46:31 +03:00
John Preston
2e816f2a67 Play notification sound using Media::Audio::Track. 2017-05-09 23:46:30 +03:00
John Preston
6f89d01452 Add new Media::Audio::Instance for audio tracks.
Move some audio-related code from Media::Player to Media::Audio.
2017-05-09 23:46:29 +03:00
John Preston
11525a1e50 Add RateCallBox for calls feedback collection. 2017-05-09 23:46:28 +03:00
John Preston
5f2e295d63 Improve calls panel in macOS.
Use Qt::Dialog instead of Qt::Tool which works better with window
activation / deactivation handling.

Stop displaying the panel on all spaces when the call is established.
2017-05-09 23:46:28 +03:00
John Preston
0cdac83f8a Fix calls build in Xcode. Fix calls panel in Retina.
Also implement panels that appear in all spaces on macOS.
Using them for calls panels and custom notifications, so it
will be possible to use custom notifications in macOS as well.
2017-05-09 23:46:27 +03:00
John Preston
e050e270fc Try to hangup current call when quitting the app. 2017-05-09 23:46:26 +03:00
John Preston
29fc69ebaa Show emoji fingerprint tooltip in call panel. 2017-05-09 23:46:25 +03:00
John Preston
f42f79ea95 Add "line busy" call state with a redial button. 2017-05-09 23:46:24 +03:00
John Preston
d5ff728da6 Show privacy / incompatibility errors in calls. 2017-05-09 23:46:24 +03:00
John Preston
a3252c13d7 Edit phone calls privacy in Settings. 2017-05-09 23:46:23 +03:00
John Preston
30d000e139 Toggle calls controls using config and user flags.
Also use calls timeout values from config.
Also request config each time when the auth session changes.
2017-05-09 23:46:22 +03:00
John Preston
f4911431d5 Request, parse and apply phone.getCallConfig. 2017-05-09 23:46:21 +03:00
John Preston
28c0e815b3 Add new calls to Calls log box in realtime.
Also improve button ripple effect in Calls log box.
2017-05-09 23:46:20 +03:00
John Preston
c4f90983af Redesign calls service messages. 2017-05-09 23:46:19 +03:00
John Preston
06b081f509 Add calls log box.
PeerListBox can have many rows with the same PeerData.
PeerListBox::Row can have arbitrary action on the right side.
2017-05-09 23:46:18 +03:00
John Preston
f6eb2c5205 Add call top bar above the media player. 2017-05-09 23:46:18 +03:00
John Preston
60ac7572af Display name, status and emoji in Call Panel. 2017-05-09 23:46:17 +03:00
John Preston
b267957abe Apply all MTP Key generation checks to calls.
Also move all OpenSSL BN_* calls to base/openssl_help header.
2017-05-09 23:46:16 +03:00
John Preston
4925af69e2 Add Calls::Panel and handle incoming calls. 2017-05-09 23:46:15 +03:00
John Preston
0a716036c2 Extract Calls::Call. Add a call button to TopBar. 2017-05-09 23:46:14 +03:00
John Preston
d18164bc51 Add Calls::Instance. Add libtgvoip as a dependency.
Also move all submodules to Telegram/ThirdParty.
2017-05-09 23:46:08 +03:00
John Preston
d78523e905 Fix resource leak in SPMediaKeyTap. 2017-05-09 14:49:56 +03:00
John Preston
3156dc0f1a Preserve video filename and mime from cloud data. 2017-05-08 17:13:16 +03:00
John Preston
038361a1e9 Fix overview items layout after message deletion. 2017-05-08 17:01:14 +03:00
John Preston
b71a901182 Round thumbs for round videos in shared links. 2017-05-08 17:00:26 +03:00
John Preston
caf2e19d27 Better error message for banned in public groups.
Also improve the changelog.
2017-05-08 16:30:59 +03:00
John Preston
aedf85c965 Update opus library to v1.2-alpha2 version. 2017-05-08 16:26:06 +03:00
John Preston
a7e695d914 Better show in folder in Windows / Linux.
Inspired by https://github.com/qbittorrent/qBittorrent.
2017-05-07 16:28:58 +03:00
John Preston
291a6b73ab Show phone instead of "online" in the main menu. 2017-05-07 12:00:49 +03:00
John Preston
475f0e9544 Fix build for the new GYP version, fix Appveyor. 2017-05-05 12:25:06 +03:00
John Preston
bf659938ba Fix stickers list remote set button update. 2017-05-03 16:56:14 +03:00
John Preston
392ab20a47 Use Segoe UI if no Open Sans in all Win versions. 2017-05-01 12:25:57 +03:00
John Preston
33f59dd3ec Fix an infinite recursion in Emoji panel/section.
HistoryWidget::resizeEvent() can start taking TabbedSelector from
TabbedPanel which will call QWidget::render() which can call again
HistoryWidget::resizeEvent() from sendPendingMoveAndResizeEvents().

Use a separate flag for _tabbedSection to prevent recursion there.
2017-05-01 11:29:02 +03:00
John Preston
aedbd6dfe4 Fix assertion violation when editing GIF / video.
If a GIF / video had no thumbnail the _animated flag was removed.
2017-05-01 11:03:56 +03:00
John Preston
5a8ce36181 Alpha 1.0.35: Admins delete messages in chat. 2017-04-30 20:17:35 +03:00
John Preston
10b7d7c473 Update langs. 2017-04-30 20:00:52 +03:00
John Preston
7fedf24d9e Fix video message and sticker reply preview on Retina.
Wrong preview image size was a reason for image resize before
drawing the preview and it caused black background, not transparent.
2017-04-30 19:58:31 +03:00
John Preston
5ed698ac69 Link correct OS X 10.6-10.7 libraries. 2017-04-30 19:56:13 +03:00
John Preston
297856db32 Load and use Segoe UI [Semibold] if no Open Sans.
Sometimes Open Sans Semibold fails to load properly on the latest
Windows Creators Update. In that case try to load Segoe UI instead.

An attempt to fix #3276.
2017-04-30 19:03:12 +03:00
John Preston
6418c9c718 Handle updates from MTP after RPC responses.
If some RPC responses and MTP updates are received together a fake
requestId in the negative range was used and that way updates were
processed before responses.

That could lead to an incorrect "out" message flag when sending
messages to supergroups, because a broadcast update about the new
message without "out" flag was handled before the request response.

Now a separate response map and updates list are used and responses
are handled always before the updates.
2017-04-30 17:23:57 +03:00
John Preston
413eafb240 Allow chat creator/admins to delete for everyone.
Chat creator and admins (if admins are enabled) now can delete
any message for everyone, not only outgoing ones.
2017-04-30 16:58:45 +03:00
John Preston
4c2a0fa630 Fix top bar layout when emoji section is visible. 2017-04-30 16:58:27 +03:00
John Preston
a925822141 Generate and handle new video message links. 2017-04-30 16:43:19 +03:00
John Preston
cd6a189990 Show some info for USER_BANNED_IN_CHANNEL error. 2017-04-30 16:43:18 +03:00
John Preston
07a274f927 Improve video message status text in a web page.
Show duration / progress text in the bottom left bubble corner.
2017-04-30 16:43:17 +03:00
John Preston
eb240defa3 Display forwarded info in video messages. 2017-04-30 16:43:17 +03:00
John Preston
4659b664e7 Skip fwd_info for msgs from chat with yourself.
Server doesn't add fwd_info if a non-forwarded message is forwarded
from chat with yourself so don't add it locally as well.
2017-04-30 16:43:16 +03:00
John Preston
d2c6de3df6 Play audio documents inside app by actionOnLoad. 2017-04-30 16:43:15 +03:00
John Preston
e8a3535c74 Support audio documents playback inside app.
Also add some more decoders in ffmpeg configuration (wav).
Also stop audio device restart on PKEY_AudioEndpoint changes.
Also deduce channel layout from channel count in ffmpeg loaders.
2017-04-30 14:34:23 +03:00
John Preston
46690da488 Make round reply preview for video messages.
Also add a reply bar for video messages.
Also add a reply preview for stickers.
2017-04-25 13:47:52 +03:00
John Preston
f11c76d06b Show featured sticker sets when no sets installed. 2017-04-24 18:59:54 +03:00
Richard Yu
e57b5a7a47 Update building-msvc.md (#3307)
Use `subst` to map drive instead of `net use`.

Signed-off-by: Richard Yu <yurichard3839@gmail.com> (github: ysc3839)
2017-04-23 23:15:03 +02:00
John Preston
5ec758637d Alpha 1.0.34: Update langs. 2017-04-21 16:25:17 +03:00
John Preston
33ffa0715d Alpha 1.0.34: Fix tabbed section widget render.
Also fix error message layout in EditCaptionBox.
2017-04-21 16:22:45 +03:00
John Preston
8f719f8c06 Remove edit caption UI for not my messages.
Regression was introduced in 8eb7f1f1aa.
2017-04-21 13:59:03 +03:00
John Preston
da0387a23e Fix forwarded message original id. Closes #3305. 2017-04-21 13:47:39 +03:00
John Preston
9eea4fcf03 Update API scheme. Closes #3311, closes #3310. 2017-04-21 13:45:34 +03:00
Christoph Auer
5efc334a04 Remove unused secret from .travis.yml 2017-04-20 12:20:39 +02:00
Christoph
6fa3122bb6 Implement signature check for Travis and AppVeyor (#3295)
Signed-off-by: Christoph Auer <auer.chrisi@gmx.net>
2017-04-19 14:57:45 +02:00
John Preston
71e653db30 Fix non-available API usage in OS X 10.6-10.7 version. 2017-04-18 22:00:51 +03:00
John Preston
bc1eff83cb Fix crash in audio device property change handler.
PSStringFromPropertyKey should be checked before being used.
2017-04-18 21:58:49 +03:00
Christoph
f4edb7ada5 Only clone latest commit at AppVeyor (#3283)
Signed-off-by: Christoph Auer <auer.chrisi@gmx.net>
2017-04-18 11:47:19 +02:00
Christoph Auer
e83dd2037a Remove the check for "Signed-of-by" at PR 2017-04-16 18:05:59 +02:00
John Preston
f619afc4c6 Alpha 1.0.33: Fix build for Xcode. 2017-04-16 00:45:25 +03:00
John Preston
7ad7028880 Alpha 1.0.33: Various fixes and improvements. 2017-04-16 00:36:46 +03:00
John Preston
8e241e8b78 Improve Emoji-Stickers-GIFs panel.
Fix broken minimal panel size.
Remove HistoryWidget context menu from the panel.
2017-04-16 00:05:57 +03:00
John Preston
6226cf2809 Display video message playback progress time. 2017-04-15 23:30:28 +03:00
John Preston
7312114b75 Use full volume for video messages.
Set video volume to VideoVolume in MediaView and to 1 in HistoryGif.
2017-04-15 22:51:53 +03:00
John Preston
0ff299758a Use correct lang phrases for video messages. 2017-04-15 22:51:44 +03:00
John Preston
de7c886008 Move passcode management from MainWindow.
Check for auto lock in AuthSession. Don't autolock while video plays.
Closes #3219
2017-04-15 21:51:12 +03:00
John Preston
e3aacc8072 Don't change notification sound to empty on mute.
If notifications are muted no one from official apps play sound.
So there is no need to turn the sound off, otherwise if you enable
the notifications from a different app the sound stays off.

Enable the sound (change to "default") when turning notifications on.
2017-04-15 21:51:11 +03:00
John Preston
4fc2c18f58 Fix crash in intro label crossfade animation.
Remove the assertion because the assumption was not valid.

Closed #3270
2017-04-15 20:40:23 +03:00
John Preston
8a8e101cd0 Fix crash in file downloader destruction.
Regression was introduced in 835b1801bc.

We need to destroy all FileLoader instances before destroying the
Downloader instance, because they hold pointers to it and call its
methods in destructor if they need to cancel some MTP requests.
2017-04-15 20:39:32 +03:00
John Preston
c10dee11e8 Fix crash in macOS notifications manager init.
Regression was introduced in 1725927aea.

Also create the thread only when it is first needed.
2017-04-15 20:39:25 +03:00
John Preston
4e5c4a462b Fix crash in videoplayer audio stream loader.
Regression was introduced in 835b1801bc.
2017-04-15 20:32:14 +03:00
John Preston
bc7139d67a Fix crash in AuthSession::Exists() if there is no Messenger.
Also use toggleAnimated instead of show/hideAnimated in intro.
2017-04-15 19:28:07 +03:00
Ariel Jannai
bf0bf908c2 Update building-msvc.md (#3264)
* Update building-msvc.md

Fixed some wrong, missing or unclear parts. Based on the problems I came into when trying to build and configure everything.

Ninja not in path - from #3237
Newer msys - from #3247
Telegram.sln - from #2811

* Updated from the PR comments and added a signature


Signed-off-by: Ariel Jannai <arieljannai@gmail.com> (github: arieljannai)

* Updated by the latest comments from the PR

Signed-off-by: Ariel Jannai <arieljannai@gmail.com> (github: arieljannai)
2017-04-14 11:58:10 +02:00
John Preston
dd005d9027 Generate correct lang tag count, not hardcoded. 2017-04-13 11:51:47 +03:00
John Preston
670a725c53 Alpha 1.0.32: Fix round video checks in MediaView. 2017-04-12 23:34:57 +03:00
John Preston
af28e3b0d7 Alpha 1.0.32: Fix build in Xcode. 2017-04-12 23:28:04 +03:00
John Preston
ca90b8b8fd Alpha 1.0.32: Test the new API and CDN support. 2017-04-12 23:04:34 +03:00
John Preston
7b7b9db20b Add support for video messages send actions.
Animate record and upload the same way as voice messages.
2017-04-12 22:37:47 +03:00
John Preston
96dbb38aaa Improve mute and info display in video messages.
Display mute on top of the video and move info to the right side
for incoming messages (because of channel authors and views count).
2017-04-12 22:37:28 +03:00
John Preston
1b7777e3a0 Pause other GIFs when playing round video message. 2017-04-12 22:37:28 +03:00
John Preston
5480a63beb Support round video inline playback with sound. 2017-04-12 22:37:27 +03:00
John Preston
cbf040b4dc Crop round video messages to a circle.
Also display unread media dot like in voice messages.
2017-04-12 22:37:26 +03:00
John Preston
8eb7f1f1aa Display round video messages using HistoryGif.
Use autodownload and autoplay options from GIFs.
Also improve EditCaptionBox code.
2017-04-12 22:37:26 +03:00
John Preston
8d28d0691f API scheme updated to layer 66.
Support CDN file download.
2017-04-12 22:36:25 +03:00
John Preston
7dd24a30b5 Replace MetaLang with codegen_lang. 2017-04-12 22:18:42 +03:00
John Preston
1725927aea Clear macOS notifications in a separate thread.
Sometimes NSUserNotificationCenter -deliveredNotifications method call
freezes for a long time, so now we use it only in a separate thread and
we group all the requests for clearing while another clearing is done.
2017-04-12 15:50:35 +03:00
John Preston
50ea4e316e Improve macOS window behavior.
Don't deactivate the application when the main window is hidden.
Such behavior provides some unwanted windows reordering in the
current workspace when the window is hidden by Cmd+W.

Ignore app activation by applicationDidBecomeActive: notification
for a short period of time after a user notification for other app
instance was received (the system sends them sometimes and the main
window is shown + activated for a wrong instance of the application).
2017-04-12 15:50:12 +03:00
srazi
734b426518 Fix canceling forward when clicking on _userpicButton or _cloudButton (#3248)
- Fixes #3192

Signed-off-by: srazi <s.r.alavizadeh@gmail.com> (github: srazi)
2017-04-11 23:03:34 +03:00
Nicholas Guriev
232d3dcb54 Make theme preview more realistic (#3250)
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-04-11 21:16:12 +03:00
John Preston
eaf1e2b18e Alpha 1.0.31: Fix layout for message edit. 2017-04-11 21:04:28 +03:00
John Preston
4b7e5750ec Alpha 1.0.31: Fix crash in localstorage. 2017-04-11 20:31:20 +03:00
John Preston
d4af14041c Fix build for OS X 10.6-10.7.
Qt 5.3.2 doesn't support QTimer::singleShot(delay, lambda).
2017-04-11 18:44:11 +03:00
John Preston
b736d45bc4 Alpha 1.0.30: New tabbed panel as a third column. 2017-04-11 18:02:46 +03:00
John Preston
7f7318c0bf Fix members dropdown and chat info menu position. 2017-04-11 17:27:46 +03:00
John Preston
0e2c282476 Don't stop GIFs when TabbedSection is opened.
Also improve the appearance of Stickers and GIFs tabs with no items.
2017-04-11 17:03:47 +03:00
John Preston
891d200e2d Add TabbedSection which uses the TabbedSelector. 2017-04-10 12:08:56 +03:00
John Preston
647ea44881 Extract TabbedSelector from TabbedPanel.
Now we can use TabbedSelector separately, not only inside the panel.
2017-04-10 12:08:55 +03:00
John Preston
2c81014188 Fix crash on precondition in PeerListBox.
If a global search request was sent and we clear the query the
response still was being processed which caused an Expects() fail.
2017-04-10 12:08:15 +03:00
John Preston
6c4943de97 Cache travis dependencies after Qt build. 2017-04-08 20:29:21 +03:00
Viktor Oreshkin
f1d97fb92c Fix build in Xcode (#3241)
Signed-off-by: Viktor Oreshkin <stek29@users.noreply.github.com>
2017-04-08 18:05:59 +03:00
John Preston
26b05cf844 Finalize rename / move.
Also removed non-existent emoji_section module from GYP.
2017-04-08 17:05:19 +03:00
John Preston
155cd8ce42 Rename / move emoji_panel to tabbed_panel.
Next commit fixes the build.
2017-04-08 16:56:14 +03:00
John Preston
330fc35800 Move some classes to separate modules.
MessageField, BotKeyboard, HistoryInner from historywidget.
2017-04-08 16:31:58 +03:00
John Preston
570cd9bdfa Move GIF pausing methods to Window::Controller. 2017-04-08 16:31:57 +03:00
John Preston
cd3c5e4ade Fix build in GCC.
GCC doesn't allow using scoped enums in bitfields without warnings.
So we use "unsigned" bitfield and a couple of get/set methods.
2017-04-08 14:25:54 +03:00
John Preston
38f94c63e9 Add blocked users list in supergroups profiles. 2017-04-07 18:13:22 +03:00
John Preston
34ab04cbe6 Add lambda-based checked timers.
Also ApiWrap is now not a QObject.
2017-04-07 18:13:21 +03:00
John Preston
6b242a982b Fix GIF pause by layer.
Let MainWindow enable / disable GIF pausing when a layer is shown.
2017-04-07 18:13:20 +03:00
John Preston
0d0307e175 Move ApiWrap to AuthSession.
Also send all ApiWrap requests as an MTP::Sender.
Also create AuthSession only after starting MTProto.
2017-04-07 18:13:19 +03:00
John Preston
835b1801bc Remove Q_OBJECT dependency from ApiWrap.
Also remove it from SingleDelayedCall -> SingleQueuedInvocation.
2017-04-07 18:13:19 +03:00
John Preston
5444b8166c Finalize rename / move of files. 2017-04-07 18:13:18 +03:00
John Preston
c94a88e154 Rename / move a bunch of files.
Next commit fixes the build.
2017-04-07 18:13:16 +03:00
John Preston
b185af6f0c Use a separate Travis job for dependencies. 2017-04-06 18:14:55 +03:00
John Preston
8504bbb9d5 Improve icons and scripts for Windows Store. 2017-04-06 14:35:35 +03:00
John Preston
b2f1177661 Remove 'git checkout 5.*' before 'init-repository'.
Something has changed in Qt libraries remote layout so now the perl
init-repository script from the old Qt version doesn't work anymore.

We init the submodules using script from the latest Qt version and
after that we checkout the desired version by tag in all submodules.
2017-04-06 11:19:00 +03:00
John Preston
6746d4ba2d Build crashpad from git. Crashpad path has changed. 2017-04-06 11:06:29 +03:00
John Preston
0f7567970c Update preview image. 2017-04-05 18:56:58 +03:00
John Preston
7b7df23e3b Version 1.0.29: Fix crash on app quit.
Some cleanup actions in App::clearHistories() queue file loader
destructions that should be completed before MTProto is reset.
2017-04-05 13:39:31 +03:00
John Preston
252a6f9d5a Version 1.0.29: Fix cancel GIFs search button. 2017-04-05 13:14:17 +03:00
John Preston
a1adf2dae6 Version 1.0.29: Fix crash on app quit.
Destroy queued file loaders before destroying AuthSession, because
they have references to Downloader which is owned by AuthSession.
2017-04-05 13:04:26 +03:00
John Preston
f4d1cdf14d Merge branch 'master' into dev 2017-04-05 12:25:43 +03:00
John Preston
22d905b39c Version 1.0.29: Add cloud icon to main menu. 2017-04-05 12:22:45 +03:00
Jan Grulich
58bbc3f537 Add appstream metadata file (#3203)
Signed-off-by: Jan Grulich <grulja@gmail.com> (github: grulja)
2017-04-05 09:35:57 +02:00
John Preston
03a59b04be Add progress animation to GIFs search.
Also display "no results" phrase.
2017-04-04 16:19:49 +03:00
Christoph
2028116e22 Link to image 2017-04-04 14:50:01 +02:00
Christoph
244361b5c6 Add preview image to readme 2017-04-04 14:45:42 +02:00
Christoph
7e680624a0 Add preview image 2017-04-04 14:42:19 +02:00
Christoph
3304ad7222 Rename doc to docs 2017-04-04 14:40:49 +02:00
John Preston
4384c80961 Prefer appindicator only on Unity and Pantheon.
Commit dcd6028e91 introduced a regression which caused
appindicator tray icon to be preferred everywhere else.
2017-04-04 12:59:48 +03:00
John Preston
15befa98c4 Fix headers in building docs. Closes #3182 2017-04-04 12:17:54 +03:00
Lonami
b7ea15b83d Use message date by default when saving a photo (#1586) (#3150)
Signed-off-by: Lonami <totufals@hotmail.com> (github: Lonami)
2017-04-04 12:14:32 +03:00
Fritz Elfert
3915957612 Update libva git URL and Qt init-repository invocation (#3201)
Signed-off-by: Fritz Elfert <fritz-github@fritz-elfert.de> (github: felfert)
2017-04-04 12:12:56 +03:00
John Preston
20ad611924 Alpha 1.0.28: bump version. 2017-04-03 22:08:22 +03:00
John Preston
57b85ac30f Alpha 1.0.28: new emoji panel, GNOME tray icon. 2017-04-03 22:06:20 +03:00
John Preston
81375a05f1 Always write MTP data right after login.
Also write to DebugLogs all keys write attempts.
2017-04-03 21:59:13 +03:00
John Preston
50586eb06d Build codegen_emoji without GUI dependencies.
We need GUI dependencies only when we generate images.
2017-04-03 21:49:07 +03:00
John Preston
afa9393f38 Expose IsPrimeAndGood() interface from connection.
Also fix a race in MTProto debug type serialization initialization.
2017-04-03 21:28:18 +03:00
John Preston
c1aa1c5a0f Enable Qt tray icon in GNOME and derivatives.
As tested in Fedora Qt 5.6.2 tray icon works well in GNOME.
Also add more logs about DE and tray icon. Fix #3175 #3188
2017-04-03 20:46:09 +03:00
John Preston
78d245c02c Improve positioning of chat helper panels. 2017-04-03 19:46:24 +03:00
John Preston
ffc9585196 Add hierarchy of GIF pausing inside a window.
GIFs get paused if some other layer is displayed above.
Media preview > Box or layer > Saved GIFs panel > Inline bot results.
If any of those is displayed, GIFs inside message history pause too.
2017-04-03 19:46:12 +03:00
John Preston
6003ac2132 Add base::weak_unique_ptr<T> template class.
Sometimes you don't need shared ownership (shared_ptr), but you
still need to be able to have weak pointers to an object.

Now you can derive the object from base::enable_weak_from_this
and use base::weak_unique_ptr<T> after that.
2017-04-03 14:08:36 +03:00
John Preston
0cdd0a9ff9 Remove old 'using std::string' from mtproto. 2017-04-02 20:11:30 +03:00
John Preston
7a7f157a8e Fix crash in EmojiListWidget.
Changing recent emoji list was giving us inconsistent emoji list
in _emoji[section] and its size in SectionInfo::count field.
2017-04-01 17:08:56 +03:00
John Preston
f1718f1d10 Generate emoji config by a build action.
Also hopefully optimize the build speed for emoji config.
2017-04-01 17:08:42 +03:00
John Preston
a1b53f07d5 Fix build for Xcode and GCC. 2017-04-01 16:14:56 +03:00
John Preston
e8ed307278 Add search in GIFs to EmojiPanel. 2017-03-31 18:58:59 +03:00
John Preston
0690c4f98c Move EmojiPanel bottom controls to Controller.
Open sticker set by click on the name.
Add a delete sticker set button.
2017-03-31 15:58:52 +03:00
John Preston
6d27172b20 Move [Emoji|Sticker]PanInner to separate modules.
Now we have three separate [Emoji|Stickers|Gifs]ListWidget.
2017-03-31 15:48:03 +03:00
John Preston
bed3aa1a7f Finalize rename / move of files.
Also rename EmojiPan to EmojiPanel.
2017-03-31 15:48:02 +03:00
John Preston
477f175f76 Rename / move emoji_pan module to emoji_panel.
Next commit fixes the build.
2017-03-31 15:48:02 +03:00
John Preston
1540f6f528 Use emoji/stickers/gifs slider in EmojiPan.
Also rename EmojiTabs to EmojiSections.
2017-03-31 15:48:01 +03:00
John Preston
3d846fcd49 Show inline bot results in a separate widget.
Add a InlineBots::Layout::Widget for inline bot results.
GIF search from EmojiPan is disabled for now.
2017-03-31 15:48:00 +03:00
John Preston
5cb66c99bd Make stickers FeaturedReader an MTP::Sender. 2017-03-31 15:47:59 +03:00
John Preston
8d4be19952 Use separate TopBar for History and Overview.
Move TopBar widget to History and Overview from MainWidget.
2017-03-31 15:47:58 +03:00
John Preston
cdca00368f Improve EmojiPan: resource management.
Store inline results and layouts in unique_ptrs.
Move EmojiPan from RPCSender to MTP::Sender.
2017-03-31 15:47:57 +03:00
John Preston
8884cb190a Version 1.0.27: Fix launch in Ubuntu 17.04
Ubuntu 17.04 launch results in segfault if the build was done
by GCC 6.2 (works fine with GCC 4.9). Backtrace shows that it
crashes in gtk_init_check() call somewhere in libmirclient and
tests show that it works fine with GDK_BACKEND=x11.

So we use gdk_set_allowed_backends() method to explicitly state
that we support only "x11" GDK backend, that way it doesn't try
to use libmirclient and it does not crash.

Fix #3176 #3162
2017-03-31 13:46:55 +03:00
John Preston
df6972eeba Update API scheme. 2017-03-31 13:31:51 +03:00
budkin
2a805853ec Fix broken link (#3180)
Signed-off-by: Evgeny Badin <treeshateorcs@gmail.com> (github: budkin)
2017-03-31 10:09:12 +02:00
John Preston
f0ab72ffbc Fix AutoConnection::debugState() for TCP connections. Fix #3171
Also silent new Xcode version warning.
2017-03-30 18:20:51 +03:00
John Preston
a851497bbf Version 1.0.26 for macOS: Fix Clang builds.
Custom build of libc++ for OS X 10.6-10.7 already has C++17 as_const.
Add workaround for Apple Clang has strange issues (freeze and segfault).
2017-03-30 15:00:02 +03:00
John Preston
e6d94b5ee7 Version 1.0.26: Better appx manifest, update langs. 2017-03-30 12:49:58 +03:00
John Preston
23f23e3ca5 Closed beta 1000024001: Improved edit privacy box. 2017-03-30 12:49:16 +03:00
John Preston
dde63a9047 Update langs. 2017-03-30 12:49:16 +03:00
John Preston
5bb68cfd8f Support reading me_url_prefix from config.
The default value 'https://t.me' can be overriden from server config.
2017-03-30 12:49:16 +03:00
John Preston
70b6335b11 Closed beta 1000018003: notifications / jump to date. 2017-03-30 12:49:16 +03:00
John Preston
47c5d56c7b Use QLocale for amount + currency formatting. 2017-03-30 12:49:15 +03:00
John Preston
fde769e0b9 Don't use WebDocument size field.
WebDocument size field is not a reliable information,
it can be > 0 and != upload.WebFile size field, so just ignore it
and load all WebDocument files as files with unknown size.
2017-03-30 12:49:15 +03:00
John Preston
23b39923ad Closed beta 1000018002: more phrases for payments.
Also replacing the Buy keyboard button with Receipt if the invoice
was payed already (like in mobile apps). This required to move the
inline markup apply before the media apply in message editing.
2017-03-30 12:49:15 +03:00
John Preston
a7d0473a1a WebDocument without size is allowed to load.
We load a WebDocument with an unknown size the same way as we load
normal photos with FileLocation, that doesn't contain size as well.

If the size information from WebDocument and upload.WebFile is
inconsistent we still fail to load the file.
2017-03-30 12:49:15 +03:00
John Preston
12ca6f3819 Closed beta 1000018001: calls and payments dummies. 2017-03-30 12:49:15 +03:00
John Preston
31e3c6a2c6 WebDocument wrap to HistoryPhoto supported.
Only WebDocument with a valid 'size' field value and with a valid
'documentAttributeImageSize' attribute works wrapped as a photo.
2017-03-30 12:49:15 +03:00
John Preston
7b5985445c Payment service messages supported. 2017-03-30 12:49:15 +03:00
John Preston
2019c24e08 Pay button and messageMediaInvoice supported.
New button type keyboardButtonBuy just shows a box with information.
WebDocument photo type is not supported yet, 'photo' is ignored.
Also HistoryMediaPtr is now implemented as a std::unique_ptr wrapper.
2017-03-30 12:49:15 +03:00
John Preston
0cc7cdd212 Added phrases for phone calls service messages.
Also refactored service message text parsing from an action object.
2017-03-30 12:49:15 +03:00
John Preston
16396b5d90 API scheme updated to layer 65. 2017-03-30 12:49:14 +03:00
John Preston
5666f14829 Allow audio and video files with duration < 1s. 2017-03-27 15:50:40 +03:00
John Preston
d41372dccd Allow MTP_flags(0) and MTP_flags(single_flag). 2017-03-25 18:42:01 +03:00
Nicholas Guriev
2e6c15ff9d Update .desktop file on Linux (#3109)
What has been done:

 * Removed deprecated Encoding key
 * Specified correct WM class for StartupWMClass key
 * Fixed icon name

I also fixed restarting when language is changed and there is no Updater

Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-03-23 18:00:21 +03:00
John Preston
0ce6e8a33a Show warning message before changing phone number. 2017-03-23 17:58:58 +03:00
Christoph
be659e2611 Fix regex for in app links (#3142)
Before, this regex matched also links which contained a in app link, e.g.: https://github.com/search?q=https://telegram.me/BotFather

Fix #3141

Signed-off-by: Christoph <auer.chrisi@gmx.net>
2017-03-23 17:56:51 +03:00
John Preston
47044ab25e Fix GCC warning on Release build in Emoji::Init.
Also use initializer_list instead of recursion in Emoji::ComputeId.
2017-03-23 15:47:01 +03:00
John Preston
731e53bc99 Fix crash in tray icon notifications toggle.
While we have the same tray menu for an authorized user and not.
2017-03-23 15:30:16 +03:00
John Preston
e38d683979 Fix crash in SelfDestructionBox.
base::lambda_guarded may destroy the lambda after the owner. In case
of SelfDestructionBox it lead to a dtor of a dangling object_ptr.

MTP::Sender destroys the lambda handlers together with itself.
2017-03-23 15:18:02 +03:00
John Preston
e9ec09b91a Add MTP::Sender to replace RPCSender some day.
Also use c++1z language standard in Xcode build.
Also treat warnings as errors.
2017-03-23 14:37:38 +03:00
John Preston
7fcc5d649c Change push_back to emplace_back in emoji_config.
Perhaps that way GCC won't give a warning on variable count inside
one method Ui::Emoji::Init() in Release builds.
2017-03-22 12:24:53 +03:00
John Preston
6601a00eea Alpha 1.0.25: Edit phone number in Settings.
Also fix build for GCC.
Also add scripts for GitHub releases management.
2017-03-21 22:49:23 +03:00
John Preston
743743ca10 Fix WebPage reply preview.
Sometimes HistoryWebPage::hasReplyPreview() was returning true while
the HistoryWebPage::replyPreview() method was not offering anything.
2017-03-21 20:59:35 +03:00
John Preston
bd121752f1 Change your account phone number in Settings. 2017-03-21 20:13:34 +03:00
John Preston
facc729234 Edit account self destruct time in Settings.
Also accept lambda_once in rpcDone() and rpcFail() lambda wrappers.
2017-03-20 23:05:38 +03:00
John Preston
a5df46f381 Improve EditPrivacyBox layout.
Also fix incorrect killTimer() calls in DiscreteSlider.
2017-03-19 11:32:24 +03:00
John Preston
5530172add Alpha 1.0.24: Fix build in Xcode. 2017-03-19 00:29:43 +03:00
John Preston
59636ac072 Alpha 1.0.24: edit last seen and invite privacy. 2017-03-19 00:14:23 +03:00
John Preston
12cbf78191 Refactor Ui::Radiobutton. Add Ui::Radioenum<Enum>.
Now group of Ui::Radiobutton instances share Ui::RadiobuttonGroup.
All value management is done through the group instance, not through
separate radio buttons. Also a template for groups over enums added.
2017-03-19 00:06:10 +03:00
John Preston
0a40bf2071 WIP radiobuttons refactoring. 2017-03-18 14:55:04 +03:00
John Preston
7546245213 Show warning when user edits last seen first time. 2017-03-18 12:49:48 +03:00
John Preston
fc77b0a51c Save privacy in ApiWrap. Handle privacy updates. 2017-03-18 12:49:47 +03:00
John Preston
346daee421 Edit groups and channels invite privacy. 2017-03-18 12:49:46 +03:00
John Preston
61c5b45d7a Select exception users in EditPrivacyBox. 2017-03-18 12:49:46 +03:00
John Preston
85fd117675 Add EditPrivacyBox. Edit last seen privacy.
Selecting exception users is not supported yet.
2017-03-18 12:49:45 +03:00
John Preston
a563cf553c Rename / move settings_blocked_box_controller.
Next commit fixes the build.
2017-03-18 12:49:44 +03:00
John Preston
18151359f3 Fix drag-n-drop images from Firefox.
Commit a1b53c660e introduced a regression which caused images that
were shown for sending confirmation as a file path + image not being
passed to FileLoadTask in _image field, they were passed in the
_information field instead. They were not sent in case the file path
was not existing at the moment of processing. If the file path does
not exist anymore read the image from _information and send it.
2017-03-18 12:44:31 +03:00
John Preston
16fa56de48 Finalize rename / move of files. 2017-03-16 12:53:13 +03:00
John Preston
412d3f8350 Rename / move a bunch of files.
Next commit fixes the build.
2017-03-16 12:52:38 +03:00
John Preston
6ad2cd38ed Generate scheme module by GYP action.
Add a new codegen action to generate MTP scheme from scheme.tl file.
2017-03-16 12:37:56 +03:00
John Preston
d91a2403b0 Use refs in AuthSession part getters.
Also use only AuthSession data for Contacts/Dialogs loaded state.
2017-03-15 19:24:06 +03:00
John Preston
1027bd431a Add some helper methods to effect wrappers.
Add and use similar methods to WidgetSlideWrap and WidgetFadeWrap:
[show|hide|toggle]Fast() and [show|hide|toggle]Animated().
2017-03-15 18:10:18 +03:00
Christoph
fed20435ad Update local regex (#3115)
Adds support for telegram.dog links
Fix #3111

Signed-off-by: Christoph <auer.chrisi@gmx.net>
2017-03-15 17:38:05 +03:00
John Preston
b2ac84c8c6 Alpha 1.0.23: Fix changelog message. 2017-03-15 15:13:09 +03:00
John Preston
8c06b08f30 Alpha 1.0.23: Add blocked users list box in settings.
Also fixed build for Xcode.
2017-03-15 13:45:56 +03:00
John Preston
2ce2a14228 Add global search by username in block user box. 2017-03-14 21:38:50 +03:00
John Preston
46dab1a6b4 Add local search (filter) in block user box. 2017-03-14 20:10:28 +03:00
John Preston
805be84bff Add block user box. Search isn't working yet.
Add a box containing all chats and contacts for blocking users.
Contacts and dialogs loaded state can be accessed in AuthSession.
2017-03-14 17:16:03 +03:00
John Preston
b1ee91b06b Add blocked users box to Settings.
Start a general PeerListBox, it should replace both ContactsBox
and MembersBox in the future. Show blocked users list in it.
2017-03-14 13:58:36 +03:00
John Preston
6873d53993 Alpha 1.0.22: fix couple of crashes. 2017-03-13 13:31:11 +03:00
John Preston
929c55a2a1 Include only required moc_*.cpp in the build.
Use a python script to generate the list of sources to build.
Now we don't include moc_*.cpp files in build by default, instead
we list only non-empty ones.

If you change a header so that the corresponding moc_*.cpp changes
its emptyness you may need to gyp/refresh to apply this change.

This should speed up the build significantly on GCC.
2017-03-13 13:17:26 +03:00
John Preston
2e17b480a5 Fix crash in HistoryVideo::draw. 2017-03-12 11:52:28 +03:00
John Preston
1395237810 Fix crash in notifications.
~HistoryItem() sometimes causes a queued notification to show.
Custom notifications depend on MainWindow and it is destroyed
already in clearHistories(), so clear the notifications queue first.
2017-03-12 11:49:44 +03:00
John Preston
bc254228c9 Alpha 1.0.21: Use custom refcount for MTP types.
It seems that heavy using std::shared_ptr and std::make_shared
like it was before completely kills the compilation time.

Also HistoryItem::_create now uses perfect forwarding.
2017-03-11 20:03:36 +03:00
John Preston
f2cd364e14 Alpha 1.0.21: Fix more compilation bugs. 2017-03-11 17:13:57 +03:00
John Preston
28ae5fd65c Alpha 1.0.21: Fix compilation bug. 2017-03-11 13:35:43 +03:00
John Preston
493ba6f2cd Alpha 1.0.21: Send MP4 and MOV files as videos. 2017-03-11 13:33:05 +03:00
John Preston
f2465eba73 Make MTPstring and MTPvector value types.
Also move MTPstring implementation to QByteArray.
2017-03-10 23:27:26 +03:00
John Preston
1df955e30a Closed beta 1000020001: remove chats list padding. Fix #3098
Also return config requesting at the beginning of each app launch.
2017-03-10 23:27:25 +03:00
John Preston
02da80439b Remove read() constructors from MTP types.
This will allow us to handle errors in parsing not by exceptions.
2017-03-10 23:27:24 +03:00
John Preston
3b373e236e Make all owned MTPD types immutable.
Remove custom refcounting in mtpData, use std::shared_ptr instead.
2017-03-10 23:27:23 +03:00
John Preston
839bf313cf Remove two build jobs from appveyor CI.
No need for disable_desktop_generation_file and disable_unity_integration
in appveyor builds, because the defines from this jobs are Linux-only.
2017-03-10 23:12:56 +03:00
John Preston
6061d9d65b Fix WidgetFadeWrap::showFast() after animation. Fix #3096 2017-03-10 19:41:44 +03:00
John Preston
021454dbd4 Add .jpg to inputFile filename when photo is sent.
Server has some extensions checking for inputMediaUploadedPhoto,
so force the extension to be .jpg anyway. It doesn't matter,
because the filename from inputFile is not used anywhere.

Also own PhotoData::UploadingData through std::unique_ptr.
2017-03-10 18:55:34 +03:00
John Preston
f6918feea3 Fix build in Xcode and GCC. 2017-03-10 18:53:16 +03:00
John Preston
6c00b7efde Show animated previews for GIFs in SendFilesBox. 2017-03-10 17:43:26 +03:00
John Preston
a1b53c660e Show video thumbnail in SendFileBox.
Read media information (image / song / video) in SendFileBox in the
same way it is read in FileLoadTask::process() and reuse it in
FileLoadTask if it was loaded already for the box.
2017-03-10 17:14:10 +03:00
John Preston
9ed8cbe2d1 Send mp4 and quicktime files as videos. 2017-03-10 17:12:51 +03:00
John Preston
eaae662b7d Use mapbox::util::variant in a submodule.
While we don't have C++17 std::variant<> use a BSD licensed
alternative from mapbox team in a base:: wrapper.
2017-03-10 17:12:04 +03:00
John Preston
7da52bd3ec Move GSL dependency to a submodule. 2017-03-10 14:34:43 +03:00
John Preston
e4f7b3c7c2 Fix mediaview update when image is loaded.
Subscribe on app launch, not only when AuthSession has changed.
2017-03-10 11:25:38 +03:00
John Preston
ee45bbe4c6 Alpha 1.0.20: fix crash in old Windows versions.
A shell32 method SHCreateItemFromParsingName was used without
checking if it was successfully loaded from shell32.dll (Vista+).
2017-03-09 00:10:32 +03:00
John Preston
5aab168b3e Alpha 1.0.20: fix crash in default notifications.
Before showNextFromQueue() was called from a range-for loop over
the _notifications and it invalidated the _notifications iterators.
2017-03-08 23:51:40 +03:00
1994 changed files with 312539 additions and 202126 deletions

View File

@@ -1,14 +1,10 @@
@echo off
SET BUILD_DIR=C:\TBuild
set LIB_DIR=%BUILD_DIR%\Libraries
set SRC_DIR=%BUILD_DIR%\tdesktop
IF "%BUILD_DIR%"=="" SET BUILD_DIR=C:\TBuild
SET LIB_DIR=%BUILD_DIR%\Libraries
SET SRC_DIR=%BUILD_DIR%\tdesktop
SET QT_VERSION=5_6_2
cd %BUILD_DIR%
call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
call:configureBuild
call:getDependencies
call:setupGYP
@@ -23,24 +19,36 @@ GOTO:EOF
echo [INFO] %~1
GOTO:EOF
:logError
echo [ERROR] %~1
GOTO:EOF
:getDependencies
call:logInfo "Clone dependencies repository"
git clone -q --branch=master https://github.com/telegramdesktop/dependencies_windows.git %LIB_DIR%
git clone -q --depth 1 --branch=master https://github.com/telegramdesktop/dependencies_windows.git %LIB_DIR%
cd %LIB_DIR%
call:logInfo "Clone GSL"
git clone https://github.com/Microsoft/GSL.git
call prepare.bat
git clone https://github.com/ericniebler/range-v3
if exist prepare.bat (
call prepare.bat
) else (
call:logError "Error cloning dependencies, trying again"
rmdir %LIB_DIR% /S /Q
call:getDependencies
)
GOTO:EOF
:setupGYP
call:logInfo "Setup GYP/Ninja and generate VS solution"
cd %LIB_DIR%
git clone https://chromium.googlesource.com/external/gyp
SET PATH=%PATH%;C:\TBuild\Libraries\gyp;C:\TBuild\Libraries\ninja;
cd gyp
git checkout a478c1ab51
SET PATH=%PATH%;%BUILD_DIR%\Libraries\gyp;%BUILD_DIR%\Libraries\ninja;
cd %SRC_DIR%
git submodule init
git submodule update
cd %SRC_DIR%\Telegram
call gyp\refresh.bat
call gyp\refresh.bat --api-id 17349 --api-hash 344583e45741c457fe1862106095a5eb
GOTO:EOF
:configureBuild
@@ -48,10 +56,6 @@ GOTO:EOF
call:logInfo "Build version: %BUILD_VERSION%"
set TDESKTOP_BUILD_DEFINES=
echo %BUILD_VERSION% | findstr /C:"disable_autoupdate">nul && (
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_AUTOUPDATE
)
echo %BUILD_VERSION% | findstr /C:"disable_register_custom_scheme">nul && (
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME
)
@@ -68,8 +72,8 @@ GOTO:EOF
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION
)
echo %BUILD_VERSION% | findstr /C:"disable_unity_integration">nul && (
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_UNITY_INTEGRATION
echo %BUILD_VERSION% | findstr /C:"disable_gtk_integration">nul && (
set TDESKTOP_BUILD_DEFINES=%TDESKTOP_BUILD_DEFINES%,TDESKTOP_DISABLE_GTK_INTEGRATION
)
if not "%TDESKTOP_BUILD_DEFINES%" == "" (

View File

@@ -5,8 +5,6 @@ This document describes how you can contribute to Telegram Desktop. Please read
**Table of Contents**
* [What contributions are accepted](#what-contributions-are-accepted)
* [Sign your work](#sign-your-work)
* [Change commit message of a pushed commit](#change-commit-message-of-a-pushed-commit)
* [Build instructions](#build-instructions)
* [Pull upstream changes into your fork regularly](#pull-upstream-changes-into-your-fork-regularly)
* [How to get your pull request accepted](#how-to-get-your-pull-request-accepted)
@@ -26,51 +24,10 @@ If we find issues with your pull request, we may suggest some changes and improv
Unfortunately we **do not merge** any pull requests that have new feature implementations, translations to new languages and those which introduce any new user interface elements.
If you have a translations-related contribution, check out [Translations platform][translate].
Telegram Desktop is not a standalone application but a part of [Telegram project][telegram], so all the decisions about the features, languages, user experience, user interface and the design are made inside Telegram team, often according to some roadmap which is not public.
## Sign your work
For contributions to be accepted they should be granted into the public domain. This will solve the issue if Telegram team needs to use full Telegram Desktop source code with some different license.
The sign-off is a simple line at the end of the explanation for the patch. Your signature certifies that you wrote the patch and you have the right to put it in the public domain. The rules are pretty simple: if you can certify the below:
```
Telegram Desktop Developer Certificate of Origin
By making a contribution to this project, I certify that:
(a) The contribution was created in whole by me or is based upon
previous work that, to the best of my knowledge, is in the
public domain and I have the right to put it in the public domain.
(d) I understand and agree that this project and the contribution are
public and that a record of the contribution (including all
metadata and personal information I submit with it, including my
sign-off) is maintained indefinitely and may be redistributed.
(e) I am granting this work into the public domain.
```
Then you just add a line to every **git commit message** that states:
Signed-off-by: Random J Developer <random@developer.example.org> (github: rndjdev_github)
Replacing Random Developers details with your name, email address and GitHub username.
### Change commit message of a pushed commit
If you already pushed a commit and forgot to add the signature to the commit message, follow these steps to change the message of the commit:
1. Open `Git Bash` (or `Git Shell`)
2. Enter following command to change the commit message of the most recent commit: `git commit --amend`
3. Press <kbd>i</kbd> to get into Insert-mode
4. Change the commit message (and add the [signature](#sign-your-work) at the and)
5. After editing the message, press <kbd>ESC</kbd> to get out of the Insert-mode
6. Write `:wq` and press <kbd>Enter</kbd> to save the new message or write `:q!` to discard your changes
7. Enter `git push --force` to push the commit with the new commit message to the remote repository
For more info, see [GitHub Help][help_change_commit_message].
## Build instructions
See the [README.md][build_instructions] for details on the various build
@@ -78,7 +35,7 @@ environments.
## Pull upstream changes into your fork regularly
Telegram Desktop is advancing quickly. It is therefore critical that you pull upstream changes into your fork on a regular basis. Nothing is worse than putting in a days of hard work into a pull request only to have it rejected because it has diverged too far from upstram.
Telegram Desktop is advancing quickly. It is therefore critical that you pull upstream changes into your fork on a regular basis. Nothing is worse than putting in a days of hard work into a pull request only to have it rejected because it has diverged too far from upstream.
To pull in upstream changes:
@@ -118,7 +75,7 @@ If you already have multiple commits, you can add the commits together (squash t
1. Open `Git Bash` (or `Git Shell`)
2. Enter following command to squash the recent {N} commits: `git reset --soft HEAD~{N} && git commit` (replace `{N}` with the number of commits you want to squash)
3. Press <kbd>i</kbd> to get into Insert-mode
4. Enter the commit message of the new commit (and add the [signature](#sign-your-work) at the end)
4. Enter the commit message of the new commit
5. After adding the message, press <kbd>ESC</kbd> to get out of the Insert-mode
6. Write `:wq` and press <kbd>Enter</kbd> to save the new message or write `:q!` to discard your changes
7. Enter `git push --force` to push the new commit to the remote repository
@@ -150,8 +107,6 @@ Before you submit a pull request, please test your changes. Verify that Telegram
For example: `Fix #545`
* Don't forget to [sign your patch](#sign-your-work) to put it in the public domain!
[//]: # (LINKS)
[telegram]: https://telegram.org/
[help_fork_repo]: https://help.github.com/articles/fork-a-repo/
@@ -160,3 +115,4 @@ Before you submit a pull request, please test your changes. Verify that Telegram
[pr]: https://github.com/telegramdesktop/tdesktop/compare
[build_instructions]: https://github.com/telegramdesktop/tdesktop/blob/master/README.md#build-instructions
[closing-issues-via-commit-messages]: https://help.github.com/articles/closing-issues-via-commit-messages/
[translate]: https://translations.telegram.org

View File

@@ -21,9 +21,6 @@ Tell us what happens instead
**Used theme**:
<details><summary>**Logs**:</summary>
Insert logs here (if necessary)
<!-- You can type `debugmode` in settings and then see ~/.TelegramDesktop/DebugLogs/log_...txt for log files.
Type `debugmode` in settings again to disable logs. -->
<details><summary><b>Logs</b>:</summary>
Insert log.txt here (if necessary)
</details>

16
.gitignore vendored
View File

@@ -2,6 +2,7 @@
/Debug/
/Release/
/Deploy/
/ThirdParty/
/Telegram/build/target
/Telegram/GeneratedFiles/
/Telegram/SourceFiles/art/grid.png
@@ -16,6 +17,11 @@
/Telegram/Resources/art/grid_200x.png
/Telegram/Resources/art/sprite_125x.png
/Telegram/Resources/art/sprite_150x.png
/Telegram/Debug/
/Telegram/Release/
/Telegram/tests/
/Telegram/gyp/tests/*.test
/Telegram/out/
/Telegram/*.user
*.vcxproj*
*.sln
@@ -28,6 +34,7 @@
*.xcodeproj
/Win32/
ipch/
.vs/
/Telegram/log.txt
/Telegram/data
@@ -43,6 +50,15 @@ ipch/
project.xcworkspace
xcuserdata
parts
prime
stage
*.snap
.snapcraft
/snap/gui/*.png
/snap/gui/*.desktop
/snap/plugins/__pycache__
/Telegram/*.user.*
*.pro.user
/Linux/

18
.gitmodules vendored Normal file
View File

@@ -0,0 +1,18 @@
[submodule "Telegram/ThirdParty/libtgvoip"]
path = Telegram/ThirdParty/libtgvoip
url = https://github.com/telegramdesktop/libtgvoip
[submodule "Telegram/ThirdParty/variant"]
path = Telegram/ThirdParty/variant
url = https://github.com/mapbox/variant
[submodule "Telegram/ThirdParty/GSL"]
path = Telegram/ThirdParty/GSL
url = https://github.com/Microsoft/GSL.git
[submodule "Telegram/ThirdParty/Catch"]
path = Telegram/ThirdParty/Catch
url = https://github.com/philsquared/Catch
[submodule "Telegram/ThirdParty/crl"]
path = Telegram/ThirdParty/crl
url = https://github.com/telegramdesktop/crl.git
[submodule "Telegram/ThirdParty/xxHash"]
path = Telegram/ThirdParty/xxHash
url = https://github.com/Cyan4973/xxHash.git

View File

@@ -8,17 +8,13 @@ cache:
- $HOME/travisCacheDir
env:
global:
# GitHub auth token (GH_AUTH_TOKEN)
- secure: "QBbD9VXAx3Mn0vFmHZtm6/sq+twMyR7ilQh7TQm8gBy2TrjhHKDKQ4wRQ5sa2MUFUbzrUOvPlPGq1WuY1mAUt8UE6jZDJNyyDWb6iIlcEmNRsd39XAhYHvJ+uI9JsD+U3OctZ+7Bo4fno0RLv1D5lzh5bpohmjgWxx9TiSZItbsRU+m0XM0Tahx335aXF8NFoVjheGXCOcLAXDt6OmaKPmlrXreuta5nOoRKeOg5vHlt/KNU1pYb8MFvWJc14DKxq3jNqrYlo9vHFv5tVhR1aqvVFWTD/4Z88OSxx3POzyVWdMso0lFov9uxs8qHoqLsGhDMElggyz/jnqZIHpwQMaYIGQ0LLYDv21jGgOuCOWKYlfjDY+tuESXmVPzerTlYBWLZDPrpE8BnXVYo8B/sF4WN6oCuBRjawlqYhqTH+tDDORc9Uc9pamhcuh6OsLMx3PHoyg8joN3t8yUnwhySXyfQ36hqlZ+Y4bBDRZBH/SB/EPmedyLGwdhzQFsUnOBotYeOym7LUdnGraGcj1iTPLdo5TMlBYlAiB12J5mHTNuzUKXh+PBV4REg4Mm2xYX+Pue5Qo1JcOWJteIX4BdPv526DXB3yaNWS1pZgGvYqtBwQlCeOfwOYupS0PksvmV7aX7c4qJSyW3dmEd03cxmebD0b2SbqyPxGFuUajJ7B60="
matrix:
- BUILD_VERSION=""
- BUILD_VERSION="disable_autoupdate"
- BUILD_VERSION="disable_register_custom_scheme"
- BUILD_VERSION="disable_crash_reports"
- BUILD_VERSION="disable_network_proxy"
- BUILD_VERSION="disable_desktop_file_generation"
- BUILD_VERSION="disable_unity_integration"
- BUILD_VERSION="disable_gtk_integration"
matrix:
fast_finish: true
@@ -35,8 +31,8 @@ addons:
- dpatch
- equivs
- fakeroot
- g++-6
- gcc-6
- g++-7
- gcc-7
- git
- gnome-common
- gobject-introspection
@@ -48,7 +44,7 @@ addons:
- libopus-dev
- libpulse-dev
- libssl-dev
- libunity-dev
- libdee-dev
- libva-dev
- libvdpau-dev
- libxcb-xkb-dev
@@ -60,10 +56,8 @@ addons:
- yasm
before_install:
- "export TRAVIS_COMMIT_MSG=\"$(git log --format=%B --no-merges -n 1)\""
- .travis/check.sh
- export CXX="g++-6" CC="gcc-6"
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6
- export CXX="g++-7" CC="gcc-7"
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 60 --slave /usr/bin/g++ g++ /usr/bin/g++-7
- sudo update-alternatives --config gcc
- g++ --version

View File

@@ -9,33 +9,38 @@ UPSTREAM="$REPO/upstream"
EXTERNAL="$REPO/external"
CACHE="$HOME/travisCacheDir"
QT_WAS_BUILT="0"
QT_VERSION=5.6.2
XKB_PATH="$BUILD/libxkbcommon"
XKB_CACHE_VERSION="2"
XKB_CACHE_VERSION="3"
QT_PATH="$BUILD/qt"
QT_CACHE_VERSION="2"
QT_CACHE_VERSION="4"
QT_PATCH="$UPSTREAM/Telegram/Patches/qtbase_${QT_VERSION//\./_}.diff"
BREAKPAD_PATH="$BUILD/breakpad"
BREAKPAD_CACHE_VERSION="2"
BREAKPAD_CACHE_VERSION="3"
GYP_PATH="$BUILD/gyp"
GYP_CACHE_VERSION="2"
GYP_CACHE_VERSION="3"
GYP_PATCH="$UPSTREAM/Telegram/Patches/gyp.diff"
RANGE_PATH="$BUILD/range-v3"
RANGE_CACHE_VERSION="3"
VA_PATH="$BUILD/libva"
VA_CACHE_VERSION="2"
VA_CACHE_VERSION="3"
VDPAU_PATH="$BUILD/libvdpau"
VDPAU_CACHE_VERSION="1"
VDPAU_CACHE_VERSION="3"
FFMPEG_PATH="$BUILD/ffmpeg"
FFMPEG_CACHE_VERSION="2"
FFMPEG_CACHE_VERSION="3"
OPENAL_PATH="$BUILD/openal-soft"
OPENAL_CACHE_VERSION="2"
OPENAL_CACHE_VERSION="4"
GYP_DEFINES=""
@@ -57,6 +62,8 @@ run() {
build() {
mkdir -p "$EXTERNAL"
BUILD_VERSION_DATA=$(echo $BUILD_VERSION | cut -d'-' -f 1)
# libxkbcommon
getXkbCommon
@@ -81,14 +88,18 @@ build() {
# Patched GYP (supports cmake precompiled headers)
getGYP
# Range v3
getRange
# Guideline Support Library
getGSL
# Configure the build
if [[ $BUILD_VERSION == *"disable_autoupdate"* ]]; then
GYP_DEFINES+=",TDESKTOP_DISABLE_AUTOUPDATE"
if [ "$QT_WAS_BUILT" == "1" ]; then
error_msg "Qt was built, please restart the job :("
exit 1
fi
# Configure the build
if [[ $BUILD_VERSION == *"disable_register_custom_scheme"* ]]; then
GYP_DEFINES+=",TDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME"
fi
@@ -105,8 +116,8 @@ build() {
GYP_DEFINES+=",TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION"
fi
if [[ $BUILD_VERSION == *"disable_unity_integration"* ]]; then
GYP_DEFINES+=",TDESKTOP_DISABLE_UNITY_INTEGRATION"
if [[ $BUILD_VERSION == *"disable_gtk_integration"* ]]; then
GYP_DEFINES+=",TDESKTOP_DISABLE_GTK_INTEGRATION"
fi
info_msg "Build defines: ${GYP_DEFINES}"
@@ -165,6 +176,52 @@ buildXkbCommon() {
sudo ldconfig
}
getRange() {
travisStartFold "Getting range-v3"
local RANGE_CACHE="$CACHE/range-v3"
local RANGE_CACHE_FILE="$RANGE_CACHE/.cache.txt"
local RANGE_CACHE_KEY="${RANGE_CACHE_VERSION}"
local RANGE_CACHE_OUTDATED="1"
if [ ! -d "$RANGE_CACHE" ]; then
mkdir -p "$RANGE_CACHE"
fi
ln -sf "$RANGE_CACHE" "$RANGE_PATH"
if [ -f "$RANGE_CACHE_FILE" ]; then
local RANGE_CACHE_KEY_FOUND=`tail -n 1 $RANGE_CACHE_FILE`
if [ "$RANGE_CACHE_KEY" == "$RANGE_CACHE_KEY_FOUND" ]; then
RANGE_CACHE_OUTDATED="0"
else
info_msg "Cache key '$RANGE_CACHE_KEY_FOUND' does not match '$RANGE_CACHE_KEY', getting range-v3"
fi
fi
if [ "$RANGE_CACHE_OUTDATED" == "1" ]; then
buildRange
sudo echo $RANGE_CACHE_KEY > "$RANGE_CACHE_FILE"
else
info_msg "Using cached range-v3"
fi
}
buildRange() {
info_msg "Downloading range-v3"
if [ -d "$EXTERNAL/range-v3" ]; then
rm -rf "$EXTERNAL/range-v3"
fi
cd $RANGE_PATH
rm -rf *
cd "$EXTERNAL"
git clone --depth=1 https://github.com/ericniebler/range-v3
cd "$EXTERNAL/range-v3"
cp -r * "$RANGE_PATH/"
}
getVa() {
travisStartFold "Getting libva"
@@ -205,7 +262,7 @@ buildVa() {
rm -rf *
cd "$EXTERNAL"
git clone git://anongit.freedesktop.org/git/libva
git clone https://github.com/01org/libva
cd "$EXTERNAL/libva"
./autogen.sh --prefix=$VA_PATH --enable-static
@@ -257,6 +314,7 @@ buildVdpau() {
git clone git://anongit.freedesktop.org/vdpau/libvdpau
cd "$EXTERNAL/libvdpau"
git checkout libvdpau-1.2
./autogen.sh --prefix=$VDPAU_PATH --enable-static
make $MAKE_ARGS
sudo make install
@@ -306,6 +364,8 @@ buildFFmpeg() {
git clone https://git.ffmpeg.org/ffmpeg.git
cd "$EXTERNAL/ffmpeg"
git checkout release/3.4
./configure \
--prefix=$FFMPEG_PATH \
--disable-debug \
@@ -409,16 +469,21 @@ buildOpenAL() {
rm -rf "$EXTERNAL/openal-soft"
fi
cd $OPENAL_PATH
rm -rf *
sudo rm -rf *
cd "$EXTERNAL"
git clone https://github.com/kcat/openal-soft.git
cd openal-soft
git checkout openal-soft-1.19.1
cd "$EXTERNAL/openal-soft/build"
cmake \
-D CMAKE_INSTALL_PREFIX=$OPENAL_PATH \
-D CMAKE_BUILD_TYPE=Release \
-D LIBTYPE=STATIC \
-D ALSOFT_EXAMPLES=OFF \
-D ALSOFT_TESTS=OFF \
-D ALSOFT_UTILS=OFF \
..
make $MAKE_ARGS
sudo make install
@@ -511,20 +576,20 @@ getCustomQt() {
}
buildCustomQt() {
QT_WAS_BUILT="1"
info_msg "Downloading and building patched qt"
if [ -d "$EXTERNAL/qt${QT_VERSION}" ]; then
rm -rf "$EXTERNAL/qt${QT_VERSION}"
sudo rm -rf "$EXTERNAL/qt${QT_VERSION}"
fi
cd $QT_PATH
rm -rf *
sudo rm -rf *
cd "$EXTERNAL"
git clone git://code.qt.io/qt/qt5.git qt${QT_VERSION}
cd "$EXTERNAL/qt${QT_VERSION}"
git checkout "$(echo ${QT_VERSION} | sed -e s/\..$//)"
perl init-repository --module-subset=qtbase,qtimageformats
perl init-repository --branch --module-subset=qtbase,qtimageformats
git checkout v${QT_VERSION}
cd qtbase && git checkout v${QT_VERSION} && cd ..
cd qtimageformats && git checkout v${QT_VERSION} && cd ..
@@ -533,18 +598,25 @@ buildCustomQt() {
git apply "$QT_PATCH"
cd ..
cd "$EXTERNAL/qt${QT_VERSION}/qtbase/src/plugins/platforminputcontexts"
git clone https://github.com/telegramdesktop/fcitx.git
git clone https://github.com/telegramdesktop/hime.git
git clone https://github.com/telegramdesktop/nimf.git
cd ../../../..
./configure -prefix $QT_PATH -release -opensource -confirm-license -qt-zlib \
-qt-libpng -qt-libjpeg -qt-freetype -qt-harfbuzz -qt-pcre -qt-xcb \
-qt-xkbcommon-x11 -no-opengl -no-gtkstyle -static \
-nomake examples -nomake tests \
-nomake examples -nomake tests -no-mirclient \
-dbus-runtime -no-gstreamer -no-mtdev # <- Not sure about these
make $MAKE_ARGS
sudo make install
}
getGSL() {
cd "$EXTERNAL"
git clone https://github.com/Microsoft/GSL.git
cd "$UPSTREAM"
git submodule init
git submodule update
}
getGYP() {
@@ -591,7 +663,7 @@ buildGYP() {
git clone https://chromium.googlesource.com/external/gyp
cd "$EXTERNAL/gyp"
git checkout 702ac58e4772
git checkout 702ac58e47
git apply "$GYP_PATCH"
cp -r * "$GYP_PATH/"
}
@@ -601,20 +673,23 @@ buildTelegram() {
cd "$UPSTREAM/Telegram/gyp"
"$GYP_PATH/gyp" \
-Dapi_id=17349 \
-Dapi_hash=344583e45741c457fe1862106095a5eb \
-Dbuild_defines=${GYP_DEFINES:1} \
-Dlinux_path_gsl=$EXTERNAL/GSL \
-Dlinux_path_xkbcommon=$XKB_PATH \
-Dlinux_path_va=$VA_PATH \
-Dlinux_path_vdpau=$VDPAU_PATH \
-Dlinux_path_ffmpeg=$FFMPEG_PATH \
-Dlinux_path_openal=$OPENAL_PATH \
-Dlinux_path_range=$RANGE_PATH \
-Dlinux_path_qt=$QT_PATH \
-Dlinux_path_breakpad=$BREAKPAD_PATH \
-Dlinux_path_libexif_lib=/usr/local/lib \
-Dlinux_path_opus_include=/usr/include/opus \
-Dlinux_lib_ssl=-lssl \
-Dlinux_lib_crypto=-lcrypto \
-Dlinux_lib_icu=-licuuc\ -licutu\ -licui18n \
--depth=. --generator-output=../.. --format=cmake -Goutput_dir=out \
--depth=. --generator-output=.. --format=cmake -Goutput_dir=../out \
Telegram.gyp
cd "$UPSTREAM/out/Debug"
@@ -626,7 +701,7 @@ buildTelegram() {
check() {
local filePath="$UPSTREAM/out/Debug/Telegram"
if test -f "$filePath"; then
success_msg "Build successful done! :)"
success_msg "Build successfully done! :)"
local size;
size=$(stat -c %s "$filePath")

View File

@@ -1,57 +0,0 @@
#!/bin/bash
# Checks commit message, ...
run() {
checkCommitMessage
}
checkCommitMessage() {
info_msg "Commit message: ${TRAVIS_COMMIT_MSG}";
info_msg "Is pull request: ${TRAVIS_PULL_REQUEST}";
if [[ $TRAVIS_PULL_REQUEST != "false" ]];then
if [[ $TRAVIS_COMMIT_MSG != *"Signed-off-by: "* ]];then
error_msg "The commit message does not contain the signature!"
error_msg "More information: https://github.com/telegramdesktop/tdesktop/blob/master/.github/CONTRIBUTING.md#sign-your-work"
addMissingSignatureInfos
exit 1
else
success_msg "Commit message contains signature"
fi
fi
}
addMissingSignatureInfos() {
if [[ $BUILD_VERSION == "" ]]; then
local TEXT="Hi,\n\
thanks for the pull request!\n\
\n\
Please read our [contributing policy](https://github.com/telegramdesktop/tdesktop/blob/master/.github/CONTRIBUTING.md). You'll need to make a pull request with the \\\"Signed-off-by:\\\" signature being the last line of your commit message, like it is described in [sign your work](https://github.com/telegramdesktop/tdesktop/blob/master/.github/CONTRIBUTING.md#sign-your-work) section. That will grant your work into the public domain.\n\
\n\
(See [travis build](https://travis-ci.org/telegramdesktop/tdesktop/jobs/${TRAVIS_JOB_ID}))"
addCommentToGitHub "${TEXT}"
addLabelToGitHub "missing signature"
info_msg "Added missing signature info on github"
fi
}
addCommentToGitHub() {
local BODY=$1
sendGitHubRequest "POST" "{\"body\": \"${BODY}\"}" "repos/${TRAVIS_REPO_SLUG}/issues/${TRAVIS_PULL_REQUEST}/comments"
}
addLabelToGitHub() {
local LABEL=$1
sendGitHubRequest "PATCH" "{\"labels\": [\"${LABEL}\"]}" "repos/${TRAVIS_REPO_SLUG}/issues/${TRAVIS_PULL_REQUEST}"
}
sendGitHubRequest() {
local METHOD=$1
local BODY=$2
local URI=$3
curl -H "Authorization: token ${GH_AUTH_TOKEN}" --request "${METHOD}" --data "${BODY}" --silent "https://api.github.com/${URI}" > /dev/null
}
source ./.travis/common.sh
run

View File

@@ -12,8 +12,6 @@ Pur='\e[0;35m'; BPur='\e[1;35m'; UPur='\e[4;35m'; IPur='\e[0;95m';
Cya='\e[0;36m'; BCya='\e[1;36m'; UCya='\e[4;36m'; ICya='\e[0;96m'; BICya='\e[1;96m'; On_Cya='\e[46m'; On_ICya='\e[0;106m';
Whi='\e[0;37m'; BWhi='\e[1;37m'; UWhi='\e[4;37m'; IWhi='\e[0;97m'; BIWhi='\e[1;97m'; On_Whi='\e[47m'; On_IWhi='\e[0;107m';
start_msg() {
echo -e "\n${Gre}$*${RCol}"
}

View File

@@ -1,6 +1,7 @@
/*
This file is part of Telegram Desktop,
the official desktop version of Telegram messaging app, see https://telegram.org
the official desktop application for the Telegram messaging service.
Copyright (c) 2014-2019 John Preston, https://desktop.telegram.org
Telegram Desktop is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -15,9 +16,6 @@ GNU General Public License for more details.
In addition, as a special exception, the copyright holders give permission
to link the code of portions of this program with the OpenSSL library.
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
Copyright (c) 2014-2017 John Preston, https://desktop.telegram.org
*/
#include <QtCore/QTimer>
More information about the Telegram project: https://telegram.org
#include "genlang.h"
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE

View File

@@ -4,6 +4,7 @@ version 3 with the addition of the following special exception:
In addition, as a special exception, the copyright holders give
permission to link the code of portions of this program with the OpenSSL
library.
You must obey the GNU General Public License in all respects for all of
the code used other than OpenSSL. If you modify file(s) with this
exception, you may extend this exception to your version of the file(s),

View File

@@ -6,6 +6,8 @@ This is the complete source code and the build instructions for the alpha versio
[![Build Status](https://travis-ci.org/telegramdesktop/tdesktop.svg?branch=dev)](https://travis-ci.org/telegramdesktop/tdesktop)
[![Build status](https://ci.appveyor.com/api/projects/status/uiw2y768iy4i5bu8/branch/dev?svg=true)](https://ci.appveyor.com/project/telegramdesktop/tdesktop)
[![Preview of Telegram Desktop][preview_image]][preview_image_url]
The source code is published under GPLv3 with OpenSSL exception, the license is available [here][license].
## Supported systems
@@ -13,8 +15,9 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
* Windows XP - Windows 10 (**not** RT)
* Mac OS X 10.8 - Mac OS X 10.11
* Mac OS X 10.6 - Mac OS X 10.7 (separate build)
* Ubuntu 12.04 - Ubuntu 16.04
* Fedora 22 - Fedora 24
* Ubuntu 12.04 - Ubuntu 18.10
* Fedora 22 - Fedora 29
* [Snappy](https://snapcraft.io/telegram-desktop)
## Third-party
@@ -26,18 +29,23 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
* liblzma ([public domain](http://tukaani.org/xz/))
* Google Breakpad ([License](https://chromium.googlesource.com/breakpad/breakpad/+/master/LICENSE))
* Google Crashpad ([Apache License 2.0](https://chromium.googlesource.com/crashpad/crashpad/+/master/LICENSE))
* GYP ([BSD license](https://github.com/bnoordhuis/gyp/blob/master/LICENSE))
* GYP ([BSD License](https://github.com/bnoordhuis/gyp/blob/master/LICENSE))
* Ninja ([Apache License 2.0](https://github.com/ninja-build/ninja/blob/master/COPYING))
* OpenAL Soft ([LGPL](http://kcat.strangesoft.net/openal.html))
* Opus codec ([BSD license](http://www.opus-codec.org/license/))
* OpenAL Soft ([LGPL](https://github.com/kcat/openal-soft/blob/master/COPYING))
* Opus codec ([BSD License](http://www.opus-codec.org/license/))
* FFmpeg ([LGPL](https://www.ffmpeg.org/legal.html))
* Guideline Support Library ([MIT License](https://github.com/Microsoft/GSL/blob/master/LICENSE))
* 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))
* 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))
## Build instructions
* [Visual Studio 2015][msvc]
* [Xcode 8][xcode]
* [Visual Studio 2019][msvc]
* [Xcode 10][xcode]
* [GYP/CMake on GNU/Linux][cmake]
[//]: # (LINKS)
@@ -46,7 +54,9 @@ The source code is published under GPLv3 with OpenSSL exception, the license is
[telegram_api]: https://core.telegram.org
[telegram_proto]: https://core.telegram.org/mtproto
[license]: LICENSE
[msvc]: doc/building-msvc.md
[xcode]: doc/building-xcode.md
[xcode_old]: doc/building-xcode-old.md
[cmake]: doc/building-cmake.md
[msvc]: docs/building-msvc.md
[xcode]: docs/building-xcode.md
[xcode_old]: docs/building-xcode-old.md
[cmake]: docs/building-cmake.md
[preview_image]: https://github.com/telegramdesktop/tdesktop/blob/dev/docs/assets/preview.png "Preview of Telegram Desktop"
[preview_image_url]: https://raw.githubusercontent.com/telegramdesktop/tdesktop/dev/docs/assets/preview.png

View File

@@ -1,5 +1,17 @@
diff --git a/src/build/common.gypi b/src/build/common.gypi
index 29990c65..53e99d44 100644
--- a/src/build/common.gypi
+++ b/src/build/common.gypi
@@ -330,6 +330,7 @@
'VCCLCompilerTool': {
'WarnAsError': 'true',
'Detect64BitPortabilityProblems': 'false',
+ 'TreatWChar_tAsBuiltInType': 'false',
},
},
}],
diff --git a/src/client/mac/Breakpad.xcodeproj/project.pbxproj b/src/client/mac/Breakpad.xcodeproj/project.pbxproj
index 584ec5d..1c7214f 100644
index 1a93ce6d..b5986e33 100644
--- a/src/client/mac/Breakpad.xcodeproj/project.pbxproj
+++ b/src/client/mac/Breakpad.xcodeproj/project.pbxproj
@@ -35,6 +35,19 @@
@@ -22,7 +34,15 @@ index 584ec5d..1c7214f 100644
162F64F2161C577500CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F0161C577500CD68D5 /* arch_utilities.cc */; };
162F64F3161C577500CD68D5 /* arch_utilities.h in Headers */ = {isa = PBXBuildFile; fileRef = 162F64F1161C577500CD68D5 /* arch_utilities.h */; };
162F64F4161C579B00CD68D5 /* arch_utilities.cc in Sources */ = {isa = PBXBuildFile; fileRef = 162F64F0161C577500CD68D5 /* arch_utilities.cc */; };
@@ -170,11 +183,8 @@
@@ -67,6 +80,7 @@
4DBE49A7134A4F280072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
4DBE49A8134A4F380072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
4DBE49A9134A4F460072546A /* CoreServices.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DBE4769134A4F080072546A /* CoreServices.framework */; };
+ 5A8B220921E0C5740045F83C /* breakpad_nlist_64.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53690ECCE3FD009BE4BA /* breakpad_nlist_64.cc */; };
8B3101C611F0CD9F00FCF3E4 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
8B3101C711F0CD9F00FCF3E4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
8B3101CA11F0CDB000FCF3E4 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
@@ -170,11 +184,8 @@
F92C564A0ECD10CA009BE4BA /* string_conversion.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C53850ECCE6AD009BE4BA /* string_conversion.cc */; };
F92C564C0ECD10DD009BE4BA /* breakpadUtilities.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C563C0ECD10B3009BE4BA /* breakpadUtilities.dylib */; };
F92C56570ECD113E009BE4BA /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F92C554A0ECCF530009BE4BA /* Carbon.framework */; };
@@ -34,7 +54,7 @@ index 584ec5d..1c7214f 100644
F92C56A90ECE04C5009BE4BA /* crash_report_sender.m in Sources */ = {isa = PBXBuildFile; fileRef = F92C56A80ECE04C5009BE4BA /* crash_report_sender.m */; };
F93803CD0F8083B7004D428B /* dynamic_images.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536B0ECCE3FD009BE4BA /* dynamic_images.cc */; };
F93803CE0F8083B7004D428B /* exception_handler.cc in Sources */ = {isa = PBXBuildFile; fileRef = F92C536D0ECCE3FD009BE4BA /* exception_handler.cc */; };
@@ -213,7 +223,6 @@
@@ -213,7 +224,6 @@
F9C44DBD0EF072A0003AEBAA /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = F9C44DBA0EF072A0003AEBAA /* MainMenu.xib */; };
F9C44E000EF077CD003AEBAA /* Breakpad.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
F9C44E3C0EF08B12003AEBAA /* Breakpad.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 8DC2EF5B0486A6940098B216 /* Breakpad.framework */; };
@@ -42,7 +62,7 @@ index 584ec5d..1c7214f 100644
F9C44EA20EF09F93003AEBAA /* HTTPMultipartUpload.m in Sources */ = {isa = PBXBuildFile; fileRef = F92C53770ECCE635009BE4BA /* HTTPMultipartUpload.m */; };
F9C44EE50EF0A006003AEBAA /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C44EE40EF0A006003AEBAA /* SystemConfiguration.framework */; };
F9C44EE90EF0A3C1003AEBAA /* GTMLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = F9C44EE80EF0A3C1003AEBAA /* GTMLogger.m */; };
@@ -410,20 +419,6 @@
@@ -410,20 +420,6 @@
remoteGlobalIDString = F92C563B0ECD10B3009BE4BA;
remoteInfo = breakpadUtilities;
};
@@ -63,7 +83,7 @@ index 584ec5d..1c7214f 100644
F93DE2FB0F82C3C600608B94 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 0867D690FE84028FC02AAC07 /* Project object */;
@@ -536,13 +531,6 @@
@@ -536,13 +532,6 @@
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
remoteInfo = Breakpad;
};
@@ -77,7 +97,7 @@ index 584ec5d..1c7214f 100644
/* End PBXContainerItemProxy section */
/* Begin PBXCopyFilesBuildPhase section */
@@ -715,7 +703,6 @@
@@ -714,7 +703,6 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -85,7 +105,7 @@ index 584ec5d..1c7214f 100644
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
@@ -1183,18 +1170,13 @@
@@ -1181,18 +1169,13 @@
isa = PBXNativeTarget;
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "Breakpad" */;
buildPhases = (
@@ -104,7 +124,7 @@ index 584ec5d..1c7214f 100644
);
name = Breakpad;
productInstallPath = "$(HOME)/Library/Frameworks";
@@ -1401,6 +1383,8 @@
@@ -1399,6 +1382,8 @@
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
@@ -113,7 +133,7 @@ index 584ec5d..1c7214f 100644
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Breakpad" */;
compatibilityVersion = "Xcode 3.1";
developmentRegion = English;
@@ -1585,16 +1569,6 @@
@@ -1583,16 +1568,6 @@
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
@@ -130,7 +150,7 @@ index 584ec5d..1c7214f 100644
F92C569C0ECE04A7009BE4BA /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@@ -1642,20 +1616,6 @@
@@ -1640,20 +1615,6 @@
shellPath = /bin/sh;
shellScript = "install_name_tool -id \"@executable_path/../Resources/breakpadUtilities.dylib\" \"${BUILT_PRODUCTS_DIR}/breakpadUtilities.dylib\"\n";
};
@@ -151,10 +171,11 @@ index 584ec5d..1c7214f 100644
F9C77DD80F7DD5CF0045F7DB /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
@@ -1676,6 +1636,19 @@
@@ -1674,6 +1635,20 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ 5A8B220921E0C5740045F83C /* breakpad_nlist_64.cc in Sources */,
+ 0748C0501C63C52D004489BF /* bootstrap_compat.cc in Sources */,
+ 0748C04F1C63C523004489BF /* macho_walker.cc in Sources */,
+ 0748C04E1C63C51C004489BF /* md5.cc in Sources */,
@@ -171,7 +192,7 @@ index 584ec5d..1c7214f 100644
F92C565F0ECD116B009BE4BA /* protected_memory_allocator.cc in Sources */,
F92C56630ECD1179009BE4BA /* exception_handler.cc in Sources */,
F92C55D10ECD0064009BE4BA /* Breakpad.mm in Sources */,
@@ -1957,16 +1930,6 @@
@@ -1955,16 +1930,6 @@
target = F92C563B0ECD10B3009BE4BA /* breakpadUtilities */;
targetProxy = F92C564D0ECD10E5009BE4BA /* PBXContainerItemProxy */;
};
@@ -188,7 +209,7 @@ index 584ec5d..1c7214f 100644
F93DE2FC0F82C3C600608B94 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = F93803BD0F80820F004D428B /* generator_test */;
@@ -2027,11 +1990,6 @@
@@ -2025,11 +1990,6 @@
target = 8DC2EF4F0486A6940098B216 /* Breakpad */;
targetProxy = F9C44E190EF0790F003AEBAA /* PBXContainerItemProxy */;
};
@@ -200,7 +221,7 @@ index 584ec5d..1c7214f 100644
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
@@ -2128,8 +2086,12 @@
@@ -2126,8 +2086,12 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */;
buildSettings = {
@@ -214,7 +235,7 @@ index 584ec5d..1c7214f 100644
};
name = Debug;
};
@@ -2137,7 +2099,12 @@
@@ -2135,7 +2099,12 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 8B31027811F0D3AF00FCF3E4 /* BreakpadRelease.xcconfig */;
buildSettings = {
@@ -227,7 +248,7 @@ index 584ec5d..1c7214f 100644
};
name = Release;
};
@@ -2456,7 +2423,12 @@
@@ -2454,7 +2423,12 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 8B31027711F0D3AF00FCF3E4 /* BreakpadDebug.xcconfig */;
buildSettings = {
@@ -241,7 +262,7 @@ index 584ec5d..1c7214f 100644
name = "Debug With Code Coverage";
};
diff --git a/src/client/mac/Framework/Breakpad.mm b/src/client/mac/Framework/Breakpad.mm
index 1d2e519..943310f 100644
index 1d2e519b..943310fa 100644
--- a/src/client/mac/Framework/Breakpad.mm
+++ b/src/client/mac/Framework/Breakpad.mm
@@ -355,10 +355,10 @@ bool Breakpad::Initialize(NSDictionary *parameters) {
@@ -467,3 +488,164 @@ index 1d2e519..943310f 100644
return true;
}
diff --git a/src/common/language.cc b/src/common/language.cc
index 978fb855..a95ae5f7 100644
--- a/src/common/language.cc
+++ b/src/common/language.cc
@@ -46,8 +46,27 @@
#include <limits>
+#include <cstdio>
+#include <iostream>
+#include <memory>
+#include <stdexcept>
+#include <string>
+#include <array>
+
namespace {
+std::string exec(std::string cmd) {
+ std::array<char, 128> buffer;
+ std::string result;
+ std::shared_ptr<FILE> pipe(popen(cmd.c_str(), "r"), pclose);
+ if (!pipe) throw std::runtime_error("popen() failed!");
+ while (!feof(pipe.get())) {
+ if (fgets(buffer.data(), 128, pipe.get()) != nullptr)
+ result += buffer.data();
+ }
+ return result;
+}
+
string MakeQualifiedNameWithSeparator(const string& parent_name,
const char* separator,
const string& name) {
@@ -79,11 +98,29 @@ class CPPLanguage: public Language {
demangled->clear();
return kDontDemangle;
#else
+ DemangleResult result;
+ if (mangled.find("type_erased_handlers") != std::string::npos
+ && mangled.find("vtable_once_impl") != std::string::npos) {
+
+ auto demangled_str = exec("c++filt " + mangled);
+ if (!demangled_str.empty() && demangled_str.back() == '\n') {
+ demangled_str.pop_back();
+ }
+ if (demangled_str != mangled) {
+ result = kDemangleSuccess;
+ demangled->assign(demangled_str.c_str());
+ } else {
+ result = kDemangleFailure;
+ demangled->clear();
+ }
+
+ } else {
+
int status;
char* demangled_c =
abi::__cxa_demangle(mangled.c_str(), NULL, NULL, &status);
- DemangleResult result;
+// DemangleResult result;
if (status == 0) {
result = kDemangleSuccess;
demangled->assign(demangled_c);
@@ -96,6 +133,8 @@ class CPPLanguage: public Language {
free(reinterpret_cast<void*>(demangled_c));
}
+ }
+
return result;
#endif
}
diff --git a/src/common/linux/elf_symbols_to_module.cc b/src/common/linux/elf_symbols_to_module.cc
index 562875e1..43678510 100644
--- a/src/common/linux/elf_symbols_to_module.cc
+++ b/src/common/linux/elf_symbols_to_module.cc
@@ -39,6 +39,29 @@
#include "common/byte_cursor.h"
#include "common/module.h"
+#include <cstdio>
+#include <iostream>
+#include <memory>
+#include <stdexcept>
+#include <string>
+#include <array>
+
+namespace {
+
+std::string exec(std::string cmd) {
+ std::array<char, 128> buffer;
+ std::string result;
+ std::shared_ptr<FILE> pipe(popen(cmd.c_str(), "r"), pclose);
+ if (!pipe) throw std::runtime_error("popen() failed!");
+ while (!feof(pipe.get())) {
+ if (fgets(buffer.data(), 128, pipe.get()) != nullptr)
+ result += buffer.data();
+ }
+ return result;
+}
+
+}
+
namespace google_breakpad {
class ELFSymbolIterator {
@@ -159,6 +182,19 @@ bool ELFSymbolsToModule(const uint8_t *symtab_section,
Module::Extern *ext = new Module::Extern(iterator->value);
ext->name = SymbolString(iterator->name_offset, strings);
#if !defined(__ANDROID__) // Android NDK doesn't provide abi::__cxa_demangle.
+ if (ext->name.find("type_erased_handlers") != std::string::npos
+ && ext->name.find("vtable_once_impl") != std::string::npos) {
+
+ auto demangled_str = exec("c++filt " + ext->name);
+ if (!demangled_str.empty() && demangled_str.back() == '\n') {
+ demangled_str.pop_back();
+ }
+ if (demangled_str != ext->name) {
+ ext->name = demangled_str;
+ }
+
+ } else {
+
int status = 0;
char* demangled =
abi::__cxa_demangle(ext->name.c_str(), NULL, NULL, &status);
@@ -167,6 +203,8 @@ bool ELFSymbolsToModule(const uint8_t *symtab_section,
ext->name = demangled;
free(demangled);
}
+
+ }
#endif
module->AddExtern(ext);
}
diff --git a/src/tools/linux/tools_linux.gypi b/src/tools/linux/tools_linux.gypi
index 1c15992e..020e4c1c 100644
--- a/src/tools/linux/tools_linux.gypi
+++ b/src/tools/linux/tools_linux.gypi
@@ -58,7 +58,7 @@
'target_name': 'minidump_upload',
'type': 'executable',
'sources': [
- 'symupload/minidump_upload.m',
+ 'symupload/minidump_upload.cc',
],
'dependencies': [
'../common/common.gyp:common',
diff --git a/src/tools/mac/dump_syms/macho_dump.cc b/src/tools/mac/dump_syms/macho_dump.cc
index d882bbe8..3432bb45 100644
--- a/src/tools/mac/dump_syms/macho_dump.cc
+++ b/src/tools/mac/dump_syms/macho_dump.cc
@@ -140,7 +140,7 @@ void DumpFile(const char *filename) {
size_t object_files_size;
const SuperFatArch* super_fat_object_files =
fat_reader.object_files(&object_files_size);
- struct fat_arch *object_files;
+ struct fat_arch *object_files = 0;
if (!super_fat_object_files->ConvertToFatArch(object_files)) {
exit(1);
}

View File

@@ -0,0 +1,119 @@
set -e
FullExecPath=$PWD
pushd `dirname $0` > /dev/null
FullScriptPath=`pwd`
popd > /dev/null
pacman --noconfirm -Sy
pacman --noconfirm -S msys/make
pacman --noconfirm -S mingw64/mingw-w64-x86_64-opus
pacman --noconfirm -S diffutils
pacman --noconfirm -S pkg-config
PKG_CONFIG_PATH="/mingw64/lib/pkgconfig:$PKG_CONFIG_PATH"
./configure --toolchain=msvc \
--extra-ldflags="-libpath:$FullExecPath/../opus/win32/VS2015/Win32/Release" \
--disable-programs \
--disable-doc \
--disable-network \
--disable-everything \
--enable-hwaccel=h264_d3d11va \
--enable-hwaccel=h264_d3d11va2 \
--enable-hwaccel=h264_dxva2 \
--enable-hwaccel=hevc_d3d11va \
--enable-hwaccel=hevc_d3d11va2 \
--enable-hwaccel=hevc_dxva2 \
--enable-hwaccel=mpeg2_d3d11va \
--enable-hwaccel=mpeg2_d3d11va2 \
--enable-hwaccel=mpeg2_dxva2 \
--enable-protocol=file --enable-libopus \
--enable-decoder=aac \
--enable-decoder=aac_at \
--enable-decoder=aac_fixed \
--enable-decoder=aac_latm \
--enable-decoder=aasc \
--enable-decoder=alac \
--enable-decoder=alac_at \
--enable-decoder=flac \
--enable-decoder=gif \
--enable-decoder=h264 \
--enable-decoder=hevc \
--enable-decoder=mp1 \
--enable-decoder=mp1float \
--enable-decoder=mp2 \
--enable-decoder=mp2float \
--enable-decoder=mp3 \
--enable-decoder=mp3adu \
--enable-decoder=mp3adufloat \
--enable-decoder=mp3float \
--enable-decoder=mp3on4 \
--enable-decoder=mp3on4float \
--enable-decoder=mpeg4 \
--enable-decoder=msmpeg4v2 \
--enable-decoder=msmpeg4v3 \
--enable-decoder=opus \
--enable-decoder=pcm_alaw \
--enable-decoder=pcm_alaw_at \
--enable-decoder=pcm_f32be \
--enable-decoder=pcm_f32le \
--enable-decoder=pcm_f64be \
--enable-decoder=pcm_f64le \
--enable-decoder=pcm_lxf \
--enable-decoder=pcm_mulaw \
--enable-decoder=pcm_mulaw_at \
--enable-decoder=pcm_s16be \
--enable-decoder=pcm_s16be_planar \
--enable-decoder=pcm_s16le \
--enable-decoder=pcm_s16le_planar \
--enable-decoder=pcm_s24be \
--enable-decoder=pcm_s24daud \
--enable-decoder=pcm_s24le \
--enable-decoder=pcm_s24le_planar \
--enable-decoder=pcm_s32be \
--enable-decoder=pcm_s32le \
--enable-decoder=pcm_s32le_planar \
--enable-decoder=pcm_s64be \
--enable-decoder=pcm_s64le \
--enable-decoder=pcm_s8 \
--enable-decoder=pcm_s8_planar \
--enable-decoder=pcm_u16be \
--enable-decoder=pcm_u16le \
--enable-decoder=pcm_u24be \
--enable-decoder=pcm_u24le \
--enable-decoder=pcm_u32be \
--enable-decoder=pcm_u32le \
--enable-decoder=pcm_u8 \
--enable-decoder=pcm_zork \
--enable-decoder=vorbis \
--enable-decoder=wavpack \
--enable-decoder=wmalossless \
--enable-decoder=wmapro \
--enable-decoder=wmav1 \
--enable-decoder=wmav2 \
--enable-decoder=wmavoice \
--enable-encoder=libopus \
--enable-parser=aac \
--enable-parser=aac_latm \
--enable-parser=flac \
--enable-parser=h264 \
--enable-parser=hevc \
--enable-parser=mpeg4video \
--enable-parser=mpegaudio \
--enable-parser=opus \
--enable-parser=vorbis \
--enable-demuxer=aac \
--enable-demuxer=flac \
--enable-demuxer=gif \
--enable-demuxer=h264 \
--enable-demuxer=hevc \
--enable-demuxer=m4v \
--enable-demuxer=mov \
--enable-demuxer=mp3 \
--enable-demuxer=ogg \
--enable-demuxer=wav \
--enable-muxer=ogg \
--enable-muxer=opus
make -j4
make -j4 install

View File

@@ -0,0 +1,107 @@
diff --git a/client/capture_context_mac_test.cc b/client/capture_context_mac_test.cc
index 436ac5ad..8e14fb9c 100644
--- a/client/capture_context_mac_test.cc
+++ b/client/capture_context_mac_test.cc
@@ -34,11 +34,11 @@ namespace {
// gtest assertions.
void SanityCheckContext(const NativeCPUContext& context) {
#if defined(ARCH_CPU_X86)
- ASSERT_EQ(x86_THREAD_STATE32, context.tsh.flavor);
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT), context.tsh.count);
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT), implicit_cast<uint32_t>(context.tsh.count));
#elif defined(ARCH_CPU_X86_64)
- ASSERT_EQ(x86_THREAD_STATE64, context.tsh.flavor);
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT), context.tsh.count);
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT), implicit_cast<uint32_t>(context.tsh.count));
#endif
#if defined(ARCH_CPU_X86_FAMILY)
diff --git a/client/simulate_crash_mac.cc b/client/simulate_crash_mac.cc
index 7e279015..27864388 100644
--- a/client/simulate_crash_mac.cc
+++ b/client/simulate_crash_mac.cc
@@ -177,12 +177,12 @@ bool DeliverException(thread_t thread,
void SimulateCrash(const NativeCPUContext& cpu_context) {
#if defined(ARCH_CPU_X86)
- DCHECK_EQ(cpu_context.tsh.flavor,
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32));
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
x86_THREAD_STATE32_COUNT);
#elif defined(ARCH_CPU_X86_64)
- DCHECK_EQ(cpu_context.tsh.flavor,
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64));
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
x86_THREAD_STATE64_COUNT);
diff --git a/client/simulate_crash_mac_test.cc b/client/simulate_crash_mac_test.cc
index 87c5f845..ca813e4c 100644
--- a/client/simulate_crash_mac_test.cc
+++ b/client/simulate_crash_mac_test.cc
@@ -130,12 +130,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
reinterpret_cast<const x86_thread_state*>(old_state);
switch (state->tsh.flavor) {
case x86_THREAD_STATE32:
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT),
- state->tsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT),
+ implicit_cast<uint32_t>(state->tsh.count));
break;
case x86_THREAD_STATE64:
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT),
- state->tsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT),
+ implicit_cast<uint32_t>(state->tsh.count));
break;
default:
ADD_FAILURE() << "unexpected tsh.flavor " << state->tsh.flavor;
@@ -149,12 +149,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
reinterpret_cast<const x86_float_state*>(old_state);
switch (state->fsh.flavor) {
case x86_FLOAT_STATE32:
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE32_COUNT),
- state->fsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE32_COUNT),
+ implicit_cast<uint32_t>(state->fsh.count));
break;
case x86_FLOAT_STATE64:
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE64_COUNT),
- state->fsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE64_COUNT),
+ implicit_cast<uint32_t>(state->fsh.count));
break;
default:
ADD_FAILURE() << "unexpected fsh.flavor " << state->fsh.flavor;
@@ -168,12 +168,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
reinterpret_cast<const x86_debug_state*>(old_state);
switch (state->dsh.flavor) {
case x86_DEBUG_STATE32:
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE32_COUNT),
- state->dsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE32_COUNT),
+ implicit_cast<uint32_t>(state->dsh.count));
break;
case x86_DEBUG_STATE64:
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE64_COUNT),
- state->dsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE64_COUNT),
+ implicit_cast<uint32_t>(state->dsh.count));
break;
default:
ADD_FAILURE() << "unexpected dsh.flavor " << state->dsh.flavor;
diff --git a/crashpad.gyp b/crashpad.gyp
index 42fe0a26..d8af1bf1 100644
--- a/crashpad.gyp
+++ b/crashpad.gyp
@@ -25,7 +25,7 @@
'minidump/minidump.gyp:*',
'minidump/minidump_test.gyp:*',
'snapshot/snapshot.gyp:*',
- 'snapshot/snapshot_test.gyp:*',
+# 'snapshot/snapshot_test.gyp:*',
'test/test.gyp:*',
'test/test_test.gyp:*',
'tools/tools.gyp:*',

View File

@@ -1,8 +1,8 @@
diff --git a/pylib/gyp/generator/cmake.py b/pylib/gyp/generator/cmake.py
index a2b9629..68d7020 100644
index 4a2041cf..e5333926 100644
--- a/pylib/gyp/generator/cmake.py
+++ b/pylib/gyp/generator/cmake.py
@@ -1070,6 +1070,23 @@ def WriteTarget(namer, qualified_target, target_dicts, build_dir, config_to_use,
@@ -1078,6 +1078,23 @@ def WriteTarget(namer, qualified_target, target_dicts, build_dir, config_to_use,
output.write(')\n')
@@ -26,45 +26,107 @@ index a2b9629..68d7020 100644
UnsetVariable(output, 'TOOLSET')
UnsetVariable(output, 'TARGET')
@@ -1120,6 +1137,8 @@ def GenerateOutputForConfig(target_list, target_dicts, data,
SetVariable(output, 'configuration', config_to_use)
ar = None
+ ranlib = None
+ nm = None
cc = None
cxx = None
@@ -1129,17 +1148,27 @@ def GenerateOutputForConfig(target_list, target_dicts, data,
for key, value in make_global_settings:
if key == 'AR':
ar = os.path.join(build_to_top, value)
+ if key == 'RANLIB':
+ ranlib = os.path.join(build_to_top, value)
+ if key == 'NM':
+ nm = os.path.join(build_to_top, value)
if key == 'CC':
cc = os.path.join(build_to_top, value)
if key == 'CXX':
cxx = os.path.join(build_to_top, value)
ar = gyp.common.GetEnvironFallback(['AR_target', 'AR'], ar)
+ ranlib = gyp.common.GetEnvironFallback(['RANLIB_target', 'RANLIB'], ranlib)
+ nm = gyp.common.GetEnvironFallback(['NM_target', 'NM'], nm)
cc = gyp.common.GetEnvironFallback(['CC_target', 'CC'], cc)
cxx = gyp.common.GetEnvironFallback(['CXX_target', 'CXX'], cxx)
if ar:
SetVariable(output, 'CMAKE_AR', ar)
+ if ranlib:
+ SetVariable(output, 'CMAKE_RANLIB', ranlib)
+ if nm:
+ SetVariable(output, 'CMAKE_NM', nm)
if cc:
SetVariable(output, 'CMAKE_C_COMPILER', cc)
if cxx:
diff --git a/pylib/gyp/generator/xcode.py b/pylib/gyp/generator/xcode.py
index db99d6a..f8398cc 100644
index 8bc22bed..24bee427 100644
--- a/pylib/gyp/generator/xcode.py
+++ b/pylib/gyp/generator/xcode.py
@@ -72,6 +72,10 @@ generator_additional_non_configuration_keys = [
@@ -74,6 +74,12 @@ generator_additional_non_configuration_keys = [
'ios_app_extension',
'ios_watch_app',
'ios_watchkit_extension',
+
+ 'mac_sandbox', # sandbox support
+ 'mac_sandbox_development_team',
+
+ 'mac_hardened_runtime', # hardened runtime support
+
'mac_bundle',
'mac_bundle_resources',
'mac_framework_headers',
@@ -772,6 +776,26 @@ def GenerateOutput(target_list, target_dicts, data, params):
@@ -774,6 +780,39 @@ def GenerateOutput(target_list, target_dicts, data, params):
xcode_targets[qualified_target] = xct
xcode_target_to_target_dict[xct] = spec
+ # sandbox support
+ # sandbox and hardened runtime support
+ is_sandbox = int(spec.get('mac_sandbox', 0))
+ is_hardened_runtime = int(spec.get('mac_hardened_runtime', 0))
+ if is_sandbox or is_hardened_runtime:
+ try:
+ tmp = pbxp._properties['attributes']['TargetAttributes']
+ except KeyError:
+ pbxp._properties['attributes']['TargetAttributes'] = {}
+ try:
+ tmp = pbxp._properties['attributes']['TargetAttributes'][xct]
+ except KeyError:
+ pbxp._properties['attributes']['TargetAttributes'][xct] = {}
+ try:
+ tmp = pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities']
+ except KeyError:
+ pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities'] = {}
+
+ if is_sandbox:
+ dev_team = spec.get('mac_sandbox_development_team', '%%ERROR%%')
+ assert dev_team != '%%ERROR%%', (
+ 'mac_sandbox must be accompanied by mac_sandbox_development_team (target "%s")' %
+ target_name)
+ try:
+ tmp = pbxp._properties['attributes']['TargetAttributes']
+ except KeyError:
+ pbxp._properties['attributes']['TargetAttributes'] = {}
+ pbxp._properties['attributes']['TargetAttributes'][xct] = {
+ 'DevelopmentTeam': dev_team,
+ 'SystemCapabilities': {
+ 'com.apple.Sandbox': {
+ 'enabled': 1,
+ },
+ },
+ pbxp._properties['attributes']['TargetAttributes'][xct]['DevelopmentTeam'] = dev_team
+ pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities']['com.apple.Sandbox'] = {
+ 'enabled': 1,
+ }
+
+ # hardened runtime support
+ if is_hardened_runtime:
+ pbxp._properties['attributes']['TargetAttributes'][xct]['SystemCapabilities']['com.apple.HardenedRuntime'] = {
+ 'enabled': 1,
+ }
+
spec_actions = spec.get('actions', [])
spec_rules = spec.get('rules', [])
@@ -1132,7 +1171,8 @@ exit 1
groups = [x for x in groups if not x.endswith('_excluded')]
for group in groups:
for item in rule.get(group, []):
- pbxp.AddOrGetFileInRootGroup(item)
+ concrete_item = ExpandXcodeVariables(item, rule_input_dict)
+ pbxp.AddOrGetFileInRootGroup(concrete_item)
# Add "sources".
for source in spec.get('sources', []):

View File

@@ -1,5 +1,5 @@
diff --git a/build/crashpad.gypi b/build/crashpad.gypi
index 027c7b6..4bfdfb5 100644
index 027c7b68..4bfdfb5a 100644
--- a/build/crashpad.gypi
+++ b/build/crashpad.gypi
@@ -25,5 +25,15 @@
@@ -18,3 +18,110 @@ index 027c7b6..4bfdfb5 100644
+ ],
},
}
diff --git a/client/capture_context_mac_test.cc b/client/capture_context_mac_test.cc
index 436ac5ad..8e14fb9c 100644
--- a/client/capture_context_mac_test.cc
+++ b/client/capture_context_mac_test.cc
@@ -34,11 +34,11 @@ namespace {
// gtest assertions.
void SanityCheckContext(const NativeCPUContext& context) {
#if defined(ARCH_CPU_X86)
- ASSERT_EQ(x86_THREAD_STATE32, context.tsh.flavor);
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT), context.tsh.count);
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT), implicit_cast<uint32_t>(context.tsh.count));
#elif defined(ARCH_CPU_X86_64)
- ASSERT_EQ(x86_THREAD_STATE64, context.tsh.flavor);
- ASSERT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT), context.tsh.count);
+ ASSERT_EQ(implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64), implicit_cast<thread_state_flavor_t>(context.tsh.flavor));
+ ASSERT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT), implicit_cast<uint32_t>(context.tsh.count));
#endif
#if defined(ARCH_CPU_X86_FAMILY)
diff --git a/client/simulate_crash_mac.cc b/client/simulate_crash_mac.cc
index 7e279015..27864388 100644
--- a/client/simulate_crash_mac.cc
+++ b/client/simulate_crash_mac.cc
@@ -177,12 +177,12 @@ bool DeliverException(thread_t thread,
void SimulateCrash(const NativeCPUContext& cpu_context) {
#if defined(ARCH_CPU_X86)
- DCHECK_EQ(cpu_context.tsh.flavor,
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE32));
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
x86_THREAD_STATE32_COUNT);
#elif defined(ARCH_CPU_X86_64)
- DCHECK_EQ(cpu_context.tsh.flavor,
+ DCHECK_EQ(implicit_cast<thread_state_flavor_t>(cpu_context.tsh.flavor),
implicit_cast<thread_state_flavor_t>(x86_THREAD_STATE64));
DCHECK_EQ(implicit_cast<mach_msg_type_number_t>(cpu_context.tsh.count),
x86_THREAD_STATE64_COUNT);
diff --git a/client/simulate_crash_mac_test.cc b/client/simulate_crash_mac_test.cc
index 87c5f845..ca813e4c 100644
--- a/client/simulate_crash_mac_test.cc
+++ b/client/simulate_crash_mac_test.cc
@@ -130,12 +130,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
reinterpret_cast<const x86_thread_state*>(old_state);
switch (state->tsh.flavor) {
case x86_THREAD_STATE32:
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE32_COUNT),
- state->tsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE32_COUNT),
+ implicit_cast<uint32_t>(state->tsh.count));
break;
case x86_THREAD_STATE64:
- EXPECT_EQ(implicit_cast<int>(x86_THREAD_STATE64_COUNT),
- state->tsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_THREAD_STATE64_COUNT),
+ implicit_cast<uint32_t>(state->tsh.count));
break;
default:
ADD_FAILURE() << "unexpected tsh.flavor " << state->tsh.flavor;
@@ -149,12 +149,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
reinterpret_cast<const x86_float_state*>(old_state);
switch (state->fsh.flavor) {
case x86_FLOAT_STATE32:
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE32_COUNT),
- state->fsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE32_COUNT),
+ implicit_cast<uint32_t>(state->fsh.count));
break;
case x86_FLOAT_STATE64:
- EXPECT_EQ(implicit_cast<int>(x86_FLOAT_STATE64_COUNT),
- state->fsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_FLOAT_STATE64_COUNT),
+ implicit_cast<uint32_t>(state->fsh.count));
break;
default:
ADD_FAILURE() << "unexpected fsh.flavor " << state->fsh.flavor;
@@ -168,12 +168,12 @@ class TestSimulateCrashMac final : public MachMultiprocess,
reinterpret_cast<const x86_debug_state*>(old_state);
switch (state->dsh.flavor) {
case x86_DEBUG_STATE32:
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE32_COUNT),
- state->dsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE32_COUNT),
+ implicit_cast<uint32_t>(state->dsh.count));
break;
case x86_DEBUG_STATE64:
- EXPECT_EQ(implicit_cast<int>(x86_DEBUG_STATE64_COUNT),
- state->dsh.count);
+ EXPECT_EQ(implicit_cast<uint32_t>(x86_DEBUG_STATE64_COUNT),
+ implicit_cast<uint32_t>(state->dsh.count));
break;
default:
ADD_FAILURE() << "unexpected dsh.flavor " << state->dsh.flavor;
diff --git a/crashpad.gyp b/crashpad.gyp
index 42fe0a26..d8af1bf1 100644
--- a/crashpad.gyp
+++ b/crashpad.gyp
@@ -25,7 +25,7 @@
'minidump/minidump.gyp:*',
'minidump/minidump_test.gyp:*',
'snapshot/snapshot.gyp:*',
- 'snapshot/snapshot_test.gyp:*',
+# 'snapshot/snapshot_test.gyp:*',
'test/test.gyp:*',
'test/test_test.gyp:*',
'tools/tools.gyp:*',

View File

@@ -1,8 +1,8 @@
diff --git a/build/common.gypi b/build/common.gypi
index 1affc70..c0d2f6a 100644
index 1affc70..0677e4b 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -66,6 +66,11 @@
@@ -66,6 +66,13 @@
'conditions': [
['clang!=0', {
'CLANG_CXX_LANGUAGE_STANDARD': 'c++11', # -std=c++11
@@ -10,11 +10,13 @@ index 1affc70..c0d2f6a 100644
+ 'OTHER_LDFLAGS': [
+ '/usr/local/macold/lib/libc++.a',
+ '/usr/local/macold/lib/libc++abi.a',
+ '-isysroot/',
+ '-L/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/',
+ ],
# Don't link in libarclite_macosx.a, see http://crbug.com/156530.
'CLANG_LINK_OBJC_RUNTIME': 'NO', # -fno-objc-link-runtime
@@ -116,6 +121,9 @@
@@ -116,6 +123,9 @@
],
},

View File

@@ -1,5 +1,5 @@
diff --git a/configure b/configure
index cb8d78f..cadb3f0 100755
index cb8d78fd3c..cadb3f0a88 100755
--- a/configure
+++ b/configure
@@ -511,7 +511,8 @@ if [ "$BUILD_ON_MAC" = "yes" ]; then
@@ -13,7 +13,7 @@ index cb8d78f..cadb3f0 100755
echo " Xcode not set up properly. You may need to confirm the license" >&2
echo " agreement by running /usr/bin/xcodebuild without arguments." >&2
diff --git a/mkspecs/common/g++-macx.conf b/mkspecs/common/g++-macx.conf
index 086510d..c485967 100644
index 086510dd96..078a5ed1dd 100644
--- a/mkspecs/common/g++-macx.conf
+++ b/mkspecs/common/g++-macx.conf
@@ -14,7 +14,13 @@ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -gdwarf-2
@@ -27,12 +27,12 @@ index 086510d..c485967 100644
+# Patch: Use C++14 with custom libc++ build.
+QMAKE_CXXFLAGS_CXX11 = -std=c++1y
+QMAKE_CXXFLAGS += -nostdinc++ -I/usr/local/macold/include/c++/v1
+QMAKE_LFLAGS += /usr/local/macold/lib/libc++.a /usr/local/macold/lib/libc++abi.a
+QMAKE_LFLAGS += /usr/local/macold/lib/libc++.a /usr/local/macold/lib/libc++abi.a -isysroot /
QMAKE_XCODE_GCC_VERSION = com.apple.compilers.llvmgcc42
diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf
index 0cc8cd6..ca9725b 100644
index 0cc8cd6dfd..ca9725b779 100644
--- a/mkspecs/features/mac/default_pre.prf
+++ b/mkspecs/features/mac/default_pre.prf
@@ -12,7 +12,9 @@ isEmpty(QMAKE_XCODE_DEVELOPER_PATH) {
@@ -47,7 +47,7 @@ index 0cc8cd6..ca9725b 100644
}
diff --git a/src/gui/image/qbmphandler.cpp b/src/gui/image/qbmphandler.cpp
index bb79a13..5d595bc 100644
index bb79a139b3..5d595bc3b3 100644
--- a/src/gui/image/qbmphandler.cpp
+++ b/src/gui/image/qbmphandler.cpp
@@ -220,6 +220,10 @@ static bool read_dib_body(QDataStream &s, const BMP_INFOHDR &bi, int offset, int
@@ -74,7 +74,7 @@ index bb79a13..5d595bc 100644
if (ncols > 0) { // read color table
uchar rgb[4];
diff --git a/src/gui/painting/qpaintengine_p.h b/src/gui/painting/qpaintengine_p.h
index ebff950..4300ca4 100644
index ebff9509ab..4300ca4c0f 100644
--- a/src/gui/painting/qpaintengine_p.h
+++ b/src/gui/painting/qpaintengine_p.h
@@ -87,8 +87,18 @@ public:
@@ -98,7 +98,7 @@ index ebff950..4300ca4 100644
// Make sure we're inside the viewport.
diff --git a/src/gui/text/qtextlayout.cpp b/src/gui/text/qtextlayout.cpp
index 4879ae5..56cdcba 100644
index 4879ae51d7..56cdcbaf01 100644
--- a/src/gui/text/qtextlayout.cpp
+++ b/src/gui/text/qtextlayout.cpp
@@ -654,6 +654,9 @@ int QTextLayout::nextCursorPosition(int oldPos, CursorMode mode) const
@@ -175,7 +175,7 @@ index 4879ae5..56cdcba 100644
inline void resetRightBearing()
diff --git a/src/gui/text/qtextlayout.h b/src/gui/text/qtextlayout.h
index cbe42c3..b273db7 100644
index cbe42c3844..b273db7e78 100644
--- a/src/gui/text/qtextlayout.h
+++ b/src/gui/text/qtextlayout.h
@@ -194,6 +194,9 @@ private:
@@ -188,8 +188,21 @@ index cbe42c3..b273db7 100644
};
diff --git a/src/network/access/qhttpnetworkconnection.cpp b/src/network/access/qhttpnetworkconnection.cpp
index 360f9722c7..f28f289ef6 100644
--- a/src/network/access/qhttpnetworkconnection.cpp
+++ b/src/network/access/qhttpnetworkconnection.cpp
@@ -118,6 +118,8 @@ QHttpNetworkConnectionPrivate::~QHttpNetworkConnectionPrivate()
{
for (int i = 0; i < channelCount; ++i) {
if (channels[i].socket) {
+ // Patch: backport critical bugfix from '4f959b6b30' commit.
+ QObject::disconnect(channels[i].socket, Q_NULLPTR, &channels[i], Q_NULLPTR);
channels[i].socket->close();
delete channels[i].socket;
}
diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
index ca7afb7..25ae500 100644
index ca7afb7d1b..25ae50008d 100644
--- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
+++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase.mm
@@ -256,6 +256,13 @@ static void getFontDescription(CTFontDescriptorRef font, FontDescription *fd)
@@ -206,8 +219,22 @@ index ca7afb7..25ae500 100644
fd->styleName = (CFStringRef)CTFontDescriptorCopyAttribute(font, kCTFontStyleNameAttribute);
fd->weight = QFont::Normal;
fd->style = QFont::StyleNormal;
diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
index 6e2c8a2a9a..3cace8abcb 100644
--- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
+++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
@@ -717,7 +717,8 @@ void QCoreTextFontEngine::getUnscaledGlyph(glyph_t, QPainterPath *, glyph_metric
QFixed QCoreTextFontEngine::emSquareSize() const
{
- return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont)));
+ // Patch: Fix build for Xcode 9.3.1.
+ return QFixed(int(CTFontGetUnitsPerEm(ctfont)));
}
QFontEngine *QCoreTextFontEngine::cloneWithSize(qreal pixelSize) const
diff --git a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
index 92358ec..694fee7 100644
index 92358ecc74..694fee7350 100644
--- a/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
+++ b/src/plugins/platforms/cocoa/qcocoaapplicationdelegate.mm
@@ -213,7 +213,8 @@ static void cleanupCocoaApplicationDelegate()
@@ -244,7 +271,7 @@ index 92358ec..694fee7 100644
- (void)appleEventQuit:(NSAppleEventDescriptor *)event withReplyEvent:(NSAppleEventDescriptor *)replyEvent
diff --git a/src/plugins/platforms/cocoa/qcocoacursor.mm b/src/plugins/platforms/cocoa/qcocoacursor.mm
index b81b9a0..4e59e83 100644
index b81b9a0b1c..4e59e833b1 100644
--- a/src/plugins/platforms/cocoa/qcocoacursor.mm
+++ b/src/plugins/platforms/cocoa/qcocoacursor.mm
@@ -81,7 +81,7 @@ void QCocoaCursor::setPos(const QPoint &position)
@@ -256,8 +283,41 @@ index b81b9a0..4e59e83 100644
CGEventPost(kCGHIDEventTap, e);
CFRelease(e);
}
diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.mm b/src/plugins/platforms/cocoa/qcocoahelpers.mm
index 9850f83dea..b2e1d3dfda 100644
--- a/src/plugins/platforms/cocoa/qcocoahelpers.mm
+++ b/src/plugins/platforms/cocoa/qcocoahelpers.mm
@@ -649,9 +649,10 @@ OSStatus qt_mac_drawCGImage(CGContextRef inContext, const CGRect *inBounds, CGIm
// Verbatim copy if HIViewDrawCGImage (as shown on Carbon-Dev)
OSStatus err = noErr;
- require_action(inContext != NULL, InvalidContext, err = paramErr);
- require_action(inBounds != NULL, InvalidBounds, err = paramErr);
- require_action(inImage != NULL, InvalidImage, err = paramErr);
+ // Patch: Fix build on latest Xcode.
+ //require_action(inContext != NULL, InvalidContext, err = paramErr);
+ //require_action(inBounds != NULL, InvalidBounds, err = paramErr);
+ //require_action(inImage != NULL, InvalidImage, err = paramErr);
CGContextSaveGState( inContext );
CGContextTranslateCTM (inContext, 0, inBounds->origin.y + CGRectGetMaxY(*inBounds));
@@ -660,9 +661,11 @@ OSStatus qt_mac_drawCGImage(CGContextRef inContext, const CGRect *inBounds, CGIm
CGContextDrawImage(inContext, *inBounds, inImage);
CGContextRestoreGState(inContext);
-InvalidImage:
-InvalidBounds:
-InvalidContext:
+
+// Patch: Fix build on latest Xcode.
+//InvalidImage:
+//InvalidBounds:
+//InvalidContext:
return err;
}
diff --git a/src/plugins/platforms/cocoa/qcocoaintegration.mm b/src/plugins/platforms/cocoa/qcocoaintegration.mm
index 9fd05a6..dea6072 100644
index 9fd05a65ee..dea60720e7 100644
--- a/src/plugins/platforms/cocoa/qcocoaintegration.mm
+++ b/src/plugins/platforms/cocoa/qcocoaintegration.mm
@@ -402,14 +402,24 @@ void QCocoaIntegration::updateScreens()
@@ -288,7 +348,7 @@ index 9fd05a6..dea6072 100644
QCocoaScreen *QCocoaIntegration::screenAtIndex(int index)
diff --git a/src/plugins/platforms/cocoa/qcocoakeymapper.mm b/src/plugins/platforms/cocoa/qcocoakeymapper.mm
index e46eaff..c62db53 100644
index e46eaff6be..c62db534a2 100644
--- a/src/plugins/platforms/cocoa/qcocoakeymapper.mm
+++ b/src/plugins/platforms/cocoa/qcocoakeymapper.mm
@@ -382,6 +382,12 @@ bool QCocoaKeyMapper::updateKeyboard()
@@ -315,7 +375,7 @@ index e46eaff..c62db53 100644
}
return ret;
diff --git a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
index 83c960d..03ae969 100755
index 83c960d931..03ae9696af 100755
--- a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
+++ b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
@@ -102,7 +102,10 @@ QT_USE_NAMESPACE
@@ -483,7 +543,7 @@ index 83c960d..03ae969 100755
}
@end
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index 4d0458a..fde238a 100644
index 4d0458a4aa..3357a5ef81 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -167,7 +167,8 @@ static bool isMouseEvent(NSEvent *ev)
@@ -496,7 +556,24 @@ index 4d0458a..fde238a 100644
NSPoint loc = [theEvent locationInWindow];
NSRect windowFrame = [self.window legacyConvertRectFromScreen:[self.window frame]];
NSRect contentFrame = [[self.window contentView] frame];
@@ -914,6 +915,19 @@ void QCocoaWindow::setWindowFilePath(const QString &filePath)
@@ -795,6 +796,16 @@ NSUInteger QCocoaWindow::windowStyleMask(Qt::WindowFlags flags)
{
Qt::WindowType type = static_cast<Qt::WindowType>(int(flags & Qt::WindowType_Mask));
NSInteger styleMask = NSBorderlessWindowMask;
+
+ // Patch: allow creating panels floating on all spaces in macOS.
+ // If you call "setCollectionBehavior:NSWindowCollectionBehaviorFullScreenAuxiliary" before
+ // setting the "NSNonactivatingPanelMask" bit in the style mask it won't work after that.
+ // So we need a way to set that bit before Qt sets collection behavior the way it does.
+ QVariant nonactivatingPanelMask = window()->property("_td_macNonactivatingPanelMask");
+ if (nonactivatingPanelMask.isValid() && nonactivatingPanelMask.toBool()) {
+ styleMask |= NSNonactivatingPanelMask;
+ }
+
if (flags & Qt::FramelessWindowHint)
return styleMask;
if ((type & Qt::Popup) == Qt::Popup) {
@@ -914,6 +925,19 @@ void QCocoaWindow::setWindowFilePath(const QString &filePath)
[m_nsWindow setRepresentedFilename: fi.exists() ? QCFString::toNSString(filePath) : @""];
}
@@ -516,7 +593,7 @@ index 4d0458a..fde238a 100644
void QCocoaWindow::setWindowIcon(const QIcon &icon)
{
QCocoaAutoReleasePool pool;
@@ -929,7 +943,10 @@ void QCocoaWindow::setWindowIcon(const QIcon &icon)
@@ -929,7 +953,10 @@ void QCocoaWindow::setWindowIcon(const QIcon &icon)
if (icon.isNull()) {
[iconButton setImage:nil];
} else {
@@ -529,7 +606,7 @@ index 4d0458a..fde238a 100644
[iconButton setImage:image];
[image release];
diff --git a/src/plugins/platforms/cocoa/qnsview.mm b/src/plugins/platforms/cocoa/qnsview.mm
index a18ee7f..1f91feb 100644
index a18ee7ff71..1f91feb0ae 100644
--- a/src/plugins/platforms/cocoa/qnsview.mm
+++ b/src/plugins/platforms/cocoa/qnsview.mm
@@ -393,7 +393,9 @@ static NSString *_q_NSWindowDidChangeOcclusionStateNotification = nil;
@@ -598,7 +675,7 @@ index a18ee7f..1f91feb 100644
}
return [super performKeyEquivalent:nsevent];
diff --git a/src/tools/qlalr/lalr.cpp b/src/tools/qlalr/lalr.cpp
index c680764..e2a7aaf 100644
index c68076477f..e2a7aafa58 100644
--- a/src/tools/qlalr/lalr.cpp
+++ b/src/tools/qlalr/lalr.cpp
@@ -246,11 +246,13 @@ void Grammar::buildExtendedGrammar ()
@@ -638,7 +715,7 @@ index c680764..e2a7aaf 100644
continue;
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp
index 7396808..7178aec 100644
index 7396808442..7178aecf80 100644
--- a/src/widgets/kernel/qwidget.cpp
+++ b/src/widgets/kernel/qwidget.cpp
@@ -4722,6 +4722,17 @@ void QWidget::render(QPainter *painter, const QPoint &targetOffset,
@@ -691,7 +768,7 @@ index 7396808..7178aec 100644
|| (k->key() == Qt::Key_Tab && (k->modifiers() & Qt::ShiftModifier)))
res = focusNextPrevChild(false);
diff --git a/src/widgets/styles/qmacstyle_mac.mm b/src/widgets/styles/qmacstyle_mac.mm
index 0845a5e..5735cb6 100644
index 0845a5eb02..5735cb6b39 100644
--- a/src/widgets/styles/qmacstyle_mac.mm
+++ b/src/widgets/styles/qmacstyle_mac.mm
@@ -3667,9 +3667,11 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter
@@ -709,7 +786,7 @@ index 0845a5e..5735cb6 100644
}
diff --git a/src/widgets/util/qsystemtrayicon_qpa.cpp b/src/widgets/util/qsystemtrayicon_qpa.cpp
index f98aeaf..00c0734 100644
index f98aeaf678..00c0734129 100644
--- a/src/widgets/util/qsystemtrayicon_qpa.cpp
+++ b/src/widgets/util/qsystemtrayicon_qpa.cpp
@@ -99,13 +99,18 @@ void QSystemTrayIconPrivate::updateIcon_sys()
@@ -738,7 +815,7 @@ index f98aeaf..00c0734 100644
}
diff --git a/src/widgets/widgets/qwidgetlinecontrol.cpp b/src/widgets/widgets/qwidgetlinecontrol.cpp
index 75f3059..980f2be 100644
index 75f30599be..980f2be1e9 100644
--- a/src/widgets/widgets/qwidgetlinecontrol.cpp
+++ b/src/widgets/widgets/qwidgetlinecontrol.cpp
@@ -1867,7 +1867,8 @@ void QWidgetLineControl::processKeyEvent(QKeyEvent* event)
@@ -752,7 +829,7 @@ index 75f3059..980f2be 100644
#ifndef QT_NO_COMPLETER
complete(event->key());
diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp
index 96438a0..b0b7206 100644
index 96438a0bdf..b0b7206405 100644
--- a/src/widgets/widgets/qwidgettextcontrol.cpp
+++ b/src/widgets/widgets/qwidgettextcontrol.cpp
@@ -1342,7 +1342,8 @@ void QWidgetTextControlPrivate::keyPressEvent(QKeyEvent *e)

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

View File

@@ -1,22 +1,9 @@
/*
This file is part of Telegram Desktop,
the official desktop version of Telegram messaging app, see https://telegram.org
the official desktop application for the Telegram messaging service.
Telegram Desktop is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
It is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
In addition, as a special exception, the copyright holders give permission
to link the code of portions of this program with the OpenSSL library.
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
Copyright (c) 2014-2017 John Preston, https://desktop.telegram.org
For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
using "colors.palette";
@@ -53,7 +40,7 @@ lineWidth: 1px;
defaultTextPalette: TextPalette {
linkFg: windowActiveTextFg;
monoFg: windowSubTextFg;
monoFg: msgInMonoFg;
selectBg: msgInBgSelected;
selectFg: transparent; // use painter current pen instead
selectLinkFg: historyLinkInFgSelected;
@@ -78,6 +65,9 @@ slideDuration: 240;
slideShift: 100px;
slideShadow: icon {{ "slide_shadow", slideFadeOutShadowFg }};
slideWrapDuration: 150;
fadeWrapDuration: 200;
linkCropLimit: 360px;
linkFont: normalFont;
linkOverFont: font(fsize underline);
@@ -102,7 +92,7 @@ msgServiceFont: semiboldFont;
msgServiceNameFont: semiboldFont;
msgServicePhotoWidth: 100px;
msgDateFont: font(13px);
msgMinWidth: 190px;
msgMinWidth: 160px;
msgPhotoSize: 33px;
msgPhotoSkip: 40px;
msgPadding: margins(13px, 7px, 13px, 8px);
@@ -116,7 +106,7 @@ msgReplyBarPos: point(1px, 0px);
msgReplyBarSize: size(2px, 36px);
msgReplyBarSkip: 10px;
msgServicePadding: margins(12px, 3px, 12px, 4px);
msgServiceMargin: margins(10px, 10px, 80px, 2px);
msgServiceMargin: margins(10px, 10px, 10px, 2px);
msgDateSpace: 12px;
msgDateDelta: point(2px, 5px);
@@ -182,8 +172,35 @@ inFwdTextPaletteSelected: TextPalette(defaultTextPalette) {
outFwdTextPaletteSelected: TextPalette(defaultTextPalette) {
linkFg: msgOutServiceFgSelected;
}
inReplyTextPalette: TextPalette(inTextPalette) {
linkFg: msgInDateFg;
}
inReplyTextPaletteSelected: TextPalette(inTextPaletteSelected) {
linkFg: msgInDateFgSelected;
}
outReplyTextPalette: TextPalette(outTextPalette) {
linkFg: msgOutDateFg;
}
outReplyTextPaletteSelected: TextPalette(outTextPaletteSelected) {
linkFg: msgOutDateFgSelected;
}
imgReplyTextPalette: TextPalette(defaultTextPalette) {
linkFg: msgImgReplyBarColor;
}
inSemiboldPalette: TextPalette(inTextPalette) {
linkFg: msgInServiceFg;
selectFg: msgInServiceFgSelected;
selectLinkFg: msgInServiceFgSelected;
}
outSemiboldPalette: TextPalette(outTextPalette) {
linkFg: msgOutServiceFg;
selectFg: msgOutServiceFgSelected;
selectLinkFg: msgOutServiceFgSelected;
}
historyComposeAreaPalette: TextPalette(defaultTextPalette) {
linkFg: historyComposeAreaFgService;
}
mediaPadding: margins(0px, 0px, 0px, 0px);
mediaCaptionSkip: 5px;
mediaInBubbleSkip: 5px;
mediaThumbSize: 48px;
@@ -216,8 +233,6 @@ emojiReplaceHeight: 56px;
emojiReplaceInnerHeight: 42px;
emojiReplacePadding: 14px;
connectingPadding: margins(5px, 5px, 5px, 5px);
dragFont: font(28px semibold);
dragSubfont: font(20px semibold);
dragColor: windowSubTextFg;
@@ -228,12 +243,6 @@ dragPadding: margins(20px, 10px, 20px, 10px);
dragHeight: 72px;
minPhotoSize: 100px;
maxMediaSize: 420px;
maxStickerSize: 256px;
maxGifSize: 320px;
maxSignatureSize: 144px;
radialSize: size(50px, 50px);
radialLine: 3px;
radialDuration: 350;
@@ -249,26 +258,10 @@ videoIcon: icon {
};
locationSize: size(320px, 240px);
webPageLeft: 10px;
webPageBar: 2px;
webPageTitleFont: semiboldFont;
webPageTitleStyle: semiboldTextStyle;
webPageTitleOutFg: historyTextOutFg;
webPageTitleInFg: historyTextInFg;
webPageDescriptionOutFg: historyTextOutFg;
webPageDescriptionInFg: historyTextInFg;
webPageDescriptionFont: normalFont;
webPageDescriptionStyle: defaultTextStyle;
webPagePhotoSize: 100px;
webPagePhotoDelta: 8px;
mediaPlayerSuppressDuration: 150;
botDescSkip: 8px;
suppressAll: 0.2;
suppressSong: 0.05;
inlineResultsLeft: 11px;
inlineResultsSkip: 3px;
inlineMediaHeight: 96px;
@@ -281,7 +274,7 @@ inlineRowBorder: 1px;
inlineRowBorderFg: shadowFg;
inlineRowFileNameTop: 2px;
inlineRowFileDescriptionTop: 23px;
inlineResultsMinWidth: 64px;
inlineResultsMinWidth: 48px;
inlineDurationMargin: 3px;
toastTextStyle: defaultTextStyle;
@@ -301,4 +294,7 @@ notifyFadeRight: icon {{ "fade_horizontal", notificationBg }};
stickerIconLeft: icon {{ "fade_horizontal-flip_horizontal", emojiPanCategories }};
stickerIconRight: icon {{ "fade_horizontal", emojiPanCategories }};
emojiSuggestionsFadeLeft: icon {{ "fade_horizontal-flip_horizontal", boxBg }};
emojiSuggestionsFadeRight: icon {{ "fade_horizontal", boxBg }};
transparentPlaceholderSize: 4px;

View File

@@ -1,22 +1,9 @@
/*
This file is part of Telegram Desktop,
the official desktop version of Telegram messaging app, see https://telegram.org
the official desktop application for the Telegram messaging service.
Telegram Desktop is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
It is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
In addition, as a special exception, the copyright holders give permission
to link the code of portions of this program with the OpenSSL library.
Full license: https://github.com/telegramdesktop/tdesktop/blob/master/LICENSE
Copyright (c) 2014-2017 John Preston, https://desktop.telegram.org
For license and copyright information please follow this link:
https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
*/
// basic
@@ -93,8 +80,13 @@ placeholderFg: windowSubTextFg; // default input field placeholder when field is
placeholderFgActive: #aaaaaa; // default input field placeholder when field is focused
inputBorderFg: #e0e0e0; // default input field bottom border (like in code input field when you log in and field is not focused)
filterInputBorderFg: #54c3f3; // default rounded input field border (like in chats list search field when field is focused)
filterInputInactiveBg: windowBgOver; // default rounded input field background (like in chats list search field when field is inactive)
checkboxFg: #b3b3b3; // default unchecked checkbox rounded rectangle (and also emoji category icons)
filterInputActiveBg: windowBg; // default rounded input field active background (like in chats list search field when field is focused)
filterInputInactiveBg: windowBgOver; // default rounded input field inactive background (like in chats list search field when field is inactive)
checkboxFg: #b3b3b3; // default unchecked checkbox rounded rectangle
botKbBg: menuBgOver; // bot keyboard button background
botKbDownBg: menuBgRipple; // bot keyboard button ripple effect
botKbColor: windowBoldFgOver; // bot keyboard button text
sliderBgInactive: #e1eaef; // default slider not active bar (like in Settings when you choose interface scale or custom notifications count)
sliderBgActive: windowBgActive; // default slider active bar (like in Settings when you choose interface scale or custom notifications count)
@@ -166,6 +158,9 @@ contactsStatusFgOnline: windowActiveTextFg; // contacts (and some other) box row
photoCropFadeBg: layerBg; // avatar crop box fade background (when choosing a new photo in Settings or for a group)
photoCropPointFg: #ffffff7f; // avatar crop box corner rectangles (when choosing a new photo in Settings or for a group)
callArrowFg: #2ab32a | boxTextFgGood; // received phone call arrow (in calls list box)
callArrowMissedFg: #dd5b4a | boxTextFgError; // missed phone call arrow (in calls list box)
// intro
introBg: windowBg; // login background
introTitleFg: windowBoldFg; // login title text
@@ -198,6 +193,7 @@ dialogsSentIconFg: #5dc452; // chat list sent message tick / double tick icon
dialogsUnreadBg: windowBgActive; // chat list unread badge background for not muted chat
dialogsUnreadBgMuted: #bbbbbb; // chat list unread badge background for muted chat
dialogsUnreadFg: windowFgActive; // chat list unread badge text
dialogsArchiveFg: #525252 | dialogsNameFg; // chat list archive name text
dialogsBgOver: windowBgOver; // chat list background with mouse over
dialogsNameFgOver: windowBoldFgOver; // chat list name text with mouse over
@@ -213,6 +209,7 @@ dialogsSentIconFgOver: dialogsSentIconFg; // chat list sent message tick / doubl
dialogsUnreadBgOver: dialogsUnreadBg; // chat list unread badge background for not muted chat with mouse over
dialogsUnreadBgMutedOver: dialogsUnreadBgMuted; // chat list unread badge background for muted chat with mouse over
dialogsUnreadFgOver: dialogsUnreadFg; // chat list unread badge text with mouse over
dialogsArchiveFgOver: #525252 | dialogsNameFgOver; // chat list archive name text
dialogsBgActive: #419fd9; // chat list background for current (active) chat
dialogsNameFgActive: windowFgActive; // chat list name text for current (active) chat
@@ -229,6 +226,9 @@ dialogsUnreadBgActive: dialogsTextFgActive; // chat list unread badge background
dialogsUnreadBgMutedActive: dialogsDraftFgActive; // chat list unread badge background for muted chat for current (active) chat
dialogsUnreadFgActive: dialogsBgActive; // chat list unread badge text for current (active) chat
dialogsRippleBg: windowBgRipple; // chat list background ripple effect
dialogsRippleBgActive: activeButtonBgRipple; // chat list background ripple effect for current (active) chat
dialogsForwardBg: dialogsBgActive; // forwarding panel background (when forwarding messages in the smallest window size)
dialogsForwardFg: dialogsNameFgActive; // forwarding panel text (when forwarding messages in the smallest window size)
@@ -242,7 +242,9 @@ emojiPanBg: windowBg; // emoji panel background
emojiPanCategories: #f7f7f7 | windowBg; // emoji panel categories background
emojiPanHeaderFg: windowSubTextFg; // emoji panel section header text
emojiPanHeaderBg: #fffffff2 | emojiPanBg; // emoji panel section header background
stickerPanDeleteBg: #000000cc; // delete X button background for custom sent stickers in stickers panel (legacy)
emojiIconFg: checkboxFg; // emoji category icon
emojiIconFgActive: windowBgActive; // active emoji category icon
stickerPanDeleteBg: #000000ff; // delete X button background for custom sent stickers in stickers panel (legacy)
stickerPanDeleteFg: windowFgActive; // delete X button icon for custom sent stickers in stickers panel (legacy)
stickerPreviewBg: #ffffffb0; // sticker and GIF preview background (when you press and hold on a sticker)
@@ -264,6 +266,12 @@ historyIconFgInverted: windowFgActive; // media message tick / double tick icon
historySendingOutIconFg: #98d292; // outbox sending message icon (clock)
historySendingInIconFg: #a0adb5; // inbox sending message icon (clock) (like in sent messages to yourself or in sent messages to a channel)
historySendingInvertedIconFg: #ffffffc8; // media sending message icon (clock) (like in sent photo)
historyCallArrowInFg: callArrowFg; // received phone call arrow
historyCallArrowInFgSelected: callArrowFg; // received phone call arrow in a selected message
historyCallArrowMissedInFg: callArrowMissedFg; // missed phone call arrow
historyCallArrowMissedInFgSelected: callArrowMissedFg; // missed phone call arrow in a selected message
historyCallArrowOutFg: historyCallArrowInFg; // outgoing phone call arrow
historyCallArrowOutFgSelected: historyCallArrowInFgSelected; // outgoing phone call arrow
historyUnreadBarBg: #fcfbfa; // new unread messages bar background
historyUnreadBarBorder: shadowFg; // new unread messages bar shadow
@@ -297,6 +305,8 @@ historyPeer8NameFg: #ce671b; // orange group member name
historyPeer8NameFgSelected: historyPeer8NameFg; // orange group member name in a selected message
historyPeer8UserpicBg: #faa774; // orange userpic background
historyPeerUserpicFg: windowFgActive; // default userpic initials
historyPeerSavedMessagesBg: historyPeer4UserpicBg; // saved messages userpic background
historyPeerArchiveUserpicBg: dialogsUnreadBgMuted; // archive folder userpic background
// Some values are marked as (adjusted), it means they're adjusted by
// hue and saturation of the average background color if user chooses
@@ -383,6 +393,8 @@ historyFileThumbIconFgSelected: msgInBgSelected; // selected file with thumbnail
historyFileThumbRadialFg: historyFileThumbIconFg; // file with thumbnail (or photo / video) radial download animation line
historyFileThumbRadialFgSelected: historyFileThumbIconFgSelected; // selected file with thumbnail (or photo / video) radial download animation line
historyVideoMessageProgressFg: historyFileThumbIconFg; // radial playback progress in round video messages
msgWaveformInActive: windowBgActive; // inbox voice message active waveform lines (like played part of currently playing voice message)
msgWaveformInActiveSelected: #51a3d3; // inbox selected voice message active waveform lines (like played part of currently playing voice message)
msgWaveformInInactive: #d4dee6; // inbox voice message inactive waveform lines (like upcoming part of currently playing voice message)
@@ -435,8 +447,13 @@ historyComposeButtonBg: historyComposeAreaBg; // unblock / join channel / mute c
historyComposeButtonBgOver: windowBgOver; // unblock / join channel / mute channel button background with mouse over
historyComposeButtonBgRipple: windowBgRipple; // unblock / join channel / mute channel button ripple effect
mapPointDrop: #fd4444; // geo location marker background
mapPointDot: #ffffff; // geo location marker point
// overview
overviewCheckBg: #00000040; // shared files / links checkbox background for not selected rows when some rows are selected
overviewCheckBg: #00000040; // shared media / files / links checkbox background for not selected rows when some rows are selected
overviewCheckBgActive: windowBgActive; // shared media / files / links checkbox background for selected rows
overviewCheckBorder: windowBg; // shared media round checkbox border
overviewCheckFg: windowBg; // shared files / links checkbox icon for not selected rows when some rows are selected
overviewCheckFgActive: windowBg; // shared files / links checkbox icon for selected rows
overviewPhotoSelectOverlay: #40ace333; // shared photos / videos / links fill for selected rows
@@ -445,7 +462,10 @@ overviewPhotoSelectOverlay: #40ace333; // shared photos / videos / links fill fo
profileStatusFgOver: #7c99b2; // group members list in group profile user last seen text with mouse over
profileVerifiedCheckBg: windowBgActive; // profile verified check icon background
profileVerifiedCheckFg: windowFgActive; // profile verified check icon tick
profileAdminStartFg: windowBgActive; // group members list admin star icon
profileAdminStartFg: windowBgActive; // group members list creator star icon
profileAdminStarFgOver: profileAdminStartFg; // group members list creator star icon with mouse over
profileOtherAdminStarFg: windowSubTextFg; // group members list admin star icon
profileOtherAdminStarFgOver: profileStatusFgOver; // group members list admin star icon with mouse over
// settings
notificationsBoxMonitorFg: windowFg; // custom notifications settings box monitor color
@@ -456,9 +476,14 @@ notificationSampleCloseFg: #d7d7d7 | windowSubTextFg; // custom notifications se
notificationSampleTextFg: #d7d7d7 | windowSubTextFg; // custom notifications settings box small sample text placeholder
notificationSampleNameFg: #939393 | windowSubTextFg; // custom notifications settings box small sample name placeholder
changePhoneSimcardFrom: notificationSampleTextFg; // change phone number box left simcard icon
changePhoneSimcardTo: notificationSampleNameFg; // change phone number box right simcard and plane icons
mainMenuBg: windowBg; // main menu background
mainMenuCoverBg: dialogsBgActive; // main menu top cover background
mainMenuCoverFg: windowFgActive; // main menu top cover text
mainMenuCloudFg: activeButtonFg;
mainMenuCloudBg: #2785bf | activeButtonBgRipple;
mediaPlayerBg: windowBg; // audio file player background
mediaPlayerActiveFg: windowBgActive; // audio file player playback progress already played part
@@ -502,3 +527,29 @@ mediaviewTransparentFg: #cccccc; // another transparent filling part
// notification
notificationBg: windowBg; // custom notification window background
// calls
callBg: #26282cf2; // phone call popup background
callNameFg: #ffffff; // phone call popup name text
callFingerprintBg: #00000066; // phone call popup emoji fingerprint background
callStatusFg: #aaabac; // phone call popup status text
callIconFg: #ffffff; // phone call popup answer, hangup and mute mic icon
callAnswerBg: #64c15b; // phone call popup answer button background
callAnswerRipple: #52b149; // phone call popup answer button ripple effect
callAnswerBgOuter: #50eb4126; // phone call popup answer button outer ripple effect
callHangupBg: #d75a5a; // phone call popup hangup button background
callHangupRipple: #c04646; // phone call popup hangup button ripple effect
callCancelBg: #ffffff; // phone call popup line busy cancel button background
callCancelFg: #777777; // phone call popup line busy cancel button icon
callCancelRipple: #f1f1f1; // phone call popup line busy cancel button ripple effect
callMuteRipple: #ffffff12; // phone call popup mute mic ripple effect
callBarBg: dialogsBgActive; // active phone call bar background
callBarMuteRipple: dialogsRippleBgActive; // active phone call bar mute and hangup button ripple effect
callBarBgMuted: #8f8f8f | dialogsUnreadBgMuted; // phone call bar with muted mic background
callBarUnmuteRipple: #7f7f7f | shadowFg; // phone call bar with muted mic mute and hangup button ripple effect
callBarFg: dialogsNameFgActive; // phone call bar text and icons
importantTooltipBg: toastBg;
importantTooltipFg: toastFg;
importantTooltipFgLink: mediaviewTextLinkFg;

Binary file not shown.

View File

@@ -1,409 +0,0 @@
//
// This is a sample Telegram Desktop theme file.
// It was generated from the 'colors.palette' style file.
//
// To create a theme with a background image included you should
// put two files in a .zip archive:
//
// First one is the color scheme like the one you're viewing
// right now, this file should be named 'colors.tdesktop-theme'.
//
// Second one should be the background image and it can be named
// 'background.jpg', 'background.png', 'tiled.jpg' or 'tiled.png'.
// You should name it 'background' (if you'd like it not to be tiled),
// or it can be named 'tiled' (if you'd like it to be tiled).
//
// After that you need to change the extension of your .zip archive
// to 'tdesktop-theme', so you'll have:
//
// mytheme.tdesktop-theme
// |-colors.tdesktop-theme
// |-background.jpg (or tiled.jpg, background.png, tiled.png)
//
windowBg: #ffffff;
windowFg: #000000;
windowBgOver: #f1f1f1;
windowBgRipple: #e5e5e5;
windowFgOver: windowFg;
windowSubTextFg: #999999;
windowSubTextFgOver: #919191;
windowBoldFg: #222222;
windowBoldFgOver: #222222;
windowBgActive: #40a7e3;
windowFgActive: #ffffff;
windowActiveTextFg: #168acd;
windowShadowFg: #000000;
windowShadowFgFallback: #f1f1f1;
shadowFg: #00000018;
slideFadeOutBg: #0000003c;
slideFadeOutShadowFg: windowShadowFg;
imageBg: #000000;
imageBgTransparent: #ffffff;
activeButtonBg: windowBgActive;
activeButtonBgOver: #39a5db;
activeButtonBgRipple: #2095d0;
activeButtonFg: windowFgActive;
activeButtonFgOver: activeButtonFg;
activeButtonSecondaryFg: #cceeff;
activeButtonSecondaryFgOver: activeButtonSecondaryFg;
activeLineFg: #37a1de;
activeLineFgError: #e48383;
lightButtonBg: windowBg;
lightButtonBgOver: #e3f1fa;
lightButtonBgRipple: #c9e4f6;
lightButtonFg: windowActiveTextFg;
lightButtonFgOver: lightButtonFg;
attentionButtonFg: #d14e4e;
attentionButtonFgOver: #d14e4e;
attentionButtonBgOver: #fcdfde;
attentionButtonBgRipple: #f4c3c2;
outlineButtonBg: windowBg;
outlineButtonBgOver: lightButtonBgOver;
outlineButtonOutlineFg: windowBgActive;
outlineButtonBgRipple: lightButtonBgRipple;
menuBg: windowBg;
menuBgOver: windowBgOver;
menuBgRipple: windowBgRipple;
menuIconFg: #a8a8a8;
menuIconFgOver: #999999;
menuSubmenuArrowFg: #373737;
menuFgDisabled: #cccccc;
menuSeparatorFg: #f1f1f1;
scrollBarBg: #00000053;
scrollBarBgOver: #0000007a;
scrollBg: #0000001a;
scrollBgOver: #0000002c;
smallCloseIconFg: #c7c7c7;
smallCloseIconFgOver: #a3a3a3;
radialFg: windowFgActive;
radialBg: #00000056;
placeholderFg: windowSubTextFg;
placeholderFgActive: #aaaaaa;
inputBorderFg: #e0e0e0;
filterInputBorderFg: #54c3f3;
filterInputInactiveBg: windowBgOver;
checkboxFg: #b3b3b3;
sliderBgInactive: #e1eaef;
sliderBgActive: windowBgActive;
tooltipBg: #eef2f5;
tooltipFg: #5d6c80;
tooltipBorderFg: #c9d1db;
titleShadow: #00000003;
titleBg: windowBgOver;
titleBgActive: titleBg;
titleButtonBg: titleBg;
titleButtonFg: #ababab;
titleButtonBgOver: #e5e5e5;
titleButtonFgOver: #9a9a9a;
titleButtonBgActive: titleButtonBg;
titleButtonFgActive: titleButtonFg;
titleButtonBgActiveOver: titleButtonBgOver;
titleButtonFgActiveOver: titleButtonFgOver;
titleButtonCloseBg: titleButtonBg;
titleButtonCloseFg: titleButtonFg;
titleButtonCloseBgOver: #e81123;
titleButtonCloseFgOver: windowFgActive;
titleButtonCloseBgActive: titleButtonCloseBg;
titleButtonCloseFgActive: titleButtonCloseFg;
titleButtonCloseBgActiveOver: titleButtonCloseBgOver;
titleButtonCloseFgActiveOver: titleButtonCloseFgOver;
titleFg: #acacac;
titleFgActive: #3e3c3e;
trayCounterBg: #f23c34;
trayCounterBgMute: #888888;
trayCounterFg: #ffffff;
trayCounterBgMacInvert: #ffffff;
trayCounterFgMacInvert: #ffffff01;
layerBg: #0000007f;
cancelIconFg: menuIconFg;
cancelIconFgOver: menuIconFgOver;
boxBg: windowBg;
boxTextFg: windowFg;
boxTextFgGood: #4ab44a;
boxTextFgError: #d84d4d;
boxTitleFg: #404040;
boxSearchBg: boxBg;
boxTitleAdditionalFg: #808080;
boxTitleCloseFg: cancelIconFg;
boxTitleCloseFgOver: cancelIconFgOver;
membersAboutLimitFg: windowSubTextFgOver;
contactsBg: windowBg;
contactsBgOver: windowBgOver;
contactsNameFg: boxTextFg;
contactsStatusFg: windowSubTextFg;
contactsStatusFgOver: windowSubTextFgOver;
contactsStatusFgOnline: windowActiveTextFg;
photoCropFadeBg: layerBg;
photoCropPointFg: #ffffff7f;
introBg: windowBg;
introTitleFg: windowBoldFg;
introDescriptionFg: windowSubTextFg;
introErrorFg: windowSubTextFg;
introCoverTopBg: #0f89d0;
introCoverBottomBg: #39b0f0;
introCoverIconsFg: #5ec6ff;
introCoverPlaneTrace: #5ec6ff69;
introCoverPlaneInner: #c6d8e8;
introCoverPlaneOuter: #a1bed4;
introCoverPlaneTop: #ffffff;
dialogsMenuIconFg: menuIconFg;
dialogsMenuIconFgOver: menuIconFgOver;
dialogsBg: windowBg;
dialogsNameFg: windowBoldFg;
dialogsChatIconFg: dialogsNameFg;
dialogsDateFg: windowSubTextFg;
dialogsTextFg: windowSubTextFg;
dialogsTextFgService: windowActiveTextFg;
dialogsDraftFg: #dd4b39;
dialogsVerifiedIconBg: windowBgActive;
dialogsVerifiedIconFg: windowFgActive;
dialogsSendingIconFg: #c1c1c1;
dialogsSentIconFg: #5dc452;
dialogsUnreadBg: windowBgActive;
dialogsUnreadBgMuted: #bbbbbb;
dialogsUnreadFg: windowFgActive;
dialogsBgOver: windowBgOver;
dialogsNameFgOver: windowBoldFgOver;
dialogsChatIconFgOver: dialogsNameFgOver;
dialogsDateFgOver: windowSubTextFgOver;
dialogsTextFgOver: windowSubTextFgOver;
dialogsTextFgServiceOver: dialogsTextFgService;
dialogsDraftFgOver: dialogsDraftFg;
dialogsVerifiedIconBgOver: dialogsVerifiedIconBg;
dialogsVerifiedIconFgOver: dialogsVerifiedIconFg;
dialogsSendingIconFgOver: dialogsSendingIconFg;
dialogsSentIconFgOver: dialogsSentIconFg;
dialogsUnreadBgOver: dialogsUnreadBg;
dialogsUnreadBgMutedOver: dialogsUnreadBgMuted;
dialogsUnreadFgOver: dialogsUnreadFg;
dialogsBgActive: #419fd9;
dialogsNameFgActive: windowFgActive;
dialogsChatIconFgActive: dialogsNameFgActive;
dialogsDateFgActive: windowFgActive;
dialogsTextFgActive: windowFgActive;
dialogsTextFgServiceActive: dialogsTextFgActive;
dialogsDraftFgActive: #c6e1f7;
dialogsVerifiedIconBgActive: dialogsTextFgActive;
dialogsVerifiedIconFgActive: dialogsBgActive;
dialogsSendingIconFgActive: #ffffff99;
dialogsSentIconFgActive: dialogsTextFgActive;
dialogsUnreadBgActive: dialogsTextFgActive;
dialogsUnreadBgMutedActive: dialogsDraftFgActive;
dialogsUnreadFgActive: dialogsBgActive;
dialogsForwardBg: dialogsBgActive;
dialogsForwardFg: dialogsNameFgActive;
searchedBarBg: windowBgOver;
searchedBarFg: windowSubTextFgOver;
topBarBg: windowBg;
emojiPanBg: windowBg;
emojiPanCategories: #f7f7f7; // windowBg;
emojiPanHeaderFg: windowSubTextFg;
emojiPanHeaderBg: #fffffff2; // emojiPanBg;
stickerPanDeleteBg: #000000cc;
stickerPanDeleteFg: windowFgActive;
stickerPreviewBg: #ffffffb0;
historyTextInFg: windowFg;
historyTextOutFg: windowFg;
historyCaptionInFg: historyTextInFg;
historyCaptionOutFg: historyTextOutFg;
historyFileNameInFg: historyTextInFg;
historyFileNameOutFg: historyTextOutFg;
historyOutIconFg: dialogsSentIconFg;
historyOutIconFgSelected: #4da79f;
historyIconFgInverted: windowFgActive;
historySendingOutIconFg: #98d292;
historySendingInIconFg: #a0adb5;
historySendingInvertedIconFg: #ffffffc8;
historyUnreadBarBg: #fcfbfa;
historyUnreadBarBorder: shadowFg;
historyUnreadBarFg: #538bb4;
historyForwardChooseBg: #0000004c;
historyForwardChooseFg: windowFgActive;
historyPeer1NameFg: #c03d33;
historyPeer1UserpicBg: #e17076;
historyPeer2NameFg: #4fad2d;
historyPeer2UserpicBg: #7bc862;
historyPeer3NameFg: #d09306;
historyPeer3UserpicBg: #e5ca77;
historyPeer4NameFg: windowActiveTextFg;
historyPeer4UserpicBg: #65aadd;
historyPeer5NameFg: #8544d6;
historyPeer5UserpicBg: #a695e7;
historyPeer6NameFg: #cd4073;
historyPeer6UserpicBg: #ee7aae;
historyPeer7NameFg: #2996ad;
historyPeer7UserpicBg: #6ec9cb;
historyPeer8NameFg: #ce671b;
historyPeer8UserpicBg: #faa774;
historyPeerUserpicFg: windowFgActive;
historyScrollBarBg: #517c417a;
historyScrollBarBgOver: #517c41bc;
historyScrollBg: #517c414c;
historyScrollBgOver: #517c416b;
msgInBg: windowBg;
msgInBgSelected: #c2dcf2;
msgOutBg: #effdde;
msgOutBgSelected: #b7dbdb;
msgSelectOverlay: #358cd44c;
msgStickerOverlay: #358cd47f;
msgInServiceFg: windowActiveTextFg;
msgInServiceFgSelected: windowActiveTextFg;
msgOutServiceFg: #3a8e26;
msgOutServiceFgSelected: #367570;
msgInShadow: #748ea229;
msgInShadowSelected: #548dbb29;
msgOutShadow: #3ac34740;
msgOutShadowSelected: #37a78e40;
msgInDateFg: #a0acb6;
msgInDateFgSelected: #6a9cc5;
msgOutDateFg: #6cc264;
msgOutDateFgSelected: #50a79c;
msgServiceFg: windowFgActive;
msgServiceBg: #517c417f;
msgServiceBgSelected: #96b38ba2;
msgInReplyBarColor: activeLineFg;
msgInReplyBarSelColor: activeLineFg;
msgOutReplyBarColor: historyOutIconFg;
msgOutReplyBarSelColor: historyOutIconFgSelected;
msgImgReplyBarColor: msgServiceFg;
msgInMonoFg: #4e7391;
msgOutMonoFg: #469165;
msgDateImgFg: msgServiceFg;
msgDateImgBg: #00000054;
msgDateImgBgOver: #00000074;
msgDateImgBgSelected: #1c4a7187;
msgFileThumbLinkInFg: lightButtonFg;
msgFileThumbLinkInFgSelected: lightButtonFgOver;
msgFileThumbLinkOutFg: #5eba5b;
msgFileThumbLinkOutFgSelected: #31a298;
msgFileInBg: windowBgActive;
msgFileInBgOver: #4eade3;
msgFileInBgSelected: #51a3d3;
msgFileOutBg: #78c67f;
msgFileOutBgOver: #6bc272;
msgFileOutBgSelected: #5fb389;
msgFile1Bg: #72b1df;
msgFile1BgDark: #5c9ece;
msgFile1BgOver: #5294c4;
msgFile1BgSelected: #5099d0;
msgFile2Bg: #61b96e;
msgFile2BgDark: #4da859;
msgFile2BgOver: #44a050;
msgFile2BgSelected: #46a07e;
msgFile3Bg: #e47272;
msgFile3BgDark: #cd5b5e;
msgFile3BgOver: #c35154;
msgFile3BgSelected: #9f6a82;
msgFile4Bg: #efc274;
msgFile4BgDark: #e6a561;
msgFile4BgOver: #dc9c5a;
msgFile4BgSelected: #b19d84;
historyFileInIconFg: msgInBg;
historyFileInIconFgSelected: msgInBgSelected;
historyFileInRadialFg: historyFileInIconFg;
historyFileInRadialFgSelected: historyFileInIconFgSelected;
historyFileOutIconFg: msgOutBg;
historyFileOutIconFgSelected: msgOutBgSelected;
historyFileOutRadialFg: historyFileOutIconFg;
historyFileOutRadialFgSelected: historyFileOutIconFgSelected;
historyFileThumbIconFg: msgInBg;
historyFileThumbIconFgSelected: msgInBgSelected;
historyFileThumbRadialFg: historyFileThumbIconFg;
historyFileThumbRadialFgSelected: historyFileThumbIconFgSelected;
msgWaveformInActive: windowBgActive;
msgWaveformInActiveSelected: #51a3d3;
msgWaveformInInactive: #d4dee6;
msgWaveformInInactiveSelected: #9cc1e1;
msgWaveformOutActive: #78c67f;
msgWaveformOutActiveSelected: #6badad;
msgWaveformOutInactive: #b3e2b4;
msgWaveformOutInactiveSelected: #91c3c3;
msgBotKbOverBgAdd: #ffffff20;
msgBotKbIconFg: msgServiceFg;
msgBotKbRippleBg: #00000020;
mediaInFg: msgInDateFg;
mediaInFgSelected: msgInDateFgSelected;
mediaOutFg: msgOutDateFg;
mediaOutFgSelected: msgOutDateFgSelected;
youtubePlayIconBg: #e83131c8;
youtubePlayIconFg: windowFgActive;
videoPlayIconBg: #0000007f;
videoPlayIconFg: #ffffff;
toastBg: #000000b2;
toastFg: windowFgActive;
reportSpamBg: emojiPanHeaderBg;
reportSpamFg: windowFg;
historyToDownBg: windowBg;
historyToDownBgOver: windowBgOver;
historyToDownBgRipple: windowBgRipple;
historyToDownFg: menuIconFg;
historyToDownFgOver: menuIconFgOver;
historyToDownShadow: #00000040;
historyComposeAreaBg: msgInBg;
historyComposeAreaFg: historyTextInFg;
historyComposeAreaFgService: msgInDateFg;
historyComposeIconFg: menuIconFg;
historyComposeIconFgOver: menuIconFgOver;
historySendIconFg: windowBgActive;
historySendIconFgOver: windowBgActive;
historyPinnedBg: historyComposeAreaBg;
historyReplyBg: historyComposeAreaBg;
historyReplyIconFg: windowBgActive;
historyReplyCancelFg: cancelIconFg;
historyReplyCancelFgOver: cancelIconFgOver;
historyComposeButtonBg: historyComposeAreaBg;
historyComposeButtonBgOver: windowBgOver;
historyComposeButtonBgRipple: windowBgRipple;
overviewCheckBg: #00000040;
overviewCheckFg: windowBg;
overviewCheckFgActive: windowBg;
overviewPhotoSelectOverlay: #40ace333;
profileStatusFgOver: #7c99b2;
profileVerifiedCheckBg: windowBgActive;
profileVerifiedCheckFg: windowFgActive;
profileAdminStartFg: windowBgActive;
notificationsBoxMonitorFg: windowFg;
notificationsBoxScreenBg: dialogsBgActive;
notificationSampleUserpicFg: windowBgActive;
notificationSampleCloseFg: #d7d7d7; // windowSubTextFg;
notificationSampleTextFg: #d7d7d7; // windowSubTextFg;
notificationSampleNameFg: #939393; // windowSubTextFg;
mainMenuBg: windowBg;
mainMenuCoverBg: dialogsBgActive;
mainMenuCoverFg: windowFgActive;
mediaPlayerBg: windowBg;
mediaPlayerActiveFg: windowBgActive;
mediaPlayerInactiveFg: sliderBgInactive;
mediaPlayerDisabledFg: #9dd1ef;
mediaviewFileBg: windowBg;
mediaviewFileNameFg: windowFg;
mediaviewFileSizeFg: windowSubTextFg;
mediaviewFileRedCornerFg: #d55959;
mediaviewFileYellowCornerFg: #e8a659;
mediaviewFileGreenCornerFg: #49a957;
mediaviewFileBlueCornerFg: #599dcf;
mediaviewFileExtFg: activeButtonFg;
mediaviewMenuBg: #383838;
mediaviewMenuBgOver: #505050;
mediaviewMenuBgRipple: #676767;
mediaviewMenuFg: windowFgActive;
mediaviewBg: #222222eb;
mediaviewVideoBg: imageBg;
mediaviewControlBg: #0000003c;
mediaviewControlFg: windowFgActive;
mediaviewCaptionBg: #11111180;
mediaviewCaptionFg: mediaviewControlFg;
mediaviewTextLinkFg: #91d9ff;
mediaviewSaveMsgBg: toastBg;
mediaviewSaveMsgFg: toastFg;
mediaviewPlaybackActive: #c7c7c7;
mediaviewPlaybackInactive: #252525;
mediaviewPlaybackActiveOver: #ffffff;
mediaviewPlaybackInactiveOver: #474747;
mediaviewPlaybackProgressFg: #ffffffc7;
mediaviewPlaybackIconFg: mediaviewPlaybackActive;
mediaviewPlaybackIconFgOver: mediaviewPlaybackActiveOver;
mediaviewTransparentBg: #ffffff;
mediaviewTransparentFg: #cccccc;
notificationBg: windowBg;

View File

@@ -0,0 +1,14 @@
// This is a list of your own shortcuts for Telegram Desktop
// You can see full list of commands in the 'shortcuts-default.json' file
// Place a null value instead of a command string to switch the shortcut off
[
// {
// "command": "close_telegram",
// "keys": "ctrl+f4"
// },
// {
// "command": "quit_telegram",
// "keys": "ctrl+q"
// }
]

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,531 @@
body {
margin: 0;
font: 12px/18px 'Open Sans',"Lucida Grande","Lucida Sans Unicode",Arial,Helvetica,Verdana,sans-serif;
}
strong {
font-weight: 700;
}
code, kbd, pre, samp {
font-family: Menlo,Monaco,Consolas,"Courier New",monospace;
}
code {
padding: 2px 4px;
font-size: 90%;
color: #c7254e;
background-color: #f9f2f4;
border-radius: 4px;
}
pre {
display: block;
margin: 0;
line-height: 1.42857143;
word-break: break-all;
word-wrap: break-word;
color: #333;
background-color: #f5f5f5;
border-radius: 4px;
overflow: auto;
padding: 3px;
border: 1px solid #eee;
max-height: none;
font-size: inherit;
}
.clearfix:after {
content: " ";
visibility: hidden;
display: block;
height: 0;
clear: both;
}
.pull_left {
float: left;
}
.pull_right {
float: right;
}
.page_wrap {
background-color: #ffffff;
color: #000000;
}
.page_wrap a {
color: #168acd;
text-decoration: none;
}
.page_wrap a:hover {
text-decoration: underline;
}
.page_header {
position: fixed;
z-index: 10;
background-color: #ffffff;
width: 100%;
border-bottom: 1px solid #e3e6e8;
}
.page_header .content {
width: 480px;
margin: 0 auto;
border-radius: 0 !important;
}
.page_header a.content {
background-repeat: no-repeat;
background-position: 24px 21px;
background-size: 24px 24px;
}
.bold {
color: #212121;
font-weight: 700;
}
.details {
color: #70777b;
}
.page_header .content .text {
padding: 24px 24px 22px 24px;
font-size: 22px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.page_header a.content .text {
padding: 24px 24px 22px 82px;
}
.page_body {
padding-top: 64px;
width: 480px;
margin: 0 auto;
}
.page_about {
padding: 24px 24px;
}
.with_divider {
border-top: 1px solid #e3e6e8;
}
.userpic_link {
display: block;
text-decoration: none;
}
.userpic_link:hover {
text-decoration: none;
}
.userpic {
display: block;
border-radius: 50%;
overflow: hidden;
}
.userpic .initials {
display: block;
color: #fff;
text-align: center;
text-transform: uppercase;
user-select: none;
}
.color_red,
.userpic1,
.media_call .fill,
.media_file .fill,
.media_live_location .fill {
background-color: #ff5555;
}
.color_green,
.userpic2,
.media_call.success .fill,
.media_photo .fill {
background-color: #64bf47;
}
.color_yellow,
.userpic3,
.media_venue .fill {
background-color: #ffab00;
}
.color_blue,
.userpic4,
.media_audio_file .fill,
.media_voice_message .fill {
background-color: #4f9cd9;
}
.color_purple,
.userpic5,
.media_game .fill {
background-color: #9884e8;
}
.color_pink,
.userpic6,
.media_invoice .fill {
background-color: #e671a5;
}
.color_sea,
.userpic7,
.media_location .fill,
.media_video .fill {
background-color: #47bcd1;
}
.color_orange,
.userpic8,
.media_contact .fill {
background-color: #ff8c44;
}
.personal_info {
padding: 24px;
}
.personal_info .userpic .initials {
font-size: 30px;
}
.personal_info .rows {
float: left;
padding-right: 24px;
}
.personal_info .names {
width: 164px;
}
.personal_info .info {
width: 124px;
}
.personal_info .bio {
width: 400px;
}
.personal_info .row {
padding-bottom: 16px;
}
a.block_link {
display: block;
text-decoration: none !important;
border-radius: 4px;
}
a.block_link:hover {
text-decoration: none !important;
background-color: #f5f7f8;
}
.sections {
padding: 11px 0;
}
.section {
height: 48px;
background-position: 24px 12px;
background-repeat: no-repeat;
background-size: 24px 24px;
}
.section .counter {
float: right;
padding: 14px 24px 0;
font-size: 15px;
}
.section .label {
padding: 15px 0 0 82px;
font-size: 15px;
}
.list_page .page_about {
padding: 16px 24px 0;
font-size: 11px;
}
.list_page .entry_list {
padding: 16px 0;
}
.list_page .entry {
padding: 10px 16px;
}
.list_page .entry .userpic .initials {
font-size: 18px;
}
.list_page .entry .body {
margin-left: 66px;
}
.list_page .entry .name {
padding: 4px 0 2px;
font-size: 14px;
}
.list_page .entry .subname {
padding-top: 4px;
}
.list_page .entry .details_entry {
padding-top: 4px;
}
.list_page .entry .info {
font-size: 11px;
padding-top: 5px;
}
.history {
padding: 16px 0;
}
.message {
margin: 0 -10px;
transition: background-color 2.0s ease;
}
div.selected {
background-color: rgba(242,246,250,255);
transition: background-color 0.5s ease;
}
.service {
padding: 10px 24px;
}
.service .body {
text-align: center;
}
.service .userpic_wrap {
padding-top: 10px;
}
.service .userpic {
margin: 0 auto;
}
.service .userpic .initials {
font-size: 24px;
}
.message .userpic .initials {
font-size: 16px;
}
.default {
padding: 10px;
}
.default.joined {
margin-top: -10px;
}
.default .from_name {
color: #3892db;
font-weight: 700;
padding-bottom: 5px;
}
.default .from_name .details {
font-weight: normal;
}
.default .body {
margin-left: 60px;
}
.default .text {
word-wrap: break-word;
line-height: 150%;
}
.default .reply_to,
.default .media_wrap {
padding-bottom: 5px;
}
.default .media {
margin: 0 -10px;
padding: 5px 10px;
}
.default .media .fill,
.default .media .thumb {
width: 48px;
height: 48px;
border-radius: 50%;
}
.default .media .fill {
background-repeat: no-repeat;
background-position: 12px 12px;
background-size: 24px 24px;
}
.default .media .title,
.default .media_poll .question {
padding-top: 4px;
font-size: 14px;
}
.default .media .description {
color: #000000;
padding-top: 4px;
font-size: 13px;
}
.default .media .status {
padding-top: 4px;
font-size: 13px;
}
.default .video_file_wrap,
.default .animated_wrap {
position: relative;
}
.default .video_file,
.default .animated,
.default .photo,
.default .sticker {
display: block;
}
.video_duration {
background: rgba(0, 0, 0, .4);
padding: 0px 5px;
position: absolute;
z-index: 2;
border-radius: 2px;
right: 3px;
bottom: 3px;
color: #ffffff;
font-size: 11px;
}
.video_play_bg {
background: rgba(0, 0, 0, .4);
width: 40px;
height: 40px;
line-height: 0;
position: absolute;
z-index: 2;
border-radius: 50%;
overflow: hidden;
margin: -20px auto 0 -20px;
top: 50%;
left: 50%;
pointer-events: none;
}
.video_play {
position: absolute;
display: inline-block;
top: 50%;
left: 50%;
margin-left: -5px;
margin-top: -9px;
z-index: 1;
width: 0;
height: 0;
border-style: solid;
border-width: 9px 0 9px 14px;
border-color: transparent transparent transparent #fff;
}
.gif_play {
font-weight: 700;
color: #FFF;
display: block;
line-height: 40px;
font-size: 13px;
text-align: center;
}
.pagination {
text-align: center;
padding: 20px;
font-size: 16px;
}
.toast_container {
position: fixed;
left: 50%;
top: 50%;
opacity: 0;
transition: opacity 3.0s ease;
}
.toast_body {
margin: 0 -50%;
float: left;
border-radius: 15px;
padding: 10px 20px;
background: rgba(0, 0, 0, 0.7);
color: #ffffff;
}
div.toast_shown {
opacity: 1;
transition: opacity 0.4s ease;
}
.section.calls {
background-image: url(../images/section_calls.png);
}
.section.chats {
background-image: url(../images/section_chats.png);
}
.section.contacts {
background-image: url(../images/section_contacts.png);
}
.section.frequent {
background-image: url(../images/section_frequent.png);
}
.section.photos {
background-image: url(../images/section_photos.png);
}
.section.sessions {
background-image: url(../images/section_sessions.png);
}
.section.web {
background-image: url(../images/section_web.png);
}
.section.other {
background-image: url(../images/section_other.png)
}
.page_header a.content {
background-image: url(../images/back.png);
}
.media_call .fill {
background-image: url(../images/media_call.png)
}
.media_contact .fill {
background-image: url(../images/media_contact.png)
}
.media_file .fill {
background-image: url(../images/media_file.png)
}
.media_game .fill {
background-image: url(../images/media_game.png)
}
.media_live_location .fill,
.media_location .fill,
.media_venue .fill {
background-image: url(../images/media_location.png)
}
.media_audio_file .fill {
background-image: url(../images/media_music.png)
}
.media_invoice .fill {
background-image: url(../images/media_shop.png)
}
.media_voice_message .fill {
background-image: url(../images/media_voice.png)
}
.media_photo .fill {
background-image: url(../images/media_photo.png)
}
.media_video .fill {
background-image: url(../images/media_video.png)
}
@media only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {
.section.calls {
background-image: url(../images/section_calls@2x.png);
}
.section.chats {
background-image: url(../images/section_chats@2x.png);
}
.section.contacts {
background-image: url(../images/section_contacts@2x.png);
}
.section.frequent {
background-image: url(../images/section_frequent@2x.png);
}
.section.photos {
background-image: url(../images/section_photos@2x.png);
}
.section.sessions {
background-image: url(../images/section_sessions@2x.png);
}
.section.web {
background-image: url(../images/section_web@2x.png);
}
.section.other {
background-image: url(../images/section_other@2x.png);
}
.page_header a.content {
background-image: url(../images/back@2x.png);
}
.media_call .fill {
background-image: url(../images/media_call@2x.png)
}
.media_contact .fill {
background-image: url(../images/media_contact@2x.png)
}
.media_file .fill {
background-image: url(../images/media_file@2x.png)
}
.media_game .fill {
background-image: url(../images/media_game@2x.png)
}
.media_live_location .fill,
.media_location .fill,
.media_venue .fill {
background-image: url(../images/media_location@2x.png)
}
.media_audio_file .fill {
background-image: url(../images/media_music@2x.png)
}
.media_invoice .fill {
background-image: url(../images/media_shop@2x.png)
}
.media_voice_message .fill {
background-image: url(../images/media_voice@2x.png)
}
.media_photo .fill {
background-image: url(../images/media_photo@2x.png)
}
.media_video .fill {
background-image: url(../images/media_video@2x.png)
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 518 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 417 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 815 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 600 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 408 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 510 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 991 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 275 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 458 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 377 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 790 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 656 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 283 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 454 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 508 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1023 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 771 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 402 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 619 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 750 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 447 B

View File

@@ -0,0 +1,189 @@
"use strict";
window.AllowBackFromHistory = false;
function CheckLocation() {
var start = "#go_to_message";
var hash = location.hash;
if (hash.substr(0, start.length) == start) {
var messageId = parseInt(hash.substr(start.length));
if (messageId) {
GoToMessage(messageId);
}
} else if (hash == "#allow_back") {
window.AllowBackFromHistory = true;
}
}
function ShowToast(text) {
var container = document.createElement("div");
container.className = "toast_container";
var inner = container.appendChild(document.createElement("div"));
inner.className = "toast_body";
inner.appendChild(document.createTextNode(text));
var appended = document.body.appendChild(container);
setTimeout(function () {
AddClass(appended, "toast_shown");
setTimeout(function () {
RemoveClass(appended, "toast_shown");
setTimeout(function () {
document.body.removeChild(appended);
}, 3000);
}, 3000);
}, 0);
}
function ShowHashtag(tag) {
ShowToast("This is a hashtag '#" + tag + "' link.");
return false;
}
function ShowCashtag(tag) {
ShowToast("This is a cashtag '$" + tag + "' link.");
return false;
}
function ShowBotCommand(command) {
ShowToast("This is a bot command '/" + command + "' link.");
return false;
}
function ShowMentionName() {
ShowToast("This is a link to a user mentioned by name.");
return false;
}
function AddClass(element, name) {
var current = element.className;
var expression = new RegExp('(^|\\s)' + name + '(\\s|$)', 'g');
if (expression.test(current)) {
return;
}
element.className = current + ' ' + name;
}
function RemoveClass(element, name) {
var current = element.className;
var expression = new RegExp('(^|\\s)' + name + '(\\s|$)', '');
var match = expression.exec(current);
while ((match = expression.exec(current)) != null) {
if (match[1].length > 0 && match[2].length > 0) {
current = current.substr(0, match.index + match[1].length)
+ current.substr(match.index + match[0].length);
} else {
current = current.substr(0, match.index)
+ current.substr(match.index + match[0].length);
}
}
element.className = current;
}
function EaseOutQuad(t) {
return t * t;
}
function EaseInOutQuad(t) {
return (t < 0.5) ? (2 * t * t) : ((4 - 2 * t) * t - 1);
}
function ScrollHeight() {
if ("innerHeight" in window) {
return window.innerHeight;
} else if (document.documentElement) {
return document.documentElement.clientHeight;
}
return document.body.clientHeight;
}
function ScrollTo(top, callback) {
var html = document.documentElement;
var current = html.scrollTop;
var delta = top - current;
var finish = function () {
html.scrollTop = top;
if (callback) {
callback();
}
};
if (!window.performance.now || delta == 0) {
finish();
return;
}
var transition = EaseOutQuad;
var max = 300;
if (delta < -max) {
current = top + max;
delta = -max;
} else if (delta > max) {
current = top - max;
delta = max;
} else {
transition = EaseInOutQuad;
}
var duration = 150;
var interval = 7;
var time = window.performance.now();
var animate = function () {
var now = window.performance.now();
if (now >= time + duration) {
finish();
return;
}
var dt = (now - time) / duration;
html.scrollTop = Math.round(current + delta * transition(dt));
setTimeout(animate, interval);
};
setTimeout(animate, interval);
}
function ScrollToElement(element, callback) {
var header = document.getElementsByClassName("page_header")[0];
var headerHeight = header.offsetHeight;
var html = document.documentElement;
var scrollHeight = ScrollHeight();
var available = scrollHeight - headerHeight;
var padding = 10;
var top = element.offsetTop;
var height = element.offsetHeight;
var desired = top
- Math.max((available - height) / 2, padding)
- headerHeight;
var scrollTopMax = html.offsetHeight - scrollHeight;
ScrollTo(Math.min(desired, scrollTopMax), callback);
}
function GoToMessage(messageId) {
var element = document.getElementById("message" + messageId);
if (element) {
var hash = "#go_to_message" + messageId;
if (location.hash != hash) {
location.hash = hash;
}
ScrollToElement(element, function () {
AddClass(element, "selected");
setTimeout(function () {
RemoveClass(element, "selected");
}, 1000);
});
} else {
ShowToast("This message was not exported. Maybe it was deleted.");
}
return false;
}
function GoBack(anchor) {
if (!window.AllowBackFromHistory) {
return true;
}
history.back();
if (!anchor || !anchor.getAttribute) {
return true;
}
var destination = anchor.getAttribute("href");
if (!destination) {
return true;
}
setTimeout(function () {
location.href = destination;
}, 100);
return false;
}

View File

@@ -0,0 +1,57 @@
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<dir>/usr/share/fonts</dir>
<dir>/usr/local/share/fonts</dir>
<dir>~/.fonts</dir>
<dir>~/.local/share/fonts</dir>
<dir>/usr/X11R6/lib/X11/fonts</dir>
<dir prefix="xdg">fonts</dir>
<match target="pattern">
<test qual="any" name="family">
<string>mono</string>
</test>
<edit name="family" mode="assign" binding="same">
<string>monospace</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>sans serif</string>
</test>
<edit name="family" mode="assign" binding="same">
<string>sans-serif</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>sans</string>
</test>
<edit name="family" mode="assign" binding="same">
<string>sans-serif</string>
</edit>
</match>
<cachedir>/var/cache/fontconfig_11</cachedir>
<cachedir prefix="xdg">fontconfig_11</cachedir>
<cachedir>~/.fontconfig_11</cachedir>
<match target="font">
<edit mode="assign" name="antialias">
<bool>true</bool>
</edit>
<edit mode="assign" name="embeddedbitmap">
<bool>false</bool>
</edit>
<edit mode="assign" name="hinting">
<bool>true</bool>
</edit>
<edit mode="assign" name="hintstyle">
<const>hintslight</const>
</edit>
<edit mode="assign" name="lcdfilter">
<const>lcddefault</const>
</edit>
<edit mode="assign" name="rgba">
<const>rgb</const>
</edit>
</match>
</fontconfig>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 380 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 708 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 579 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 590 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 825 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 B

Some files were not shown because too many files have changed in this diff Show More