Commit Graph

642 Commits

Author SHA1 Message Date
John Preston b3f5973329 Fix possible crash in calendar box. 2019-05-28 14:33:42 +02:00
23rd 62a6812259 Added ability to update pinned dialogs. 2019-05-27 15:34:59 +02:00
23rd b2e5ab36d4 Moved shadow drawing from paintEvent in MainMenu::refreshBackground. 2019-05-27 14:10:36 +02:00
23rd 159f90a42c Added background analysis in main menu for better readability. 2019-05-27 14:10:36 +02:00
23rd 08a3a5747a Added custom background to top of main menu. 2019-05-27 14:10:36 +02:00
23rd dc27bfff2d Fixed elision of user name in side menu. 2019-05-16 11:58:28 +03:00
John Preston 4356b1c193 Allow collapsing archive in the chats list. 2019-05-03 15:08:53 +04:00
John Preston 5f1cb9d31c Put archive action on top of the menu. 2019-05-01 17:10:11 +04:00
John Preston edf4180d11 Don't suggest to archive Saved Messages. 2019-05-01 16:11:47 +04:00
John Preston 7669b8e12b Don't suggest to archive proxy sponsor. 2019-05-01 16:11:45 +04:00
John Preston ee5c819cef Fix render glitch in archive top bar. 2019-05-01 16:11:43 +04:00
John Preston 08bddc5579 Move messages data to AuthSession. 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 48ad171a29 Clear chats list context menu a bit. 2019-05-01 16:11:41 +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 9ff02707bf Improve archive chat list entry layout. 2019-05-01 16:11:38 +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 518ff146b2 Don't allow reordering of the archive. 2019-05-01 16:11:36 +04:00
John Preston 854870683b Add ability to archive/unarchive the chats. 2019-05-01 16:11:35 +04:00
John Preston 0c0d6bc411 Move chats / contacts lists to Data::Session. 2019-05-01 16:11:33 +04:00
John Preston 9bf8a8108d Comment out non-folder feed code. 2019-04-25 14:16:30 +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
23rd 49681525ed Added alignment of unread badge with userpic in history widget. 2019-04-09 17:16:46 +04:00
John Preston ff51423125 Remove ExpandLinksNone, rename Text::originalText. 2019-04-08 15:53:11 +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
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 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
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 eb1825defd Add revoking of full history. 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 b972da059a Show explaining preview of forwards privacy. 2019-03-24 12:12:42 +04:00
23rd 8887272577 Refactored code. Removed unused code.
- Deleted manage_peer_box from sources.
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 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 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 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 13a9b967e9 Use user phrases for support accounts. 2019-03-12 14:38:59 +04:00
John Preston c063d94aa5 Remove DocumentData::actionOnLoad. Fix GIF open. 2019-03-11 19:07:35 +04:00
John Preston 9a616edf2a Add new animations engine. 2019-03-11 12:08:17 +04:00
John Preston 8171828c2a Fix build on GCC. 2019-03-11 12:08:09 +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 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
John Preston fe618bd652 Use crl::time/now instead of TimeMs/getms. 2019-02-19 11:06:33 +04:00
23rd 193e454fd4 Fixed sending polls as reply to other messages.
Fixes #5550.
2019-02-17 15:55:44 +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 032694ad9e Move files to media/audio and media/clip. 2019-02-13 15:41:33 +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 26f1ade5ba Optimize connecting widget. 2019-02-10 21:35:44 +03:00
John Preston b6e37b7730 Allow removing cloud wallpapers. 2019-02-09 16:36:07 +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 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 d1cc09f40e Destroy layers in reverse order. 2019-02-01 11:47:30 +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 2eb6848eb8 Fix background preview on retina screens. 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 f506a5ea6c Save wallpaper settings locally. 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 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 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 3c44bdb6b7 Support auto-migrate to supergroups. 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 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 f4d52b82b4 Allow reusing permissions edit controls. 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 d2d6b319b6 Update API scheme to layer 93. Broken. 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 0d290a2c28 Fix emoji icon in theme preview.
Fixes #5561.
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 2cd3cec478 Go through open history in support mode. 2019-01-11 17:30:00 +04:00
John Preston e397f72eb2 Lock poll creating.
Fixes #5504.
2018-12-23 20:47:00 +04:00
John Preston 4e692e2c1e Version 1.5.3: Fix build for GCC. 2018-12-23 01:31:12 +04:00
John Preston b6f7832745 Add create poll box from groups three-dot menu. 2018-12-22 10:29:03 +04:00
John Preston 7960706e60 Update API scheme to layer 90. 2018-12-17 11:01:30 +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 3904a9f9a0 Add guard in layers destruction. 2018-12-11 17:12:35 +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 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 0b619e50ba HistoryHider moved to Window namespace. 2018-11-28 15:48:35 +04:00
John Preston 338129faea Destroy boxes in Ui::hideLayer(). 2018-11-26 15:00:31 +04:00
John Preston 23dc9ef494 Destroy layers not delayed. 2018-11-26 11:33:29 +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 b3ffbeb63e Improve code for Shortcuts handling. 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 4960e08a24 Display occupied chats using drafts for support. 2018-11-20 19:38:39 +04:00
John Preston 5163905954 Add a Delete/Share menu for unofficial languages. 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 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 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 3646301ce4 Fix build for old OS X versions. 2018-11-08 14:48:15 +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 8eb0f3b60a Remove some unneeded Q_OBJECTs. 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 6db4972208 Fix blurry App Switcher icon on macOS.
Fixes #5267.
2018-11-04 15:51:38 +04:00
John Preston 595134cab5 Move image-related modules to ui/image/. 2018-11-04 15:51:37 +04:00
John Preston 113f665295 Move Image and derived to ui/image. 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
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 19a9a990b6 Allow using any interface scale between 100%-300%. 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 81a9554caa Move some settings to the main menu (support). 2018-10-09 19:27:18 +03:00
John Preston a27e9ad734 Use black icon for support mode (support). 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 29432d5d6a Remove some unused themes code. 2018-10-09 19:27:16 +03:00
John Preston a949c5e287 Fix crash in theme applying. 2018-09-26 16:06:30 +03:00
John Preston 9b85dd27ca Allow to choose one of four default themes. 2018-09-26 14:36:55 +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 1ffbec0215 Finish animations disabling.
Replace some infinite animations with static layouts.
2018-09-20 21:26:10 +03:00
John Preston 62ffd93cb7 New icons for the main menu. 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 c2039da600 Improve new settings design. 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 2f408cd773 Remove old 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 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 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 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
John Preston 839885910c Pass FileOrigin in all file downloads. 2018-08-20 17:26:28 +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 36b7c1c720 Fix default night mode applying. 2018-08-02 17:46:49 +03:00
John Preston f852813734 Improved night mode switching. 2018-07-31 22:56:04 +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 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 b697824540 When following a post link push reply-return.
Fixes #4856.
2018-07-11 17:56:06 +03:00
John Preston 3b956c598b Fix data export window theme changing.
Fixes #4902.
2018-06-28 04:39:10 +01:00
John Preston 35c759c6bc Mark [un]read from chats list. 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 ae18ece549 Ask export path with other export options. 2018-06-23 00:56:53 +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 c587c011d2 Start data export in lib_export. 2018-06-12 01:02:04 +03:00
John Preston 35659536c5 Fix first passcode unlock.
Fixes #4811.
2018-06-07 10:44:38 +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 16f3ca87f5 Allow boxes that don't hide by escape / click. 2018-06-06 14:54:00 +03:00
John Preston d16cbbf279 Set window inner focus async. Fixes #4560. 2018-06-05 21:51:05 +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 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 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 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 5cfead762d New design of the passport in a separate window. 2018-06-03 23:16:34 +03:00
John Preston ddb4527159 Start passport support: handle link, receive form. 2018-06-03 23:16:33 +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 734c410879 New notifications API, defaults for users/chats. 2018-05-30 18:44:46 +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 5e7642b42a Support markdown and replaces in media captions. 2018-05-24 16:03:21 +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 d3f85b4c4e Display channels promoted by proxy on top. 2018-05-13 21:26:35 +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 d2048f3c25 New connecting status design. 2018-05-08 20:31:33 +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 9dc48522d8 Fix multi-forward notification layout (long name). 2018-03-15 03:12:00 +03:00
John Preston ee182ea684 API scheme downgraded to layer 76. 2018-03-06 20:48:24 +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 1ae22c8606 Fix assertion violation when no feed. 2018-02-21 16:38:56 +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 07528be1e6 Support search in feed + scroll to search result. 2018-02-16 19:45:58 +03:00