John Preston
f1f955b7ac
Pass already-members when adding members to channel.
2017-11-19 18:41:52 +04:00
John Preston
c872cd76e1
Improve window extension by third column.
2017-11-16 20:43:52 +04:00
John Preston
cf977cb41a
Improve history -> profile top bar navigation.
2017-11-16 19:24:01 +04:00
John Preston
131efa11be
Various fixes.
2017-11-16 11:45:55 +04:00
John Preston
7fdeab829f
Paint native title instead of using custom.
2017-11-16 07:59:12 +04:00
John Preston
defa0ae4d0
Improve stickers 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
8dd3f24285
Replace Profile::UserpicButton with one from Ui::
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
3deea14559
Remove old shared media overview section.
...
Also move window/top_bar_widget to history/history_top_bar_widget.
2017-11-16 07:59:11 +04:00
John Preston
866ff628b7
Fix render bug, enable wide third column.
2017-11-16 07:59:11 +04:00
John Preston
fe9630bb20
Allow to resize third column.
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
3a25313e61
Fix restoring shared media state.
2017-11-16 07:59:11 +04:00
John Preston
0255d0c59e
Support any size in the tabbed selector.
2017-11-16 07:59:10 +04:00
John Preston
3998fad7ef
Add manage supergroup / channel box.
2017-11-16 07:59:10 +04:00
John Preston
5f0ba48309
Add top bar menu and notifications toggle.
2017-11-16 07:59:10 +04:00
John Preston
9743dc1ffb
Add some more actions to three dot menu.
2017-11-16 07:59:10 +04:00
John Preston
fcf2b9d1a7
Add some more actions to info profile.
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
a05c7a815a
Fix animation lag in info layer wrap.
2017-11-16 07:59:09 +04:00
John Preston
9a56b2d20f
Move dialogsWidthRatio to AuthSessionData.
2017-11-16 07:59:09 +04:00
John Preston
508fa14385
Workaround render glitches on new MacBooks.
...
For unknown reason large windows have bad render glitches in High Sierra.
Forcing of OpenGL composition (by adding a fake child QOpenGLWidget) fixes it.
2017-11-16 07:59:07 +04:00
John Preston
e02d209e6f
Fix build with GCC.
2017-11-16 07:59:07 +04:00
John Preston
76b8078bd9
Save section expand state in Info memento.
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
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
086e46c162
Add and use only rpl::start_with_*() methods.
2017-11-16 07:59:05 +04:00
John Preston
1a0e524b49
Optimize third column (create it only once).
...
Before historyPeer and historyPeerCanWrite were independent, so we
created a new Info section for both of them changing.
Now we use Data::CanWriteValue(peer) and rpl::flatten_latest().
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
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
1a4d326abb
Show Info if writing is forbidden.
2017-11-16 07:59:03 +04:00
John Preston
48cbdd9d40
Don't toggle tabbed section from OneColumn.
2017-11-16 07:59:03 +04:00
John Preston
c0e780a28f
Allow small dialogs list with three columns.
2017-11-16 07:59:03 +04:00
John Preston
5586d231de
Switch Info between columns and layer.
2017-11-16 07:59:03 +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
c09fbcfeb3
Display author photo / name in search results.
2017-09-05 20:21:56 +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
John Preston
25ffaaaa2d
Replace t_assert() with Assert().
...
Also use this assertions for Expects(), Ensures() and Unexpected().
2017-08-30 19:15:42 +03:00
John Preston
b3da99c302
Replace gsl::not_null<T*> with just not_null<T*>.
2017-08-30 19:15:41 +03:00
John Preston
a72453fb1b
Remove ContactsBox and contacts_box module.
2017-08-30 19:15:30 +03:00
John Preston
f7359093b4
Replace ContactsBox with PeerListBox in two cases.
...
- View contacts list in PeerListBox.
- Add participants when creating group / channel in PeerListBox.
2017-08-30 19:15:27 +03:00
John Preston
17cef93ac0
Use gsl::finally() instead of base::scope_guard().
2017-08-30 19:15:26 +03:00
John Preston
012d59ab42
Use nullptr instead of std::unique_ptr<Type>().
2017-08-30 19:15:25 +03:00
John Preston
65d81f96f3
Remove some App::wnd() occurences.
2017-08-25 14:39:28 +03:00
John Preston
b08732cf28
Move MediaView from MainWindow to Messenger.
2017-08-25 14:39:27 +03:00
John Preston
ab35829358
Remove App::app(), App::uploader(), App::api().
...
Also use Auth() instead of AuthSession::Current*().
2017-08-25 14:39:18 +03:00
John Preston
91fda6b654
Add search from group member button to dialogs.
2017-08-01 21:15:02 +03:00
John Preston
2dec9c46a7
Add emoji autocomplete to history message field.
2017-07-26 15:55:02 +03:00
John Preston
3ba210b6e4
Automatically return window to screen.
...
Fixes #3551 .
2017-07-18 19:38:11 +03:00
John Preston
b79ddb7a1c
Handle click on userpic in edit admin/banned box.
...
In admins/banned/restricted lists on row click the edit box is shown.
Now click on the userpic in this box allows to get to user profile.
2017-07-10 15:43:30 +03:00
John Preston
da0d78135d
Some refactoring in working with text entities.
...
Also move this code to TextUtilities namespace.
2017-07-06 14:37:42 +03:00
John Preston
7d342b9c6d
Add search to channel / supergroup recent actions.
2017-07-05 16:11:08 +03:00
John Preston
f316e3bd17
Add debug logs for window position and autoupdate.
2017-07-03 15:23:41 +03:00
John Preston
ebb10fb8ed
Improve night mode theme.
...
Also fix custom notification border painting with reply button.
2017-07-03 13:51:38 +03:00
John Preston
0798a0148a
Don't change custom background in night mode.
...
This will at least make it a bit better in #3598 .
The real solution with remembering custom backgrounds for both
night mode on and off doesn't fit with current theming way too well.
2017-06-30 15:03:51 +03:00
John Preston
61659244b7
Add night mode switch to the main menu.
...
Also fix a bug with the default background applying.
2017-06-30 09:21:46 +03:00
John Preston
0a9db8533b
Save admin log state to memento and restore it.
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
1791b251ad
Fix tabbed section / panel render glitches.
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
25a718c54b
Start recent channel actions log section.
2017-06-30 09:21:41 +03:00
John Preston
6fe0fe6fd6
Use lightButtonFg[Over] for Hide All Notifications.
...
Fixes #3521 .
2017-06-29 11:40:15 +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
b94099e25b
Realtime UI translation in all fields and buttons.
2017-06-29 11:39:51 +03:00
John Preston
110e7c8074
Finalize rename / move.
2017-06-29 11:39:38 +03:00
John Preston
c91e29d15d
Improve floating player show / hide animations.
...
Also replace Window::Corner with a generic RectPart enumeration.
2017-05-24 16:25:20 +03:00
John Preston
c58a48276f
Hide floating player if video message is visible.
2017-05-24 16:25:15 +03:00
John Preston
b7550f63c9
Add a floating player for round video messages.
2017-05-24 16:25:15 +03:00
John Preston
1e6d4d6b41
Activate mediaview instead of main window.
...
If the mediaview is currently shown and we receive an activation
event for the main window we should activate and focus mediaview.
2017-05-24 16:25:08 +03:00
John Preston
9f7c45e35c
Fix enabling emoji sidebar from a small window.
...
Extend the window size after the tabbedSelectorSectionEnabled flag
is already set to true. Otherwise we extend the window and switch
to a normal from single column layout before showing the sidebar.
2017-05-17 14:50:00 +03:00
John Preston
8d02d81a9a
Switch layout to Normal in a wide enough window.
...
A lot of people didn't know how to bring the dialogs column back
after it was gone in a wide single column MainWindow.
Now we switch to a two column layout if the window allows it,
preserving the emoji / stickers / GIFs section in case it is shown.
2017-05-13 15:02:07 +03:00
John Preston
b74dea8662
Move logo images to Messenger. Set call panel icon.
2017-05-12 18:28:44 +03:00
John Preston
530a385d4e
Add sound override support by codes in Settings.
2017-05-09 23:46:40 +03:00
John Preston
fd24aff6b1
Play sounds in calls.
2017-05-09 23:46:31 +03:00
John Preston
2e816f2a67
Play notification sound using Media::Audio::Track.
2017-05-09 23:46:30 +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
30d000e139
Toggle calls controls using config and user flags.
...
Also use calls timeout values from config.
Also request config each time when the auth session changes.
2017-05-09 23:46:22 +03:00
John Preston
c4f90983af
Redesign calls service messages.
2017-05-09 23:46:19 +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
0a716036c2
Extract Calls::Call. Add a call button to TopBar.
2017-05-09 23:46:14 +03:00
John Preston
291a6b73ab
Show phone instead of "online" in the main menu.
2017-05-07 12:00:49 +03:00
John Preston
eb240defa3
Display forwarded info in video messages.
2017-04-30 16:43:17 +03:00
John Preston
71e653db30
Fix non-available API usage in OS X 10.6-10.7 version.
2017-04-18 22:00:51 +03:00
John Preston
1b7777e3a0
Pause other GIFs when playing round video message.
2017-04-12 22:37:28 +03:00
srazi
734b426518
Fix canceling forward when clicking on _userpicButton or _cloudButton ( #3248 )
...
- Fixes #3192
Signed-off-by: srazi <s.r.alavizadeh@gmail.com> (github: srazi)
2017-04-11 23:03:34 +03:00
Nicholas Guriev
232d3dcb54
Make theme preview more realistic ( #3250 )
...
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-04-11 21:16:12 +03:00
John Preston
7f7318c0bf
Fix members dropdown and chat info menu position.
2017-04-11 17:27:46 +03:00
John Preston
891d200e2d
Add TabbedSection which uses the TabbedSelector.
2017-04-10 12:08:56 +03:00
John Preston
570cd9bdfa
Move GIF pausing methods to Window::Controller.
2017-04-08 16:31:57 +03:00
John Preston
5444b8166c
Finalize rename / move of files.
2017-04-07 18:13:18 +03:00
John Preston
22d905b39c
Version 1.0.29: Add cloud icon to main menu.
2017-04-05 12:22:45 +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
8d4be19952
Use separate TopBar for History and Overview.
...
Move TopBar widget to History and Overview from MainWidget.
2017-03-31 15:47:58 +03:00
John Preston
61c5b45d7a
Select exception users in EditPrivacyBox.
2017-03-18 12:49:46 +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
5aab168b3e
Alpha 1.0.20: fix crash in default notifications.
...
Before showNextFromQueue() was called from a range-for loop over
the _notifications and it invalidated the _notifications iterators.
2017-03-08 23:51:40 +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
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
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
36fc7d1991
Merge branch 'master' into temp
...
Conflicts:
Telegram/SourceFiles/settings/settings_widget.cpp
2017-02-18 14:37:57 +03:00
John Preston
0411f05c39
Alpha 1.0.11: crashfix in theme preview generator.
2017-02-17 16:07:57 +03:00
Behnam Emamian
54c409d967
Use external video player by hidden setting ( #3021 )
...
Signed-off-by: Behnam Emamian <emamian@persianprocess.com> (github: BehnamEmamian)
2017-02-17 13:50:27 +01: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
John Preston
2f85997c9f
Fixed multiline comments handling in theme editor. #2987
2017-02-09 16:53:28 +03:00
John Preston
b84abbec08
Fixed crash in Theme Editor.
...
There was an attempt to access _searchResults with index from _data.
2017-02-09 16:43:21 +03:00
John Preston
27a4d0f029
Alpha 1.0.7: Theme editor added to Settings.
2017-02-07 20:39:47 +03:00
John Preston
b842761ea3
Closed beta 1000006001: Built in theme and color palette editor.
2017-02-07 17:56:33 +03:00
John Preston
5f0741a0a5
Some more logo assets added.
2017-02-02 20:09:26 +03:00
John Preston
4964b8b488
Beta 1000002001: Recreate audio device when no output or device changes.
2017-01-25 08:45:09 +03:00
John Preston
8f31e1ab31
Alpha 1.0.1 for Windows: Qt bugfix backported for large files write.
...
Also the initial background saved as JPG to reduce the Telegram.exe
file size below 32 MB. Currently deployed versions can't autoupdate
to a file that is larger than 32 MB due to a critical Qt bug.
2017-01-17 11:50:22 +03:00
John Preston
041e366df7
Alpha 1.0.1: resize chats list with mouse press-and-drag.
...
Also fixed drag-n-drop images from Firefox in Windows.
Also some additional colors added to themes palette:
HistoryToDown button now has separate colors.
Windows title bar and buttons have separate active/inactive colors.
2017-01-16 16:27:11 +03:00
John Preston
4424dbf64a
Allow to resize chats list. One more mode added (narrow chats list).
2017-01-16 12:55:03 +03:00
John Preston
7fb1463c43
Version 1.0 stable: bump copyright date to 2017.
2017-01-11 23:02:13 +04:00
John Preston
2d185cf66e
Some colors split for the palette. Theme preview applying improved.
...
Also attempting to fix travis build.
2017-01-11 12:16:44 +04:00
John Preston
143181095f
Alpha 0.10.26: t.me links, latest OpenAL code used.
...
Also inline results should be displayed above the message field.
2017-01-07 15:55:05 +04:00
John Preston
72e34dc5b1
Fixed alpha 0.10.23 build for Linux.
2017-01-01 21:49:44 +04:00
John Preston
3da020dffd
Alpha 0.10.23: tiled background fixed for macOS.
2017-01-01 21:10:35 +04:00
John Preston
c65a280b9d
Alpha 0.10.23: small tiled background performance improved.
...
Also some error texts improved. Also Ctrl+W closes MediaView now.
2017-01-01 20:59:33 +04:00
John Preston
eec5b78054
Delete for everyone checkbox added. Various bugfixes.
2017-01-01 15:47:00 +04:00
John Preston
218f991547
Alpha version 0.10.22: critical bug fixes.
2016-12-31 17:34:41 +04:00
John Preston
bc0c355d2d
Alpha version 0.10.21: pinned chats, groups in common, new design.
2016-12-30 22:23:17 +04:00
John Preston
b39987c343
Closed beta 10020007: New selected messages count animation.
2016-12-30 17:53:10 +04:00
John Preston
1d8e76aa08
New empty user/chat photos: with filled background and initials.
2016-12-30 17:53:09 +04:00
John Preston
38e6a0ae7e
Closed beta 10020005: Added several buttons animations.
2016-12-30 17:53:06 +04:00
John Preston
ef927c8465
Theme preview ready.
...
Also style::color is now copyable, constructed only inside a palette.
Also macOS setup new background ready.
2016-12-30 17:53:05 +04:00
John Preston
eb4d2a38b6
Closed beta 10020003: All colors moved to palette, some bug fixes.
2016-12-30 17:53:02 +04:00
John Preston
177078b0af
Closed beta 10020002: Use default color theme link in Settings.
2016-12-30 17:53:00 +04:00