Commit Graph

473 Commits

Author SHA1 Message Date
John Preston 616d08255c Moved audio to media/media_audio and divided to several modules.
Basic video playback with sound support in mediaview added.
2016-07-05 20:44:02 +03:00
John Preston b61cc150db Merge branch 'master' into video
Conflicts:
	Telegram/SourceFiles/mainwidget.cpp
	Telegram/SourceFiles/structs.cpp
2016-07-05 20:42:47 +03:00
John Preston 8909943bd3 Showing in folder instead of launching media files with bad extensions.
Thanks for the report to: Sadegh Ahmadzadegan - Omid Ghaffarinia.
2016-07-05 20:36:42 +03:00
John Preston 8ea47c1811 Opened histories stack finished, stack of states in vector_of_moveable. 2016-07-05 17:48:36 +03:00
John Preston 7ca5737bc0 Removed SongMsgId, unified working with voice/music files in audio. 2016-06-30 15:03:32 +03:00
John Preston cd696ade4e Featured stickers fully supported (unread badges, box, adding, etc). 2016-06-28 21:05:38 +03:00
John Preston 991c6ddd99 Saving featured stickers for new 0.9.57 version in local storage. 2016-06-27 19:25:21 +03:00
John Preston cbde6e1ee9 Using square rounded photos in native notifications (Win, OS X).
When updating local online status from user action events we use
action timestamp, and ignoring events from getDifference, if no
timestamp is available for the specific action.
Couple of hidden actions added in Settings. Alpha version 0.9.54.
2016-06-22 21:47:43 +03:00
John Preston 5957382a67 Radial progress in settings when loading a new background from gallery.
MediaView handling of screen resolution change fixed.
Media messages now display both name/type and caption in dialogs list.
When viewing group profile photo delete affects either photo or message.
2016-06-22 16:39:54 +03:00
John Preston c73b5a6da4 Styles improved. Members dropdown is shown with a delay.
Overview of chat photos fixed. Tray icon tries read a file on Linux.
2016-06-21 17:19:24 +03:00
John Preston f0a8356ff0 Profile members block displayed when mouse is over group members count. 2016-06-17 21:18:01 +03:00
John Preston 38c2915533 Fixes in floating dates with migrated histories.
All service messages are now not multiline (including pinned).
Confirmation for profile photo deleting will be added (not enabled).
Copy-by-selection should be supported in Linux version now.
Drafts that contain only reply-to-id (without text) support added.
2016-06-14 19:26:41 +03:00
John Preston 044e9221e8 Drafts always shown in dialogs list when no unread messages in the chat.
Edition of any message to service message "history cleared".
2016-06-13 21:42:25 +03:00
John Preston 6da62f902b Animated show and hide of the new history-to-down button.
Fixed render in outbox read event handler for channels / supergroups.
2016-06-09 23:01:15 +03:00
John Preston a428534345 Cloud draft handling improved. Fixed Edit while already editing a msg. 2016-06-09 17:31:10 +03:00
John Preston 19cacd0efb New layout of service messages (complex shape of a bubble). 2016-06-09 14:51:24 +03:00
John Preston a5cbbba12d Empty messages do not participate in displayDate() flow.
Example of an empty message is service message after clear history.
2016-06-08 22:14:17 +03:00
John Preston 1859b83e8d Dialog styles moved from basic.style to dialogs.style.
Many minor design improvements in the new profiles.
New drafts design in the dialogs list: no icon, red badge.
Verified checkbox added to the new profile implementation.
Drafts saving to cloud is delayed for 1 second when switching chats.
Before quitting the app makes an attempt to save drafts (timeout 1.5s).
2016-06-07 22:59:39 +03:00
John Preston 520260f207 Merge branch 'profile' into drafts
Conflicts:
	Telegram/SourceFiles/app.cpp
	Telegram/SourceFiles/codegen/style/processor.cpp
	Telegram/SourceFiles/history.cpp
	Telegram/SourceFiles/historywidget.cpp
	Telegram/SourceFiles/mainwidget.cpp
	Telegram/SourceFiles/mainwidget.h
	Telegram/SourceFiles/profilewidget.cpp
	Telegram/SourceFiles/profilewidget.h
	Telegram/Telegram.vcxproj
	Telegram/Telegram.vcxproj.filters
