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
8b69e6ab99
Rename some methods in DocumentData.
...
Also fix voice message mark as read when autoplaying after previous.
Also show play icon and don't show playlist for audio files that do
not have shared music files attributes but have audio file mime type.
2017-12-10 14:28:04 +04:00
John Preston
5a7d8bcffb
Add audio playlist using Info::Media::ListWidget.
2017-12-09 19:13:06 +04:00
John Preston
9bbcbd4bb3
Remove all legacy media overview code.
2017-12-08 22:34:26 +04:00
John Preston
f8963d7e4b
Read silent flag from PeerData, not SilentToggle.
2017-12-08 15:52:12 +04:00
John Preston
355747d7bf
Remove send actions in Saved Messages.
...
Fixes #4122 .
2017-12-07 18:27:59 +04:00
John Preston
5bc47e5203
Move shareContact and readServerHistory to ApiWrap.
...
Also allow non-confirming contact info sharing to Saved Messages.
2017-12-07 17:43:05 +04:00
John Preston
c6d3fd883a
Display right action button not too high.
2017-12-06 18:15:41 +04:00
John Preston
1473c14668
Forward messages to Saved Messages instantly.
2017-12-06 17:56:40 +04:00
John Preston
6764a3cc86
Replace SelectedItemSet with MessageIdsList.
...
Use vector<FullMsgId> everywhere instead QMap<..,HistoryItem*>.
The old way the app crashed in case some messages were deleted.
If the items are needed use HistoryItemsList=vector<HistoryItem*>.
2017-12-06 14:13:38 +04:00
John Preston
85d8273009
Implement correct saved messages history layout.
...
Forwarded info is displayed as a message author info (name/photo).
Outgoing messages without forwarded info are displayed as out().
Messages with save_from_ info have a button for GoToOriginal().
2017-12-05 20:14:28 +04:00
John Preston
46bafc2dcc
Support Saved messages in chats list and forwards.
2017-12-05 18:07:01 +04:00
John Preston
1d85c8a6b6
API scheme updated to layer 73.
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
62568daffe
Refactor NotifySettings in PeerData.
2017-12-04 21:48:45 +04:00
John Preston
e1c68892d4
Show third column only when explicitly requested.
...
This allows you to show info in layer from mention links.
2017-12-04 13:42:05 +04:00
John Preston
f3c8da4819
Request all admins when first opening a supergroup.
2017-12-03 20:43:42 +04:00
John Preston
675499df4d
Fix render bug in single column layout.
2017-12-02 14:22:48 +04:00
John Preston
85b3d3f64d
Display admin badges in supergroups.
...
Also prefer std containers to Qt and OrderedSet in data_peer.
2017-12-01 22:38:44 +04:00
John Preston
2bbf17b672
Fix t.me/share links.
...
Regression was introduced in ffc20e4492
.
Fixes #4099 .
2017-11-30 21:47:58 +04:00
John Preston
41b143cb7e
Fix and improve back navigation with three columns.
2017-11-29 00:01:04 +04:00
John Preston
efdba3a482
Handle errors in getMessages().
2017-11-23 19:41:13 +04:00
John Preston
2387b66e86
Allow supergroup members to clear history.
2017-11-22 12:04:24 +04:00
John Preston
75d8d01b17
Allow pinned messages in channels.
2017-11-21 18:27:48 +04:00
John Preston
6ca105a290
Minimal layer 72 support.
2017-11-20 23:54:05 +04:00
John Preston
eb8800f2d4
Replace $ with _ in rpl::mappers.
2017-11-20 16:32:55 +04:00
John Preston
131efa11be
Various fixes.
2017-11-16 11:45:55 +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
534b578598
Fix crash when switching two columns at once.
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
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
7f8cdf85d5
Grow history stack following joinchat links.
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
8191ebfc49
Improve peer context menu for info.
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
9a56b2d20f
Move dialogsWidthRatio to AuthSessionData.
2017-11-16 07:59:09 +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
65cc4d3fbc
Support item repaint in Info media overview.
2017-11-16 07:59:06 +04:00
John Preston
c0bb8a8af7
Return third section when returning in main section.
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
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
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
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
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
c302219f9e
Use rpl in some widgets and effects.
2017-11-16 07:59:02 +04:00
John Preston
2690618da2
Add Storage::UserPhotos and UserPhotosSlice.
2017-11-16 07:59:02 +04:00
John Preston
41ed2d1b84
New storage for shared media messages index.
2017-11-16 07:59:02 +04:00
John Preston
76489a7885
Fix stack overflow in passcode lock check.
...
A regression was introduced in e209737b1a
.
We call MainWindow::doWeReadMentions() in the history paintEvent,
that calls Auth().checkAutoLock() and may start passcode locking.
Passcode locking starts animation and grabs the window content,
calling history paintEvent() which leads to deadlock.
Now we call Auth().checkAutoLock() asyncronously.
2017-09-03 15:45:48 +03:00
John Preston
df64c972d8
Replace QFlags with base::flags.
2017-09-03 15:45:47 +03:00
John Preston
48e2a5472e
Return not_null<History*> in App::history().
2017-09-03 15:45:43 +03:00
John Preston
5a20014b1a
Highlight all mentions when marking them read.
2017-08-30 19:15:53 +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
e13ed9b909
Remove main()->peerUpdated and some other signals.
2017-08-30 19:15:36 +03:00
John Preston
b816d33d48
Replace add bot to group box with PeerListBox.
2017-08-30 19:15:29 +03:00
John Preston
e209737b1a
Display and follow unread mentions in history.
2017-08-30 19:15:13 +03:00
John Preston
c8810f87b9
Move a lot of code from scheme.h to scheme.cpp.
2017-08-25 14:39:32 +03:00
John Preston
b08732cf28
Move MediaView from MainWindow to Messenger.
2017-08-25 14:39:27 +03:00
John Preston
f04b25ea26
Allow setting group stickers set.
2017-08-25 14:39:19 +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
667eb288d7
Add faved stickers set loading and saving.
...
Also move stickers loading methods to ApiWrap.
2017-08-25 12:58:13 +03:00
John Preston
b0cc61c621
API scheme updated to layer 71.
2017-08-25 12:58:12 +03:00
Nicholas Guriev
a2c93bc040
Fix updates of mute status in context menu of dialog list
...
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru>
2017-08-25 12:56:50 +03:00
Nicholas Guriev
24fc162e71
Mute settings box
...
Closes : #3153
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-08-04 18:16:54 +02:00
John Preston
8c60ac78aa
Rename and split dialogswidget module.
...
Also remove some debug information for crash fix.
2017-08-01 21:15:03 +03:00
John Preston
91fda6b654
Add search from group member button to dialogs.
2017-08-01 21:15:02 +03:00
John Preston
96a2af842f
Remove glitch with video messages floating player.
2017-08-01 21:14:44 +03:00
John Preston
34d2e78308
Allow to edit Bio in Settings.
2017-07-23 12:34:43 +03:00
John Preston
cf02a4cc31
API scheme updated to layer 70.
2017-07-23 12:34:40 +03:00
John Preston
949104d879
Improve queued by pts updates handling.
...
The updates are ordered by pts and applied in the correct order.
Also some pts-dependent updates handling was moved to ApiWrap.
2017-07-14 14:57:05 +03:00
John Preston
f32af6999b
Add a fast share button in channels and bots.
2017-07-11 20:11:06 +03:00
John Preston
ac99784bf7
Change chat for forwarded items by click on them.
...
Closes #3637
2017-07-11 13:23:15 +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
42febdb240
Fix alpha version changelog notification.
...
We should call window->serviceNotification() because it checks for
the service chat history being loaded before adding the message.
The method in MainWidget was renamed to prevent bugs in the future.
2017-06-30 14:30:11 +03:00
John Preston
4993ff1921
Finalize rename / move.
2017-06-30 09:21:45 +03:00
John Preston
836fe119d9
Improve display of admin event log entries.
...
Don't show the Forward, Delete and Go to message in MediaView.
Better handle round video floating player in admin event log.
2017-06-30 09:21:45 +03:00
John Preston
82912f4a0b
Handle socks internal links.
2017-06-30 09:21:43 +03:00
John Preston
0a9db8533b
Save admin log state to memento and restore it.
2017-06-30 09:21:43 +03:00
John Preston
cedf8a65e7
Better channel log entry layout inside messages.
...
Also move HistoryService class to a separate module.
2017-06-30 09:21:42 +03:00
John Preston
5c87b42135
Use plain HistoryItem in channel admin events log.
...
Instead of using a complex AdminLog::Item use just HistoryItem*.
2017-06-30 09:21:42 +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
6ba57e713e
Use forwarded messages only for one selected chat.
...
Different chats now can have different forwarded "drafts".
2017-06-29 11:40:26 +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
330b4a0b00
API scheme updated to layer 68.
2017-06-29 11:40:08 +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
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
a813793007
API scheme updated to layer 67.
2017-06-29 11:39:35 +03:00
John Preston
9a18ecf93d
Fix the chats list width saving with passcode.
...
Regression was introduced in 0339b1b54b
.
If the passcode is enabled the main widget is created after the main
window was fully initialized, so the first main widget resize already
used the shrink algorithm while creating the third column.
No we shrink the left column only after the main widget was started.
2017-05-27 13:28:16 +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
03aeaadd5b
Update floating player position.
2017-05-24 16:25:19 +03:00
John Preston
75dcce0b3c
Save floating player position in localstorage.
2017-05-24 16:25:17 +03:00
John Preston
ee6d80673a
Snap floating player to column and corner.
2017-05-24 16:25:17 +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
7873cb4373
Using media player for voice / video messages.
...
Media::Player::Widget displays the current voice / video message
if it is played and the current song otherwise.
It is created when a voice / video message starts and is destroyed
when all the voice / video messages in the playlist are finished.
2017-05-24 16:25:12 +03:00
John Preston
611a3e2f8a
Handle voice playlist in Media::Player::Instance.
...
This allows video and voice messages to autoplay one after another.
2017-05-24 16:25:09 +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
efb59e8c3a
Show GIF in Mediaview on click.
...
This way you can watch GIF on full screen and switch between them.
2017-05-24 16:25:05 +03:00
John Preston
2377873c45
Add items to overviews inside HistoryMedia.
...
This allows one history item to exist in several media overviews.
See voice message, which should be in VoiceFiles and RoundVoiceFiles.
2017-05-24 16:25:04 +03:00
John Preston
0339b1b54b
Shrink dialogs column when enabling emoji sidebar.
...
Try to hold the ratio between the chat width and the dialogs list
width when the emoji sidebar is created by shrinking the left column.
2017-05-17 15:38:42 +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
565b56fb5f
Pause all media if a call is created.
...
Pause video, voice messages, songs and stop video messages.
2017-05-12 20:44:18 +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
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
f6eb2c5205
Add call top bar above the media player.
2017-05-09 23:46:18 +03:00
John Preston
d18164bc51
Add Calls::Instance. Add libtgvoip as a dependency.
...
Also move all submodules to Telegram/ThirdParty.
2017-05-09 23:46:08 +03:00
John Preston
caf2e19d27
Better error message for banned in public groups.
...
Also improve the changelog.
2017-05-08 16:30:59 +03:00
John Preston
cd6a189990
Show some info for USER_BANNED_IN_CHANNEL error.
2017-04-30 16:43:18 +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
e3aacc8072
Don't change notification sound to empty on mute.
...
If notifications are muted no one from official apps play sound.
So there is no need to turn the sound off, otherwise if you enable
the notifications from a different app the sound stays off.
Enable the sound (change to "default") when turning notifications on.
2017-04-15 21:51:11 +03:00
John Preston
891d200e2d
Add TabbedSection which uses the TabbedSelector.
2017-04-10 12:08:56 +03:00
John Preston
330fc35800
Move some classes to separate modules.
...
MessageField, BotKeyboard, HistoryInner from historywidget.
2017-04-08 16:31:58 +03:00
John Preston
570cd9bdfa
Move GIF pausing methods to Window::Controller.
2017-04-08 16:31:57 +03:00
John Preston
0d0307e175
Move ApiWrap to AuthSession.
...
Also send all ApiWrap requests as an MTP::Sender.
Also create AuthSession only after starting MTProto.
2017-04-07 18:13:19 +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
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
3d846fcd49
Show inline bot results in a separate widget.
...
Add a InlineBots::Layout::Widget for inline bot results.
GIF search from EmojiPan is disabled for now.
2017-03-31 15:48:00 +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
d41372dccd
Allow MTP_flags(0) and MTP_flags(single_flag).
2017-03-25 18:42:01 +03:00
John Preston
fc77b0a51c
Save privacy in ApiWrap. Handle privacy updates.
2017-03-18 12:49:47 +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
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
f2465eba73
Make MTPstring and MTPvector value types.
...
Also move MTPstring implementation to QByteArray.
2017-03-10 23:27:26 +03:00
John Preston
02da80439b
Remove read() constructors from MTP types.
...
This will allow us to handle errors in parsing not by exceptions.
2017-03-10 23:27:24 +03:00
John Preston
ed3b2cc017
Make date service messages clickable.
...
Open jump to date box when clicking on dates including floating date.
2017-03-07 22:30:00 +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
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
12bbd971b3
Added Guideline Support Library as a dependency.
...
See https://github.com/Microsoft/GSL for information.
2017-03-04 12:01:07 +03:00
John Preston
0838d21a05
Removed virtual type getters in mtpFileLoader.
2017-03-04 12:01:06 +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
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
dd933cf61c
MTP global state moved to MTP::Instance class.
...
Now there will be ability to start multiple mtproto instances.
2017-02-25 19:48:21 +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
a35947141c
Encapsulated DcOptions to an independent class.
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
7adfe93a8d
Alpha 1.0.10: unpinning converted chat on demand.
...
If we want to pin a chat and we have reached the limit we now check
for a deactivated (converted to supergroup) chat that is pinned and
is not in the chats list and just silently unpin it if it is found.
Also possible UB fix for a waveform encoding and decoding.
2017-02-16 19:47:50 +03:00
John Preston
8d354382a4
Text selection display fixes.
...
- Use QPainter current pen for selected text in cases we
didn't specify it explicitly in the TextPalette.
- Better rounding of QRectF from QFixed values to QRect selected
background filling areas.
- Using QPainter::viewport() instead of random huge QRect() in
clipping, because it fails to apply this huge QRect() clip region
in Retina paint devices: 2x scale QMatrix::map() is not defined for
QRegion-s having rects with sum of dimensions larger than 100000.
2017-02-16 17:07:16 +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
c39bf239ea
Removed legacy HistoryItem::type() code.
2017-02-10 17:16:50 +03:00
John Preston
bb7730eee1
Back mouse button and key return you in stack.
...
Now you can use mouse Back button and Back keyboard button
to return from media overview through profile to the chat view.
2017-02-09 16:49:43 +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
d1b9b8e3a3
Alpha 1.0.4: Click and drag to reorder pinned chats.
2017-01-30 18:27:13 +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
6ae68b337d
Audio capture moved to a separate module.
2017-01-25 00:25:21 +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
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
d0a7e6be73
Delete messages box labels fix and confirm by Enter key.
...
Also context menu fixed in case of non-transparent windows.
Also pausing GIFs when the window is not active.
2017-01-02 21:11:49 +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
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
John Preston
2436ad74bd
Boxes redesigned. Common groups moved to Shared Media.
...
Also transparent images sending fixed.
2016-12-30 17:52:56 +04:00
John Preston
85b434bee4
Scheme updated. Pinned dialogs support added.
2016-12-30 17:52:53 +04:00
John Preston
4692fdeb5f
Closed beta 10019013: Groups in common now are opened in a section.
2016-12-30 17:52:50 +04:00
John Preston
47977009b8
Moved FloatAnimation->Animation, Animation->BasicAnimation.
2016-12-30 17:52:48 +04:00
John Preston
06ed7b8eaf
Some more ripple animations. Now only anim::value (float64).
...
Also each FloatAnimation now stops MTP responses.
Also slide animations done by FloatAnimation.
Closed beta 10019012.
2016-12-30 17:52:46 +04:00
John Preston
7bb3b4d807
Common groups profile block done. Moved to layer 59.
...
Also profile block modules were renamed.
2016-12-30 17:52:42 +04:00
John Preston
8958ae0377
Typing animations from android.
2016-12-30 17:52:36 +04:00
John Preston
3cff50009c
Closed beta 10019010: unified attach button, new intro, new stickers.
...
Now all files sending is confirmed before preparing for sending.
You can paste from clipboard and drag many files at once.
2016-12-30 17:52:32 +04:00
John Preston
3da0533339
Intro redesign done.
2016-12-30 17:52:30 +04:00
John Preston
9fa284a6d1
Photo and video overview and background gallery checkboxes improved.
2016-12-30 17:52:23 +04:00
John Preston
e880c4876e
Strict alignment request for base::lambda. Various improvements.
2016-12-30 17:52:21 +04:00
John Preston
2ada4d841f
Top bar buttons design improved, emoji pan animations removed.
2016-12-30 17:52:18 +04:00
John Preston
7fa274a68e
Improved ripple animation colors and styles for different buttons.
...
Also moved FlatLabel and LabelSimple to ui/widgets/labels module.
Also moved ScrollArea to ui/widgets/scroll_area module.
2016-12-30 17:52:10 +04:00
John Preston
3186e1e495
Ripple animations done for IconButton, FlatButton and RoundButton.
...
Also moved input field classes to ui/widgets/input_fields module.
2016-12-30 17:52:08 +04:00
John Preston
807bebb3cf
Buttons moved to ui/widgets/buttons module, BoxButton removed.
2016-12-30 17:52:04 +04:00
John Preston
3366e05b77
Rich dropdown animations.
2016-12-30 17:51:56 +04:00
John Preston
19f4e50e33
New compose area icons.
2016-12-30 17:51:50 +04:00
John Preston
fac8e48381
Default background changed to green, "video file" -> "video" in lang.
2016-12-30 17:51:48 +04:00
John Preston
23c2e5364a
Removed anim::cvalue and ColorAnimation, all done by fvalue now.
...
Also moved style::interpolate to anim::color/anim::pen/anim::brush.
2016-12-30 17:51:46 +04:00
John Preston
b3d1602354
Forward bar and unread counter added to top bar in OneColumn layout.
2016-12-30 17:51:42 +04:00
John Preston
d12177befd
Update Telegram button added to DialogsWidget/Intro. Three dot menu.
2016-12-30 17:51:41 +04:00
John Preston
3a599e0752
New main menu in DialogsWidget.
...
Also "flip_horizontal" and "flip_vertical" modifiers support added.
Also moving parts of MainWindow to Window::MainWindow.
2016-12-30 17:51:38 +04:00
John Preston
0cbb0014db
Removed blue window title, new small title used only in Windows.
2016-12-30 17:51:37 +04:00
John Preston
af9edc17d2
Applying color theme without restarting the application.
2016-12-30 17:51:31 +04:00
John Preston
c932f3d9df
Removing almost all animated over states in IconButton.
2016-12-30 17:51:30 +04:00
John Preston
e08f5437a6
Palette usage improvements.
2016-12-30 17:51:29 +04:00
John Preston
dbb6371e67
First version on loading themes is ready.
2016-12-30 17:51:27 +04:00
John Preston
b2414939c9
Merge branch 'master' into dev
2016-12-30 17:50:59 +04:00
John Preston
19b77ee4ac
Version 0.10.20: don't allow the share url start with an inline bot.
2016-12-18 19:12:49 +03:00
John Preston
6e33f039b2
Dropdown replaced by Ui::DropdownMenu. ScrolledWidget removed.
...
Ui::DropdownMenu is like Ui::PopupMenu, both based on Ui::Menu.
2016-10-27 15:56:48 +03:00
John Preston
ff2d959abd
Some icons moved from sprite. Ui::WidgetFadeWrap() effect added.
2016-10-26 13:06:00 +03:00
John Preston
c514c62d61
Attempt to fix a crash in getUserFull() without a loaded peer.
2016-10-22 18:58:14 +03:00
John Preston
130c41d711
Take control over macOS media keys only when using music player. #2549
2016-10-22 17:35:37 +03:00
John Preston
951d93832c
Fix wrong clearing of a bot start token when returning to chat. #2417
2016-10-20 12:46:16 +03:00
John Preston
48a20f0e71
Version 0.10.15 alpha: crash fix in new player, close button added.
...
Also some grammar improvements and pinned message bar hiding fixed.
2016-10-18 18:19:13 +03:00
John Preston
ba4dcc42dc
Version 0.10.14 alpha: using $XDG_DATA_HOME in Linux.
...
If there is no app data in ~/.TelegramDesktop (like in
fresh installs) we use $XDG_DATA_HOME/TelegramDesktop.
2016-10-18 13:32:33 +03:00
John Preston
fc7c5d0ab3
Fixed travis build for TDESKTOP_DISABLE_AUTOUPDATE case.
2016-10-18 10:56:38 +03:00
John Preston
31a847fb9d
Playlist appearance added to the new media player.
...
Also itemRemoved() now is fired as a global observable.
2016-10-14 20:10:15 +03:00
John Preston
4f0cff5467
Playlist added in the new media player panel.
2016-10-13 18:04:40 +03:00
John Preston
956d048d56
Changing volume in media player by mouse wheel events.
2016-10-13 11:36:02 +03:00
John Preston
9eb8a93719
Media::Player::Widget added instead of PlayerWidget.
...
New media player bar widget added. Switching between floating
media player panel and media player widget. New volume controller.
2016-10-12 22:36:48 +03:00
John Preston
e616c39608
Merge branch 'dev' into player
...
Conflicts:
Telegram/SourceFiles/application.cpp
Telegram/SourceFiles/core/utils.h
Telegram/SourceFiles/localstorage.cpp
Telegram/SourceFiles/pspecific_mac_p.mm
2016-10-08 12:10:33 +03:00
John Preston
e1a8c89ff1
Version 0.10.9: don't handle cStartUrl() while passcoded.
2016-10-03 11:20:02 +03:00
John Preston
903795d0e5
Merge branch 'game_media' into player
...
Conflicts:
Telegram/SourceFiles/application.cpp
Telegram/SourceFiles/inline_bots/inline_bot_layout_internal.cpp
Telegram/SourceFiles/mainwidget.cpp
Telegram/SourceFiles/mainwidget.h
Telegram/SourceFiles/structs.h
2016-09-29 00:31:43 +03:00
John Preston
0562024444
Merge branch 'master' into player
...
Conflicts:
Telegram/SourceFiles/core/observer.h
Telegram/SourceFiles/mainwindow.h
Telegram/SourceFiles/media/view/media_clip_playback.cpp
Telegram/SourceFiles/media/view/media_clip_playback.h
2016-09-29 00:16:02 +03:00
John Preston
344890c533
Game sharing and inline results supported. Qt patch updated.
...
Qt patch now disables QT_SCALE_FACTOR and other HighDpi
environment variables reading because tdesktop doesn't support them.
2016-09-28 19:23:25 +03:00
John Preston
90a4b66366
New media type Game added. Display of Game partially supported.
2016-09-27 16:37:18 +03:00
John Preston
453661d611
Removed Function<> and SharedCallback<>, using base::lambda_unique<>.
...
Also removed macro START_ANIMATION(anim,) using anim.start() instead.
2016-09-26 15:09:59 +03:00
John Preston
3d8dadc2e7
Fixed reading issue in channels after getChannelDifference().
...
In App::history() readInboxBefore property was reset each time.
2016-09-25 22:04:02 +03:00
John Preston
38114d3297
Merge branch 'master' into player
2016-09-23 22:22:40 +03:00
John Preston
947963d5d1
Version 0.10.8: editing of service message added.
2016-09-23 21:26:53 +03:00
John Preston
f970ac3163
New audio player done (without playlist).
2016-09-23 19:04:26 +03:00
John Preston
a8f3582cb1
Title controls reordering done right. Title song play button created.
2016-09-21 14:44:20 +03:00
John Preston
ce1973fd30
New media player layout started.
2016-09-17 22:28:33 +03:00
John Preston
6d2fc5c642
Game bot confirmations added.
2016-09-15 22:15:49 +03:00
John Preston
26ca5fafbb
Scheme updated. Dialogs list layout bug fixed.
2016-09-15 12:44:02 +03:00
John Preston
c7e8b153bb
Enabled sending stickers from the sticker set preview box.
2016-09-11 11:38:14 +03:00
John Preston
8419a56e10
Emoji display added to sticker preview. Reading featured sticker sets.
...
Reading featured sticker sets one by one while scrolling through them,
only when the row was fully visible and the image was already loaded.
2016-09-10 23:54:59 +03:00
John Preston
ff657347b8
Featured stickers section done in StickersPanel.
...
EmojiPan moved to a separate module stickers/emoji_pan.
FFmpeg linked by msvs linker flags in GYP to use ".a" extension.
2016-09-09 18:52:46 +03:00
John Preston
82d92d21f6
ShareBox used to share game score using tg:// link. Scheme updated.
2016-09-07 12:04:57 +03:00
John Preston
ab18fc6478
0.10.4: Same chat msg links fixed. Crash fix attempt in ScrollArea.
...
If the message link is opened in the same chat the ShowWay::Forward
should be ignored.
There was a possible crash in ~ScrollArea() when one of the bars
was already destroyed and the second called ScrollArea::leaveEvent.
Now both bars are ChildWidget<>s and will be destroyed in ~QWidget().
2016-09-03 12:35:12 -04:00