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
John Preston
2e7f4c2f21
Use Storage::Cache::Database for file caching.
2018-09-01 18:56:08 +03:00
John Preston
64b8adb3d0
Isolate lib_base library. Use crl::time in getms.
2018-09-01 18:56:08 +03:00
John Preston
cb371f09ac
Clear old versions of Storage::Cache::Database.
2018-09-01 18:56:08 +03:00
John Preston
9147c12687
Add basic implementation of Storage::Cache DB.
2018-09-01 18:56:08 +03:00
John Preston
51092fb6a9
Fix file references for faved stickers.
2018-09-01 18:56:08 +03:00
John Preston
557d363d02
Refresh file references when downloading files.
2018-08-20 17:26:28 +03:00
John Preston
839885910c
Pass FileOrigin in all file downloads.
2018-08-20 17:26:28 +03:00
John Preston
ee16070abe
Update API scheme to layer 86.
2018-08-20 17:26:27 +03:00
John Preston
fddc3d6ad9
Workaround MSVC 15.8 regressions.
2018-08-17 14:01:16 +03:00
John Preston
c8aa35d23c
Don't show PopupMenu for inactive window on macOS.
...
This is a fixup for 06bf67c146
.
2018-08-04 15:17:23 +03:00
John Preston
6796204126
Fix build for Xcode.
2018-08-02 17:46:50 +03:00
John Preston
06bf67c146
Don't show PopupMenu for inactive window on macOS.
...
On macOS context menu (right click) doesn't activate the window that was clicked.
- You can't activate it yourself if some other application is active.
- It's hard to make menu work while window still is inactive (like macOS menus).
Because when you left-click anything after right click Qt makes the window
something-like-focused (it shows on top and receives input), but not really
(it still displays as inactive, cursor not blinking and all). Looks like Qt bug.
2018-08-01 20:14:55 +03:00
John Preston
41977bf515
Fix build for Xcode.
2018-07-31 22:56:02 +03:00
John Preston
ffd2817d18
Destroy InputField::Inner before InputField.
...
Inner has a pointer to parent and uses it assuming it is InputField.
If Inner lives longer than InputField (till ~QWidget) then in some
cases it accesses InputField as a (not completely) destroyed object.
2018-07-31 22:56:02 +03:00
John Preston
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
54cd55523b
Fix crash in markdown preprocessing.
2018-07-11 17:56:09 +03:00
John Preston
39b0d9e46f
Handle the outdated app error in passport.
2018-07-11 17:56:08 +03:00
John Preston
e1fd43b2a4
Fix crash in text post processing.
...
Fixes #4948 .
2018-07-11 17:56:06 +03:00
John Preston
165d1aacae
Fix tilde formatting in InputField.
...
Regression was introduced somewhen while uniting input field classes.
Fixes #4829 .
2018-06-28 16:07:53 +01:00
John Preston
d8897a0cc8
Make export done button adaptive to text.
2018-06-28 04:39:23 +01:00
John Preston
3b956c598b
Fix data export window theme changing.
...
Fixes #4902 .
2018-06-28 04:39:10 +01:00
John Preston
b7ab4fd086
Improve triple-backtick replacement.
2018-06-27 22:58:33 +01:00
John Preston
ff53404d5b
Update API scheme to layer 82.
2018-06-27 22:58:32 +01:00
John Preston
fcd2e28abb
Add some logs.
2018-06-24 15:44:53 +01:00
John Preston
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
df91b2bfeb
Export settings layout ready.
2018-06-16 20:48:38 +01:00
John Preston
0a1a5ed70e
Use abstract export writer for different formats.
2018-06-12 01:02:05 +03:00
John Preston
c587c011d2
Start data export in lib_export.
2018-06-12 01:02:04 +03:00
John Preston
2a110f0d3e
Improve passport styles.
2018-06-08 22:26:08 +03:00
John Preston
dca6e10beb
Fix markdown apply to text with emoji.
2018-06-07 22:00:46 +03:00
John Preston
122ab94f3d
Fix text color glitch after palette update.
...
Once again fixes #4774 .
2018-06-07 21:25:10 +03:00
John Preston
9ebeddbed8
Request, show and require accept for updated ToS.
2018-06-06 21:37:01 +03:00
John Preston
e47d110f28
Fix cascade popup menus in Linux.
...
Fixes #4749 .
2018-06-06 14:29:40 +03:00
John Preston
777bf7d8d9
Fix video seeking.
...
Regression was introduced in d0e854e9d8
.
Each time you hide() a widget its mousePress state is reset and
mouseMoveEvent() / mouseReleaseEvent() handlers are never called.
So you can't toggle (hide + show) widgets that are mouse-pressed.
Fixes #4802 .
2018-06-06 11:58:07 +03:00
John Preston
dd81f5d59f
Replace base::lambda with shorter term.
...
base::lambda -> Fn (type alias for std::function).
base::lambda_once -> FnMut (type alias for base::unique_function).
base::lambda_guarded -> crl::guard.
base::lambda_call_type_t -> crl::deduced_call_type.
2018-06-04 18:38:27 +03:00
John Preston
8d1cdea31a
Update passport phrases.
2018-06-04 14:43:49 +03:00
John Preston
a29e8f9a06
Moved Passport panel code to Ui::SeparatePanel.
2018-06-03 23:16:38 +03:00
John Preston
ab5f35e952
Warn user about passport reset.
...
Also suggest country by phone number in passport.
2018-06-03 23:16:38 +03:00
John Preston
44b551898d
New notifications API, defaults for users/chats.
2018-06-03 23:16:38 +03:00
John Preston
d6d942bc64
Change e-mail to email in langs.
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
f8b2e474b9
Validate passport values before saving.
2018-06-03 23:16:36 +03:00
John Preston
c20cf243db
Improve phrases and icons in passport.
2018-06-03 23:16:35 +03:00
John Preston
9903546a2d
Allow date edition in passport.
2018-06-03 23:16:35 +03:00