Commit Graph

836 Commits

Author SHA1 Message Date
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
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
Vitaly Lipatov bffd852b4e remove obsoleted ui/effects/widget_slide_wrap.* (closes #4776) (#4777)
unused since commit c302219
2018-06-02 11:05:36 +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 5c5438c12e Add terms of service to the Intro. 2018-05-31 13:22:58 +03:00
John Preston 734c410879 New notifications API, defaults for users/chats. 2018-05-30 18:44:46 +03:00
John Preston f334e2d0f4 Clear formatting at the start of the field. 2018-05-27 13:48:30 +03:00
John Preston dfbe11efdb Fix editing of markup with links. 2018-05-27 13:48:04 +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 c3fc91a6fc Fix couple of possible crashes. 2018-05-08 21:06:56 +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 d2fa8ef0b0 Alpha version 1.2.18: Fix OS X old build. 2018-05-05 22:30:42 +03:00
John Preston 7797e5a3b7 Improve proxies box design. 2018-05-05 21:55:39 +03:00
John Preston d15b0cdb08 Improve infinite radial animation. 2018-05-05 21:55:39 +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 a7c77682d7 Apply, delete and restore proxies in the box. 2018-05-05 21:55:38 +03:00
John Preston f3eac6b259 Version 1.2.16: Fix text processing crash in OS X 10.6. 2018-04-08 18:21:40 +04:00
John Preston 87d6081408 Version 1.2.16: Fix build in Xcode 9.3. 2018-04-07 12:47:08 +04:00
John Preston e5b2e0a6b5 Fix memory clearing from photos/documents. 2018-04-07 11:01:32 +04:00
John Preston 811fc43b63 Fix Qt text processing crash.
Fixes #4551.
2018-03-30 18:18:35 +04:00
John Preston 7de15ce5cf Fix inline bots with photos. 2018-03-13 13:29:42 +03:00
John Preston c6efb588dc Fix crash in digit-only hashtag skipping. 2018-03-08 15:02:34 +03:00
John Preston 7940ef24ab Disallow hashtags of digits only. 2018-03-06 18:29:45 +03:00
John Preston 0f901b3728 Update API and use WebDocument for inline bots. 2018-03-06 16:49:44 +03:00
John Preston 00aa6d5ac3 Allow monospace block to end on ellipsis. 2018-02-22 21:16:01 +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 5ebecb4de3 Display feed userpic in single column layout. 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 681b9b5ba3 Improve text selection in bubbles. 2018-02-08 12:20:53 +03:00
John Preston 63c1212ef1 Allow multiple items selection in HistoryView. 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 840b42934b Use server-side my_results in contacts.search. 2018-02-08 12:20:51 +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 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 6b25160e3f Don't paint QPixmap-s in theme preview icons. 2018-01-02 22:23:54 +03:00
John Preston 0ef3e19bc2 Use QImage instead of QPixmap for theme preview.
Working with QPixmap from non-main thread is not defined.
2018-01-02 22:10:49 +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 bd8dee0972 Fix crash in audio player hiding. 2017-12-27 10:18:09 +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 5f8143e6a4 Fix build in Xcode. 2017-12-26 19:20:08 +03:00
John Preston 1fc7dabd3e Allow media reordering when sending an album. 2017-12-26 19:20:08 +03:00
John Preston a6c15217c0 Fix grouped layout algorithm to match other apps. 2017-12-26 19:20:07 +03:00
John Preston 57351dd42a Remove QTextLayout that appears to be not needed. 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 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 2e421e8aed Allow unicode quotes as markdown entry separators.
Fixes #3867.
2017-12-18 21:06:44 +04:00
John Preston afe9d38c48 Don't ruin links by markdown parsing.
Fixes #3851.
2017-12-18 20:49:40 +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 656e4869e6 Move UnreadBadge to ui/unread_badge. 2017-12-17 15:04:47 +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 f8963d7e4b Read silent flag from PeerData, not SilentToggle. 2017-12-08 15:52:12 +04:00
John Preston aa16bcd604 Add a special key for saved messages userpic bg. 2017-12-08 13:23:55 +04:00
John Preston 827784e3b2 Focus search field in Info layer. 2017-12-08 12:22:02 +04:00
John Preston 993877b0d4 Change main menu cloud icon to saved messages. 2017-12-05 20:48:03 +04:00
John Preston f8e094392f Fix ripple animation glitch in history top bar. 2017-12-05 20:14:15 +04:00
John Preston aebdc2fd94 Add custom userpic rendering for Saved Messages. 2017-12-05 15:50:32 +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 d6f7cae024 Fix two crashes in OS X 10.6.
Disable rtl control chars (harfbuzz-ng crashes on them).
Disable creating state of not yet created top level windows.
2017-12-02 16:10:52 +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 196ff7f4c1 Don't apply count from getParticipants(Recent). 2017-11-28 22:30:01 +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 9eacb11f3c Fix render lag in widgets resizeEvent()->show().
ScrollArea calls show() in ScrollBar::resizeEvent. If this event
handlers was called from SendPending...() you could set fake .._Shown
attribute on, call resizeEvent() and remove this attribute even if it
should not be removed already - after call to show().
2017-11-24 17:07:36 +04:00
John Preston 981063596a Add nice scroll to the bottom of the Info layer. 2017-11-23 17:10:50 +04:00
John Preston 98896ab5ac Fix crash in RpWidget::event() from alive().done() 2017-11-22 18:02:29 +04:00
John Preston 44e94bfbf5 Add workaround for macOS leaveEvent() bugs.
On macOS sometimes when mouse leaves the window we don't receive leaveEvent()
calls in the nested widgets, like buttons, only for the window itself.
2017-11-21 18:27:48 +04:00
John Preston d93c1ccbaa Improve compile time. 2017-11-21 14:20:52 +04:00
John Preston eb8800f2d4 Replace $ with _ in rpl::mappers. 2017-11-20 16:32:55 +04:00
John Preston ac99318f34 Use ranges:: algorithms instead of base:: 2017-11-20 16:24:00 +04:00
John Preston de15da8a93 Improve info layer presentation. 2017-11-19 15:37:15 +04:00
John Preston 903aa46e5c Disable tabs in third column info. 2017-11-16 13:13:17 +04:00
John Preston 131efa11be Various fixes. 2017-11-16 11:45:55 +04:00
John Preston fafcd02e7c Improve Emoji / GIFs list variable width support. 2017-11-16 07:59:12 +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 bca9b3ca3f Extract a reusable Ui::ResizeArea class. 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 5c12b0e5fa Use /permissive- flag for Visual Studio builds. 2017-11-16 07:59:10 +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 8191ebfc49 Improve peer context menu for info. 2017-11-16 07:59:09 +04:00
John Preston 11a3308cf5 Scroll to field on search query update. 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 39c5898fa4 Save media search state to memento. 2017-11-16 07:59:08 +04:00
John Preston 09d1e3629a Add media search to all info modes. 2017-11-16 07:59:08 +04:00
John Preston 86ad15612a Use Info::Controller for the whole info section. 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 b51f865c54 Save info members list state to memento. 2017-11-16 07:59:08 +04:00
John Preston be5f4c9a71 Allow delete / forward selected in shared media.
Also use PeerListBox with a chats list with global search controller
instead of HistoryHider for forward / share contact.
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 583b0fa778 Display common groups in Info profiles. 2017-11-16 07:59:07 +04:00
John Preston a08dd1f6e1 Fix build for macOS. 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 7905694b31 Add tabs and other types links to Info::Media. 2017-11-16 07:59:06 +04:00
John Preston c6c75a1980 Animate Info-to-Info transitions. 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 c4d33f9986 Add rpl::take(count). 2017-11-16 07:59:06 +04:00
John Preston f0ad78d808 Change *[Fast|Animated] to anim::type in SlideWrap. 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 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 5cc7cb1d85 Allow empty arg list in rpl next/error handlers. 2017-11-16 07:59:05 +04:00
John Preston 21b1ba1f88 Move build to Ubuntu 14.04 and GCC 7.2.
To be able to run on the same distributions as before we need to have
the same GLIBC version dependency as in Ubuntu 12.04, which is 2.15.

For that we need to remove all usages of GLIBC features from 2.16 and above.
Currently there are three methods used, so they're wrapped in a separate
static library, linux_glibc_wraps.

It is a separate library because it must be compiled without '-flto' flag,
otherwise the inline __asm__ is not working and we get unresolved symbols.
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 ed061252a5 Move to Xcode 9.0 and fix errors in Clang build. 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 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 812dcb5e8d Update styles to match the design. 2017-11-16 07:59:04 +04:00
John Preston 703b944839 Return FlatLabel.margins in getMargins(). 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 f4d9618487 Improve layer / section exchange for Info. 2017-11-16 07:59:04 +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 21d136e224 myEnsureResized() now forces recursive create. 2017-11-16 07:59:02 +04:00
visuve 8c92f42de3 Fix uninitialized values
- Use C++11 default member initializers

Signed-off-by: Veli-Matti Visuri <veli-matti.visuri@cerescon.fi> (github: visuve)
2017-09-28 18:23:42 +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