2016-06-06 18:16:52 +03:00
John Preston 1c0548d1e8 New profiles Xcode build ready, couple of retina-support bugs fixed. 2016-06-06 14:35:49 +03:00
John Preston e336030b5e Channels report box added to new profile implementation.
Removed old profilewidget module files.
2016-06-06 13:29:51 +03:00
John Preston 855d44b9d8 Convert to megagroup information label added to new profiles.
Tested members and admins realtime in new profiles for groups.
2016-06-04 00:46:45 +03:00
John Preston cd2615d8d0 Cloud stored message drafts support added. 2016-06-03 21:24:27 +03:00
John Preston 307e529ccf Merge branch 'dev' into drafts
Conflicts:
	Telegram/SourceFiles/dialogs/dialogs_layout.cpp
2016-06-03 16:44:51 +03:00
John Preston 958e47cc19 Received messages are not marked as read while scroll is at the top.
HistoryToEnd button is always shown if there are unread messages.
HistoryToEnd button displayes unread messages count.
New service message (HistoryCleared) is handled (not displayed at all).
2016-06-03 15:45:33 +03:00
John Preston ea8f01bd74 Members block almost done in the new profile implementation.
Member kicking, upgrade to supergroup and testing is left.
2016-06-03 10:20:24 +03:00
John Preston 91d516f18c Notify::peerUpdatedSendDelayed() now is always called from the event loop. 2016-06-02 16:57:49 +03:00
John Preston 2c4ec3d9f3 Shared media block done in the new profile implementation.
Preparing to call Notify::peerUpdatedSendDelayed() only from event loop.
2016-06-02 16:02:55 +03:00
John Preston 3fc7cc3453 Actions block done for the new profile implementation.
User block status moved to private data.
Notify::PeerUpdateFlag[s] moved to Notify::PeerUpdate::Flag[s].
2016-06-01 23:05:37 +03:00
John Preston 66a8aa86e1 Settings block in the new profile implementation done.
New type of button (LeftOutlineButton) was added. _inviteLink moved
to private section in ChatData and ChannelData (with get-set methods).
2016-06-01 16:07:03 +03:00
John Preston 41c8df029a New profile blocks started. Info block fully ready.
All block widgets added (currently empty).
About text and phone number PeerUpdateFlag added for observers.
2016-05-31 22:27:11 +03:00
John Preston 916068447a Cloud stored drafts started. 2016-05-31 12:46:31 +03:00
John Preston 7f353d9b1a Removed all code related to channel comments. 2016-05-27 19:47:46 +03:00
John Preston a510bb54ec Peer observers get notified about name/username changes.
All peer observer notifications are async (delayed).
2016-05-25 15:09:05 +03:00
John Preston ed4e572483 Fixed bot keyboard replies. 2016-05-23 16:14:54 +03:00
John Preston 533a955dda Unread outgoing messages in supergroups supported.
Looking through the history of group avatar photos added.
Messages about some contact joined Telegram are never unread.
2016-05-20 19:35:16 +03:00
John Preston 92c720ddc3 Returned animation type to the old one.
Fixed new profile display in single column layout.
2016-05-19 15:38:09 +03:00
John Preston 1d42144c95 Profile done as a new generic Window::SectionWidget.
Slide animation reimplemented.
2016-05-19 15:03:51 +03:00
John Preston 6e2dea7030 Merge branch 'master' into profile
Conflicts:
	Telegram/Telegram.vcxproj.filters
