Commit Graph

3112 Commits

Author SHA1 Message Date
John Preston 04e587b999 Hide Add Users checkbox if megagroup is democracy.
Also unite invite_users and invite_link flags.
2017-06-29 11:40:17 +03:00
John Preston adcecaa195 Make search in restricted/blocked box paginated. 2017-06-29 11:40:17 +03:00
John Preston 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 5c0a1bafe2 Add supergroup restriction placeholders / labels. 2017-06-29 11:40:13 +03:00
John Preston 7d2d5c6100 Edit admin and restricted rights in channels. 2017-06-29 11:40:11 +03:00
John Preston 513a9f8d45 Add rich supergroup/channel admin support. 2017-06-29 11:40:10 +03:00
John Preston 330b4a0b00 API scheme updated to layer 68. 2017-06-29 11:40:08 +03:00
John Preston 8ae159dd66 Add special dc options config request. 2017-06-29 11:40:07 +03:00
John Preston 2de96682db Fix phone call decline reason.
If the call was declined fast enough the reason was hangup while it
should be busy.
2017-06-29 11:40:06 +03:00
John Preston 80273c57d0 Fix jumping to an old group message before migration.
Fixes #3513.
2017-06-29 11:40:05 +03:00
John Preston fe3c33fb52 Change a phrase for the userpic photo area selection.
Fixes #3390.
2017-06-29 11:40:04 +03:00
John Preston c9a26fd006 Fix call panel with empty user photo on Retina. 2017-06-29 11:40:03 +03:00
John Preston 11d4c50202 Closed beta 1001007001: Fix build in GCC. 2017-06-29 11:40:02 +03:00
John Preston 7dd50fa931 Closed beta 1001007001: Fix build in Xcode. 2017-06-29 11:40:01 +03:00
John Preston 5d0e89db5d Switch to the server side changelogs. 2017-06-29 11:40:00 +03:00
John Preston d9785f6071 Closed beta 1001007001.
First cloud langpacks version.
2017-06-29 11:39:59 +03:00
John Preston f3e65d400d Display languages native names in the box.
Also don't suggest the old official languages in a popup.
2017-06-29 11:39:58 +03:00
John Preston 85e6f55536 Support new plural keys format.
All the old plural phrases were changed to work with the new format.
2017-06-29 11:39:56 +03:00
John Preston b6046d829f Save the default language after logging in.
We suggest an appropriate language in the intro if server has users
system language langpack. But if user doesn't switch to it we save
the default ("en") language so that he won't be bothered again.
2017-06-29 11:39:55 +03:00
John Preston 665a1acfd8 Apply language with app restart if logged in.
Confirm and restart if logged in, just quickly apply if not.
2017-06-29 11:39:54 +03:00
John Preston d51fd7b3ad Update intro change language link.
Also now MTP::Sender isn't bound to MTP::Instance, because Intro
Widget is MTP::Sender, but Intro::PhoneWidget destroys current
MTP::Instance.
2017-06-29 11:39:53 +03:00
John Preston b94099e25b Realtime UI translation in all fields and buttons. 2017-06-29 11:39:51 +03:00
John Preston 5fc4f4ed36 Realtime UI translation in Intro.
Also support realtime translation testing by F7-F6-F7-F8 keys.
2017-06-29 11:39:49 +03:00
John Preston d47a38dfcf Show change language link in intro. 2017-06-29 11:39:48 +03:00
John Preston f5353080e7 Use Qt UI language if system was not determined.
Also rename platform/mac/specific_mac.cpp to .mm
2017-06-29 11:39:47 +03:00
John Preston 6fb980ca79 Improve custom language loading.
Apply custom language without relaunching the app.
2017-06-29 11:39:46 +03:00
John Preston 3f0b57ec11 Retranslate Settings when language is changed.
Also suggest user to change language from 'en' to his for one time.
2017-06-29 11:39:45 +03:00
John Preston f5dfeb0c50 Support cloud languages list and switching.
Add Lang::Current().updated() observable for retranslating the UI.
2017-06-29 11:39:43 +03:00
John Preston 139d4e72b5 Start cloud langpack support.
Change the way langpacks are stored.
Support custom langpacks in the new storage.
2017-06-29 11:39:42 +03:00
John Preston 2334ba1fe1 Use QString + Lang::Tag() instead of Lang::String. 2017-06-29 11:39:40 +03:00
John Preston 110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +03:00
John Preston f643446d1b Rename / move lang files to lang/ subdir.
Next commit fixes the build.
2017-06-29 11:39:36 +03:00
John Preston a813793007 API scheme updated to layer 67. 2017-06-29 11:39:35 +03:00
John Preston 972fdb5c76 Fix _historyDown button position.
This button is a child widget of _scroll so the position is relative.
2017-06-29 11:39:34 +03:00
John Preston 0e4b057220 Fix transparent reply previews.
The transparent reply previews (for stickers) were not filled by
transparent background before resizing, now there is a flag for that.
2017-06-29 11:39:33 +03:00
John Preston 6869cc7d04 Fix non-square reply preview in selected messages.
After introducing video messages and sticker reply previews they may
be not a rounded rectangle but any transparent image. So instead of
painting a selected rounded rect over them we just colorize them with
an overlay color like it is done with the selected sticker images.
2017-06-29 11:39:32 +03:00
Viktor Oreshkin 68ddabea5c Don't clear undo history when applying draft
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-29 11:10:13 +03:00
Zankio 60c84bbf51 Add hime inputcontext plugin for linux version
(#3129)

Signed-off-by: Zankio <xxoojoeooxx1@gmail.com>
(github: zankio)
2017-06-29 10:49:31 +03:00
Nikita K 4c61f27826 Fix inconsistency of max width for message content
Signed-off-by: Nikita Kalashnikov <mendor@yuuzukiyo.net> (github: Mendor)
2017-06-28 19:36:18 +03:00
Viktor Oreshkin 3f3b9f3608 Show date from fwdHeader on tooltip
Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-06-28 19:21:34 +03:00
Eduardo Sánchez Muñoz 2eff766e88 Always use UTF-8 to open files in list_sources.py.
This avoids problems with some locale settings.

Signed-off-by: Eduardo Sánchez Muñoz <eduardosanchezmunoz@gmail.com> (github: eduardosm)
2017-06-28 19:19:44 +03:00
John Preston 66662e02a6 Fix crash in video player seeking.
Regression was introduced in 87ff770020.

Seek handler may destroy controller so first the playback is updated.
2017-05-31 11:58:43 +03:00
John Preston 81e728ada0 Version 1.1.7.
- Improved video messages: radial playback progress,
Picture-in-Picture support, duration countdown.
- Voice and video messages now automatically play one after another.
2017-05-30 21:33:02 +03:00
John Preston 47c22c6cec Update langs. 2017-05-30 21:31:31 +03:00
John Preston 983c2c0869 Support non-standard binary names in autoupdater.
On Linux and Windows support non-standard application binary name.
2017-05-30 21:26:53 +03:00
John Preston a1f2fb46f9 Fix scroll history to down with unread bar.
Regression was introduced in 972b5078f6.

When we show history at a specific message or at unread messages we
need to clear and destroy old showFrom and unreadBar like it is done
in historyLoaded(), otherwise we always scroll to existing unreadBar.
2017-05-27 13:28:17 +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 21df34ad55 Alpha 1.1.6. 2017-05-26 23:10:20 +03:00
John Preston 2c1e27add0 Fix crash in group members list. 2017-05-26 23:05:04 +03:00
John Preston 878e46c61a Alpha 1.1.5.
Also fix build in Xcode.
2017-05-26 19:03:41 +03:00
John Preston 7cea6ede1a Improve input field placeholders with IME.
Respect the IME preedit string when toggling the placeholder.
2017-05-26 18:50:25 +03:00
John Preston 57f0158ade Disable quiet hours check in Windows before 10.
We had several reports about wrong values in registry on Windows 8.1,
like the quiet hours are enabled and all notifications are skipped,
without anything like that being enabled in Windows settings.
2017-05-26 17:40:46 +03:00
John Preston 9e3f13ba2e Destroy members dropdown when the peer changes.
Also use object_ptr for passing widget in InnerDropdown.
2017-05-26 17:36:59 +03:00
John Preston 6148b78745 Read after AVERROR_INVALIDDATA in video sound.
Partially reverse c1c3e4af5b that stopped on error in such cases.
2017-05-26 17:18:58 +03:00
John Preston e24b0559d3 Fix message history stick to bottom.
Scroll animation should finish when we want to jump to the bottom.
2017-05-26 16:06:18 +03:00
John Preston 10e34aa996 Fix a crash in round videos with a message text. 2017-05-26 15:20:11 +03:00
John Preston 6052a0de0e Fix crash in history geometry update. 2017-05-25 03:11:59 +03:00
John Preston 78d4f29af3 Alpha 1.1.4: Fix build script for macOS.
Regression was introduced in b86da76613.
2017-05-24 23:00:23 +03:00
John Preston b04c03a5c3 Alpha 1.1.4.
- Fix a crash in animated history scrolling.
- Fix a bug with pinned chat to supergroup upgrade.
2017-05-24 22:59:17 +03:00
John Preston 1cc5b224c7 Fix pinned chat to supergroup upgrade bug.
Pinned chats were always updated in dialogs list, even after being
migrated to supergroups. That was bringing them back to chats list.
2017-05-24 22:54:41 +03:00
John Preston 9665d5cb45 Fix crash and improve animated scrolling.
Also fix reply returns traversing after animated scrolling.
2017-05-24 22:28:24 +03:00
John Preston e0978f86d1 Alpha 1.1.3: Fix some render in macOS. 2017-05-24 17:36:58 +03:00
John Preston 413be7d76d Alpha 1.1.3.
Also update libtgvoip.
2017-05-24 16:59:40 +03:00
John Preston 972b5078f6 Improve animated scroll to message.
Use it in replies navigation and in jumping to message history end.
2017-05-24 16:25:21 +03:00
John Preston 25587d7e8e Replace different side enums with RectPart.
Including Ui::Shadow::Side, App::RectPart and ImportantTooltip::Side.
2017-05-24 16:25:20 +03:00
John Preston 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 18195f9c4e Rename EmojiPanelTab to ChatHelpers::SelectorTab. 2017-05-24 16:25:18 +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 8f290451b6 Handle mouse clicks in floating player widget. 2017-05-24 16:25:16 +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 0bfff65306 Add an animated scroll to current media message. 2017-05-24 16:25:14 +03:00
John Preston 6bde8cdce4 Remove legacy debug information. 2017-05-24 16:25:13 +03:00
John Preston 9332032839 Click on media player goes to voice/video message. 2017-05-24 16:25:12 +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 2661fe5cd5 Fix crash in clear history after report spam. 2017-05-24 16:25:11 +03:00
John Preston 43c8046e4c Don't handle telesco.pe links like t.me links.
It is better to open web version of telesco.pe/username instead of
a channel, because it shows only the round videos. You can share a
t.me link to your channel if you wish to share the full channel.

It is not bad to open web version of telesco.pe/username/post instead
of a specific post in a channel, because the video message is shown
in the web page preview and can be viewed without following the link.
2017-05-24 16:25:10 +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 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 5915f3f928 Display radial playback progress in round videos. 2017-05-24 16:25:07 +03:00
John Preston 87ff770020 Make Media::Clip::Playback independent of slider.
Now animation of the playback progress is processed inside the
Media::Clip::Playback and the sliders just hold plain float64 value.
2017-05-24 16:25:06 +03:00
John Preston 8446fa5a4d Change round video playback duration to countdown. 2017-05-24 16:25:06 +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 2049f3e55a Fix Mac App Store entitlements. 2017-05-19 17:13:33 +03:00
John Preston b86da76613 Move project files tdesktop to tdesktop/Telegram.
After adding the libtgvoip submodule its project was created by GYP
outside the project folder, because the relative path to libtgvoip.gyp
is "../ThirdParty/libtgvoip/" and projects are created in the same
relative folders.

Now we place MSVC and Xcode projects in tdesktop/Telegram, so the
libtgvoip project is created at tdesktop/ThirdParty/libtgvoip.
2017-05-18 12:04:39 +03:00
John Preston 59100a51c6 Version 1.1.2 update and changelog. 2017-05-18 00:07:06 +03:00
John Preston bf0f956325 Preserve panels state through visibility toggles.
Emoji/Stickers/GIFs panel saves all the state between activations.
2017-05-18 00:02:31 +03:00
John Preston 132d884600 Fix Ui::ImportantTooltip render on OS X 10.6-10.7. 2017-05-17 23:49:20 +03:00
John Preston b4d10ca693 Alpha 1.1.1: Update langs. 2017-05-17 17:37:19 +03:00
John Preston 38a99c4669 Alpha 1.1.1: Improved protocol, emoji tooltip. 2017-05-17 17:35:47 +03:00
John Preston e2b212dba9 Update libtgvoip submodule. 2017-05-17 17:34:28 +03:00
John Preston c1598ff4ed Highlight mentions in sticker set box title. 2017-05-17 17:32:36 +03:00
John Preston 299143108b Improve protocol support. 2017-05-17 16:39:17 +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 966dcd5509 Fix render lag in the new tooltip.
Geometry update, animation cache grab and show call should be invoked
queued, because they depend on the later controls geometry update.
2017-05-17 14:15:08 +03:00
John Preston 52f7c8f064 Mark connection as inited only on a non-error response. 2017-05-17 14:01:58 +03:00
John Preston b88a49d2f8 Show a tooltip about the emoji section toggling. 2017-05-17 12:40:03 +03:00
John Preston 0eb2d28d90 Show floating date only when scrolling up. 2017-05-16 16:41:47 +03:00
Igor Gnatenko 185bdb6704 localstorage: qFlags is working only on enumeration types
Closes: https://github.com/telegramdesktop/tdesktop/issues/3379
Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>
2017-05-15 14:03:28 +03:00
John Preston 206dcd1102 Fix calls in Mac App Store build. 2017-05-15 11:18:37 +03:00
John Preston 8a60658af7 Fix crash in calls panel closing. 2017-05-15 11:17:59 +03:00
John Preston 0b77c0bce8 Version 1.1: Show user name in call top bar. 2017-05-14 22:46:05 +03:00
John Preston 983a13f66b Version 1.1: Display changelog. 2017-05-14 20:33:54 +03:00
John Preston 820b07b2bc Version 1.1: Calls. 2017-05-14 19:15:30 +03:00
John Preston 0496a52cdd Alpha 1.0.38: Fix webpage layout.
Webpage layout is broken if title contains a newline.
Remove all newline characters from webpage / game / invoice title.
2017-05-13 17:31:00 +03:00
John Preston 9da9775043 Update langs. 2017-05-13 17:30:38 +03:00
John Preston e3ddac1686 Handle t.me/iv links, just open the requested url. 2017-05-13 15:14:34 +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 040ee90aec Fix call panel animation in OS X 10.6-10.7. 2017-05-12 19:25:56 +03:00
John Preston 843f983051 Skip call ended sound if ended from other device. 2017-05-12 19:09:34 +03:00
John Preston 9dfd7f4ba9 Play the outgoing call sound only in Ringing state. 2017-05-12 18:53:59 +03:00
John Preston b74dea8662 Move logo images to Messenger. Set call panel icon. 2017-05-12 18:28:44 +03:00
John Preston 7593be4361 Display a userpic placeholder in the call panel. 2017-05-12 17:33:30 +03:00
John Preston 5fe75fbd5f Attempt to fix an assertion violation.
In some cases HistoryItem::attachToBlock was not calling
History::setHasPendingResizedItems (if it was not pending resize).

That could lead to addition of a whole block of items without
setting pending resize for the history and it violated the history
invariant of the _blocks y/height and their _items y/height.

Now each time we attachToBlock an item we also setPendingResize it.
2017-05-12 17:05:06 +03:00
John Preston d581e00299 Improve history items management.
Encapsulate HistoryBlock::y and HistoryBlock::height.
2017-05-12 16:53:08 +03:00
John Preston 3f2bed8a92 Improve report spam code. Fix a possible crash.
HistoryWidget::setReportSpamStatus was called even if the _peer
has changed to nullptr, which used this _peer and crashed.
2017-05-11 20:08:08 +03:00
John Preston ba1f1af83e Test QImage instead of QPixmap for render.
Trying to fix a strange crash inside QWidget::render().
2017-05-11 19:29:57 +03:00
John Preston 8bb4d31409 Fix crash in HistoryWidget::mousePressEvent.
When the mouse was over edit / reply and the history was closed,
mouse click handler still tried to jump to the message. Now we
update the mouse over state each time the history changes.
2017-05-11 19:11:08 +03:00
John Preston 0557eeddbd Switch base::TaskQueue to Qt sync primitives.
std::mutex in the current build environment is not supported
by Windows XP, I guess because Ninja uses v140 platform toolset.
2017-05-11 17:21:43 +03:00
John Preston c438692d49 Fix Travis build. 2017-05-10 15:05:19 +03:00
John Preston 086684ca69 Use SSE2 flags (instead of SSE4.1) for Linux build. 2017-05-10 14:04:31 +03:00
John Preston d6a919c372 Alpha 1.0.37: Multiple crash fixes.
Also rate call box style is improved.
2017-05-10 11:01:34 +03:00
John Preston 8a4a7897a0 Fix contract violation in Call::startIncoming.
Also fix call answer while dhConfig is not received yet.
2017-05-10 10:58:02 +03:00
John Preston e99739ca0e Alpha 1.0.36: First public release of calls. 2017-05-09 23:51:07 +03:00
John Preston 96062039c7 Improve RateCallBox design. 2017-05-09 23:46:43 +03:00
John Preston c78cc331d1 Discard call in case of an error.
Also add a couple of call error messages.
2017-05-09 23:46:43 +03:00
John Preston 061bd109d2 Closed beta 1000035003: Try new sounds + fixes. 2017-05-09 23:46:42 +03:00
John Preston e7dcd5ab15 Don't decline awaited incoming call on app quit. 2017-05-09 23:46:41 +03:00
John Preston 530a385d4e Add sound override support by codes in Settings. 2017-05-09 23:46:40 +03:00
John Preston 23874a0a26 Animate call answer button with an outer ripple. 2017-05-09 23:46:39 +03:00
John Preston 3b46382550 Add logging for libtgvoip when we have DebugLogs. 2017-05-09 23:46:39 +03:00
John Preston b3d5ac1660 Fix call discard when hanging up before request. 2017-05-09 23:46:38 +03:00
John Preston 622fbdb64b Fix BN_div/mod_word() usage. 2017-05-09 23:46:37 +03:00
John Preston d0afe83beb Fix call panel in macOS build. 2017-05-09 23:46:36 +03:00
John Preston 771bba4e01 Closed beta 1000035002: Sounds in separate qrc. 2017-05-09 23:46:36 +03:00
John Preston ded6933867 Add call button answer->hangup->redial animation. 2017-05-09 23:46:35 +03:00
John Preston 2214e980ef Add call panel show / hide animation. 2017-05-09 23:46:34 +03:00
John Preston 299dc3fc96 Reuse call panel if current call is in Busy state. 2017-05-09 23:46:33 +03:00
John Preston 0a6e012e90 Add call debug window on Ctrl+Click Show Info.
It is available only when debug logs are enabled.
2017-05-09 23:46:33 +03:00
John Preston 96a0fcb28f Closed beta 1000035001. 2017-05-09 23:46:32 +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 6f89d01452 Add new Media::Audio::Instance for audio tracks.
Move some audio-related code from Media::Player to Media::Audio.
2017-05-09 23:46:29 +03:00
John Preston 11525a1e50 Add RateCallBox for calls feedback collection. 2017-05-09 23:46:28 +03:00
John Preston 5f2e295d63 Improve calls panel in macOS.
Use Qt::Dialog instead of Qt::Tool which works better with window
activation / deactivation handling.

Stop displaying the panel on all spaces when the call is established.
2017-05-09 23:46:28 +03:00
John Preston 0cdac83f8a Fix calls build in Xcode. Fix calls panel in Retina.
Also implement panels that appear in all spaces on macOS.
Using them for calls panels and custom notifications, so it
will be possible to use custom notifications in macOS as well.
2017-05-09 23:46:27 +03:00
John Preston e050e270fc Try to hangup current call when quitting the app. 2017-05-09 23:46:26 +03:00
John Preston 29fc69ebaa Show emoji fingerprint tooltip in call panel. 2017-05-09 23:46:25 +03:00
John Preston f42f79ea95 Add "line busy" call state with a redial button. 2017-05-09 23:46:24 +03:00
John Preston d5ff728da6 Show privacy / incompatibility errors in calls. 2017-05-09 23:46:24 +03:00
John Preston a3252c13d7 Edit phone calls privacy in Settings. 2017-05-09 23:46:23 +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 f4911431d5 Request, parse and apply phone.getCallConfig. 2017-05-09 23:46:21 +03:00
John Preston 28c0e815b3 Add new calls to Calls log box in realtime.
Also improve button ripple effect in Calls log box.
2017-05-09 23:46:20 +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 f6eb2c5205 Add call top bar above the media player. 2017-05-09 23:46:18 +03:00
John Preston 60ac7572af Display name, status and emoji in Call Panel. 2017-05-09 23:46:17 +03:00
John Preston b267957abe Apply all MTP Key generation checks to calls.
Also move all OpenSSL BN_* calls to base/openssl_help header.
2017-05-09 23:46:16 +03:00
John Preston 4925af69e2 Add Calls::Panel and handle incoming calls. 2017-05-09 23:46:15 +03:00
John Preston 0a716036c2 Extract Calls::Call. Add a call button to TopBar. 2017-05-09 23:46:14 +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 d78523e905 Fix resource leak in SPMediaKeyTap. 2017-05-09 14:49:56 +03:00
John Preston 3156dc0f1a Preserve video filename and mime from cloud data. 2017-05-08 17:13:16 +03:00
John Preston 038361a1e9 Fix overview items layout after message deletion. 2017-05-08 17:01:14 +03:00
John Preston b71a901182 Round thumbs for round videos in shared links. 2017-05-08 17:00:26 +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 aedf85c965 Update opus library to v1.2-alpha2 version. 2017-05-08 16:26:06 +03:00
John Preston a7e695d914 Better show in folder in Windows / Linux.
Inspired by https://github.com/qbittorrent/qBittorrent.
2017-05-07 16:28:58 +03:00
John Preston 291a6b73ab Show phone instead of "online" in the main menu. 2017-05-07 12:00:49 +03:00
John Preston 475f0e9544 Fix build for the new GYP version, fix Appveyor. 2017-05-05 12:25:06 +03:00
John Preston bf659938ba Fix stickers list remote set button update. 2017-05-03 16:56:14 +03:00
John Preston 392ab20a47 Use Segoe UI if no Open Sans in all Win versions. 2017-05-01 12:25:57 +03:00
John Preston 33f59dd3ec Fix an infinite recursion in Emoji panel/section.
HistoryWidget::resizeEvent() can start taking TabbedSelector from
TabbedPanel which will call QWidget::render() which can call again
HistoryWidget::resizeEvent() from sendPendingMoveAndResizeEvents().

Use a separate flag for _tabbedSection to prevent recursion there.
2017-05-01 11:29:02 +03:00
John Preston aedbd6dfe4 Fix assertion violation when editing GIF / video.
If a GIF / video had no thumbnail the _animated flag was removed.
2017-05-01 11:03:56 +03:00
John Preston 5a8ce36181 Alpha 1.0.35: Admins delete messages in chat. 2017-04-30 20:17:35 +03:00
John Preston 10b7d7c473 Update langs. 2017-04-30 20:00:52 +03:00
John Preston 7fedf24d9e Fix video message and sticker reply preview on Retina.
Wrong preview image size was a reason for image resize before
drawing the preview and it caused black background, not transparent.
2017-04-30 19:58:31 +03:00
John Preston 5ed698ac69 Link correct OS X 10.6-10.7 libraries. 2017-04-30 19:56:13 +03:00
John Preston 297856db32 Load and use Segoe UI [Semibold] if no Open Sans.
Sometimes Open Sans Semibold fails to load properly on the latest
Windows Creators Update. In that case try to load Segoe UI instead.

An attempt to fix #3276.
2017-04-30 19:03:12 +03:00
John Preston 6418c9c718 Handle updates from MTP after RPC responses.
If some RPC responses and MTP updates are received together a fake
requestId in the negative range was used and that way updates were
processed before responses.

That could lead to an incorrect "out" message flag when sending
messages to supergroups, because a broadcast update about the new
message without "out" flag was handled before the request response.

Now a separate response map and updates list are used and responses
are handled always before the updates.
2017-04-30 17:23:57 +03:00
John Preston 413eafb240 Allow chat creator/admins to delete for everyone.
Chat creator and admins (if admins are enabled) now can delete
any message for everyone, not only outgoing ones.
2017-04-30 16:58:45 +03:00
John Preston 4c2a0fa630 Fix top bar layout when emoji section is visible. 2017-04-30 16:58:27 +03:00
John Preston a925822141 Generate and handle new video message links. 2017-04-30 16:43:19 +03:00
John Preston cd6a189990 Show some info for USER_BANNED_IN_CHANNEL error. 2017-04-30 16:43:18 +03:00
John Preston 07a274f927 Improve video message status text in a web page.
Show duration / progress text in the bottom left bubble corner.
2017-04-30 16:43:17 +03:00
John Preston eb240defa3 Display forwarded info in video messages. 2017-04-30 16:43:17 +03:00
John Preston 4659b664e7 Skip fwd_info for msgs from chat with yourself.
Server doesn't add fwd_info if a non-forwarded message is forwarded
from chat with yourself so don't add it locally as well.
2017-04-30 16:43:16 +03:00
John Preston d2c6de3df6 Play audio documents inside app by actionOnLoad. 2017-04-30 16:43:15 +03:00
John Preston e8a3535c74 Support audio documents playback inside app.
Also add some more decoders in ffmpeg configuration (wav).
Also stop audio device restart on PKEY_AudioEndpoint changes.
Also deduce channel layout from channel count in ffmpeg loaders.
2017-04-30 14:34:23 +03:00
John Preston 46690da488 Make round reply preview for video messages.
Also add a reply bar for video messages.
Also add a reply preview for stickers.
2017-04-25 13:47:52 +03:00
John Preston f11c76d06b Show featured sticker sets when no sets installed. 2017-04-24 18:59:54 +03:00
John Preston 5ec758637d Alpha 1.0.34: Update langs. 2017-04-21 16:25:17 +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 8f719f8c06 Remove edit caption UI for not my messages.
Regression was introduced in 8eb7f1f1aa.
2017-04-21 13:59:03 +03:00
John Preston da0387a23e Fix forwarded message original id. Closes #3305. 2017-04-21 13:47:39 +03:00
John Preston 9eea4fcf03 Update API scheme. Closes #3311, closes #3310. 2017-04-21 13:45:34 +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 bc1eff83cb Fix crash in audio device property change handler.
PSStringFromPropertyKey should be checked before being used.
2017-04-18 21:58:49 +03:00
John Preston f619afc4c6 Alpha 1.0.33: Fix build for Xcode. 2017-04-16 00:45:25 +03:00
John Preston 7ad7028880 Alpha 1.0.33: Various fixes and improvements. 2017-04-16 00:36:46 +03:00
John Preston 8e241e8b78 Improve Emoji-Stickers-GIFs panel.
Fix broken minimal panel size.
Remove HistoryWidget context menu from the panel.
2017-04-16 00:05:57 +03:00
John Preston 6226cf2809 Display video message playback progress time. 2017-04-15 23:30:28 +03:00
John Preston 7312114b75 Use full volume for video messages.
Set video volume to VideoVolume in MediaView and to 1 in HistoryGif.
2017-04-15 22:51:53 +03:00
John Preston 0ff299758a Use correct lang phrases for video messages. 2017-04-15 22:51:44 +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 4fc2c18f58 Fix crash in intro label crossfade animation.
Remove the assertion because the assumption was not valid.

Closed #3270
2017-04-15 20:40:23 +03:00
John Preston 8a8e101cd0 Fix crash in file downloader destruction.
Regression was introduced in 835b1801bc.

We need to destroy all FileLoader instances before destroying the
Downloader instance, because they hold pointers to it and call its
methods in destructor if they need to cancel some MTP requests.
2017-04-15 20:39:32 +03:00
John Preston c10dee11e8 Fix crash in macOS notifications manager init.
Regression was introduced in 1725927aea.

Also create the thread only when it is first needed.
2017-04-15 20:39:25 +03:00
John Preston 4e5c4a462b Fix crash in videoplayer audio stream loader.
Regression was introduced in 835b1801bc.
2017-04-15 20:32:14 +03:00
John Preston bc7139d67a Fix crash in AuthSession::Exists() if there is no Messenger.
Also use toggleAnimated instead of show/hideAnimated in intro.
2017-04-15 19:28:07 +03:00
John Preston dd005d9027 Generate correct lang tag count, not hardcoded. 2017-04-13 11:51:47 +03:00
John Preston 670a725c53 Alpha 1.0.32: Fix round video checks in MediaView. 2017-04-12 23:34:57 +03:00
John Preston af28e3b0d7 Alpha 1.0.32: Fix build in Xcode. 2017-04-12 23:28:04 +03:00
John Preston ca90b8b8fd Alpha 1.0.32: Test the new API and CDN support. 2017-04-12 23:04:34 +03:00
John Preston 7b7b9db20b Add support for video messages send actions.
Animate record and upload the same way as voice messages.
2017-04-12 22:37:47 +03:00
John Preston 96dbb38aaa Improve mute and info display in video messages.
Display mute on top of the video and move info to the right side
for incoming messages (because of channel authors and views count).
2017-04-12 22:37:28 +03:00
John Preston 1b7777e3a0 Pause other GIFs when playing round video message. 2017-04-12 22:37:28 +03:00
John Preston 5480a63beb Support round video inline playback with sound. 2017-04-12 22:37:27 +03:00
John Preston cbf040b4dc Crop round video messages to a circle.
Also display unread media dot like in voice messages.
2017-04-12 22:37:26 +03:00
John Preston 8eb7f1f1aa Display round video messages using HistoryGif.
Use autodownload and autoplay options from GIFs.
Also improve EditCaptionBox code.
2017-04-12 22:37:26 +03:00
John Preston 8d28d0691f API scheme updated to layer 66.
Support CDN file download.
2017-04-12 22:36:25 +03:00
John Preston 7dd24a30b5 Replace MetaLang with codegen_lang. 2017-04-12 22:18:42 +03:00
John Preston 1725927aea Clear macOS notifications in a separate thread.
Sometimes NSUserNotificationCenter -deliveredNotifications method call
freezes for a long time, so now we use it only in a separate thread and
we group all the requests for clearing while another clearing is done.
2017-04-12 15:50:35 +03:00
John Preston 50ea4e316e Improve macOS window behavior.
Don't deactivate the application when the main window is hidden.
Such behavior provides some unwanted windows reordering in the
current workspace when the window is hidden by Cmd+W.

Ignore app activation by applicationDidBecomeActive: notification
for a short period of time after a user notification for other app
instance was received (the system sends them sometimes and the main
window is shown + activated for a wrong instance of the application).
2017-04-12 15:50:12 +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 eaf1e2b18e Alpha 1.0.31: Fix layout for message edit. 2017-04-11 21:04:28 +03:00
John Preston 4b7e5750ec Alpha 1.0.31: Fix crash in localstorage. 2017-04-11 20:31:20 +03:00
John Preston d4af14041c Fix build for OS X 10.6-10.7.
Qt 5.3.2 doesn't support QTimer::singleShot(delay, lambda).
2017-04-11 18:44:11 +03:00
John Preston b736d45bc4 Alpha 1.0.30: New tabbed panel as a third column. 2017-04-11 18:02:46 +03:00
John Preston 7f7318c0bf Fix members dropdown and chat info menu position. 2017-04-11 17:27:46 +03:00
John Preston 0e2c282476 Don't stop GIFs when TabbedSection is opened.
Also improve the appearance of Stickers and GIFs tabs with no items.
2017-04-11 17:03:47 +03:00
John Preston 891d200e2d Add TabbedSection which uses the TabbedSelector. 2017-04-10 12:08:56 +03:00
John Preston 647ea44881 Extract TabbedSelector from TabbedPanel.
Now we can use TabbedSelector separately, not only inside the panel.
2017-04-10 12:08:55 +03:00
John Preston 2c81014188 Fix crash on precondition in PeerListBox.
If a global search request was sent and we clear the query the
response still was being processed which caused an Expects() fail.
2017-04-10 12:08:15 +03:00
Viktor Oreshkin f1d97fb92c Fix build in Xcode (#3241)
Signed-off-by: Viktor Oreshkin <stek29@users.noreply.github.com>
2017-04-08 18:05:59 +03:00
John Preston 26b05cf844 Finalize rename / move.
Also removed non-existent emoji_section module from GYP.
2017-04-08 17:05:19 +03:00
John Preston 155cd8ce42 Rename / move emoji_panel to tabbed_panel.
Next commit fixes the build.
2017-04-08 16:56:14 +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 cd3c5e4ade Fix build in GCC.
GCC doesn't allow using scoped enums in bitfields without warnings.
So we use "unsigned" bitfield and a couple of get/set methods.
2017-04-08 14:25:54 +03:00
John Preston 38f94c63e9 Add blocked users list in supergroups profiles. 2017-04-07 18:13:22 +03:00
John Preston 34ab04cbe6 Add lambda-based checked timers.
Also ApiWrap is now not a QObject.
2017-04-07 18:13:21 +03:00
John Preston 6b242a982b Fix GIF pause by layer.
Let MainWindow enable / disable GIF pausing when a layer is shown.
2017-04-07 18:13:20 +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 c94a88e154 Rename / move a bunch of files.
Next commit fixes the build.
2017-04-07 18:13:16 +03:00
John Preston 8504bbb9d5 Improve icons and scripts for Windows Store. 2017-04-06 14:35:35 +03:00
John Preston 6746d4ba2d Build crashpad from git. Crashpad path has changed. 2017-04-06 11:06:29 +03:00
John Preston 7b7df23e3b Version 1.0.29: Fix crash on app quit.
Some cleanup actions in App::clearHistories() queue file loader
destructions that should be completed before MTProto is reset.
2017-04-05 13:39:31 +03:00
John Preston 252a6f9d5a Version 1.0.29: Fix cancel GIFs search button. 2017-04-05 13:14:17 +03:00
John Preston a1adf2dae6 Version 1.0.29: Fix crash on app quit.
Destroy queued file loaders before destroying AuthSession, because
they have references to Downloader which is owned by AuthSession.
2017-04-05 13:04:26 +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 03a59b04be Add progress animation to GIFs search.
Also display "no results" phrase.
2017-04-04 16:19:49 +03:00
John Preston 4384c80961 Prefer appindicator only on Unity and Pantheon.
Commit dcd6028e91 introduced a regression which caused
appindicator tray icon to be preferred everywhere else.
2017-04-04 12:59:48 +03:00
Lonami b7ea15b83d Use message date by default when saving a photo (#1586) (#3150)
Signed-off-by: Lonami <totufals@hotmail.com> (github: Lonami)
2017-04-04 12:14:32 +03:00
John Preston 20ad611924 Alpha 1.0.28: bump version. 2017-04-03 22:08:22 +03:00
John Preston 57b85ac30f Alpha 1.0.28: new emoji panel, GNOME tray icon. 2017-04-03 22:06:20 +03:00
John Preston 81375a05f1 Always write MTP data right after login.
Also write to DebugLogs all keys write attempts.
2017-04-03 21:59:13 +03:00
John Preston 50586eb06d Build codegen_emoji without GUI dependencies.
We need GUI dependencies only when we generate images.
2017-04-03 21:49:07 +03:00
John Preston afa9393f38 Expose IsPrimeAndGood() interface from connection.
Also fix a race in MTProto debug type serialization initialization.
2017-04-03 21:28:18 +03:00
John Preston c1aa1c5a0f Enable Qt tray icon in GNOME and derivatives.
As tested in Fedora Qt 5.6.2 tray icon works well in GNOME.
Also add more logs about DE and tray icon. Fix #3175 #3188
2017-04-03 20:46:09 +03:00
John Preston 78d245c02c Improve positioning of chat helper panels. 2017-04-03 19:46:24 +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 6003ac2132 Add base::weak_unique_ptr<T> template class.
Sometimes you don't need shared ownership (shared_ptr), but you
still need to be able to have weak pointers to an object.

Now you can derive the object from base::enable_weak_from_this
and use base::weak_unique_ptr<T> after that.
2017-04-03 14:08:36 +03:00
John Preston 0cdd0a9ff9 Remove old 'using std::string' from mtproto. 2017-04-02 20:11:30 +03:00
John Preston 7a7f157a8e Fix crash in EmojiListWidget.
Changing recent emoji list was giving us inconsistent emoji list
in _emoji[section] and its size in SectionInfo::count field.
2017-04-01 17:08:56 +03:00
John Preston f1718f1d10 Generate emoji config by a build action.
Also hopefully optimize the build speed for emoji config.
2017-04-01 17:08:42 +03:00
John Preston a1b53f07d5 Fix build for Xcode and GCC. 2017-04-01 16:14:56 +03:00
John Preston e8ed307278 Add search in GIFs to EmojiPanel. 2017-03-31 18:58:59 +03:00
John Preston 0690c4f98c Move EmojiPanel bottom controls to Controller.
Open sticker set by click on the name.
Add a delete sticker set button.
2017-03-31 15:58:52 +03:00
John Preston 6d27172b20 Move [Emoji|Sticker]PanInner to separate modules.
Now we have three separate [Emoji|Stickers|Gifs]ListWidget.
2017-03-31 15:48:03 +03:00
John Preston bed3aa1a7f Finalize rename / move of files.
Also rename EmojiPan to EmojiPanel.
2017-03-31 15:48:02 +03:00
John Preston 477f175f76 Rename / move emoji_pan module to emoji_panel.
Next commit fixes the build.
2017-03-31 15:48:02 +03:00
John Preston 1540f6f528 Use emoji/stickers/gifs slider in EmojiPan.
Also rename EmojiTabs to EmojiSections.
2017-03-31 15:48:01 +03:00
John Preston 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 5cb66c99bd Make stickers FeaturedReader an MTP::Sender. 2017-03-31 15:47:59 +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 cdca00368f Improve EmojiPan: resource management.
Store inline results and layouts in unique_ptrs.
Move EmojiPan from RPCSender to MTP::Sender.
2017-03-31 15:47:57 +03:00
John Preston 8884cb190a Version 1.0.27: Fix launch in Ubuntu 17.04
Ubuntu 17.04 launch results in segfault if the build was done
by GCC 6.2 (works fine with GCC 4.9). Backtrace shows that it
crashes in gtk_init_check() call somewhere in libmirclient and
tests show that it works fine with GDK_BACKEND=x11.

So we use gdk_set_allowed_backends() method to explicitly state
that we support only "x11" GDK backend, that way it doesn't try
to use libmirclient and it does not crash.

Fix #3176 #3162
2017-03-31 13:46:55 +03:00
John Preston df6972eeba Update API scheme. 2017-03-31 13:31:51 +03:00
John Preston f0ab72ffbc Fix AutoConnection::debugState() for TCP connections. Fix #3171
Also silent new Xcode version warning.
2017-03-30 18:20:51 +03:00
John Preston a851497bbf Version 1.0.26 for macOS: Fix Clang builds.
Custom build of libc++ for OS X 10.6-10.7 already has C++17 as_const.
Add workaround for Apple Clang has strange issues (freeze and segfault).
2017-03-30 15:00:02 +03:00
John Preston e6d94b5ee7 Version 1.0.26: Better appx manifest, update langs. 2017-03-30 12:49:58 +03:00
John Preston 23f23e3ca5 Closed beta 1000024001: Improved edit privacy box. 2017-03-30 12:49:16 +03:00
John Preston dde63a9047 Update langs. 2017-03-30 12:49:16 +03:00
John Preston 5bb68cfd8f Support reading me_url_prefix from config.
The default value 'https://t.me' can be overriden from server config.
2017-03-30 12:49:16 +03:00
John Preston 70b6335b11 Closed beta 1000018003: notifications / jump to date. 2017-03-30 12:49:16 +03:00
John Preston 47c5d56c7b Use QLocale for amount + currency formatting. 2017-03-30 12:49:15 +03:00
John Preston fde769e0b9 Don't use WebDocument size field.
WebDocument size field is not a reliable information,
it can be > 0 and != upload.WebFile size field, so just ignore it
and load all WebDocument files as files with unknown size.
2017-03-30 12:49:15 +03:00
John Preston 23b39923ad Closed beta 1000018002: more phrases for payments.
Also replacing the Buy keyboard button with Receipt if the invoice
was payed already (like in mobile apps). This required to move the
inline markup apply before the media apply in message editing.
2017-03-30 12:49:15 +03:00
John Preston a7d0473a1a WebDocument without size is allowed to load.
We load a WebDocument with an unknown size the same way as we load
normal photos with FileLocation, that doesn't contain size as well.

If the size information from WebDocument and upload.WebFile is
inconsistent we still fail to load the file.
2017-03-30 12:49:15 +03:00
John Preston 12ca6f3819 Closed beta 1000018001: calls and payments dummies. 2017-03-30 12:49:15 +03:00
John Preston 31e3c6a2c6 WebDocument wrap to HistoryPhoto supported.
Only WebDocument with a valid 'size' field value and with a valid
'documentAttributeImageSize' attribute works wrapped as a photo.
2017-03-30 12:49:15 +03:00
John Preston 7b5985445c Payment service messages supported. 2017-03-30 12:49:15 +03:00
John Preston 2019c24e08 Pay button and messageMediaInvoice supported.
New button type keyboardButtonBuy just shows a box with information.
WebDocument photo type is not supported yet, 'photo' is ignored.
Also HistoryMediaPtr is now implemented as a std::unique_ptr wrapper.
2017-03-30 12:49:15 +03:00
John Preston 0cc7cdd212 Added phrases for phone calls service messages.
Also refactored service message text parsing from an action object.
2017-03-30 12:49:15 +03:00
John Preston 16396b5d90 API scheme updated to layer 65. 2017-03-30 12:49:14 +03:00
John Preston 5666f14829 Allow audio and video files with duration < 1s. 2017-03-27 15:50:40 +03:00
John Preston d41372dccd Allow MTP_flags(0) and MTP_flags(single_flag). 2017-03-25 18:42:01 +03:00
Nicholas Guriev 2e6c15ff9d Update .desktop file on Linux (#3109)
What has been done:

 * Removed deprecated Encoding key
 * Specified correct WM class for StartupWMClass key
 * Fixed icon name

I also fixed restarting when language is changed and there is no Updater

Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-03-23 18:00:21 +03:00
John Preston 0ce6e8a33a Show warning message before changing phone number. 2017-03-23 17:58:58 +03:00
Christoph be659e2611 Fix regex for in app links (#3142)
Before, this regex matched also links which contained a in app link, e.g.: https://github.com/search?q=https://telegram.me/BotFather

Fix #3141

Signed-off-by: Christoph <auer.chrisi@gmx.net>
2017-03-23 17:56:51 +03:00
John Preston 47044ab25e Fix GCC warning on Release build in Emoji::Init.
Also use initializer_list instead of recursion in Emoji::ComputeId.
2017-03-23 15:47:01 +03:00
John Preston 731e53bc99 Fix crash in tray icon notifications toggle.
While we have the same tray menu for an authorized user and not.
2017-03-23 15:30:16 +03:00
John Preston e38d683979 Fix crash in SelfDestructionBox.
base::lambda_guarded may destroy the lambda after the owner. In case
of SelfDestructionBox it lead to a dtor of a dangling object_ptr.

MTP::Sender destroys the lambda handlers together with itself.
2017-03-23 15:18:02 +03:00
John Preston e9ec09b91a Add MTP::Sender to replace RPCSender some day.
Also use c++1z language standard in Xcode build.
Also treat warnings as errors.
2017-03-23 14:37:38 +03:00
John Preston 7fcc5d649c Change push_back to emplace_back in emoji_config.
Perhaps that way GCC won't give a warning on variable count inside
one method Ui::Emoji::Init() in Release builds.
2017-03-22 12:24:53 +03:00
John Preston 6601a00eea Alpha 1.0.25: Edit phone number in Settings.
Also fix build for GCC.
Also add scripts for GitHub releases management.
2017-03-21 22:49:23 +03:00
John Preston 743743ca10 Fix WebPage reply preview.
Sometimes HistoryWebPage::hasReplyPreview() was returning true while
the HistoryWebPage::replyPreview() method was not offering anything.
2017-03-21 20:59:35 +03:00
John Preston bd121752f1 Change your account phone number in Settings. 2017-03-21 20:13:34 +03:00
John Preston facc729234 Edit account self destruct time in Settings.
Also accept lambda_once in rpcDone() and rpcFail() lambda wrappers.
2017-03-20 23:05:38 +03:00
John Preston a5df46f381 Improve EditPrivacyBox layout.
Also fix incorrect killTimer() calls in DiscreteSlider.
2017-03-19 11:32:24 +03:00
John Preston 5530172add Alpha 1.0.24: Fix build in Xcode. 2017-03-19 00:29:43 +03:00
John Preston 59636ac072 Alpha 1.0.24: edit last seen and invite privacy. 2017-03-19 00:14:23 +03:00
John Preston 12cbf78191 Refactor Ui::Radiobutton. Add Ui::Radioenum<Enum>.
Now group of Ui::Radiobutton instances share Ui::RadiobuttonGroup.
All value management is done through the group instance, not through
separate radio buttons. Also a template for groups over enums added.
2017-03-19 00:06:10 +03:00
John Preston 0a40bf2071 WIP radiobuttons refactoring. 2017-03-18 14:55:04 +03:00
John Preston 7546245213 Show warning when user edits last seen first time. 2017-03-18 12:49:48 +03:00
John Preston fc77b0a51c Save privacy in ApiWrap. Handle privacy updates. 2017-03-18 12:49:47 +03:00
John Preston 346daee421 Edit groups and channels invite privacy. 2017-03-18 12:49:46 +03:00
John Preston 61c5b45d7a Select exception users in EditPrivacyBox. 2017-03-18 12:49:46 +03:00
John Preston 85fd117675 Add EditPrivacyBox. Edit last seen privacy.
Selecting exception users is not supported yet.
2017-03-18 12:49:45 +03:00
John Preston a563cf553c Rename / move settings_blocked_box_controller.
Next commit fixes the build.
2017-03-18 12:49:44 +03:00
John Preston 18151359f3 Fix drag-n-drop images from Firefox.
Commit a1b53c660e introduced a regression which caused images that
were shown for sending confirmation as a file path + image not being
passed to FileLoadTask in _image field, they were passed in the
_information field instead. They were not sent in case the file path
was not existing at the moment of processing. If the file path does
not exist anymore read the image from _information and send it.
2017-03-18 12:44:31 +03:00
John Preston 16fa56de48 Finalize rename / move of files. 2017-03-16 12:53:13 +03:00
John Preston 412d3f8350 Rename / move a bunch of files.
Next commit fixes the build.
2017-03-16 12:52:38 +03:00
John Preston 6ad2cd38ed Generate scheme module by GYP action.
Add a new codegen action to generate MTP scheme from scheme.tl file.
2017-03-16 12:37:56 +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
Christoph fed20435ad Update local regex (#3115)
Adds support for telegram.dog links
Fix #3111

Signed-off-by: Christoph <auer.chrisi@gmx.net>
2017-03-15 17:38:05 +03:00
John Preston b2ac84c8c6 Alpha 1.0.23: Fix changelog message. 2017-03-15 15:13:09 +03:00
John Preston 8c06b08f30 Alpha 1.0.23: Add blocked users list box in settings.
Also fixed build for Xcode.
2017-03-15 13:45:56 +03:00
John Preston 2ce2a14228 Add global search by username in block user box. 2017-03-14 21:38:50 +03:00
John Preston 46dab1a6b4 Add local search (filter) in block user box. 2017-03-14 20:10:28 +03:00
John Preston 805be84bff Add block user box. Search isn't working yet.
Add a box containing all chats and contacts for blocking users.
Contacts and dialogs loaded state can be accessed in AuthSession.
2017-03-14 17:16:03 +03:00
John Preston b1ee91b06b Add blocked users box to Settings.
Start a general PeerListBox, it should replace both ContactsBox
and MembersBox in the future. Show blocked users list in it.
2017-03-14 13:58:36 +03:00
John Preston 6873d53993 Alpha 1.0.22: fix couple of crashes. 2017-03-13 13:31:11 +03:00
John Preston 929c55a2a1 Include only required moc_*.cpp in the build.
Use a python script to generate the list of sources to build.
Now we don't include moc_*.cpp files in build by default, instead
we list only non-empty ones.

If you change a header so that the corresponding moc_*.cpp changes
its emptyness you may need to gyp/refresh to apply this change.

This should speed up the build significantly on GCC.
2017-03-13 13:17:26 +03:00
John Preston 2e17b480a5 Fix crash in HistoryVideo::draw. 2017-03-12 11:52:28 +03:00
John Preston 1395237810 Fix crash in notifications.
~HistoryItem() sometimes causes a queued notification to show.
Custom notifications depend on MainWindow and it is destroyed
already in clearHistories(), so clear the notifications queue first.
2017-03-12 11:49:44 +03:00
John Preston bc254228c9 Alpha 1.0.21: Use custom refcount for MTP types.
It seems that heavy using std::shared_ptr and std::make_shared
like it was before completely kills the compilation time.

Also HistoryItem::_create now uses perfect forwarding.
2017-03-11 20:03:36 +03:00
John Preston f2cd364e14 Alpha 1.0.21: Fix more compilation bugs. 2017-03-11 17:13:57 +03:00
John Preston 28ae5fd65c Alpha 1.0.21: Fix compilation bug. 2017-03-11 13:35:43 +03:00
John Preston 493ba6f2cd Alpha 1.0.21: Send MP4 and MOV files as videos. 2017-03-11 13:33:05 +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 1df955e30a Closed beta 1000020001: remove chats list padding. Fix #3098
Also return config requesting at the beginning of each app launch.
2017-03-10 23:27:25 +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 3b373e236e Make all owned MTPD types immutable.
Remove custom refcounting in mtpData, use std::shared_ptr instead.
2017-03-10 23:27:23 +03:00
John Preston 6061d9d65b Fix WidgetFadeWrap::showFast() after animation. Fix #3096 2017-03-10 19:41:44 +03:00
John Preston 021454dbd4 Add .jpg to inputFile filename when photo is sent.
Server has some extensions checking for inputMediaUploadedPhoto,
so force the extension to be .jpg anyway. It doesn't matter,
because the filename from inputFile is not used anywhere.

Also own PhotoData::UploadingData through std::unique_ptr.
2017-03-10 18:55:34 +03:00
John Preston f6918feea3 Fix build in Xcode and GCC. 2017-03-10 18:53:16 +03:00
John Preston 6c00b7efde Show animated previews for GIFs in SendFilesBox. 2017-03-10 17:43:26 +03:00
John Preston a1b53c660e Show video thumbnail in SendFileBox.
Read media information (image / song / video) in SendFileBox in the
same way it is read in FileLoadTask::process() and reuse it in
FileLoadTask if it was loaded already for the box.
2017-03-10 17:14:10 +03:00
John Preston 9ed8cbe2d1 Send mp4 and quicktime files as videos. 2017-03-10 17:12:51 +03:00
John Preston eaae662b7d Use mapbox::util::variant in a submodule.
While we don't have C++17 std::variant<> use a BSD licensed
alternative from mapbox team in a base:: wrapper.
2017-03-10 17:12:04 +03:00
John Preston 7da52bd3ec Move GSL dependency to a submodule. 2017-03-10 14:34:43 +03:00
John Preston e4f7b3c7c2 Fix mediaview update when image is loaded.
Subscribe on app launch, not only when AuthSession has changed.
2017-03-10 11:25:38 +03:00
John Preston ee45bbe4c6 Alpha 1.0.20: fix crash in old Windows versions.
A shell32 method SHCreateItemFromParsingName was used without
checking if it was successfully loaded from shell32.dll (Vista+).
2017-03-09 00:10:32 +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 ce8d68fc8c Alpha 1.0.19: Add MSVC++ bug workaround. 2017-03-08 13:46:04 +03:00
John Preston 6d216042e6 Alpha 1.0.19: jump to date, macOS do not disturb.
Production testing of the AuthSession downloader() and notifications().
2017-03-08 13:33:16 +03:00
John Preston a5c83467d6 Respect macOS do not disturb settings. Fix #3095. 2017-03-08 13:12:02 +03:00
John Preston b5d9eee489 Fix macOS native notification callbacks. 2017-03-08 10:31:05 +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 ec0c3c5f82 Add ripple animation in CalendarBox cells. 2017-03-07 22:29:59 +03:00
John Preston d3af60ff0b Add a simple jump to date in a chat. 2017-03-07 22:29:59 +03:00
John Preston ae977044f6 First version of CalendarBox is done.
Also moved BackgroundBox::Inner declaration inside backgroundbox.cpp
2017-03-07 22:29:49 +03:00
John Preston 6d80471fc9 Calendar button added to DialogsWidget.
When you search in a specific chat there is a calendar button now.
2017-03-07 21:59:47 +03:00
John Preston b80dd99172 Ui::FadeAnimation now supports scaling.
Ui::WidgetScaledFadeWrap<> wrapper added for fading widgets out and
fading them in with a scale effect similar to Ui::SendButton.
2017-03-07 21:58: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 9510492174 Renamed history_down_button module.
Next commit fixes the build.
2017-03-07 21:58:24 +03:00
John Preston a441a9fca9 Fix service message highlighting. 2017-03-07 21:58:16 +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 b14ba398e6 Fixed Linux build. 2017-03-06 01:43:35 +03:00
John Preston e88305d984 Fixed freezes in macOS clipboard requests.
Sometimes QClipboard::text() unexpectedly freezes on macOS, no known
causes for that. But before we were requesting the clipboard text after
each change in any text field to update macOS global menu items.

Now we use Cocoa API directly to find out if there were any changes to
the clipboard content and query text through Qt only if we have changes.

That way it should almost never freeze (at least) or even really never.
2017-03-05 23:18:27 +03:00
John Preston 31009b19c6 Removed obsolete storage_file_type fields. 2017-03-04 14:28:21 +03:00
John Preston 83720d8789 Finalizing file renaming. 2017-03-04 13:23:56 +03:00
John Preston b0dbe9d353 Renamed / moved a bunch of files.
Next commit fixes the build.
2017-03-04 12:56:07 +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 f48d6dc464 Alpha 1.0.18: Fixed build for macOS. 2017-03-02 17:01:32 +03:00
John Preston 6576959948 Alpha 1.0.18: destroying auth keys on sign up.
Also some debugging tools for mtproto endpoints added.
2017-03-01 21:42:36 +03:00
John Preston 3da0af3550 Merge branch 'master' into dev 2017-03-01 21:41:42 +03:00
John Preston 195d3d13d7 Fix regression from 87445ccf8c in a helper script. 2017-03-01 21:37:15 +03:00
Konstantin Lazutin 701acace21 Removed click at the end of the notification sound (#3052)
Signed-off-by: Konstantin Lazutin klazutin@gmail.com (github: klazutin)
2017-03-01 21:30:28 +03:00
John Preston bc76f5ee1e Debug feature added for overriding dc options.
Now you can type "endpoints" in Settings and choose a file with
a complete set of dc_options that will be used instead of built-in
or received through mtproto config till the end of current session.
2017-03-01 20:22:37 +03:00
John Preston 5f5770dd46 Support special seek whence for ffmpeg.
AVSEEK_SIZE is passed as a whence when ffmpeg needs just data size.
2017-03-01 10:31:36 +03:00
John Preston fb230a443e Fixed text with right bearings display.
Sometimes Text::_maxWidth was not accumulated correctly because
the intermediate text blocks had negative right bearing larger
than the whole width of the next text block, so the final computed
line width was less than some intermediate value. Now we accumulate
the _maxWidth value after each block making this value correct.
2017-02-28 19:38:23 +03:00
John Preston a4a7a77abd Closed beta 1000017001: enable auth_key_destroy.
Now we use only new authorization keys for signing in. If we are
preparing to sign in and we see, that some of the authorization
keys were not generated in this launch, but were read from file, we
destroy all existing auth keys and generate a completely new set.
2017-02-28 19:08:30 +03:00
John Preston 12705c9065 Removed legacy FileDialog::query* methods.
Everything is done easier and better through the FileDialog::Get*.
2017-02-28 19:04:52 +03:00
John Preston f8318177b9 Platform-dependent file methods called async.
Some major platform-dependent file operations refactoring.
All methods like "open file", "open file with", "show in folder"
were moved to core/file_utilities module with platform-dependent
backends. All methods interacting with DesktopServices made async.
2017-02-28 18:03:38 +03:00
John Preston 6f0cf30b12 Some platform-dependent modules refactoring.
Now each platform-dependent module declares its interface in
platform/platform_module.h file and after that includes platform-
specific headers like platform/win/module_win.h with implementation.

Also removed the legacy WinRT platform-dependent implementations.
2017-02-28 13:51:00 +03:00
John Preston ae08a2f697 Alpha 1.0.17: crash fix in file open.
ShellExecute() call reenters Qt event loop, so each time we
schedule a delayed action (like destroying FileLoader) and after
that we call ShellExecute (in psOpenFile) we destroy it inside
this call and can't use it after.

So now we perform ShellExecute calls only delayed (using task queue).
2017-02-28 11:18:27 +03:00
John Preston a5eb5a6ea2 Crash fix when setting a background image by URL. #3077
When we choose a file from URL we don't get the filename.
In background image apply method we test for a theme / palette
file extensions. Now we don't crash there, but we still can't set
a .tdesktop-theme or .tdesktop-palette file from URL. Who cares :)
2017-02-28 10:26:27 +03:00
John Preston d254058690 Alpha 1.0.16: fighting crashes.
An attempt to fix a crash in MTP::Instance destructor + additional
logging there to find out how this crash happens.
2017-02-27 21:47:29 +03:00
John Preston 2fa2fa41c5 Some special logging added for crash catching.
Special FileLoader destructor crash added to find the code path
leading to crashes that could be observed through the reports.

Looks like progress() signal handlers enter event loop somehow.
2017-02-27 21:33:42 +03:00
John Preston 3f8e822621 Fixing crash in logout from passcode.
If the MTP::Instance is not started yet (we forgot our passcode),
the logout attempt was attempting to use mtproto from Intro::Widget
constructor before it was created. Now we create it before logout.
2017-02-27 21:25:42 +03:00
John Preston fb2a26fb35 Alpha 1.0.15: various improvements.
Wrong supergroup members display fix, RTL text layout fix.
Linux GTK file chooser image preview added. Fix #3053 #2968
2017-02-27 13:44:14 +03:00
John Preston 6c2f16e9a0 Some improvements in mtproto data processing.
Readability improvements. Checking maximum padding size.
Checking SHA1 hash before validating inner message length.
2017-02-27 12:51:03 +03:00
Christoph 87445ccf8c Add interpreter path
Fix #3064
2017-02-27 09:42:11 +01:00
John Preston 4838d1bfc9 GTK file chooser image preview support added. #2968
Thanks to Chromium code.
Also fixed build on GCC / Linux.
2017-02-26 22:27:57 +03:00
John Preston e8b03248e1 Fix members list in supergroups when scrolling up.
When we load previous messages in chat history we add all authors
of the messages to lastAuthors in regular groups (so that we can
suggest them in mention autocomplete). The same logic was (blindly)
applied to supergroups lastParticipants list which is used not only
for the mention autocomplete but also in Profile members list. That
way we were showing there users who could've already left the group.
2017-02-26 21:02:47 +03:00
John Preston dcd6028e91 Loading libunity only in Unity and Pantheon. #3053
Commit 296c800b39 introduced a regression which caused crashes
in some ArchLinux distros when attempting to load or use libunity.
2017-02-26 21:02:46 +03:00
John Preston 5195b4d3ef RTL strings with trailing spaces render fix.
Commit 8d354382a4 introduced a regression in RTL phrases display.
When an RTL line had trailing spaces we started displaying them in
front of the text still assuming counted line width value that did
not include those trailing spaces.

Line width is not including trailing spaces width because it is
allowed to fit in the line any number of spaces.

Also text block "left padding" entity was eliminated. If we have
some spaces in the start of the text block (for example a text block
after a link) we just add an empty word and mark those spaces as its
right padding.
2017-02-26 21:02:45 +03:00
John Preston 692d115313 Use a Deleted Account phrase instead of Unknown. 2017-02-26 21:02:45 +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 f82989c9c3 Using std::vector<> and const fields for emoji. 2017-02-25 23:35:55 +03:00
John Preston c48ed2e62b Closed beta 1000014001: fixed GCC build. 2017-02-25 21:17:50 +03:00
John Preston d1e37864ac Closed beta 1000014001: fixed crash in MTP destructor.
Some of MTP::Instance::Private fields access _instance in
destructors. All that cleanup should be performed before the
Instance::~Instance() (which invalidates _private) is called.
2017-02-25 20:55:11 +03:00
John Preston bcec2f6b84 Closed beta 1000014001: fixed Xcode build. 2017-02-25 20:46:21 +03:00
John Preston 6b70cc342a Closed beta 1000014001: testing MTP changes.
Destroying of the authorization keys disabled for now.
2017-02-25 20:15:30 +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 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 90b3b5c3e5 MTP::AuthKey uses std::array for data.
Also using "volatile char*" iteration for secure memset on Mac/Linux.
2017-02-25 19:48:18 +03:00
John Preston 21efb44e81 TL scheme for destroy_auth_key query added. 2017-02-25 19:48:17 +03:00
John Preston e6672432bb Merge branch 'master' into dev 2017-02-25 19:47:10 +03:00
Mohammad Reza Espargham 8c63feb11e Added interpreter path (#3065)
Signed-off-by: MohammadReza Espargham <reza.espargham@owasp.org> (github: rezasp)
2017-02-23 22:37:24 +01:00
Mohammad Reza Espargham dbd4eaed48 Added interpreter path (#3061)
Signed-off-by: MohammadReza Espargham <reza.espargham@owasp.org> (github: rezasp)
2017-02-23 18:51:29 +01:00
John Preston 9e4b752830 Fix travis build warning on precompiled headers. 2017-02-22 14:00:08 +03:00
John Preston 958d3b7c15 Good alignment in palette reading generated code.
Also added -std=gnu++1y to CMake precompiled header generation.
2017-02-21 21:24:36 +03:00
John Preston 30ae322cf0 Move to GCC 6 and silent some warnings there. 2017-02-21 18:29:59 +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 27f015561a Using custom build of libc++ for old OS X version.
This will allow us to use C++14 library on all platforms.
Patches for macold versions got bigger and are now different for
crashpad and mini_chromium, so they were moved to a separate folder.
2017-02-21 15:37:52 +03:00
John Preston 228e2f7031 Use 'v140' msbuild_toolset for VS project.
We use /SUBSYSTEM:Windows and 'MinimumRequiredVersion': '5.01' to
make our app work in Windows XP, but we use 'v140' toolset instead
of 'v140_xp' so that we have access to modern APIs like WRL.
2017-02-21 15:27:34 +03:00
John Preston 7fa1986b27 Version 1.0.14: crash fix in text rendering.
Fix a regression introduced in 8d354382a4 which caused an overflow
in _parAnalysis access. We were resizing _parAnalysis array for a
line width without the pending newline character while we used it
for painting a line including the pending newline character. It was
not a problem before, when we were trimming them from the end of
the string, but it results in a buffer overflow and crashes in the
lastest versions. So now we just don't include the newline in the
painted string, so it has exactly the same size as _parAnalysis.
2017-02-20 23:58:54 +03:00
John Preston 5939c54d33 Version 1.0.13: fix unnecessary window activations.
A regression was introduced in 1.0.12 version which led to wrong
activations of the main window: if a custom popup menu was shown
for the tray icon or a custom notification was clicked.
2017-02-20 13:36:25 +03:00
John Preston d408fca96f Added some more debug info for wrong history state. 2017-02-20 13:35:30 +03:00
Christoph Auer 120e21c126 Remove workaround for missing build defines
Fixed by commit d1d9e29ca5
2017-02-19 14:00:14 +01:00
John Preston d1d9e29ca5 Version 1.0.12: fix initial build_defines. 2017-02-19 14:02:35 +03:00
John Preston bcf01cf718 Version 1.0.12: more emoji, voice messages seek, theme editor. 2017-02-19 13:50:36 +03:00
Christoph Auer daa934014c Change TELEGRAM_BUILD_DEFINES to TDESKTOP_BUILD_DEFINES 2017-02-19 09:29:08 +01:00
Christoph ef535ca026 Implement AppVeyor (#3025)
Also implement build defines for Windows
Set TELEGRAM_BUILD_DEFINES before calling gyp/refresh.bat

Fix #3000

Signed-off-by: Christoph <auer.chrisi@gmx.net>
2017-02-18 20:23:50 +01:00
John Preston 843089733b Better handle window hide / activate in macOS. #1278
When we hide window by 'x' title button or by cmd+w key we try to
deactivate the whole application (so some other app gets activated).

When we activate the application in any way we check if the main
window is hidden and if it is - we show it and activate it.
2017-02-18 16:34:18 +03:00
John Preston 6e1b6e6e53 Fixed Qt 5.3.2 tray icon with autohidden menu bar.
Also removed the old Qt 5.6.0 patch (only 5.6.2 is currently used).
2017-02-18 16:34:18 +03:00