Commit Graph

842 Commits

Author SHA1 Message Date
John Preston ff51423125 Remove ExpandLinksNone, rename Text::originalText. 2019-04-08 15:53:11 +04:00
John Preston 6c17ed2242 Fix crash in event loop nesting. 2019-04-07 11:18:38 +04:00
John Preston 1ab4dbe466 Fix crash in application closing. 2019-04-06 12:12:24 +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 c3c46f8e29 Fix new animations engine bug. 2019-04-04 19:31:03 +04:00
John Preston 456a949d01 Fix working with document thumbnails. 2019-04-04 00:08:05 +04:00
John Preston db631acf80 Remove old animations code. 2019-04-02 14:33:54 +04:00
John Preston 74dc4e0c62 Allow disabling new animations. 2019-04-02 14:33:54 +04:00
John Preston 99bb09374d Use new animations engine everywhere. 2019-04-02 14:33:53 +04:00
John Preston a6e96f9a28 Use new animations engine in all Basic-s. 2019-04-02 14:33:53 +04:00
John Preston cd3c1c6dc0 Use new animations engine for typings. 2019-04-02 14:33:53 +04:00
John Preston 77fbf19a72 Use serverside keywords for emoji suggestions. 2019-04-02 14:33:53 +04:00
John Preston 3cd9d4b5ec Fix video messages playback on Retina. 2019-04-02 14:33:53 +04:00
John Preston d3bf489bea Improve base::binary_guard interface. 2019-04-02 14:33:52 +04:00
23rd 3fa3428b4b Added ability to go to top of media panel by clicking on selected tab. 2019-04-02 14:33:52 +04:00
John Preston 84e9e37353 Closed alpha version 1.6.3.1: Fix build for Xcode. 2019-03-29 14:24:08 +04:00
John Preston 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 a0b3b1affd Fix fade in widget animation.
Fixes #5812.
2019-03-24 12:12:40 +04:00
23rd 3a5bad4b7a Fixed incorrect display of uploaded video's thumbnail in edited message.
- After uploading a video the data_document changes a source of the 
 good thumbnail and loses an information about it (e.g. width, height, 
 bytesSize).
2019-03-22 13:39:12 +04:00
John Preston a5e6890b77 Fix icon pixmap sizes on Retina with scaling. 2019-03-12 14:27:22 +04:00
John Preston 846499a4fb Fix volume saving to settings. 2019-03-12 09:09:53 +04:00
John Preston 261720c941 Fix radial animations on macOS.
QOpenGLWidget doesn't draw antialiased ellipses and arcs,
so we use a software rasterizer and then draw the resulting image.
2019-03-11 13:51:15 +04:00
John Preston 7b3c452316 Change direction of infinite radial animation. 2019-03-11 13:19:38 +04:00
John Preston aa00f9bd34 Fix new animations engine restarts. 2019-03-11 12:08:21 +04:00
John Preston 3706be77ea Fix macOS media viewer controls hiding. 2019-03-11 12:08:19 +04:00
John Preston a56a12a1ef Optimized video frame pushing. 2019-03-11 12:08:18 +04:00
John Preston 5c4b459f57 Use new animations in video viewer. 2019-03-11 12:08:18 +04:00
John Preston 9a616edf2a Add new animations engine. 2019-03-11 12:08:17 +04:00
John Preston 71b733a018 Display receivedTill in video player controls. 2019-03-11 12:08:13 +04:00
John Preston 8171828c2a Fix build on GCC. 2019-03-11 12:08:09 +04:00
John Preston e631d98230 Implement media cache management. 2019-03-11 12:08:09 +04:00
John Preston 648cd44ddd Display correct video / music state. 2019-03-11 12:08:08 +04:00
23rd bfc9e43eb4 Added a handler for "MESSAGE_EMPTY" error to delete a local message.
- Added a determination of the zero-width-space as the space.
 - Fixes #3145.
