Commit Graph

1204 Commits

Author SHA1 Message Date
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 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 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 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
23rd 8b1ac9fa6e Fixed skipping message with MediaWebPage on KeyUp. 2018-12-04 20:01: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 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 0a754b8982 Adding emoji in SendFilesBox and EditCaptionBox. 2018-11-22 16:48:50 +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 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 c522e047c6 Fix crash in support switches. 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 4960e08a24 Display occupied chats using drafts for support. 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 36b702702b Support [inputN|n]otifyBroadcasts setting. 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 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
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 784b0a2248 Revert "Show invite link owner in service message."
This reverts commit 27103889a4.
2018-11-08 17:17:00 +04:00
John Preston a2b04c9d71 Improve checks for a hidden webpage url. 2018-11-07 14:55:38 +04:00
John Preston 27103889a4 Show invite link owner in service message. 2018-11-07 14:28:35 +04:00
John Preston 5f665b8ecb Add a comment field to ShareBox. 2018-11-04 15:58:32 +04:00
John Preston 617d21129f Show confirmation on hidden webpage url. 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 e6c4c48261 Animate check in album sending. 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 fd4dedcbdf Use good video thumbnail in albums. 2018-11-04 15:51:39 +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 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 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 f2866442d2 Fix location thumb image sizes 2018-10-16 17:32:12 +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 b847c8424a Use single emoji sprite and scale + cache it. 2018-10-15 09:03:29 +03:00
John Preston e896971fa4 Allow instant template selection (support). 2018-10-11 19:07:37 +03:00
John Preston 3992cea084 Draw map point on HistoryLocation. 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 ee8819681f Don't jump to unread from chat bottom (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 ccaec28d0b Read and autocomplete templates (support). 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 20e303d3e6 Read chats only on sending (support). 2018-10-09 19:27:16 +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 9b85dd27ca Allow to choose one of four default themes. 2018-09-26 14:36:55 +03:00
John Preston 2e5a0e056c Move to std::optional. 2018-09-21 19:28:46 +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 53219bcf70 Fix two bugs with supergroup history disappearing. 2018-09-20 10:02:02 +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
23rd e966213ff8 Added shortcut to open dialog for attachements. 2018-09-19 12:25:16 +03:00
John Preston 2e7f4c2f21 Use Storage::Cache::Database for file caching. 2018-09-01 18:56:08 +03:00
John Preston ec61aa0080 Edit last non-service message on KeyUp. 2018-08-22 09:50:36 +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 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 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 7f16675d2f Fix via @bot display in Saved Messages.
Fixes #5034.
2018-08-02 17:46:49 +03:00
John Preston ca6a331a26 Don't close send files box by outside click. 2018-07-31 22:56:04 +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 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 2661f81fd1 Fix field bar cancel button visibility.
Fixes #4913.
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 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 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 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 bf775cb4ca Fix history items cleanup. 2018-06-09 11:52:37 +03:00
John Preston cd1c7c56d3 Skip old and currently-sending draft updates. 2018-06-08 23:06:26 +03:00
John Preston 2a110f0d3e Improve passport styles. 2018-06-08 22:26:08 +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 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 9ebeddbed8 Request, show and require accept for updated ToS. 2018-06-06 21:37:01 +03:00
John Preston 87c07a13a1 Display sticker date on mouse over.
Fixes #3636.
2018-06-06 12:46:17 +03:00
John Preston 1d1bd5e1e7 Fix reply-returns in just sent messages. 2018-06-04 19:58:35 +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 6aecb81c23 Update scheme, special scans for identity type. 2018-06-03 23:16:38 +03:00
John Preston 67ea175fc6 Show choose file box over the passport panel. 2018-06-03 23:16:37 +03:00
John Preston 362b3bc578 Add bot message secure-values-sent phrases. 2018-06-03 23:16:36 +03:00
John Preston d0e854e9d8 Allow showing boxes in passport panel. 2018-06-03 23:16:35 +03:00
John Preston 083b520eee Update API scheme. 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 b64bbc7708 Fix stickers with large info string layout.
Fixes #4781.
2018-06-03 21:33:24 +03:00
John Preston 80be464d95 Handle ToS correctly when signing up. 2018-06-01 21:04:54 +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 734c410879 New notifications API, defaults for users/chats. 2018-05-30 18:44:46 +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 becbad32c9 Hide stickers by emoji when editing message. 2018-05-27 13:46:47 +03:00
John Preston 07d8dafa5e Allow inserting links with custom text.
Fixes #4737.
2018-05-26 18:07:51 +03:00
John Preston 3ac50cf77f Move message text to send media box caption field. 2018-05-24 17:57:41 +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 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 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 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 168a7ce2e5 Add "Suggest emoji replacements" checkbox.
Also emoji suggestions insert an instant emoji replacement.
2018-05-13 18:56:08 +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 e3c6abfc3d Fix possible crash in reply returns. 2018-05-10 14:56:36 +03:00
John Preston 4d84781a65 Display connecting state in history top bar. 2018-05-10 13:16:21 +03:00
John Preston 4a9db99082 Use application level proxy settings. 2018-05-05 21:55:37 +03:00
John Preston 87d6081408 Version 1.2.16: Fix build in Xcode 9.3. 2018-04-07 12:47:08 +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 67bda19458 Fix inline bot messages with previews. 2018-03-26 02:01:13 +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 63098d3c7d Work better with 'unlimited' config time limits. 2018-03-26 00:18:14 +04:00
John Preston d6e1862c08 Fix crash in AdminLog view with deleted delegates. 2018-03-22 02:27:14 +04:00
John Preston 27ce1f8d44 Show something inside an 'empty' message. 2018-03-20 18:51:51 +04:00
John Preston 3406f88fdc Single place for joining channels, in ApiWrap. 2018-03-20 01:09:03 +04:00
John Preston 0d415837a0 Destroy old info button in top bar widget.
Fixes #4503.
2018-03-15 18:22:55 +03:00
John Preston 7a849b2899 Fix crash on album parts being deleted. 2018-03-13 13:54:24 +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 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 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
John Preston bb35d71fdc Attempt to fix access to a deleted item view. 2018-03-10 15:47:19 +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 76cb5677b2 Fix webpage edit display in channel admin log. 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 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 2b9133be90 Don't remove field focus on empty text selection.
Fixes #4467.
2018-03-08 16:03:59 +03:00
John Preston 61700577d0 Fix possible crash with invalidated views. 2018-03-08 13:47:31 +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 b930ac7bf9 Don't add unread mentions in channels. 2018-03-03 16:09:31 +03:00
John Preston d4253d2025 Fix reply previews display. 2018-03-03 15:55:53 +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 a285dca39e Apply webpage media from sent message via bot. 2018-02-24 02:46:35 +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 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 ddab8c1473 Fix fast share button hover area. 2018-02-18 16:22:58 +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 0f775e1e66 Support feeds search display in dialogs list. 2018-02-14 23:18:21 +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 906cb95e67 Channels list in feed info with leave channel. 2018-02-10 01:14:26 +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 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 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 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 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 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 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 46612ef128 Remove Notify::userIsContactChanged().
Replace with Notify::peerUpdatedDelayed().
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 f88cbf3d4b Fix crash in case of incorrect Text entities. 2018-02-08 12:20:45 +03:00
John Preston ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +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 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 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 59e5ffe743 Don't insert mime text in field for url list.
Fixes #4241.
2017-12-29 17:58:32 +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 f2d11e7432 Fix video grouped thumb on Retina displays. 2017-12-27 22:16:26 +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 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 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 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 3b3a705a67 First working code for sending albums. 2017-12-26 19:20:06 +03:00
John Preston e023092744 Use RectPart(s) instead of ImageRoundCorner(s). 2017-12-18 21:54:11 +04:00
John Preston 3f751bfbb0 Activate window on dropEvent. 2017-12-18 20:25:24 +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 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 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 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 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 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 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 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 6d62673e9e Fix crash in HistoryWidget. 2017-12-09 22:21:38 +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 951db83ab6 Index bad audio files to Shared Files Overview.
Fixes #4120.
2017-12-08 19:53:04 +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 f8963d7e4b Read silent flag from PeerData, not SilentToggle. 2017-12-08 15:52:12 +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 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 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 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 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 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 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 f3c8da4819 Request all admins when first opening a supergroup. 2017-12-03 20:43:42 +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 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 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 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 2e972fb678 Hide "Delete for {user}" in chats with bots.
Fixes #3818.
2017-11-30 15:06:30 +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 196ff7f4c1 Don't apply count from getParticipants(Recent). 2017-11-28 22:30:01 +04:00
John Preston a63abe5154 Add some more crash debug information. 2017-11-28 14:05:11 +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 20c9280ada Add some more debug info for crashes. 2017-11-24 21:41:31 +04:00
John Preston 0ced28f991 Nice animations when selecting shared media items. 2017-11-24 19:47:09 +04:00
John Preston efdba3a482 Handle errors in getMessages(). 2017-11-23 19:41:13 +04:00
John Preston f477aea2a5 Add some more debug info for crashes. 2017-11-22 15:10:11 +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 6ca105a290 Minimal layer 72 support. 2017-11-20 23:54:05 +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 88d7f172ca Improve unread counter for HistoryTopBarWidget. 2017-11-17 18:54:01 +04:00
John Preston cf977cb41a Improve history -> profile top bar navigation. 2017-11-16 19:24:01 +04:00
John Preston 830c6a4894 Replace PeerAvatarButton with UserpicButton. 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 fe9630bb20 Allow to resize third column. 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 dbb011fc56 Add members link in info for channel admins. 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 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 8191ebfc49 Improve peer context menu for info. 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 47a52b0587 Moved several modules from history/ to data/. 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 aec496d520 Remove RTL Override symbols from filenames. 2017-11-16 07:59:09 +04:00
John Preston 39c5898fa4 Save media search state to memento. 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 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 54cc3e6315 Shared media multiple items selection. 2017-11-16 07:59:07 +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 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 76b8078bd9 Save section expand state in Info memento. 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 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 6861059d18 Fix build for old OS X with Qt 5.3.2 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 086e46c162 Add and use only rpl::start_with_*() methods. 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 b9fb9af74f Info shared media and common groups counters. 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 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 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 766e7dadb1 Use improved 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 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 d46a5f693f Remove unused lang phrases and some code. 2017-09-28 19:18:27 +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
John Preston 7ae1ef0a1a Migrate to VS2017. 2017-09-06 17:11:06 +03:00
John Preston c09fbcfeb3 Display author photo / name in search results. 2017-09-05 20:21:56 +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 df64c972d8 Replace QFlags with base::flags. 2017-09-03 15:45:47 +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 5964261db5 Allow to view sticker set from admin event log. 2017-08-30 19:15:47 +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 e13ed9b909 Remove main()->peerUpdated and some other signals. 2017-08-30 19:15:36 +03:00
John Preston 7df63db9b3 Hide "Ban Users" admin rights changes in channels. 2017-08-30 19:15:32 +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 012d59ab42 Use nullptr instead of std::unique_ptr<Type>(). 2017-08-30 19:15:25 +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 e209737b1a Display and follow unread mentions in history. 2017-08-30 19:15:13 +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 b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +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 cb5b6d0cb8 Add megagroup stickerset to StickersListWidget. 2017-08-25 14:39:13 +03:00
John Preston 070456882e Manage faved stickers from sticker context menu. 2017-08-25 14:39:09 +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 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 2dec9c46a7 Add emoji autocomplete to history message field. 2017-07-26 15:55:02 +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 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 cf02a4cc31 API scheme updated to layer 70. 2017-07-23 12:34:40 +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 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 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 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 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 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 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 c79561e97f Add a couple of actions log phrases for channels. 2017-07-12 16:34:13 +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 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 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 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 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 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 6d3a6d20b5 Version 1.1.10: Fix build for Xcode and GCC. 2017-07-04 19:17:44 +03:00
John Preston 0ae661edf0 Add channel / supergroup admin event log filter. 2017-07-04 16:31:18 +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
John Preston 305e15dd03 Fix service message date in admin event log. 2017-07-02 22:26:23 +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 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 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 2a51e2aa59 Workaround GCC bug and fix Linux build. 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 75fdd5315f Add some more colors for theming. 2017-06-30 09:21:44 +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 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 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 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 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 7d2d5c6100 Edit admin and restricted rights in channels. 2017-06-29 11:40:11 +03:00
John Preston 330b4a0b00 API scheme updated to layer 68. 2017-06-29 11:40:08 +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 110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +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 3f3b9f3608 Show date from fwdHeader on tooltip
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-28 19:21:34 +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 e0978f86d1 Alpha 1.1.3: Fix some render in macOS. 2017-05-24 17:36:58 +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 b7550f63c9 Add a floating player for round video messages. 2017-05-24 16:25:15 +03:00
John Preston 6bde8cdce4 Remove legacy debug information. 2017-05-24 16:25:13 +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 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 5915f3f928 Display radial playback progress in round videos. 2017-05-24 16:25:07 +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 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 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
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 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 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 2e816f2a67 Play notification sound using Media::Audio::Track. 2017-05-09 23:46:30 +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 60ac7572af Display name, status and emoji in Call Panel. 2017-05-09 23:46:17 +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 a925822141 Generate and handle new video message links. 2017-04-30 16:43:19 +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 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 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 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 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