Commit Graph

494 Commits

Author SHA1 Message Date
John Preston fb244c00b9 Fix local history clearing. 2019-04-08 13:16:45 +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 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 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
John Preston cd3c1c6dc0 Use new animations engine for typings. 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 d3bf489bea Improve base::binary_guard interface. 2019-04-02 14:33:52 +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 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 3bd1bbc77a Use Streaming::Player in video messages playback. 2019-03-26 16:51:39 +04:00
John Preston bb2e683dea Fix leaving channels and supergroups.
Fixes #5838.
2019-03-25 15:52:30 +04:00
John Preston eb1825defd Add revoking of full history. 2019-03-24 12:12:44 +04:00
John Preston a34e998c42 Handle fwd_from without a link to the account. 2019-03-24 12:12:42 +04:00
John Preston 0cd7399dc9 Update API scheme to layer 96. 2019-03-24 12:12:41 +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 2aecd1035e Removed "Export history" from context menu for empty chats. 2019-03-22 13:38:09 +04:00
John Preston 8acd47bf2f Fix pre-history visibility rights check. 2019-03-20 13:22:58 +04:00
John Preston 2ebbf062d0 Show webpage with embed_url as a video. 2019-03-19 13:21:13 +04:00
John Preston d646de7184 Add button to download audio files. 2019-03-15 16:09:05 +04:00
John Preston 5ec37e9112 Use separate click handler for OpenWith. 2019-03-13 13:35:47 +04:00
John Preston aa1090a585 Fix text disappearing in support mode. 2019-03-12 16:54:15 +04:00
John Preston 13a9b967e9 Use user phrases for support accounts. 2019-03-12 14:38:59 +04:00
John Preston 2a3a38531b Fix photo inline result sending.
Fixes #5594.
2019-03-12 13:49:16 +04:00
John Preston c063d94aa5 Remove DocumentData::actionOnLoad. Fix GIF open. 2019-03-11 19:07:35 +04:00
John Preston b0ff443eac Fix sending of saved GIFs. 2019-03-11 12:08:21 +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 6887993f92 Report streaming failed. 2019-03-11 12:08:13 +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 8171828c2a Fix build on GCC. 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 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 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 473e30e594 Basic code for media streaming + testing on music. 2019-03-11 11:49:21 +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
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 c9716f3c72 Make crl::object_on_queue usages consistent. 2019-02-17 15:09:01 +04:00
John Preston 032694ad9e Move files to media/audio and media/clip. 2019-02-13 15:41:33 +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 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 d3159d86da Version 1.5.12: Fix manual loading GIFs to cache. 2019-02-09 18:00:48 +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 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 4d9464ed87 Remove flags checking for backgrounds.
Also limit image size to 2960px.