2019-03-10 10:26:40 +04:00
John Preston 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 7c1704e68b Fix crash in EditCaptionBox. 2019-02-17 13:51:53 +04:00
John Preston 98cb85df66 Polymorphic classes without virtual dtor warning. 2019-02-15 15:55:34 +04:00
John Preston 032694ad9e Move files to media/audio and media/clip. 2019-02-13 15:41:33 +03:00
John Preston 26f1ade5ba Optimize connecting widget. 2019-02-10 21:35:44 +03:00
John Preston 9dd93a77a0 Always keep inline thumbnail images loaded. 2019-02-10 11:19:27 +03:00
John Preston f9d56eb4c1 Send installWallPaper requests. 2019-02-08 19:47: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 5ca12a73c3 Use new HistoryWallPaper media type for wallpaper. 2019-01-29 19:26:19 +03:00
John Preston b6edf4561d Add support for pattern wallpapers. 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 6d706fd222 Improve unacessible permissions design. 2019-01-21 17:43:24 +04:00
John Preston 6066265717 Fix emoji suggestions in monospace. 2019-01-21 11:02:20 +04:00
John Preston 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 eff90395b6 Add EditPeerPermissionsBox. 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 65430d92ea Refactor calls settings panel. 2019-01-11 17:30:57 +04:00
John Preston c4d919d46b Improve emoji quality while creating cache. 2019-01-11 17:30:57 +04:00
John Preston bb8defeb42 Improve change emoji set box design. 2019-01-11 17:30:57 +04:00
John Preston c7469075ab Closed beta version 1.5.6.1: Fix build in GCC. 2019-01-11 17:30:57 +04:00
John Preston 219b824338 Refresh filtered results on more dialogs. 2019-01-11 17:30:00 +04:00
John Preston df389a365c Display emoji set loading radial animation. 2019-01-11 17:30:00 +04:00
John Preston aa2c52c1f8 Unpack and prepare emoji asynchronously. 2019-01-11 17:30:00 +04:00
John Preston f48ae29f22 Load emoji sets from the cloud. 2019-01-11 17:30:00 +04:00
John Preston de00e0e15c Add simple switch emoji set box. 2019-01-11 17:30:00 +04:00
John Preston 79fea49272 Add updating emoji on the run. 2019-01-11 17:30:00 +04:00
John Preston 8190b10680 Support custom emoji sets loading. 2019-01-11 17:30:00 +04:00
Gregory K 11b991cddc Add call settings (#5540) 2019-01-05 15:08:02 +04:00
John Preston 874d76b16b Ignore activations from ~PopupMenu in file dialog event loops. 2018-12-26 13:54:49 +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 44ff8f92ac Fix crash with invalid custom langpacks. 2018-12-25 15:22:25 +04:00
John Preston 57f2ae098f Show exact option votes count in a tooltip.
Fixes #5505.
2018-12-24 14:24:16 +04:00
John Preston 8bd3051224 Fix crop photo box title. 2018-12-23 21:23:36 +04:00
John Preston b6f7832745 Add create poll box from groups three-dot menu. 2018-12-22 10:29:03 +04:00
John Preston 4bb5dcf50c Simplest poll layout. 2018-12-21 17:09:32 +04:00
John Preston 89cf733d24 Add Ui::PostponeCall() on return to event loop. 2018-12-12 14:14:28 +04:00
John Preston f59e824ec1 Possibly fix a crash in image loader. 2018-12-05 15:50:41 +04:00
John Preston 310c68a744 Disable DemiBold fallback for Semibold.
This reverts changes from commit 089c4ceb30.

There were complaints that Persian font becomes unreadable :(
2018-12-05 14:51:47 +04:00
John Preston 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 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 3461f3dfc7 Destroy file loaders not delayed. 2018-11-26 11:33:29 +04:00
John Preston 23dc9ef494 Destroy layers not delayed. 2018-11-26 11:33:29 +04:00
John Preston 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 d3a261de89 Scroll to cursor after template replacement. 2018-11-20 19:38:39 +04:00
John Preston 6d65cf2382 Redesign languages box with a search filter. 2018-11-16 20:17:58 +04:00
John Preston 089c4ceb30 Use DemiBold fallback for Open Sans Semibold. 2018-11-16 20:17:58 +04:00
John Preston aba6cc2c64 Don't force WEBP format for stickers.
Fixes #5374.
2018-11-12 14:39:21 +04:00
John Preston 0718520f36 Disable default fallback to Segoe UI.
Fixes #5368.
2018-11-12 14:39:21 +04:00
23rd c20ab0b93e Removed unused variables in input_fields.cpp. 2018-11-07 14:53:21 +04:00
John Preston e6c4c48261 Animate check in album sending. 2018-11-04 15:51:39 +04:00
John Preston 8eb0f3b60a Remove some unneeded Q_OBJECTs. 2018-11-04 15:51:39 +04:00
John Preston fabf830132 Allow up to 128 MB of cached images. 2018-11-04 15:51:39 +04:00
John Preston f2348fc749 Fix document unloading. 2018-11-04 15:51:39 +04:00
John Preston 264ab285a7 Fix ImageSource unloading. 2018-11-04 15:51:39 +04:00
John Preston f28a92be1d Fix another crash in DocumentData destructor. 2018-11-04 15:51:39 +04:00
John Preston 711b8cfa36 Fix auto interface scale by primary screen dpi. 2018-11-04 15:51:39 +04:00
John Preston 885e7f0471 Fix pen reset in TextPainter of empty text. 2018-11-04 15:51:39 +04:00
John Preston 8c1e546123 Fix crash in DocumentData destructor.
~DocumentData sometimes calls ~Image that calls RemoteSource::unload.
It tries to schedule delayed loaded deletion and accesses Auth().
But ~DocumentData is called from ~Session, so Auth() is unaccessible.
2018-11-04 15:51:39 +04:00
John Preston 88a82eecf3 Fix crash in unloaded null Image. 2018-11-04 15:51:39 +04:00
John Preston 906122a334 Insert Segoe UI and San Francisco font substitutions.
Fixes #1791, fixes #3354, fixes #4454.
2018-11-04 15:51:39 +04:00
John Preston 46162ed3c4 Fix grouped media corner in one layout. 2018-11-04 15:51:39 +04:00
John Preston 9aa23dac80 Fix ripple glitch on theme switching. 2018-11-04 15:51:38 +04:00
John Preston 4837117719 Use photo as video thumbnail in WebPageData. 2018-11-04 15:51:38 +04:00
John Preston 550b67236e Reactive main window only if app is active.
Otherwise when we choose "Show in Folder" app looses focus,
then destroys PopupMenu and instantly regains focus back.
2018-11-04 15:51:38 +04:00
John Preston a961615076 Clear unused emoji cache with DB. 2018-11-04 15:51:38 +04:00
John Preston f0e18ac619 Add better unloading for ImageSource. 2018-11-04 15:51:38 +04:00
John Preston 8e7117fa22 Don't unload all media on switching between chats. 2018-11-04 15:51:38 +04:00
John Preston f8eef7c9a6 Forget least used images gradually. 2018-11-04 15:51:37 +04:00
John Preston 595134cab5 Move image-related modules to ui/image/. 2018-11-04 15:51:37 +04:00
John Preston 8b76428c7e Create ImagePtr-s using a factory method. 2018-11-04 15:51:37 +04:00
John Preston 591fbf0ec6 Replace image source after photo sending. 2018-11-04 15:51:37 +04:00
John Preston 4b5b79e415 Use final Image with different Images::Source-s. 2018-11-04 15:51:37 +04:00
John Preston 5a50248055 Remove Image::toDelayedStorageImage downcaster. 2018-11-04 15:51:36 +04:00
John Preston 113f665295 Move Image and derived to ui/image. 2018-11-04 15:51:36 +04:00
John Preston 19e407532b Beta version 1.4.4: Fix emoji cache. 2018-10-17 16:04:13 +03:00
John Preston 54f2b1b2d8 Beta version 1.4.4: Fix emoji quality. 2018-10-17 14:43:17 +03:00
John Preston 5b4abe69aa Add interface scale (100%..150%) for Retina.
Fixes #69, fixes #3126, fixes #3789.
2018-10-16 23:00:55 +03:00
John Preston f2866442d2 Fix location thumb image sizes 2018-10-16 17:32:12 +03:00
John Preston 19a9a990b6 Allow using any interface scale between 100%-300%. 2018-10-16 11:38:09 +03:00
John Preston 149639a53d Add and bundle @3x icons.
Also bundle only 1x, @2x, @3x and generate 125% and 150%.
2018-10-16 11:38:09 +03:00
John Preston 2812d2911f Remove media_volume icon, use volume slider. 2018-10-15 11:06:27 +03:00
John Preston 2b2b9c2f03 Check emoji cache signature asynchronously. 2018-10-15 09:04:07 +03:00
John Preston b847c8424a Use single emoji sprite and scale + cache it. 2018-10-15 09:03:29 +03:00
John Preston 2444acb041 Fix image data forgetting.
In case image was almost loaded (loader was ready, but not destroyed yet),
forget() didn't do anything, leaving bytes and image inside loader untouched.

Now we check loader state in forget() so that bytes and image are passed to
Image instance before they're forgot from the memory. This will improve memory
clearing while scrolling through chats with images and switching between them.
2018-10-09 19:27:18 +03:00
John Preston 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 1b4f3a7529 Show short previews in templates (support). 2018-10-09 19:27:17 +03:00
John Preston 25cefc6eab Allow fix chats order and auto switch (support). 2018-10-09 19:27:16 +03:00
John Preston f493d69bd2 Fix emoji button with disabled animations. 2018-09-27 23:41:49 +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 3ba2a7931e Autosave bio in settings edit section. 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 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 b8c2c3991f Implement chat settings section. 2018-09-19 19:22:13 +03:00
John Preston 8c1cc51c2e Move peer photo update from Messenger to ApiWrap. 2018-09-19 19:22:13 +03:00
John Preston 3f543347b8 Add language and scale settings. 2018-09-19 19:22:12 +03:00
John Preston f0d092f126 Section dummies for new Settings. 2018-09-19 19:22:12 +03:00
John Preston 4b87363a20 Check value size before putting to cache db. 2018-09-04 22:37:22 +03:00
John Preston 069232ec1b Allow changing limits for cache in Settings. 2018-09-01 18:56:08 +03:00
John Preston 08ff324b1b Work with Cache::Database in LocalStorageBox. 2018-09-01 18:56:08 +03:00
John Preston 55f60866cb Set correct cache tags for different file types. 2018-09-01 18:56:08 +03:00
John Preston e2f08d4161 Write uint8 tags to Database and count stats.
Also pass rvalues to Database where copies are required anyway.
2018-09-01 18:56:08 +03:00