2016-05-16 18:47:44 +03:00
John Preston fb024e2256 Langs updated, changelog for 0.9.49 version added. 2016-05-14 21:14:55 +03:00
John Preston bf8a98a13b Side shadow moved to MainWidget. Testing slide animation with 3s duration.
New profile widget has fixed top bar outside of scroll area.
2016-05-14 19:57:06 +03:00
John Preston 3d073eddd6 New profiles started. Function<> made by variadic templates. 2016-05-12 19:05:20 +03:00
John Preston b28e9a6167 Requesting difference or messages when users from mentions not loaded. 2016-05-09 13:07:25 +03:00
John Preston 3e5f51f45a Everywhere TextWithTags and TextWithEntities are used.
Copy tags from messages to clipboard, to drag mime data.
Sorting entities while processing (links, monospace, mentions).
2016-05-06 20:33:48 +03:00
John Preston 463450e607 Saving FlatTextarea tags to drafts, applying them in setText.
Now instead of plain text a TextWithTags struct is used almost
everywhere. Started writing and reading serialized tags to drafts
from 9048, switched version to 0.9.48 for testing.
2016-05-05 19:04:17 +03:00
John Preston 21f462a77e Mention names support added to FlatTextarea, messages.
Copy of mention names to clipboard done, pasting started.
2016-04-30 20:04:14 +03:00
John Preston 2834ce0344 Moving to Qt 5.6.0, instructions can be broken. 2016-04-23 14:40:42 +03:00
John Preston 705358993d New style::icon class added, colorized icons by codegen_style.
Moved style_core to /ui/style/, Xcode and QtCreator builds are broken.
2016-04-21 20:57:29 +03:00
John Preston bb70a76b9c Several crashes fixed. 2016-04-14 22:24:42 +03:00
John Preston fdead263d6 Media shortcuts now are enabled only when in-app player is opened. 2016-04-14 19:08:36 +03:00
John Preston 5a3fea05ac ClickHandler, TopBarWidget and Overview layouts moved to separate files.
Xcode and QtCreator builds are currently broken.
2016-04-13 00:31:28 +03:00
John Preston af014b3c14 Fixed crash in bot keyboard replacement. 0.9.41 version.
After username resolve bots always opens conversation, not profile.
2016-04-12 01:34:29 +03:00
John Preston e8c675d3b2 Langs updated with changelog. 2016-04-11 20:03:50 +03:00
John Preston e0d6a68554 Encapsulated unreadCount and mute fields in History.
Support for hiding all muted chats from the list.
2016-04-11 14:59:01 +04:00
John Preston 03bbb2269d Info button replaced by userpic in single column layout.
Icons for file inline results never display a download icon.
Using !lastMsg->detached() to detect that all new messages are loaded.
2016-04-11 11:43:40 +04:00
John Preston 418e06052c Some bugfixes. Closed beta 9040127.
Crash fix when trying to reply to a bot message which hides the keyboard.
Counting button widths better (more padding, use exact width when avail).
Hiding inline bot results fixed when switched to emoji before hiding.
2016-04-11 00:59:07 +04:00
John Preston 460e2ec0ac UniquePointer > std_::unique_ptr, MakeUnique > std_::make_unique. 2016-04-10 23:20:48 +04:00
John Preston dd1d04e9b0 Inline bot results preview: photo, audio, file, voice. Beta 9040126. 2016-04-10 22:18:26 +04:00
John Preston fe59c815b2 HistoryMedia always holds a pointer to its parent HistoryItem.
Using local cached data when sending media inline bot results.
2016-04-10 18:53:01 +04:00
John Preston 5f12c6d85b Always create photo and document for inline bot results. 2016-04-10 15:13:37 +04:00
John Preston 7bba52fb7e Refactored dialogs structs.
Moved DialogRow, FakeDialogRow, DialogsList and DialogsIndexed
from history module to dialogs/ folder, for all struct -> class.
2016-04-09 22:45:55 +04:00
John Preston 90b2b240ce Merged with master. 2016-04-09 15:15:23 +04:00
John Preston 0110a62776 Inline bot cancel button added.
It replaces Send button when the user is editing an inline bot
query. First cancel clears the inline bot request, second one
clears the field entirely. Escape key acts the same as cancel.
2016-04-09 15:02:50 +04:00
John Preston fa0c700ca6 Inline switch to pm and back support added for inline bots. 2016-04-08 18:16:52 +04:00
John Preston 8e89486fbc Error handling changed, 'auto' keyword used for MTP types.
All errors that lead to MTP request resending by default
error handler now can be handled differently. For example
inline bot requests are not being resent on 5XX error codes.
+ extensive use of auto keyword in MTP types handling.
2016-04-08 14:44:35 +04:00
John Preston 35d5089f48 Scroll following the inline bot keyboard when message is edited. 2016-04-08 13:20:10 +04:00
John Preston 04f8d4dd37 Build fixed for renamed sources folder SourceFiles/{gui->ui}/ 2016-04-07 22:05:28 +04:00
John Preston db387d50b8 Scheme updated, support for via @bot added to stickers. 2016-04-07 14:03:10 +04:00
John Preston 1bc834bd5e Sending icon is displayed in the inline keyboard callback button. 2016-04-06 21:02:22 +04:00
John Preston 730dce2cdc telegram.me links open without confirmation box.
EmailClickHandler removed, only UrlClickHandler left.
Some errors lead to @spambot instead of site FAQ.
2016-04-06 17:19:25 +04:00
John Preston 80b0667ff9 Requesting getDifference if some users or channels are not loaded
while processing updateNewChannelMessage update.
2016-04-06 15:07:05 +04:00
John Preston 1e72c8a89b Merge branch 'master' into bots 2016-04-05 13:32:42 +04:00
John Preston 24cc72e319 Requesting only supported languages from transifex in UpdateLang.sh
and UploadLang.sh, languages list is in Resources/LangList.
Added two special commands in service notifications conversations:
*new_version_text* for viewing current new version description and
*all_new_version_texts* for viewing it in all supported languages.
2016-04-05 11:45:53 +04:00
John Preston 3e2485678d Moved inline bot result structs from structs.cpp/h module.
Moved inline bot result layouts from layout.cpp/h module.
Over status prepared for inline bot file result icon.
Dependencies reduced, inline bots code moved to InlineBots namespace.
Build in Xcode and QtCreator broken.
2016-04-05 01:09:46 +04:00
John Preston 35785efa50 Inline bot video and sticker layout and sending done. 2016-04-03 13:11:41 +04:00
John Preston 1ef944ed7b Not inline bot keyboard now supports editing as well.
Styles improved for not inline bot keyboard.
Full crash string adding to crash report.
Preparing to leave source code without #include "stdafx.h"
2016-04-01 19:32:26 +04:00
John Preston 0e0956451a MTP_bytes() replaces MTP_string() for QByteArray payload.
Scheme updated for bot callbacks sending data bytearrays.
ReplyKeyboard edition is supported when editing the messages.
2016-04-01 14:23:40 +04:00
John Preston fa4137418a Merged with master. 2016-04-01 12:54:32 +04:00
John Preston f1dfcef868 Styles improved for unread bar margins and sticker timestamp.
Possible crash fixes: emoji color picker show, pending repaint
items cleared when history items are cleared.