Fixes #5641.
2019-02-04 18:53:00 +03:00
John Preston f0c4868b3e Ignore default banned rights for channel admins.
Fixes #5640.
2019-02-01 15:50:57 +03:00
John Preston 3cfc3dcecf Mark even more extensions as executables. 2019-01-30 17:59:55 +03:00
John Preston 4c289fc8fb Fix add members button in channels. 2019-01-30 13:49:36 +03:00
John Preston 5ca12a73c3 Use new HistoryWallPaper media type for wallpaper. 2019-01-29 19:26:19 +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 bf87de3706 Fix removing chats from dialogs. 2019-01-22 17:05:06 +04:00
John Preston 6e0d62bb65 Re-apply document thumb only for stickers. 2019-01-21 17:43:24 +04:00
John Preston 805e4d01e7 Allow re-downloading failed media. 2019-01-21 10:49:44 +04:00
John Preston 314e30272b Replace SingleTimer with base::Timer. 2019-01-18 16:41:08 +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 0f9c2a62fe Load fullres images of new wallpapers. 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 22f1ffc72b Use different phrases for default restrictions. 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 67d12fa6d2 Improve update handling for legacy chats. 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 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 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 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 e2668e7cfa Default auto-download 8 MB files. 2018-12-27 09:24:46 +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
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 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 6f176803d4 Reload poll data each 30 seconds without update. 2018-12-24 21:03:53 +04:00
John Preston fb7ac874f0 Show poll question in pinned bar. 2018-12-24 13:25:02 +04:00
John Preston 93c8e9aa1f Add poll vote sending animation. 2018-12-22 23:32:04 +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 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 eb7201a55b Strictly match message / media types. 2018-12-21 17:09:30 +04:00
John Preston b75442a10e No warning from verified peers. 2018-12-07 20:19:47 +04:00
John Preston 2d1971123a Always add 'Saved messages' to index. 2018-12-05 14:41:54 +04:00
John Preston b10ccce44a Warn before running executable files. 2018-12-05 12:30:05 +04:00
John Preston 6562a1f6af Add 'Count unread messages' option. 2018-12-04 14:32:48 +04:00
John Preston 3461f3dfc7 Destroy file loaders not delayed. 2018-11-26 11:33:29 +04:00
John Preston 3f58c930e3 Use separate download folder for support. 2018-11-22 17:15:52 +04:00
John Preston 21fab77c4b Add support for incomplete login attempts. 2018-11-20 19:50:36 +04:00
John Preston 4960e08a24 Display occupied chats using drafts for support. 2018-11-20 19:38:39 +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 78da810114 Extend pinned messages support.
Support them in saved messages and normal groups.
2018-11-16 20:17:58 +04:00
23rd 00969df06f Made isAudioFile() check more strictly.
Thanks John Preston.
2018-11-15 09:43:39 +04:00
John Preston aba6cc2c64 Don't force WEBP format for stickers.
Fixes #5374.
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 f1c06d6743 Store StickerData::image in unique_ptr. 2018-11-09 19:16:47 +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 ef38572d5a Detect and send supports_streaming bit for videos. 2018-11-07 18:10:00 +04:00
John Preston 53a719e1b1 Display round videos in shared voice messages. 2018-11-05 12:22:09 +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 f2348fc749 Fix document unloading. 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 4837117719 Use photo as video thumbnail in WebPageData. 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 251f51ca1b Show collage/slideshow as an album in web page. 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 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 b847c8424a Use single emoji sprite and scale + cache it. 2018-10-15 09:03:29 +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 9f90d3a7fc Load maps using mtproto instead of google. 2018-10-09 19:27:18 +03:00
John Preston 1411dfb711 Add autoupdating for templates (support). 2018-10-09 19:27:17 +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 a7772b922c Improve sticker file reference refreshing. 2018-09-26 21:23:08 +03:00
John Preston 2e5a0e056c Move to std::optional. 2018-09-21 19:28:46 +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 4b87363a20 Check value size before putting to cache db. 2018-09-04 22:37:22 +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 2e7f4c2f21 Use Storage::Cache::Database for file caching. 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 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 8cc0fbc687 Fix unmute-by-finished timers.
Fixes #5039.
2018-08-01 19:58:50 +03:00
John Preston 097424c535 Fix request pending webpage. 2018-07-31 22:56:05 +03:00
John Preston a99ae76ad4 Allow single chat history export. 2018-07-31 22:56:03 +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
John Preston e3e8d083ea Remember passport credentials for 30 minutes. 2018-07-11 17:56:07 +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 e21c354428 Improve suggest export logic. 2018-06-28 18:44:07 +01:00
John Preston 35c759c6bc Mark [un]read from chats list. 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 fcd2e28abb Add some logs. 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 a200771868 Don't suggest export if one is running. 2018-06-24 15:44:53 +01:00
John Preston 0143fd28af Suggest start export when time comes. 2018-06-23 00:56:53 +01:00
John Preston 36fb6dac89 Call finish takeout. Handle errors. 2018-06-21 14:50:56 +01:00
John Preston 154e5660de Confirm export stop on quit and logout. 2018-06-20 18:30:57 +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 0e9793b845 Move MimeType from utils to core/mime_type.
Also move to Core namespace.
2018-06-14 01:08:47 +03:00
John Preston cd1c7c56d3 Skip old and currently-sending draft updates. 2018-06-08 23:06:26 +03:00