Commit Graph

325 Commits

Author SHA1 Message Date
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 595134cab5 Move image-related modules to ui/image/. 2018-11-04 15:51:37 +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 2812d2911f Remove media_volume icon, use volume slider. 2018-10-15 11:06:27 +03:00
John Preston b847c8424a Use single emoji sprite and scale + cache it. 2018-10-15 09:03:29 +03:00
John Preston be6e329e94 Don't switch chats on ctrl+shift+send (support). 2018-10-09 19:27:18 +03:00
John Preston 25cefc6eab Allow fix chats order and auto switch (support). 2018-10-09 19:27:16 +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 3f543347b8 Add language and scale settings. 2018-09-19 19:22:12 +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 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 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 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 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 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
John Preston e4e05a14b7 Allow selecting country in passport. 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 b4a2e84aa3 Fix palette update in InputField.
Fixes #4774.
2018-06-03 21:57:52 +03:00
John Preston cf7a779689 Fix mixed markup sending. 2018-06-01 01:01:50 +03:00
John Preston 8edf4c8711 Alpha version 1.2.25: Fix build for Xcode. 2018-05-31 23:42:48 +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 0cbad9098e Active window on drop to InputField. 2018-05-31 13:35:14 +03:00
John Preston f334e2d0f4 Clear formatting at the start of the field. 2018-05-27 13:48:30 +03:00
John Preston 7252e9b266 Apply max length limit to initial text. 2018-05-26 18:39:13 +03:00
John Preston 07d8dafa5e Allow inserting links with custom text.
Fixes #4737.
2018-05-26 18:07:51 +03:00
John Preston 3f7947b404 Use input method commit events to commit replacements.
Partially fixes #4727.
2018-05-25 23:36:32 +03:00
John Preston 4870558827 Apply formatting from context menu or shortcuts. 2018-05-25 23:31:18 +03:00
John Preston c23ec41622 Don't replace 'code' tag inside a possible 'pre'.
Partially fixes #4728.
2018-05-25 21:02:44 +03:00
John Preston 544aef19b4 Revert markdown by backspace only temporarily.
Don't revert if you move cursor by arrows or Home/End.
2018-05-25 21:02:38 +03:00
John Preston 24834ced9e Fix input field palette setup.
Fixes #4732. Fixes #4734.
2018-05-25 20:50:36 +03:00
John Preston 250718e766 Fix build for Xcode. 2018-05-24 20:25:04 +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 4f9507ed97 Fix build for Xcode 9.3.1 and OS X 10.6-10.7. 2018-05-13 21:12:44 +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 4b763a76df Instant in-field emoji and text replaces.
Fixes #4410. Fixes #522.
2018-05-13 18:14:02 +03:00
John Preston d2048f3c25 New connecting status design. 2018-05-08 20:31:33 +03:00
John Preston 48c1576d7f Add 'Use proxy for calls' option. 2018-05-07 00:29:53 +03:00
John Preston f9ff676e57 Improve proxies box design and progress animation. 2018-05-05 21:55:38 +03:00
John Preston 9935a36c3d Create and edit proxy box. 2018-05-05 21:55:38 +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 5ebecb4de3 Display feed userpic in single column layout. 2018-02-08 12:20:53 +03:00
John Preston fe1a90bd39 Move message context menu to a separate module. 2018-02-08 12:20:52 +03:00
John Preston 840b42934b Use server-side my_results in contacts.search. 2018-02-08 12:20:51 +03:00
John Preston ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +03:00
John Preston 2a409e3734 Add files from clipboard to composed album.
Fixes #4243.
2017-12-29 20:02:23 +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 2569df9e5a Rename some Ui methods.
myEnsureResized -> Ui::SendPendingMoveResizeEvents.
myGrab -> Ui::GrabWidget.
myGrabImage -> Ui::GrabWidgetToImage.
2017-12-26 19:20:08 +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 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 f8e094392f Fix ripple animation glitch in history top bar. 2017-12-05 20:14:15 +04:00
John Preston afd1548533 Attempt to fix a crash in touch event handlers. 2017-11-30 22:18:39 +04:00
John Preston c04991f707 Redesign round checkbox animations. 2017-11-28 00:54:31 +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 7705696d54 Hide all PopupMenu when enabling local passcode. 2017-11-24 20:06:35 +04:00
John Preston 0ced28f991 Nice animations when selecting shared media items. 2017-11-24 19:47:09 +04:00
John Preston 903aa46e5c Disable tabs in third column info. 2017-11-16 13:13:17 +04:00
John Preston aecc119bac Add fast chat photo upload to info profile. 2017-11-16 07:59:11 +04:00
John Preston 830c6a4894 Replace PeerAvatarButton with UserpicButton. 2017-11-16 07:59:11 +04:00
John Preston 3d37ac9235 Replace NewAvatarButton with UserpicButton.
This new control should also replace PeerAvatarButton and
Profile::UserpicButton and deliver all the best of those three.
2017-11-16 07:59:11 +04:00
John Preston fc66550a32 Support variable width tabs slider. 2017-11-16 07:59:11 +04:00
John Preston dd3ae22e08 Save data from EditPeerInfoBox. 2017-11-16 07:59:10 +04:00
John Preston 8ff0120642 Add EditPeerInfoBox without saving. 2017-11-16 07:59:10 +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