Deleting MainWidget syncroniously when clearWidgets() is called.
2016-03-31 18:06:40 +04:00
John Preston 8cde13fb8c Scheme updated, not channel messages editing updates handled. 2016-03-30 21:13:07 +04:00
John Preston b981472877 Bot keyboard button with type url / callback / phone / location
now can be displayed with an icon in the upper-right corner.

Inline bot keyboards almost done.
2016-03-30 20:42:01 +04:00
John Preston 7f6cf32cdd ITextLink moved to ClickHandler, TextLinkPtr > ClickHandlerPtr.
Global methods textlnkOver/Down/DrawOver were replaced by
static members of ClickHandler, now global state consists
of the handler pointer + host pointer, who declares callbacks
for the active and pressed handler changed events.

This will allow to use ClickHandler from different hosts
simultaneously (like HistoryItem / BotDescription / BotKeyboard).

Not yet tested.
2016-03-29 20:17:00 +03:00
John Preston 599ede9a0b Beta 9034004 version:
Some lang grammar fixes, all "audio" changed to "voice message"
PeerData can have three loaded states (not loaded, minimal, full)
Interface/Interfaces renamed to Component/Composer
HistoryReply moved to a Component named HistoryMessageReply
2016-03-25 14:29:45 +03:00
John Preston ddd63d73b7 MTP::nonce -> rand_value, fixed first_name and last_name reading from minimal users 2016-03-24 13:12:18 +03:00
John Preston 034adfab2b Delete button for large channels is hidden now
(server doesn't allow to delete large channels any more).

Error message added in a case when the current user
(not admin) tries to add to a supergroup a user who
was kicked by admin (and blacklisted by this action).
2016-03-23 19:50:40 +03:00
John Preston 4a5b63bbcd restricted peers support added 2016-03-23 16:21:26 +03:00
John Preston 5c9836418f version 9034001 beta 2016-03-22 18:23:34 +03:00
John Preston 84e67b8ec0 scrollTop counted relative to the last scrollTop item, attachedToPrevious messages support added, service messages now display date and unreadbar 2016-03-21 21:40:00 +03:00
John Preston 0b2bcbc3e9 some warnings fixed, TDESKTOP_DISABLE_NETWORK_PROXY macro added 2016-03-20 11:16:35 +03:00
John Preston 2ef8c44445 all MTP flags made strictly typed by scoped enums, in-message date display added for non-service messages 2016-03-19 19:55:15 +03:00
John Preston 9d00ec273b removed Date service messages, removed UnreadBar service message, started adding them to HistoryItems, saving item index in block to keep an eye on the previous message 2016-03-18 22:05:08 +03:00
John Preston baf1e31b76 circled profile images 2016-03-18 13:18:30 +03:00
John Preston ddc802c0af top bar search icon added 2016-03-17 12:23:38 +03:00
John Preston c2f1e95f3f fixed opening of uncompressed image sent from clipboard, intro refactoring finished 2016-03-16 14:54:37 +03:00
John Preston 1828b14cda checking auth in onViewsIncrement 2016-03-15 21:08:17 +03:00
John Preston 3a8824a9a6 intro rewrite started, new code sending methods 2016-03-14 19:59:18 +03:00
John Preston 86a4a388c3 ban / report / deleteAll done in MainWidget instead of RichDeleteMessageBox 2016-03-13 18:45:00 +03:00
John Preston 02b0512761 min channels handled, delayed getDifference request with old updDate value added 2016-03-11 18:01:32 +03:00
John Preston 5cab9569c3 updating edited messages dependencies (replies, edit / reply / pinned bar), postponing notification about pinned message while the message itself is not yet available 2016-03-11 15:20:58 +03:00
John Preston 98e2700764 rich delete all + ban almost done in supergroups (need to clear messages on the client side as well) 2016-03-10 18:42:01 +03:00
John Preston efa5fc443a pin/unpin messages in supergroups, local hide for pinned messages 2016-03-10 13:15:21 +03:00
John Preston 1c722a425d forwarded getState fixed, pinned message service msg dependency request and text update done 2016-03-05 23:12:55 +02:00
John Preston 0072573925 pinned message api used, ordering by online and displaying online count in small megagroups 2016-03-04 17:34:46 +02:00
John Preston b678913da5 improved rpcClear() when deleting a complex RPCSender, clearing recent inline bots on logout 2016-02-28 15:36:23 +03:00
John Preston 798f800913 History::dialogs and Histories::unread are private now, counting only chats from dialogs list to the badge 2016-02-28 14:58:30 +03:00
John Preston a88b676588 global shortcuts with loading from .json map 2016-02-27 22:39:51 +03:00
John Preston 37309a91ac fixed media_only dcs, added copy post link to clipboard, fixed signature display in gifs, 0.9.27 dev version 2016-02-25 20:23:42 +03:00
John Preston 2b6e30bcb5 silent broadcast done 2016-02-25 19:19:54 +03:00
John Preston 4ec579112c beta 9026001 message/post edit done 2016-02-25 13:32:31 +03:00
John Preston 2a0a3b5cbb tooltip showing only in active window 2016-02-22 14:15:24 +03:00
John Preston 29fefbc4bb post edit started, sign messages checkbox added in channel edit by creator 2016-02-21 15:30:16 +03:00
John Preston c3845ead85 moved forwarded to an interface, testing required 2016-02-18 22:12:50 +03:00
John Preston 803d1a429d scheme updated, config vars moved to Global namespace 2016-02-18 19:36:33 +03:00
John Preston 7433cea0fd fixed copy selected text, post author display added, post links handling added, windows bingmaps opening added, sticker previews from mentionsdropdown and stickersetbox added 2016-02-17 19:37:21 +03:00
John Preston 517358c8e9 clearing media autodownload settings on logout, fixed history clearing 2016-02-15 14:11:07 +03:00
John Preston f83644cec0 Merge branch 'dev' 2016-02-14 21:29:36 +03:00
John Preston 3281b81565 using new privacy settings (error display), crash reports collecting improved, colors for waveforms imporved, preparing for 0.9.22.dev (next commit) 2016-02-14 21:29:17 +03:00
John Preston e492b1e93d some crashes fixed 2016-02-14 18:58:39 +03:00
John Preston 3579276b49 videos rendered like files, fixed history loading 2016-02-12 21:18:32 +03:00
John Preston 189d0e8de3 voice messages moved to documents with waveforms 2016-02-12 19:35:06 +03:00
John Preston 7b855a661a new wide layout, build script and some bugs fixed 2016-02-09 19:05:08 +03:00
John Preston 80ba0259dd some namespaces reorganized, author photo display added to wide mode (where messages are centered), version 0.9.20.dev 2016-02-08 17:54:55 +03:00
John Preston 0b8523d58e added year 2016 to copyright 2016-02-08 13:56:18 +03:00
John Preston 58777dbc21 moved almost all Application to AppClass (autoupdate and singleinstance left), logs rewritten 2016-01-11 23:43:29 +08:00
John Preston b13579c7d9 dev version 0.9.19 sending stickers by emoji 2016-01-09 20:51:42 +08:00
John Preston a72a31e722 stickers by alt suggestions in mentions dropdown 2016-01-09 19:24:16 +08:00
John Preston f66c54ee6b not loaded thumbs are now white, always initDimensions() when media is updated 2016-01-09 15:11:23 +08:00
John Preston 3078544892 new media unsupported message and via @inlinebot are added to langs, links don't break on / now, cancel upload langs fixed 2016-01-07 17:49:54 +08:00
John Preston 5a87bf4114 fixed inline results display lag, cancelling inline query by Escape, add/erase in overview refactored, animated gifv are not in shared files anymore 2016-01-03 09:43:42 +08:00
John Preston cb2df51af6 remembering last used inline bots, showing them in mentions dropdown, 9015006 beta 2016-01-01 22:48:32 +08:00
John Preston 85f46cef8c emoji button with progress done for inline bot requests 2016-01-01 17:58:05 +08:00
John Preston 82fb3f590f saved gifs panel substituting @gif to the message field 2016-01-01 02:34:56 +08:00
John Preston 35d4754380 caching web files to local, sending of inline bots results done properly, panel ux better for inline bots 2015-12-31 23:27:21 +08:00
John Preston 5830e0f657 inline bots gif / photo preview / sending done 2015-12-31 13:34:43 +08:00
John Preston 14839e7afe scheme updated, contextbot -> inlinebot renamed, web file loader done like mtp file loader 2015-12-31 03:09:20 +08:00
John Preston cbb0219812 savedgifs -> contextitems in stickers panel, fixed atomic uint64, now with mutex :( 2015-12-30 14:47:39 +08:00
John Preston cdcd9d8d54 fixed shared memory locations, scheme updated 2015-12-29 20:54:34 +08:00
John Preston 9a1798f043 saved gifs done 2015-12-28 00:37:48 +03:00
John Preston a5622cfe3b pausing gifs when mediaview is opened, improved photos handling - download on click if autoload disabled 2015-12-25 16:09:14 +03:00
John Preston 4ed2d75c74 upload radial progress and upload cancel done, photo / file / audio autodownload settings respected 2015-12-24 22:26:28 +03:00
John Preston b94533fcb2 gif autoplay improved 2015-12-23 22:23:14 +03:00
John Preston 6170144fe9 inline gifs playback / stopping done 2015-12-23 19:48:44 +03:00
John Preston 73a4d3510d removed itemReplaced 2015-12-23 15:55:32 +03:00
John Preston 41f5a87c80 improved video, audio overview, fixed files overview 2015-12-23 15:19:32 +03:00
John Preston af9908f076 exif fixed, media overview redesign done 2015-12-23 14:13:08 +03:00
John Preston d3896ff53b photo and video overview rewritten on layouts 2015-12-22 15:49:42 +03:00
John Preston 62723f7576 disabled libexif usage, mediaview showing gif/mp4 through ClipReader 2015-12-22 11:01:02 +03:00
John Preston 0fd6f04aa9 files overview redesign done 2015-12-21 16:14:29 +03:00
John Preston 216b9ec52f overview redesign started (four out of six not working) 2015-12-19 21:09:24 +03:00
John Preston 11da39b72d webpage attachs redesigned 2015-12-19 00:36:16 +03:00