John Preston
51c0df79fe
Support emoji display in PeerListBox status texts.
2017-06-30 14:36:13 +03:00
John Preston
843d63c221
Fix edit channel controls layout.
2017-06-30 09:21:44 +03:00
John Preston
6487d91722
Add users to a channel check by admin rights.
...
Also add an admin right checkbox for add users in channels.
2017-06-30 09:21:44 +03:00
John Preston
8ee5c70708
Fix admin custom status text in supergroups.
2017-06-30 09:21:44 +03:00
John Preston
9e6f2a5d2e
Remember connection type settings.
2017-06-30 09:21:43 +03:00
John Preston
82912f4a0b
Handle socks internal links.
2017-06-30 09:21:43 +03:00
John Preston
e39b95175b
Handle channel event log mouse events.
2017-06-30 09:21:42 +03:00
John Preston
4962fdf5ae
Add phrases and layout for all events in log.
2017-06-30 09:21:41 +03:00
John Preston
c3ad0ae129
Always show that bot-admin reads all messages.
...
A bot with any admin rights has access to messages.
2017-06-30 09:21:41 +03:00
John Preston
758cf0388e
Edit who can add users to supergroup.
...
Add a couple of radiobuttons to EditChannelBox for that.
Also a 'change info' admin now can edit 'signatures' in a channel.
2017-06-29 11:40:25 +03:00
John Preston
b35d2505a4
Better mentions highlighting in PeerListBox.
2017-06-29 11:40:23 +03:00
John Preston
04e587b999
Hide Add Users checkbox if megagroup is democracy.
...
Also unite invite_users and invite_link flags.
2017-06-29 11:40:17 +03:00
John Preston
adcecaa195
Make search in restricted/blocked box paginated.
2017-06-29 11:40:17 +03:00
John Preston
7fdac9cd94
Add restricted users box like kicked users box.
...
Also allow server-side search inside restricted users list.
Also allow server-side search inside kicked users list.
Also allow PeerListController to work not only in PeerListBox.
2017-06-29 11:40:14 +03:00
John Preston
5c0a1bafe2
Add supergroup restriction placeholders / labels.
2017-06-29 11:40:13 +03:00
John Preston
7d2d5c6100
Edit admin and restricted rights in channels.
2017-06-29 11:40:11 +03:00
John Preston
513a9f8d45
Add rich supergroup/channel admin support.
2017-06-29 11:40:10 +03:00
John Preston
330b4a0b00
API scheme updated to layer 68.
2017-06-29 11:40:08 +03:00
John Preston
5d0e89db5d
Switch to the server side changelogs.
2017-06-29 11:40:00 +03:00
John Preston
f3e65d400d
Display languages native names in the box.
...
Also don't suggest the old official languages in a popup.
2017-06-29 11:39:58 +03:00
John Preston
85e6f55536
Support new plural keys format.
...
All the old plural phrases were changed to work with the new format.
2017-06-29 11:39:56 +03:00
John Preston
665a1acfd8
Apply language with app restart if logged in.
...
Confirm and restart if logged in, just quickly apply if not.
2017-06-29 11:39:54 +03:00
John Preston
b94099e25b
Realtime UI translation in all fields and buttons.
2017-06-29 11:39:51 +03:00
John Preston
6fb980ca79
Improve custom language loading.
...
Apply custom language without relaunching the app.
2017-06-29 11:39:46 +03:00
John Preston
3f0b57ec11
Retranslate Settings when language is changed.
...
Also suggest user to change language from 'en' to his for one time.
2017-06-29 11:39:45 +03:00
John Preston
f5dfeb0c50
Support cloud languages list and switching.
...
Add Lang::Current().updated() observable for retranslating the UI.
2017-06-29 11:39:43 +03:00
John Preston
139d4e72b5
Start cloud langpack support.
...
Change the way langpacks are stored.
Support custom langpacks in the new storage.
2017-06-29 11:39:42 +03:00
John Preston
2334ba1fe1
Use QString + Lang::Tag() instead of Lang::String.
2017-06-29 11:39:40 +03:00
John Preston
110e7c8074
Finalize rename / move.
2017-06-29 11:39:38 +03:00
John Preston
25587d7e8e
Replace different side enums with RectPart.
...
Including Ui::Shadow::Side, App::RectPart and ImportantTooltip::Side.
2017-05-24 16:25:20 +03:00
John Preston
b9119e5ef6
Play video messages as Type::Voice.
...
Use AudioMsgId instead of videoPlayId.
Any audio track now can be a child loader track of some video clip.
Use Type::Voice instead of Type::Video for round video messages.
Video messages play / pause / resume the same way as voice messages.
2017-05-24 16:25:09 +03:00
John Preston
c1598ff4ed
Highlight mentions in sticker set box title.
2017-05-17 17:32:36 +03:00
John Preston
b74dea8662
Move logo images to Messenger. Set call panel icon.
2017-05-12 18:28:44 +03:00
John Preston
96062039c7
Improve RateCallBox design.
2017-05-09 23:46:43 +03:00
John Preston
11525a1e50
Add RateCallBox for calls feedback collection.
2017-05-09 23:46:28 +03:00
John Preston
0cdac83f8a
Fix calls build in Xcode. Fix calls panel in Retina.
...
Also implement panels that appear in all spaces on macOS.
Using them for calls panels and custom notifications, so it
will be possible to use custom notifications in macOS as well.
2017-05-09 23:46:27 +03:00
John Preston
06b081f509
Add calls log box.
...
PeerListBox can have many rows with the same PeerData.
PeerListBox::Row can have arbitrary action on the right side.
2017-05-09 23:46:18 +03:00
John Preston
aedbd6dfe4
Fix assertion violation when editing GIF / video.
...
If a GIF / video had no thumbnail the _animated flag was removed.
2017-05-01 11:03:56 +03:00
John Preston
33ffa0715d
Alpha 1.0.34: Fix tabbed section widget render.
...
Also fix error message layout in EditCaptionBox.
2017-04-21 16:22:45 +03:00
John Preston
de7c886008
Move passcode management from MainWindow.
...
Check for auto lock in AuthSession. Don't autolock while video plays.
Closes #3219
2017-04-15 21:51:12 +03:00
John Preston
8eb7f1f1aa
Display round video messages using HistoryGif.
...
Use autodownload and autoplay options from GIFs.
Also improve EditCaptionBox code.
2017-04-12 22:37:26 +03:00
John Preston
0e2c282476
Don't stop GIFs when TabbedSection is opened.
...
Also improve the appearance of Stickers and GIFs tabs with no items.
2017-04-11 17:03:47 +03:00
John Preston
647ea44881
Extract TabbedSelector from TabbedPanel.
...
Now we can use TabbedSelector separately, not only inside the panel.
2017-04-10 12:08:55 +03:00
John Preston
2c81014188
Fix crash on precondition in PeerListBox.
...
If a global search request was sent and we clear the query the
response still was being processed which caused an Expects() fail.
2017-04-10 12:08:15 +03:00
John Preston
570cd9bdfa
Move GIF pausing methods to Window::Controller.
2017-04-08 16:31:57 +03:00
John Preston
38f94c63e9
Add blocked users list in supergroups profiles.
2017-04-07 18:13:22 +03:00
John Preston
835b1801bc
Remove Q_OBJECT dependency from ApiWrap.
...
Also remove it from SingleDelayedCall -> SingleQueuedInvocation.
2017-04-07 18:13:19 +03:00
John Preston
5444b8166c
Finalize rename / move of files.
2017-04-07 18:13:18 +03:00
John Preston
c94a88e154
Rename / move a bunch of files.
...
Next commit fixes the build.
2017-04-07 18:13:16 +03:00
John Preston
03a59b04be
Add progress animation to GIFs search.
...
Also display "no results" phrase.
2017-04-04 16:19:49 +03:00
John Preston
ffc9585196
Add hierarchy of GIF pausing inside a window.
...
GIFs get paused if some other layer is displayed above.
Media preview > Box or layer > Saved GIFs panel > Inline bot results.
If any of those is displayed, GIFs inside message history pause too.
2017-04-03 19:46:12 +03:00
John Preston
e8ed307278
Add search in GIFs to EmojiPanel.
2017-03-31 18:58:59 +03:00
John Preston
bed3aa1a7f
Finalize rename / move of files.
...
Also rename EmojiPan to EmojiPanel.
2017-03-31 15:48:02 +03:00
John Preston
1540f6f528
Use emoji/stickers/gifs slider in EmojiPan.
...
Also rename EmojiTabs to EmojiSections.
2017-03-31 15:48:01 +03:00
John Preston
a851497bbf
Version 1.0.26 for macOS: Fix Clang builds.
...
Custom build of libc++ for OS X 10.6-10.7 already has C++17 as_const.
Add workaround for Apple Clang has strange issues (freeze and segfault).
2017-03-30 15:00:02 +03:00
John Preston
5bb68cfd8f
Support reading me_url_prefix from config.
...
The default value 'https://t.me ' can be overriden from server config.
2017-03-30 12:49:16 +03:00
John Preston
d41372dccd
Allow MTP_flags(0) and MTP_flags(single_flag).
2017-03-25 18:42:01 +03:00
John Preston
0ce6e8a33a
Show warning message before changing phone number.
2017-03-23 17:58:58 +03:00
John Preston
e38d683979
Fix crash in SelfDestructionBox.
...
base::lambda_guarded may destroy the lambda after the owner. In case
of SelfDestructionBox it lead to a dtor of a dangling object_ptr.
MTP::Sender destroys the lambda handlers together with itself.
2017-03-23 15:18:02 +03:00
John Preston
e9ec09b91a
Add MTP::Sender to replace RPCSender some day.
...
Also use c++1z language standard in Xcode build.
Also treat warnings as errors.
2017-03-23 14:37:38 +03:00
John Preston
6601a00eea
Alpha 1.0.25: Edit phone number in Settings.
...
Also fix build for GCC.
Also add scripts for GitHub releases management.
2017-03-21 22:49:23 +03:00
John Preston
bd121752f1
Change your account phone number in Settings.
2017-03-21 20:13:34 +03:00
John Preston
facc729234
Edit account self destruct time in Settings.
...
Also accept lambda_once in rpcDone() and rpcFail() lambda wrappers.
2017-03-20 23:05:38 +03:00
John Preston
a5df46f381
Improve EditPrivacyBox layout.
...
Also fix incorrect killTimer() calls in DiscreteSlider.
2017-03-19 11:32:24 +03:00
John Preston
12cbf78191
Refactor Ui::Radiobutton. Add Ui::Radioenum<Enum>.
...
Now group of Ui::Radiobutton instances share Ui::RadiobuttonGroup.
All value management is done through the group instance, not through
separate radio buttons. Also a template for groups over enums added.
2017-03-19 00:06:10 +03:00
John Preston
0a40bf2071
WIP radiobuttons refactoring.
2017-03-18 14:55:04 +03:00
John Preston
7546245213
Show warning when user edits last seen first time.
2017-03-18 12:49:48 +03:00
John Preston
fc77b0a51c
Save privacy in ApiWrap. Handle privacy updates.
2017-03-18 12:49:47 +03:00
John Preston
346daee421
Edit groups and channels invite privacy.
2017-03-18 12:49:46 +03:00
John Preston
61c5b45d7a
Select exception users in EditPrivacyBox.
2017-03-18 12:49:46 +03:00
John Preston
85fd117675
Add EditPrivacyBox. Edit last seen privacy.
...
Selecting exception users is not supported yet.
2017-03-18 12:49:45 +03:00
John Preston
d91a2403b0
Use refs in AuthSession part getters.
...
Also use only AuthSession data for Contacts/Dialogs loaded state.
2017-03-15 19:24:06 +03:00
John Preston
1027bd431a
Add some helper methods to effect wrappers.
...
Add and use similar methods to WidgetSlideWrap and WidgetFadeWrap:
[show|hide|toggle]Fast() and [show|hide|toggle]Animated().
2017-03-15 18:10:18 +03:00
John Preston
8c06b08f30
Alpha 1.0.23: Add blocked users list box in settings.
...
Also fixed build for Xcode.
2017-03-15 13:45:56 +03:00
John Preston
2ce2a14228
Add global search by username in block user box.
2017-03-14 21:38:50 +03:00
John Preston
46dab1a6b4
Add local search (filter) in block user box.
2017-03-14 20:10:28 +03:00
John Preston
805be84bff
Add block user box. Search isn't working yet.
...
Add a box containing all chats and contacts for blocking users.
Contacts and dialogs loaded state can be accessed in AuthSession.
2017-03-14 17:16:03 +03:00
John Preston
b1ee91b06b
Add blocked users box to Settings.
...
Start a general PeerListBox, it should replace both ContactsBox
and MembersBox in the future. Show blocked users list in it.
2017-03-14 13:58:36 +03:00
John Preston
f2465eba73
Make MTPstring and MTPvector value types.
...
Also move MTPstring implementation to QByteArray.
2017-03-10 23:27:26 +03:00
John Preston
6c00b7efde
Show animated previews for GIFs in SendFilesBox.
2017-03-10 17:43:26 +03:00
John Preston
a1b53c660e
Show video thumbnail in SendFileBox.
...
Read media information (image / song / video) in SendFileBox in the
same way it is read in FileLoadTask::process() and reuse it in
FileLoadTask if it was loaded already for the box.
2017-03-10 17:14:10 +03:00
John Preston
f663a2bf08
Limit the CalendarBox selectable days.
...
Use available information (first and last message date) to limit
the days you can choose in jump-to-date calendar box.
2017-03-07 22:29:59 +03:00
John Preston
ec0c3c5f82
Add ripple animation in CalendarBox cells.
2017-03-07 22:29:59 +03:00
John Preston
d3af60ff0b
Add a simple jump to date in a chat.
2017-03-07 22:29:59 +03:00
John Preston
ae977044f6
First version of CalendarBox is done.
...
Also moved BackgroundBox::Inner declaration inside backgroundbox.cpp
2017-03-07 22:29:49 +03:00
John Preston
6456a83a22
Finalizing files rename.
...
Also moved peer_avatar_button to ui/special_buttons.
2017-03-07 21:58:35 +03:00
John Preston
81790b2271
Notifications management moved to AuthSession.
...
Also implemented Global::WorkMode() as an base::Variable.
2017-03-06 18:38:15 +03:00
John Preston
83720d8789
Finalizing file renaming.
2017-03-04 13:23:56 +03:00
John Preston
08167a6a91
Removed #include "stdafx.h" from all files.
...
Currently the build without implicitly included precompiled header
is not supported anyway (because Qt MOC source files do not include
stdafx.h, they include plain headers).
So when we decide to support building without implicitly included
precompiled headers we'll have to fix all the headers anyway.
2017-03-04 12:27:52 +03:00
John Preston
12705c9065
Removed legacy FileDialog::query* methods.
...
Everything is done easier and better through the FileDialog::Get*.
2017-02-28 19:04:52 +03:00
John Preston
f8318177b9
Platform-dependent file methods called async.
...
Some major platform-dependent file operations refactoring.
All methods like "open file", "open file with", "show in folder"
were moved to core/file_utilities module with platform-dependent
backends. All methods interacting with DesktopServices made async.
2017-02-28 18:03:38 +03:00
John Preston
6f0cf30b12
Some platform-dependent modules refactoring.
...
Now each platform-dependent module declares its interface in
platform/platform_module.h file and after that includes platform-
specific headers like platform/win/module_win.h with implementation.
Also removed the legacy WinRT platform-dependent implementations.
2017-02-28 13:51:00 +03:00
John Preston
c207743338
Made base::lambda a copyable value type.
...
Now base::lambda can be copied and can wrap any immutable lambda.
For mutable lambdas there is base::lambda_once (which you're
supposed to call only once to pass data through lambda captures,
for example by using std::unique_ptr). Generally base::lambda is
passed by value and base::lambda_once is passed by rvalue reference.
2017-02-26 21:01:23 +03:00
John Preston
7d89b54d1c
Ability to delete authorization keys added.
...
If we start logging in and we know, that some of the authorization
keys were read from the hard drive, not generated, we destroy all
the existing authorization keys and start generating new keys.
2017-02-25 19:48:22 +03:00
John Preston
c3b3819d9f
Moved AppClass to messenger.cpp:Messenger.
2017-02-25 19:48:20 +03:00
John Preston
63c61637f8
Moved MTP::authedId() to AuthSession::Current().
2017-02-25 19:48:19 +03:00
John Preston
755325fef3
Updated Xcode build for using standard library.
...
Also trying to use g++-6 for travis build.
2017-02-21 17:37:53 +03:00
John Preston
ffc557a0f9
Using standard library instead of std_ namespace.
...
Currently tested only in VS2015.
2017-02-21 16:45:56 +03:00
John Preston
9757489645
Moved to the latest emoji set.
...
Also the old MetaEmoji project was converted to codegen_emoji.
All emoji now use full string identifiers for local storage.
2017-02-15 21:27:31 +03:00
John Preston
25583fa813
Replace T_WIDGET macro with a template base class.
2017-02-11 14:24:37 +03:00