Commit Graph

159 Commits

Author SHA1 Message Date
John Preston 8bacc74d8b Request dialog list entries when needed.
Also save the original server-side int32 date in HistoryItems.
2018-02-08 12:20:54 +03:00
John Preston 2fdc3169ce Fix / improve support for album items selection. 2018-02-08 12:20:52 +03:00
John Preston b91ebad8be Improve items resize in history and feed. 2018-02-08 12:20:50 +03:00
John Preston 91f369a0b3 Handle view resize/repaint requests for mainView. 2018-02-08 12:20:49 +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 4740d44159 Make HistoryView::Message a ClickHandlerHost. 2018-02-08 12:20:47 +03:00
John Preston 062b0b2165 Save item views in App::*Item() variables.
Also remove App::contextItem.
Also use owning pointers for history context menus.
2018-02-08 12:20:47 +03:00
John Preston 6a9556d42c Move non-settings session data to Data::Session.
Rename AuthSessionData to AuthSessionSettings, move data away.
2018-02-08 12:20:46 +03:00
John Preston ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +03:00
John Preston 9551cfaf9b Use more specific color keys for media overview parts.
File icons and radial animations should use derived keys instead of msgInBg.
Fixes #4246.
2017-12-31 01:28:25 +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 5d18d7c813 Send album after cancel of some media uploads.
Also display checks when part of the album medias are uploaded.
2017-12-26 19:20:07 +03:00
John Preston 92333e982c Move message components to history_item_components.
Also fix channel signatures rendering.
2017-12-18 19:52:36 +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 537400d8b2 Enable distinct selecting of grouped media. 2017-12-16 20:50:42 +04:00
John Preston 4c9931ab02 Support grouped media rendering. 2017-12-16 20:50:42 +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 39428841e4 Improve selected shared media items layout.
Also fix night mode theme bug in report spam panel.
2017-11-23 18:58:00 +04:00
John Preston 4e1b94d37d Allow 3 photo/video in the minimal third column. 2017-11-16 07:59:12 +04:00
John Preston aec496d520 Remove RTL Override symbols from filenames. 2017-11-16 07:59:09 +04:00
John Preston 5b190c5098 Preserve TopBarOverride in Info WrapWidget.
Also support better selection in info shared media.
Also fix build for Xcode.
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 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 ecbc0ae57e Show info media overview using Overview::Layout. 2017-11-16 07:59:06 +04:00
John Preston ffc20e4492 Divide structs into several data/ modules. 2017-11-16 07:59:04 +04: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 b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +03:00
John Preston 21d2f6a44f Generalize Checkbox layout.
Now any Checkbox can have Check, Radio or Toggle layout.
Radiobutton is now a subclass of Checkbox with default Radio layout.
2017-07-07 14:16:37 +03:00
John Preston eaf91bba58 Parse bold / italic markdown entities. 2017-07-06 16:44:11 +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 75fdd5315f Add some more colors for theming. 2017-06-30 09:21:44 +03:00
John Preston e39b95175b Handle channel event log mouse events. 2017-06-30 09:21:42 +03:00
John Preston 839e59075d Display log entry original data in HistoryMessage. 2017-06-30 09:21:41 +03:00
John Preston 110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +03:00
John Preston e0978f86d1 Alpha 1.1.3: Fix some render in macOS. 2017-05-24 17:36:58 +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 2e816f2a67 Play notification sound using Media::Audio::Track. 2017-05-09 23:46:30 +03:00
John Preston b71a901182 Round thumbs for round videos in shared links. 2017-05-08 17:00:26 +03:00
John Preston eb240defa3 Display forwarded info in video messages. 2017-04-30 16:43:17 +03:00
John Preston 5444b8166c Finalize rename / move of files. 2017-04-07 18:13:18 +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 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 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 ffc557a0f9 Using standard library instead of std_ namespace.
Currently tested only in VS2015.
2017-02-21 16:45:56 +03:00
John Preston e922e5be39 Alpha 1.0.8: seek in voice messages (by waveform). 2017-02-11 01:37:37 +03:00
John Preston 33d2ec0f54 Version 1.0.5: new audio code + reorder pinned chats. 2017-01-31 12:13:51 +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 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 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 90234cb7a0 Closed beta 10019014: New input fields design and animations. 2016-12-30 17:52:52 +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 b0f14d1856 Closed beta 10019011: various style improvements. 2016-12-30 17:52:39 +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 6e0394dd42 Stickers box redesigned. 2016-12-30 17:52:28 +04:00
John Preston eb05e62422 Not rounding images (photos/videos/gifs) that continue to a bubble. 2016-12-30 17:52:25 +04:00
John Preston 9155591e8a New cancel search icon animation. 2016-12-30 17:52:24 +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 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 45ce0ecb1f Dialogs filter input field without search icon. 2016-12-30 17:51:55 +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 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 2e4426aac0 Old sprites removed completely. Only #rrggbb and #rrggbbaa in styles.
Also moved Checkbox and Radiobutton to Ui namespace.
Also child widgets in many boxes were wrapped in ChildWidget<>.
2016-10-28 12:20:24 +03:00
John Preston c1d862d8de Some icons moved from sprite to separate files. 2016-10-22 21:58:36 +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 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 f1d52c12ae Version 0.10.13.alpha: crash fix in custom notifications.
Not sending inline bot request drafts to server by timeout.
2016-10-07 19:45:45 +03:00
John Preston 1b54ccb59c Merge branch 'game_media' into player
Conflicts:
	Telegram/Resources/basic.style
	Telegram/SourceFiles/media/player/media_player_list.cpp
	Telegram/SourceFiles/title.cpp
2016-09-30 20:07:56 +03:00
John Preston 376941dd5e Mixed channel access hash to the game score encrypted data.
Added new lang strings for playing game send actions (not done yet).
Also moved alot of icons from sprite to separate b&w files.
2016-09-30 15:52:03 +03:00
John Preston a5eee9bd3e Beta 10008004: games / webpages work fine if media autoload disabled.
Also moved alot of file icons from sprite to separate b&w files.
2016-09-29 22:42:14 +03:00
John Preston 5b3ac58578 Merge branch 'game_media' into player
Conflicts:
	Telegram/SourceFiles/core/basic_types.h
	Telegram/SourceFiles/sysbuttons.h
	Telegram/SourceFiles/title.cpp
2016-09-29 16:48:43 +03:00
John Preston f1f7333c7a Removed some old styles. Divided basic_types module to several. 2016-09-29 14:37:16 +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 538ffb9727 Moved History[Media] classes to history_media_types module. 2016-09-28 13:15:03 +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 f970ac3163 New audio player done (without playlist). 2016-09-23 19:04:26 +03:00
John Preston 50616cc267 Version for OS X 10.6-10.7 build from GYP is ready, not tested yet. 2016-08-29 23:24:16 -06:00
John Preston cb0c99acc8 Seek done in video player in MediaView. Some memory leaks fixed.
Using pixmapFromImageInPlace() instead of QPixmap::fromImage().
2016-07-13 20:34:57 +03:00
John Preston d806d079a2 Merge branch 'master' into video
Conflicts:
	Telegram/SourceFiles/mainwidget.cpp
	Telegram/SourceFiles/ui/animation.cpp
	Telegram/Telegram.pro
2016-07-11 21:12:10 +03:00
John Preston 1fee0822fb Moved AudioPlayerState+position+duration+frequency to a single struct. 2016-07-10 16:02:22 +03:00
John Preston 1904a4f48a Round radius increased for message bubbles. 2016-07-07 15:35:14 +03:00