Commit Graph

3904 Commits

Author SHA1 Message Date
John Preston 4c9931ab02 Support grouped media rendering. 2017-12-16 20:50:42 +04:00
John Preston 0a4038d061 Fix build with TDESKTOP_DISABLE_CRASH_REPORTS.
Regression was introduced in 97c15865a5.

Fixes #4173.
2017-12-13 00:25:14 +04:00
John Preston 4bab7583ba Version 1.2.1.
- Bug fixes and other minor improvements.
2017-12-12 18:56:38 +04:00
John Preston b2f29b674d Send audio files with correct attributes.
Regression was introduced in 8b69e6ab99.

Fixes #4163.
2017-12-12 18:56:38 +04:00
John Preston 574f4a73cb Add some checks to video sound stream decoding. 2017-12-12 18:56:37 +04:00
John Preston 05e3ddce0c Fix userpic removing.
Regression was introduced in 68009b6fba.

Fixes #4152.
2017-12-12 18:56:37 +04:00
John Preston 3c101b0a50 Remove limit on chats list width.
Fixes #4146.
2017-12-12 18:56:37 +04:00
John Preston e998bd0b3f Parse command line natively on Windows.
Use CommandLineToArgvW() so that unicode arguments are preserved.
This will fix path arguments with unicode symbols in them.
2017-12-12 18:56:37 +04:00
John Preston 251176df47 Move relaunch / update logic to Core::Launcher.
Also pass "-workdir" argument through relaunch / update.

Fixes #4149.
2017-12-12 18:56:36 +04:00
John Preston 97c15865a5 Move some code around.
Move logs:SignalHandlers to core/crash_reports:CrashReports.
Move all pre-launch windows to core/crash_report_window module.
Move some global code to core/launcher:Launcher.
It should replace settings / platform_specific module in some way.
2017-12-12 16:47:32 +04:00
John Preston 9d4558de2b Fix build in Visual Studio 15.5.1.
Looks like compiler had some regressions when updating from 15.4.5.

Range-V3-VS2015 also needs to cherry-pick this commit:
https://github.com/ericniebler/range-v3/commit/9f990c48d0
See https://github.com/Microsoft/Range-V3-VS2015/issues/26
2017-12-12 12:25:54 +04:00
John Preston 38f7f48c17 Open links in AboutBox without confirmation.
Fixes #4148.
2017-12-12 12:25:54 +04:00
John Preston 9534121676 Fix issue number :/ Fixes #4150. 2017-12-11 15:19:13 +04:00
John Preston 10b76d921b Fix window scaling issue on macOS.
Fixes #4149.
2017-12-11 15:06:05 +04:00
John Preston 8af058edc9 Version 1.2.0.
- Radically improved navigation. New side panel on the right
with quick access to shared media and group members.
- Saved Messages. Bookmark messages by forwarding them to "Saved
Messages". Access them from the Chats list or from the side menu.
- Pinned Messages. If you are a channel admin, pin messages to
focus your subscribers' attention on important announcements.
- Easily recognize messages from group admins by the new admin badge.
- Also supported clearing history in supergroups and
added a host of minor improvements.
2017-12-10 22:32:08 +04:00
John Preston 8b69e6ab99 Rename some methods in DocumentData.
Also fix voice message mark as read when autoplaying after previous.
Also show play icon and don't show playlist for audio files that do
not have shared music files attributes but have audio file mime type.
2017-12-10 14:28:04 +04:00
John Preston 4ef3de5287 Always specify seek position in TimeMs.
This way it won't rely on the sample rate of the audio file.

Fixes #4139.
2017-12-10 12:52:38 +04:00
John Preston 9fff2bf4c7 Fix one more crash in HistoryWidget. 2017-12-10 00:32:35 +04:00
John Preston 534058fe9b Alpha version 1.1.29. 2017-12-09 22:21:38 +04:00
John Preston 6d62673e9e Fix crash in HistoryWidget. 2017-12-09 22:21:38 +04:00
John Preston 677dbd5d6e Alpha version 1.1.28: Fix build for Xcode. 2017-12-09 20:01:40 +04:00
John Preston 452440f50b Alpha version 1.1.28.
- Bug fixes and other minor improvements.
2017-12-09 19:17:23 +04:00
John Preston 5a7d8bcffb Add audio playlist using Info::Media::ListWidget. 2017-12-09 19:13:06 +04:00
John Preston 63e89ddc9a Fix replies by stickers and inline bot results. 2017-12-09 16:39:41 +04:00
John Preston 4e2c8bbc26 Use SharedMediaMergedViewer() for audio player.
That way audio files and voice/video messages will play in context
(one after another with ability to go to next or previous in player)
almost always, no matter at what part of message history we are.
2017-12-09 14:02:51 +04:00
John Preston 9bbcbd4bb3 Remove all legacy media overview code. 2017-12-08 22:34:26 +04:00
John Preston 273ac5eaf1 Add some more public keys. 2017-12-08 20:26:27 +04:00
John Preston 951db83ab6 Index bad audio files to Shared Files Overview.
Fixes #4120.
2017-12-08 19:53:04 +04:00
chaplin89 a868c7bc8b Avoid generating multiple time the forward declarations in the headers generated by codegen_style. 2017-12-08 19:49:24 +04:00
John Preston a403ad7d37 Always pass all users to add group member box. 2017-12-08 18:25:29 +04:00
John Preston 90f5f7dded Fix possible crash in timer timeout values. 2017-12-08 18:15:00 +04:00
John Preston aef88559e8 Fix possible crash in HistoryWidget.
Stack in crash reports leads to something like that:
- HistoryWidget::showHistory
- _scroll->setOwnedWidget
- Ui::ScrollArea::onScrolled
- sendSynteticMouseEvent
- Info::Media::ListWidget::enterEventHook
- Info::Media::ListWidget::mouseAction?Update
- Overview::Layout::ItemBase::clickHandlerActiveChanged
- AuthSessionData::requestItemRepaint
- HistoryWidget::repaintHistoryItem

Workaround:
- Don't accept repaint item requests while _list is not set yet.
2017-12-08 17:54:55 +04:00
John Preston 6295d85ef2 Fix possible assertion violation in PeerListBox.
Very long stack in crash reports leads to something like that:
- PeerListBox::prepare
- PeerListBox::createMultiSelect
- PeerListBox::updateScrollSkips
- BoxContent::setInnerTopSkip
- _scroll->scrollToY
- sendSynteticMouseEvent
- ChatHelpers::TabbedPanel::showAnimated
- QWidget::render
- QWidgetPrivate::sendPendingMoveAndResizeEvents
- PeerListBox::resizeEvent
- _select->resizeToWidth(0)
- MultiSelect::Inner::computeItemsGeometry(0)

Workaround:
- Don't scrollToY if PeerListBox width was not yet set.
- Initial _scrollBottomFixed is false (at first createMultiSelect).
2017-12-08 17:36:17 +04:00
John Preston a27ea2d631 Fix possible crash in mtpFileLoader.
If several cdn file parts hashes are received in getCdnFileHashesDone
and some middle one of them cancels the entire loader (for example
because of a file write error) a !_finished assert violation happens.
2017-12-08 17:13:13 +04:00
John Preston de8de84a33 Fix possible crash in CalendarBox.
If month change notification was posted async there was a possibility
to get a mousePressEvent() with already new Context field values, but
with old _selected value. Those two could be inconsistent leading to
an assert violation in (_selected + _context->daysShift() >= 0).
2017-12-08 16:44:52 +04:00
John Preston 80bb6b65a7 Fix possible crash. 2017-12-08 15:53:28 +04:00
John Preston f8963d7e4b Read silent flag from PeerData, not SilentToggle. 2017-12-08 15:52:12 +04:00
John Preston c79d16a0d6 Auto-choose first search row in PeerListBox. 2017-12-08 13:30:30 +04:00
John Preston aa16bcd604 Add a special key for saved messages userpic bg. 2017-12-08 13:23:55 +04:00
John Preston 935232eaa2 Don't use AEC on modern macOS. 2017-12-08 13:13:05 +04:00
John Preston e273695cc9 Fix planar audio playback (for example .flac).
Also add some more crash information logging.

Fixes #4120.
2017-12-08 12:57:43 +04:00
John Preston 827784e3b2 Focus search field in Info layer. 2017-12-08 12:22:02 +04:00
John Preston b501af0b8f Add search button to info members header. 2017-12-08 12:14:30 +04:00
John Preston 8f87cfe29d Fix explicit working dir by "-workdir" in Windows.
Regression was introduced in ff84962148.

Fixes #4129.
2017-12-08 12:13:42 +04:00
John Preston 79398fe6cf Add call button to Info::Profile top bar. 2017-12-07 19:17:53 +04:00
John Preston 355747d7bf Remove send actions in Saved Messages.
Fixes #4122.
2017-12-07 18:27:59 +04:00
John Preston a032f24d58 Fix explicit working dir by "-workdir" argument.
Regression was introduced in ff84962148.

Fixes #4123.
2017-12-07 17:56:36 +04:00
John Preston 320105f201 Allow searching for '@' in the chats filter field.
Fixes #4121.
2017-12-07 17:43:06 +04:00
John Preston 54984efa0a Fix small files layout in Saved Messages.
Minimal message and media width are less because of the goto-button.
2017-12-07 17:43:05 +04:00
John Preston d57f5460b7 Use ShowForwardMessageBox in Info::Media. 2017-12-07 17:43:05 +04:00
John Preston 5bc47e5203 Move shareContact and readServerHistory to ApiWrap.
Also allow non-confirming contact info sharing to Saved Messages.
2017-12-07 17:43:05 +04:00
John Preston f0a03223e8 Share contact instantly to Saved Messages. 2017-12-07 12:56:10 +04:00
John Preston 007ab3b7b8 Fix crash in RSA public key wrapper. 2017-12-07 09:34:11 +04:00
Nicholas Guriev f813bb704f Optimize key initialization
* Do not do redundant copying of numbers.
2017-12-07 09:15:10 +04:00
Nicholas Guriev 93809ec404 Fix build against OpenSSL 1.1
Closes: #3196
2017-12-07 09:15:10 +04:00
Mike Zueff 64e9958585 Fixed awesome WM tray icon. 2017-12-07 09:11:39 +04:00
John Preston 067138f1bf Alpha version 1.1.27: Update lang phrases. 2017-12-06 20:00:31 +04:00
John Preston cfa88b840a Alpha 1.1.27: Fix build error. 2017-12-06 20:00:31 +04:00
John Preston 32f955404b Alpha version 1.1.27.
- Bookmark messages by forwarding them to "Saved Messages".
Access them from the Chats list or from the side menu.
2017-12-06 19:30:51 +04:00
John Preston ff84962148 Stop using current working directory on Windows.
Links generated by system sometimes have weird working directories,
like C:\Windows\system32. Stop trying to use current working folder
as a place for program data. Instead always try to use current exe
folder and if we were unable use app data folder.
2017-12-06 19:07:19 +04:00
John Preston 727f8aec13 Fix admin/creator status in megagroup members list. 2017-12-06 18:55:10 +04:00
John Preston d77afef8b0 Hide Share contact button in saved messages. 2017-12-06 18:41:37 +04:00
John Preston 775cede16f Use separate phrases for clearing saved messages. 2017-12-06 18:39:27 +04:00
John Preston c6d3fd883a Display right action button not too high. 2017-12-06 18:15:41 +04:00
John Preston 1473c14668 Forward messages to Saved Messages instantly. 2017-12-06 17:56:40 +04:00
John Preston 6764a3cc86 Replace SelectedItemSet with MessageIdsList.
Use vector<FullMsgId> everywhere instead QMap<..,HistoryItem*>.
The old way the app crashed in case some messages were deleted.
If the items are needed use HistoryItemsList=vector<HistoryItem*>.
2017-12-06 14:13:38 +04:00
John Preston 3845985a6b Fix third column appearing on window resize. 2017-12-06 11:05:34 +04:00
John Preston 76a716007c Closed beta 1.1.26.2. 2017-12-05 20:49:45 +04:00
John Preston 993877b0d4 Change main menu cloud icon to saved messages. 2017-12-05 20:48:03 +04:00
John Preston 8b3d203861 Display saved messages senders correctly. 2017-12-05 20:38:13 +04:00
John Preston 85d8273009 Implement correct saved messages history layout.
Forwarded info is displayed as a message author info (name/photo).
Outgoing messages without forwarded info are displayed as out().
Messages with save_from_ info have a button for GoToOriginal().
2017-12-05 20:14:28 +04:00
John Preston f8e094392f Fix ripple animation glitch in history top bar. 2017-12-05 20:14:15 +04:00
John Preston 46bafc2dcc Support Saved messages in chats list and forwards. 2017-12-05 18:07:01 +04:00
John Preston e4ce08e64e Show other shared media links in Saved Photos. 2017-12-05 16:23:08 +04:00
John Preston aebdc2fd94 Add custom userpic rendering for Saved Messages. 2017-12-05 15:50:32 +04:00
John Preston 1d85c8a6b6 API scheme updated to layer 73. 2017-12-05 12:44:27 +04:00
John Preston 5eeb8143b6 Move EmptyUserpic from data_peer to empty_userpic. 2017-12-05 12:44:27 +04:00
John Preston 68009b6fba Refactor userpic storage and access in PeerData. 2017-12-05 11:58:18 +04:00
John Preston 62568daffe Refactor NotifySettings in PeerData. 2017-12-04 21:48:45 +04:00
John Preston 116e3fd9c5 Fix admin stars disappearing in members list. 2017-12-04 16:08:43 +04:00
John Preston 76f951e3e6 Show members list in the third column. 2017-12-04 15:45:15 +04:00
John Preston 1a273702d3 Revert closed beta version. 2017-12-04 13:52:22 +04:00
John Preston 4678de0440 Closed beta 1.1.26.1. 2017-12-04 13:51:44 +04:00
John Preston e1c68892d4 Show third column only when explicitly requested.
This allows you to show info in layer from mention links.
2017-12-04 13:42:05 +04:00
John Preston 629c216a7f Fix storage size variables, use qint64.
Fixes #4110.
2017-12-03 20:51:31 +04:00
John Preston f3c8da4819 Request all admins when first opening a supergroup. 2017-12-03 20:43:42 +04:00
John Preston 9ba482f56f Fix crash in edit group info box. 2017-12-03 19:24:33 +04:00
John Preston 2a59802a16 Alpha version 1.1.26: Fix release script. 2017-12-02 18:57:13 +04:00
John Preston 8668d43032 Alpha version 1.1.26.
- Admin badges in supergroup messages.
- Fix crashing on launch in OS X 10.6.
- Bug fixes and other minor improvements.
2017-12-02 18:55:47 +04:00
John Preston d6f7cae024 Fix two crashes in OS X 10.6.
Disable rtl control chars (harfbuzz-ng crashes on them).
Disable creating state of not yet created top level windows.
2017-12-02 16:10:52 +04:00
John Preston 8391d43057 Use EditPeerInfoBox for editing groups.
This allows to edit group invite links.
Rename EditNameTitleBox to EditNameBox, used only from Settings.
2017-12-02 16:04:22 +04:00
John Preston da77c10f60 Hide three-dot peer menu when peer changes. 2017-12-02 15:11:01 +04:00
John Preston 301aa9572f Apply channel admin edition changes. 2017-12-02 15:07:27 +04:00
John Preston 675499df4d Fix render bug in single column layout. 2017-12-02 14:22:48 +04:00
John Preston 0a1165dac9 Remove locking in crash annotations.
We removed ffmpeg crash annotations so now all are from main thread.
2017-12-02 13:28:15 +04:00
John Preston a495de7cf8 Ask OpenAL to use kDefaultFrequency (48 kHz). 2017-12-02 13:27:32 +04:00
John Preston 2161858088 Fail resampling audio with inconsistent frames. 2017-12-02 12:58:52 +04:00
John Preston 001be82566 Add some more checks to file downloader. 2017-12-02 12:32:43 +04:00
John Preston 85b3d3f64d Display admin badges in supergroups.
Also prefer std containers to Qt and OrderedSet in data_peer.
2017-12-01 22:38:44 +04:00
John Preston 3bdce06e19 Use peer colors uniformly with mobile apps. 2017-12-01 14:21:40 +04:00
John Preston 36fe4ff327 Alpha version 1.1.25.
- Bug fixes and other minor improvements.
2017-11-30 22:34:57 +04:00
John Preston afd1548533 Attempt to fix a crash in touch event handlers. 2017-11-30 22:18:39 +04:00
John Preston 595af2c6d9 Rename weak(QObject*) to make_weak(QObject*). 2017-11-30 22:04:13 +04:00
John Preston 2bbf17b672 Fix t.me/share links.
Regression was introduced in ffc20e4492.

Fixes #4099.
2017-11-30 21:47:58 +04:00
John Preston 43570d1613 Check current chat before auto-closing it.
Close current chat only if it is the one being delete-and-exit'ed.
2017-11-30 21:35:35 +04:00
John Preston 2432845df2 Optimize and rename base::weak_unique_ptr.
Rename base::enable_weak_from_this -> base::has_weak_ptr.
Rename base::weak_unique_ptr -> base::weak_ptr.
Rename base::make_weak_unique -> base::make_weak.
Rename base/weak_unique_ptr.h -> base/weak_ptr.h
2017-11-30 21:33:27 +04:00
John Preston 0bf854bf18 Fix edit name button in Settings.
Regression was introduced in 703b944839.
2017-11-30 18:01:01 +04:00
John Preston a0c8d522ef Save window extension on layer->section migration.
If the third section is shown inside the existing window remember
it as a zero window extension or third section show. That way it
will hide correctly when it is closed by X button.

Partially fixes #4091.
2017-11-30 17:08:51 +04:00
John Preston c10588a7dc Merge group-supergroup history in jump-to-date.
Fixes #4094.
2017-11-30 16:50:13 +04:00
John Preston 13ab055fe0 Add debug information about crash in ffmpeg. 2017-11-30 15:41:15 +04:00
John Preston 2e972fb678 Hide "Delete for {user}" in chats with bots.
Fixes #3818.
2017-11-30 15:06:30 +04:00
John Preston 5b7059dccd Fix crash in shared media save state. 2017-11-30 12:15:21 +04:00
John Preston ad6ddcb507 Fix crash in selecting unsent messages.
Also add some more checks in file downloads and serialization.
2017-11-30 11:14:31 +04:00
John Preston 6994201d50 Fix travis and appveyor builds. 2017-11-29 22:33:16 +04:00
John Preston cc1df6a068 Alpha version 1.1.24.
- Radically improved navigation. New side panel on the right
with quick access to shared media and group members.
- Pinned Messages. If you are a channel admin, pin messages
to focus your subscribers' attention on important announcements.
- Also supported clearing history in supergroups and added
a host of minor improvements.
2017-11-29 19:10:03 +04:00
John Preston 88b1552229 Closed beta 1.1.23.12. 2017-11-29 00:01:18 +04:00
John Preston 41b143cb7e Fix and improve back navigation with three columns. 2017-11-29 00:01:04 +04:00
John Preston 196ff7f4c1 Don't apply count from getParticipants(Recent). 2017-11-28 22:30:01 +04:00
John Preston ff16897dde Improve supergroup members list reusability. 2017-11-28 20:20:05 +04:00
John Preston 300e55e610 Fix delete button in shared media selections. 2017-11-28 19:16:28 +04:00
John Preston f716041073 Closed beta 1.1.23.11. 2017-11-28 14:05:23 +04:00
John Preston a63abe5154 Add some more crash debug information. 2017-11-28 14:05:11 +04:00
John Preston c04991f707 Redesign round checkbox animations. 2017-11-28 00:54:31 +04:00
John Preston ddd57517df Fix text overflow in history top bar. 2017-11-27 19:09:26 +04:00
John Preston d014b47958 Move Info::TopBarOverride to Info::TopBar.
This allows to improve animations in shared media items selection.
2017-11-27 15:43:57 +04:00
John Preston 6afe18503d wip redesign info top bar 2017-11-26 21:05:52 +04:00
John Preston 837dac50fa Fix build for the original range-v3. 2017-11-26 18:20:22 +04:00
John Preston 6a4aa184f3 Closed beta 1.1.23.10. 2017-11-24 21:42:19 +04:00
John Preston 20c9280ada Add some more debug info for crashes. 2017-11-24 21:41:31 +04:00
John Preston fea122ae12 Handle PHONE_NUMBER_BANNED error in login. 2017-11-24 21:41:09 +04:00
John Preston 86c0205faa Handle USERS_TOO_FEW error in group creation. 2017-11-24 20:33:06 +04:00
John Preston 9f76be9d26 Elide 'Delete for {user}' checkbox text. 2017-11-24 20:28:14 +04:00
John Preston 7705696d54 Hide all PopupMenu when enabling local passcode. 2017-11-24 20:06:35 +04:00
John Preston bb7ab625c1 Fix channel admin rights checking. 2017-11-24 20:05:50 +04:00
John Preston da386f2c2e Update user status in Info::Profile cover. 2017-11-24 19:51:47 +04:00
John Preston 0ced28f991 Nice animations when selecting shared media items. 2017-11-24 19:47:09 +04:00
John Preston 9dc39cb758 Add slide animation to Info::TopBarOverride. 2017-11-24 18:12:39 +04:00
John Preston 9eacb11f3c Fix render lag in widgets resizeEvent()->show().
ScrollArea calls show() in ScrollBar::resizeEvent. If this event
handlers was called from SendPending...() you could set fake .._Shown
attribute on, call resizeEvent() and remove this attribute even if it
should not be removed already - after call to show().
2017-11-24 17:07:36 +04:00
John Preston 4b1d15f968 Closed beta 1.1.23.9. 2017-11-23 19:46:08 +04:00
John Preston 7395cc21b8 Update libtgvoip, opus to 1.2.1 and ffmpeg to 3.4. 2017-11-23 19:41:59 +04:00
John Preston efdba3a482 Handle errors in getMessages(). 2017-11-23 19:41:13 +04:00
John Preston 39428841e4 Improve selected shared media items layout.
Also fix night mode theme bug in report spam panel.
2017-11-23 18:58:00 +04:00
John Preston 981063596a Add nice scroll to the bottom of the Info layer. 2017-11-23 17:10:50 +04:00
John Preston 67d4eb688a Reverse user and chat profile photos. 2017-11-23 13:58:12 +04:00
John Preston da71938d18 Link libstdc++ statically in Updater.
This will allow running it on Ubuntu 12.04 when it was built on 14.04.
2017-11-23 09:29:58 +04:00
John Preston 2850d456d0 Closed beta 1.1.23.8: Test an upstream fix backport for macOS issue. 2017-11-22 21:53:10 +04:00
John Preston 5063a22155 Closed beta 1.1.23.8. 2017-11-22 18:03:00 +04:00
John Preston 98896ab5ac Fix crash in RpWidget::event() from alive().done() 2017-11-22 18:02:29 +04:00
John Preston 5913e6d187 Closed beta 1.1.23.7. 2017-11-22 15:11:41 +04:00
John Preston f477aea2a5 Add some more debug info for crashes. 2017-11-22 15:10:11 +04:00
John Preston 5803edb77b Add members from info to mgInfo->lastParticipants. 2017-11-22 13:56:00 +04:00
John Preston f6ba59ed14 Improve group stickers choose process.
Allow to choose from featured if used has no his own sets.
Allow to choose group sticker set from group info box.
2017-11-22 13:31:02 +04:00
John Preston 542ba89f25 Edit pre-history visibility in megagroups. 2017-11-22 12:04:45 +04:00
John Preston 2387b66e86 Allow supergroup members to clear history. 2017-11-22 12:04:24 +04:00
John Preston 75d8d01b17 Allow pinned messages in channels. 2017-11-21 18:27:48 +04:00
John Preston b337d54623 Use custom base::overload() helper. 2017-11-21 18:27:48 +04:00
John Preston 44e94bfbf5 Add workaround for macOS leaveEvent() bugs.
On macOS sometimes when mouse leaves the window we don't receive leaveEvent()
calls in the nested widgets, like buttons, only for the window itself.
2017-11-21 18:27:48 +04:00
John Preston d93c1ccbaa Improve compile time. 2017-11-21 14:20:52 +04:00
John Preston 6ca105a290 Minimal layer 72 support. 2017-11-20 23:54:05 +04:00
John Preston bccd801874 API scheme updated to layer 72. 2017-11-20 16:33:12 +04:00
John Preston eb8800f2d4 Replace $ with _ in rpl::mappers. 2017-11-20 16:32:55 +04:00
John Preston ac99318f34 Use ranges:: algorithms instead of base:: 2017-11-20 16:24:00 +04:00
John Preston bc7c88c511 Fix build in Xcode / GCC. 2017-11-19 20:31:58 +04:00
John Preston f1f955b7ac Pass already-members when adding members to channel. 2017-11-19 18:41:52 +04:00
John Preston 68bc8d0231 Add range-v3 library. 2017-11-19 18:37:07 +04:00
John Preston 04a1cff24a Fix wrong unread counter in history top bar. 2017-11-19 15:52:15 +04:00
John Preston de15da8a93 Improve info layer presentation. 2017-11-19 15:37:15 +04:00
John Preston 59938791ef Closed beta 1.1.23.6: Log crash info. 2017-11-18 00:04:22 +04:00
John Preston 3ef0bcc5d5 Closed beta 1.1.23.6. 2017-11-17 22:52:16 +04:00
John Preston 15d2ce150d Remove Send Message animation in !Wrap::Side 2017-11-17 21:02:49 +04:00
John Preston 33ae4b176a No shared media empty placeholders while loading. 2017-11-17 20:20:31 +04:00
John Preston 4aae4f9399 Show channel members inside Info as well. 2017-11-17 20:06:20 +04:00
John Preston fc4c31b673 Make members header a button. 2017-11-17 19:34:51 +04:00
John Preston 88d7f172ca Improve unread counter for HistoryTopBarWidget. 2017-11-17 18:54:01 +04:00
John Preston bef87c6dff Allow showing chat members in a special section. 2017-11-17 17:23:36 +04:00
John Preston 747ebd2136 Make links clickable in channel descriptions. 2017-11-17 11:42:53 +04:00
John Preston 41873412e7 Fix crash and improve info navigation. 2017-11-17 11:33:20 +04:00
John Preston 0811190527 Closed beta 1.1.23.5: Fix build for Xcode and GCC. 2017-11-17 11:09:43 +04:00
John Preston 0a5ba3490d Closed beta 1.1.23.5. 2017-11-16 21:20:27 +04:00
John Preston 55616a4d1b Inject active peer profile on the stack bottom.
Always have active peer profile on the bottom of third column stack.
2017-11-16 21:19:41 +04:00
John Preston c872cd76e1 Improve window extension by third column. 2017-11-16 20:43:52 +04:00
John Preston cf977cb41a Improve history -> profile top bar navigation. 2017-11-16 19:24:01 +04:00
John Preston 903aa46e5c Disable tabs in third column info. 2017-11-16 13:13:17 +04:00
John Preston 131efa11be Various fixes. 2017-11-16 11:45:55 +04:00
John Preston 5a159d0204 Improve string encoding. 2017-11-16 07:59:12 +04:00
John Preston 7fdeab829f Paint native title instead of using custom. 2017-11-16 07:59:12 +04:00
John Preston 4e1b94d37d Allow 3 photo/video in the minimal third column. 2017-11-16 07:59:12 +04:00
John Preston 388d743d29 Add confirmation on leaving group/channel. 2017-11-16 07:59:12 +04:00
John Preston 8dfccf55d1 Add shared media empty placeholders. 2017-11-16 07:59:12 +04:00
John Preston fafcd02e7c Improve Emoji / GIFs list variable width support. 2017-11-16 07:59:12 +04:00
John Preston defa0ae4d0 Improve stickers list variable width support. 2017-11-16 07:59:12 +04:00
John Preston 7db80d20f1 Closed beta 1.1.23.4. 2017-11-16 07:59:12 +04:00
John Preston a86788f4d7 Improve info section navigation.
Also fix render glitch in StickersListWidget.
2017-11-16 07:59:12 +04:00
John Preston aecc119bac Add fast chat photo upload to info profile. 2017-11-16 07:59:11 +04:00
John Preston 8dd3f24285 Replace Profile::UserpicButton with one from Ui:: 2017-11-16 07:59:11 +04:00
John Preston 830c6a4894 Replace PeerAvatarButton with UserpicButton. 2017-11-16 07:59:11 +04:00
John Preston 3d37ac9235 Replace NewAvatarButton with UserpicButton.
This new control should also replace PeerAvatarButton and
Profile::UserpicButton and deliver all the best of those three.
2017-11-16 07:59:11 +04:00
John Preston 3deea14559 Remove old shared media overview section.
Also move window/top_bar_widget to history/history_top_bar_widget.
2017-11-16 07:59:11 +04:00
John Preston 534b578598 Fix crash when switching two columns at once. 2017-11-16 07:59:11 +04:00
John Preston 8355722f4e Closed beta 1.1.23.3. 2017-11-16 07:59:11 +04:00
John Preston 866ff628b7 Fix render bug, enable wide third column. 2017-11-16 07:59:11 +04:00
John Preston fe9630bb20 Allow to resize third column. 2017-11-16 07:59:11 +04:00
John Preston bca9b3ca3f Extract a reusable Ui::ResizeArea class. 2017-11-16 07:59:11 +04:00
John Preston 3a25313e61 Fix restoring shared media state. 2017-11-16 07:59:11 +04:00
John Preston fc66550a32 Support variable width tabs slider. 2017-11-16 07:59:11 +04:00
John Preston 0255d0c59e Support any size in the tabbed selector. 2017-11-16 07:59:10 +04:00
John Preston 5c12b0e5fa Use /permissive- flag for Visual Studio builds. 2017-11-16 07:59:10 +04:00
John Preston aa160e775c Fix huge CPU consumption in the group info profile. 2017-11-16 07:59:10 +04:00
John Preston d3c152022c Closed beta 1.1.23.2 2017-11-16 07:59:10 +04:00
John Preston dbb011fc56 Add members link in info for channel admins. 2017-11-16 07:59:10 +04:00
John Preston a6df928d45 Improve copy of info profile phrases. 2017-11-16 07:59:10 +04:00
John Preston dd3ae22e08 Save data from EditPeerInfoBox. 2017-11-16 07:59:10 +04:00
John Preston 8ff0120642 Add EditPeerInfoBox without saving. 2017-11-16 07:59:10 +04:00
John Preston 3998fad7ef Add manage supergroup / channel box. 2017-11-16 07:59:10 +04:00
John Preston 7f8cdf85d5 Grow history stack following joinchat links. 2017-11-16 07:59:10 +04:00
John Preston 1871425b2d Add 'X' and admin star in group info members. 2017-11-16 07:59:10 +04:00
John Preston 5f0ba48309 Add top bar menu and notifications toggle. 2017-11-16 07:59:10 +04:00
John Preston 9743dc1ffb Add some more actions to three dot menu. 2017-11-16 07:59:10 +04:00
John Preston fcf2b9d1a7 Add some more actions to info profile. 2017-11-16 07:59:10 +04:00
John Preston 9f37820901 Add bot Help and Settings buttons in info. 2017-11-16 07:59:09 +04:00
John Preston 4295a823c6 Improve bot About section in info profile. 2017-11-16 07:59:09 +04:00
John Preston 8191ebfc49 Improve peer context menu for info. 2017-11-16 07:59:09 +04:00
John Preston 3fe12f1249 Display verified badge in the info. 2017-11-16 07:59:09 +04:00
John Preston 230c83d218 Follow group->supergroup migration in info. 2017-11-16 07:59:09 +04:00
John Preston 11a3308cf5 Scroll to field on search query update. 2017-11-16 07:59:09 +04:00
John Preston 3992ff6b59 Switch add member and search members buttons. 2017-11-16 07:59:09 +04:00
John Preston a05c7a815a Fix animation lag in info layer wrap. 2017-11-16 07:59:09 +04:00
John Preston a7807420fa Fix animation lag in shared media. 2017-11-16 07:59:09 +04:00
John Preston 47a52b0587 Moved several modules from history/ to data/. 2017-11-16 07:59:09 +04:00
John Preston d67a8a4708 Fix edit bio in Settings. 2017-11-16 07:59:09 +04:00
John Preston 9c01bbca95 Fix invoice amount display. 2017-11-16 07:59:09 +04:00
John Preston 554eb3a342 Move stickers state variables to AuthSessionData.
Also allow to click on the selected set when choosing megagroup
sticker set and allow to paste a t.me link to the set there.
2017-11-16 07:59:09 +04:00
John Preston 9a56b2d20f Move dialogsWidthRatio to AuthSessionData. 2017-11-16 07:59:09 +04:00
John Preston 4771ea7cd4 Display "{from}:" in global search results.
Regression was introduced in c09fbcfeb3.
2017-11-16 07:59:09 +04:00
John Preston aec496d520 Remove RTL Override symbols from filenames. 2017-11-16 07:59:09 +04:00
John Preston cb5c59c86c Fix build and crash in Xcode. 2017-11-16 07:59:09 +04:00
John Preston 628c8e10f7 Search and save state in common groups. 2017-11-16 07:59:09 +04:00
John Preston a6361d6221 Move common_groups info module. 2017-11-16 07:59:08 +04:00
John Preston 39c5898fa4 Save media search state to memento. 2017-11-16 07:59:08 +04:00
John Preston 09d1e3629a Add media search to all info modes. 2017-11-16 07:59:08 +04:00
John Preston 86ad15612a Use Info::Controller for the whole info section. 2017-11-16 07:59:08 +04:00
John Preston c9152b0b3a Cache media search results until empty query. 2017-11-16 07:59:08 +04:00
John Preston eb2719fad1 Added search to files and links shared media. 2017-11-16 07:59:08 +04:00
John Preston a27edcad1c Extract SparseIdsList module from SharedMedia.
This way it can be reused in search results management.
2017-11-16 07:59:08 +04:00
John Preston 15cc4502b4 Save scroll top state to media memento. 2017-11-16 07:59:08 +04:00
John Preston f6ed3dff7f Rewrite base::lambda_guard, use only one pointer.
Support base::enable_weak_from_this for guarding, not only QObject,
in base::lambda_guard, in App::CallDelayed and in App::LambdaDelayed.

Allow only one guarding pointer, no places in code use more than one.
2017-11-16 07:59:08 +04:00
John Preston 101d4f6444 Use std::function for base::lambda implementation.
base::lambda becomes just std::function and base::lambda_once becomes
base::unique_function - a move-only wrapper around std::function.

This is required because Visual C++ 2017 15.4.1 has a compiler bug
with static member variables of class templates, they may collide.

The std::function uses inheritance and virtual functions instead of
custom vtables done by static members of class templates used in
custom base::lambda implementation, so they work fine.
2017-11-16 07:59:08 +04:00
John Preston fde3ff1bbf Simplify rpl::consumer. 2017-11-16 07:59:08 +04:00
John Preston 53de44f272 Clear selection after forward in info shared media. 2017-11-16 07:59:08 +04:00
John Preston f5c5c32d1d Add context menu to info shared media. 2017-11-16 07:59:08 +04:00
John Preston 9a988d89e3 Remove std::any dependency (for now).
Xcode 9 still doesn't have std::any :(
2017-11-16 07:59:08 +04:00
John Preston b51f865c54 Save info members list state to memento. 2017-11-16 07:59:08 +04:00
John Preston fb46c33d7f Add context menu support to info members list. 2017-11-16 07:59:07 +04:00
John Preston 856ca22aad Display online count in the info profile section. 2017-11-16 07:59:07 +04:00
John Preston 508fa14385 Workaround render glitches on new MacBooks.
For unknown reason large windows have bad render glitches in High Sierra.
Forcing of OpenGL composition (by adding a fake child QOpenGLWidget) fixes it.
2017-11-16 07:59:07 +04:00
John Preston 5b190c5098 Preserve TopBarOverride in Info WrapWidget.
Also support better selection in info shared media.
Also fix build for Xcode.
2017-11-16 07:59:07 +04:00
John Preston 6b5e06de50 Removed collapsing of shared media. 2017-11-16 07:59:07 +04:00
John Preston be5f4c9a71 Allow delete / forward selected in shared media.
Also use PeerListBox with a chats list with global search controller
instead of HistoryHider for forward / share contact.
2017-11-16 07:59:07 +04:00
John Preston 7b69282c7e Add rpl::merge(). 2017-11-16 07:59:07 +04:00
John Preston 54cc3e6315 Shared media multiple items selection. 2017-11-16 07:59:07 +04:00
John Preston 66146c382d Improve paths for Xcode build. 2017-11-16 07:59:07 +04:00
John Preston 989f0cc683 Fix build in Xcode. 2017-11-16 07:59:07 +04:00
John Preston e02d209e6f Fix build with GCC. 2017-11-16 07:59:07 +04:00
John Preston 6445c0563e Fix reading from freed memory in rpl::take(). 2017-11-16 07:59:07 +04:00
John Preston 583b0fa778 Display common groups in Info profiles. 2017-11-16 07:59:07 +04:00
John Preston fee517384c Disable round videos in shared media for now. 2017-11-16 07:59:07 +04:00
John Preston aa260d263b Don't forget current item in MediaView. 2017-11-16 07:59:07 +04:00
John Preston a08dd1f6e1 Fix build for macOS. 2017-11-16 07:59:06 +04:00
John Preston f107866b42 Add basic click handler support to info shared media. 2017-11-16 07:59:06 +04:00
John Preston 7f3c97fb01 Add info media preloading to both sides. 2017-11-16 07:59:06 +04:00
John Preston 65cc4d3fbc Support item repaint in Info media overview. 2017-11-16 07:59:06 +04:00
John Preston fdd89d65ca Allow using custom comparators in flat_[map|set]. 2017-11-16 07:59:06 +04:00
John Preston ecbc0ae57e Show info media overview using Overview::Layout. 2017-11-16 07:59:06 +04:00
John Preston 7905694b31 Add tabs and other types links to Info::Media. 2017-11-16 07:59:06 +04:00
John Preston 335704e176 Fix layer resize animation glitches. 2017-11-16 07:59:06 +04:00
John Preston c0bb8a8af7 Return third section when returning in main section. 2017-11-16 07:59:06 +04:00
John Preston 76b8078bd9 Save section expand state in Info memento. 2017-11-16 07:59:06 +04:00
John Preston c6c75a1980 Animate Info-to-Info transitions. 2017-11-16 07:59:06 +04:00
John Preston 93c15e5ee6 Use internal section stack in Info::WrapWidget. 2017-11-16 07:59:06 +04:00
John Preston 525cde3498 Use make_state for flatten_latest(). 2017-11-16 07:59:06 +04:00
John Preston c4d33f9986 Add rpl::take(count). 2017-11-16 07:59:06 +04:00
John Preston f0ad78d808 Change *[Fast|Animated] to anim::type in SlideWrap. 2017-11-16 07:59:06 +04:00
John Preston 83850d9b86 Change *[Fast|Animated] to anim::type in FadeWrap. 2017-11-16 07:59:06 +04:00
John Preston 0c4bda71fd Remove some unused / rare phrases. 2017-11-16 07:59:05 +04:00
John Preston d1687ab963 Improve info wrapping in section / layer.
Also move layerwidget to window/layer_widget.
Also replace ui/effects/widget_fade_wrap with ui/wrap/fade_wrap.
2017-11-16 07:59:05 +04:00
John Preston ea0f6b9a12 Use 'if constexpr ()' instead of tag dispatch. 2017-11-16 07:59:05 +04:00
John Preston 5cc7cb1d85 Allow empty arg list in rpl next/error handlers. 2017-11-16 07:59:05 +04:00
John Preston 21b1ba1f88 Move build to Ubuntu 14.04 and GCC 7.2.
To be able to run on the same distributions as before we need to have
the same GLIBC version dependency as in Ubuntu 12.04, which is 2.15.

For that we need to remove all usages of GLIBC features from 2.16 and above.
Currently there are three methods used, so they're wrapped in a separate
static library, linux_glibc_wraps.

It is a separate library because it must be compiled without '-flto' flag,
otherwise the inline __asm__ is not working and we get unresolved symbols.
2017-11-16 07:59:05 +04:00
John Preston 1cd126d728 Disable not type-erased consumers on GCC. 2017-11-16 07:59:05 +04:00
John Preston 6861059d18 Fix build for old OS X with Qt 5.3.2 2017-11-16 07:59:05 +04:00
John Preston 80d9938e96 Support and use not type-erased consumers. 2017-11-16 07:59:05 +04:00
John Preston fddcdf359b Use not type-erased producers in code. 2017-11-16 07:59:05 +04:00
John Preston cdda7f8f9a Allow not type-erased producers. 2017-11-16 07:59:05 +04:00
John Preston 086e46c162 Add and use only rpl::start_with_*() methods. 2017-11-16 07:59:05 +04:00
John Preston ed061252a5 Move to Xcode 9.0 and fix errors in Clang build. 2017-11-16 07:59:05 +04:00
John Preston 7c4e4d7fa2 Closed beta 1.1.23.1. 2017-11-16 07:59:05 +04:00
John Preston 4180ed09a5 Add user actions to info profile. 2017-11-16 07:59:05 +04:00
John Preston f50bf0b97f Show old overview / common groups for now. 2017-11-16 07:59:05 +04:00
John Preston 2c75b4836d Improve sorting by online in info profile. 2017-11-16 07:59:05 +04:00
John Preston 292e57ffc7 Use PeerListBox content in info profile. 2017-11-16 07:59:04 +04:00
John Preston 1a0e524b49 Optimize third column (create it only once).
Before historyPeer and historyPeerCanWrite were independent, so we
created a new Info section for both of them changing.

Now we use Data::CanWriteValue(peer) and rpl::flatten_latest().
2017-11-16 07:59:04 +04:00
John Preston ffc20e4492 Divide structs into several data/ modules. 2017-11-16 07:59:04 +04:00
John Preston f2a5862714 Add members list to info profile. 2017-11-16 07:59:04 +04:00
John Preston faeb1483f2 Divide info_profile_lines in different modules. 2017-11-16 07:59:04 +04:00
John Preston a4c2138e74 Finalize move of info-profile modules. 2017-11-16 07:59:04 +04:00
John Preston 1c5d410373 Move info-profile modules to info/profile/
Next commit fixes the build.
2017-11-16 07:59:04 +04:00
John Preston b9fb9af74f Info shared media and common groups counters. 2017-11-16 07:59:04 +04:00
John Preston 812dcb5e8d Update styles to match the design. 2017-11-16 07:59:04 +04:00
John Preston 703b944839 Return FlatLabel.margins in getMargins(). 2017-11-16 07:59:04 +04:00
John Preston e1ba9f8ff8 Hide send message in Info for current chat. 2017-11-16 07:59:04 +04:00
John Preston 3db696d52f Add rpl::combine_previous() operator. 2017-11-16 07:59:04 +04:00
John Preston 6d0dbebda9 Fix tabbed selector section / panel exchange. 2017-11-16 07:59:04 +04:00
John Preston f4d9618487 Improve layer / section exchange for Info. 2017-11-16 07:59:04 +04:00
John Preston b7077eb71d Enable third column info by default. 2017-11-16 07:59:03 +04:00
John Preston 1a4d326abb Show Info if writing is forbidden. 2017-11-16 07:59:03 +04:00
John Preston 48cbdd9d40 Don't toggle tabbed section from OneColumn. 2017-11-16 07:59:03 +04:00
John Preston 26532ab9b4 Fix small chats list column bug with boxes. 2017-11-16 07:59:03 +04:00
John Preston c0e780a28f Allow small dialogs list with three columns. 2017-11-16 07:59:03 +04:00
John Preston 5c4daeee4c Add rpl::variable, improve filter / combine. 2017-11-16 07:59:03 +04:00
John Preston 1c5abaa518 Remove mutex locks from rpl for now. 2017-11-16 07:59:03 +04:00
John Preston 5586d231de Switch Info between columns and layer. 2017-11-16 07:59:03 +04:00
John Preston 3fbb643d51 GCC bug workaround.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67274
2017-11-16 07:59:03 +04:00
John Preston 766e7dadb1 Use improved rpl::start(). 2017-11-16 07:59:03 +04:00
John Preston ee9763c98f Improve rpl::combine() and rpl::start(). 2017-11-16 07:59:03 +04:00
John Preston 5e7aa4ff81 Move third column from HistoryWidget to MainWidget. 2017-11-16 07:59:03 +04:00
John Preston f162462111 Move info between Layer and Narrow wrap. 2017-11-16 07:59:03 +04:00
John Preston 088d23d557 Start new Info section (profile + shared media). 2017-11-16 07:59:02 +04:00
John Preston fbcd5e2f1e Try to use const-ref better in rpl. 2017-11-16 07:59:02 +04:00
John Preston c302219f9e Use rpl in some widgets and effects. 2017-11-16 07:59:02 +04:00
John Preston 21d136e224 myEnsureResized() now forces recursive create. 2017-11-16 07:59:02 +04:00
John Preston 487ddb5694 Add some rpl operators. 2017-11-16 07:59:02 +04:00
John Preston 873ccf8096 Implement SharedMediaWithLastViewer using rpl. 2017-11-16 07:59:02 +04:00
John Preston 696478843e Implement UserPhotosViewer using rpl. 2017-11-16 07:59:02 +04:00
John Preston 2690618da2 Add Storage::UserPhotos and UserPhotosSlice. 2017-11-16 07:59:02 +04:00
John Preston 68a0e32a3d Add SharedMediaSliceWithLast for chat photos. 2017-11-16 07:59:02 +04:00
John Preston 449986456e Add SharedMediaSliceMerged for migrated histories. 2017-11-16 07:59:02 +04:00
John Preston 2363a6bd44 Add SharedMediaSlice to observe shared media.
Start testing / using it in MediaView.
2017-11-16 07:59:02 +04:00
John Preston 41ed2d1b84 New storage for shared media messages index. 2017-11-16 07:59:02 +04:00
John Preston b873fee1cf Use rvalue references in rpl next / error. 2017-11-16 07:59:01 +04:00
John Preston e70052e966 Add piping and on_next, on_error, on_done, start. 2017-11-16 07:59:01 +04:00
John Preston 101fdb1fba Add event_stream for events with many consumers. 2017-11-16 07:59:01 +04:00
John Preston ebe4bbbf0f Add core rpl::producer/consumer implementation. 2017-11-16 07:59:01 +04:00
John Preston 1c8db1e2e9 Fix travis build for the latest ffmpeg code. 2017-11-13 13:55:11 +04:00
John Preston d46a5f693f Remove unused lang phrases and some code. 2017-09-28 19:18:27 +03:00
eegorov 8bfe407610 New build option: without GTK and appindicator
Signed-off-by: Egor Y. Egorov <egor.y.egorov@gmail.com> (github: eegorov)
2017-09-28 18:32:51 +03:00
visuve 08e3a54a58 Mark missing ctors deleted
- Satisfy the rule of five

Signed-off-by: Veli-Matti Visuri <veli-matti.visuri@cerescon.fi> (github: visuve)
2017-09-28 18:23:42 +03:00
visuve 8c92f42de3 Fix uninitialized values
- Use C++11 default member initializers

Signed-off-by: Veli-Matti Visuri <veli-matti.visuri@cerescon.fi> (github: visuve)
2017-09-28 18:23:42 +03:00
Alexander GQ Gerasiov 07106897a6 Fix CVE-2016-10351: Insecure cWorkingDir permissions.
Set 700 permisson on dir on every start.

Signed-off-by: Alexander GQ Gerasiov <gq@cs.msu.su>
2017-09-28 18:19:27 +03:00
Jan Niklas Hasse e42cc02d0e Prefer AppIndicator if DBus interface is available
Starting with Ubuntu 17.10 the interface will be provided by an
extension (shipped by default):

https://github.com/ubuntu/gnome-shell-extension-appindicator

Legacy tray icons have been completely removed in GNOME 3.26. By
checking the interface, this will allow users of other distributions
with GNOME to also use Telegram's indicator with the extension.

Signed-off-by: Jan Niklas Hasse <jhasse@bixense.com> (github: jhasse)
2017-09-28 12:59:46 +03:00
Yonsh Lin 11a46a1072 Fix IME being interrupted after reconnection
Signed-off-by: Yonsh Lin <yonsh@live.com> (github: yonsh)
2017-09-28 12:57:25 +03:00
John Preston b8d1b8d6c1 Update build docs for VS 2017.
Closes #3117. Closes #3729.
2017-09-06 17:11:30 +03:00
John Preston 7ae1ef0a1a Migrate to VS2017. 2017-09-06 17:11:06 +03:00
John Preston 13aa42c883 Use GYP rule for Qt MOC only on Telegram project. 2017-09-06 12:12:04 +03:00
John Preston aca957595a Version 1.1.23.
- See the message author photo and name
while searching specific chat messages.
- Fix "Send To" menu action on Windows.
2017-09-05 20:38:38 +03:00
John Preston c09fbcfeb3 Display author photo / name in search results. 2017-09-05 20:21:56 +03:00
John Preston def97b3f70 Update faved sticker / saved GIF remove button. 2017-09-05 19:34:36 +03:00
John Preston da373e3334 Update emoji / sticker icons. 2017-09-05 17:44:14 +03:00
John Preston 28a0402253 Fix command line parsing. 2017-09-05 17:38:40 +03:00
John Preston a09fa1b267 Fix sending files from "Send To" in Windows.
Regression was introduced in 8e433971c9.
2017-09-05 16:45:58 +03:00
John Preston 917be105ac Version 1.1.22: Faved stickers limit is 5 right now. 2017-09-04 16:29:35 +03:00
John Preston 710f9d049f Version 1.1.22.
- Bug fixes and other minor improvements.
2017-09-04 15:34:40 +03:00
John Preston 34a43fc62f Update langs. 2017-09-04 15:34:11 +03:00
John Preston 5e77fe8412 Don't display admin stars if admins are disabled. 2017-09-04 15:21:54 +03:00
John Preston 52195ff95a Fix saving chat admins.
Regression was introduced in 0880c01a20.
2017-09-04 15:21:53 +03:00
John Preston 5b77bd5aa0 Limit maximum IP length in case of corrupted data. 2017-09-04 15:21:52 +03:00
John Preston fbf8cd04b5 Fix travis build.
Regression was introduced in 5faca8d4f6.

GYP patch for GCC precompiled header support was accidentally removed.
2017-09-04 14:30:33 +03:00
John Preston 1effaa4e03 Version 1.1.21.
- Bug fixes and other minor improvements.
2017-09-03 23:41:04 +03:00
John Preston 66c94515f3 Fix crash in setting group sticker set. 2017-09-03 22:50:16 +03:00
John Preston c2a1cc2ae8 Fix crash in contacts list box global search.
Regression was introduced in f7359093b4.
2017-09-03 22:50:16 +03:00
John Preston ad41a81b66 Fix window size reset on every launch.
Regression was introduced in b08732cf28.

In MediaView constructor a call to setWindowState(WindowFullScreen)
invokes QWindowSystemInterface::flushWindowSystemEvents() which then
delivers some delayed system window resize event for the main window,
resetting its size to something default.
2017-09-03 22:50:15 +03:00
John Preston 2e374e68c5 Fix working with layers.
Regression was introduced in df64c97.

New base::flags work correctly only if all mutually exclusive flag
values use mutually exclusive bits (a & b == 0 for exclusive (a, b)).

Closes #3856.
2017-09-03 22:49:33 +03:00
John Preston 8f82880b93 Version 1.1.20.
- Groups with unread mentions and replies are now marked
with an '@' badge in the chats list.
- Navigate new mentions and replies in a group
using the new '@' button.
- Mark your stickers as “favorite” to quickly access them
from the redesigned sticker panel.
- Add an official sticker set for your group which all members will
be able to use while chatting in your group (100+ member groups only)
2017-09-03 19:23:50 +03:00
John Preston cd8d73c7ad Langs updated. 2017-09-03 19:14:47 +03:00
John Preston c76389e126 Allow to use base::lambda independently. 2017-09-03 15:45:49 +03:00
John Preston 76489a7885 Fix stack overflow in passcode lock check.
A regression was introduced in e209737b1a.

We call MainWindow::doWeReadMentions() in the history paintEvent,
that calls Auth().checkAutoLock() and may start passcode locking.

Passcode locking starts animation and grabs the window content,
calling history paintEvent() which leads to deadlock.

Now we call Auth().checkAutoLock() asyncronously.
2017-09-03 15:45:48 +03:00
John Preston df64c972d8 Replace QFlags with base::flags. 2017-09-03 15:45:47 +03:00
John Preston a1344e862a Add base/flags for bit flags on scoped enums. 2017-09-03 15:45:46 +03:00
John Preston 5faca8d4f6 Add Catch unittest framework and some tests. 2017-09-03 15:45:45 +03:00
John Preston 48e2a5472e Return not_null<History*> in App::history(). 2017-09-03 15:45:43 +03:00
John Preston 5a20014b1a Highlight all mentions when marking them read. 2017-08-30 19:15:53 +03:00
John Preston 20efa47126 Fix layout for the log entries of caption edits. 2017-08-30 19:15:52 +03:00
John Preston 5a1d52f82e Fix unread mentions navigation issues.
When the unread bar was destroyed we first jumped to the bottom
of the history by updateHistoryGeometry() and only after that
animated scroll to the desired message started. The last messages
were always painted (and marked as read) in that case.
2017-08-30 19:15:51 +03:00
John Preston 4c604b34c1 Allow service messages to be unread mentions. 2017-08-30 19:15:50 +03:00
John Preston ee5c827f26 Closed beta 1.1.19.3. 2017-08-30 19:15:49 +03:00
John Preston 643bedd4cf Display faved stickers before recently used. 2017-08-30 19:15:48 +03:00
John Preston af165115f8 Fix media caption line breaks in MediaView. 2017-08-30 19:15:48 +03:00
John Preston 5964261db5 Allow to view sticker set from admin event log. 2017-08-30 19:15:47 +03:00
John Preston d4814c5cb0 Display only mention badge if one unread message. 2017-08-30 19:15:46 +03:00
John Preston a8df4453ff Fix cancel search in peer ripple painting. 2017-08-30 19:15:45 +03:00
John Preston 638d64d6f2 Closed beta 1.1.19.2. 2017-08-30 19:15:44 +03:00
John Preston c97227825f Send images as files if no way to send as photos.
Fixes #3710.
2017-08-30 19:15:44 +03:00
John Preston 25ffaaaa2d Replace t_assert() with Assert().
Also use this assertions for Expects(), Ensures() and Unexpected().
2017-08-30 19:15:42 +03:00
John Preston b3da99c302 Replace gsl::not_null<T*> with just not_null<T*>. 2017-08-30 19:15:41 +03:00
John Preston cc4023d26a Improve unread mentions badge layout. 2017-08-30 19:15:39 +03:00
John Preston ca15fa3a97 Use sync notifications for name changes.
Search index updates must be sync or it may use new values twice.
2017-08-30 19:15:38 +03:00
John Preston 67bdb4cec8 Closed beta 1.1.19.1. 2017-08-30 19:15:37 +03:00
John Preston e13ed9b909 Remove main()->peerUpdated and some other signals. 2017-08-30 19:15:36 +03:00
John Preston 8e433971c9 Improve current executable path computing.
Fixes #960 (hopefully).
2017-08-30 19:15:35 +03:00
John Preston f2801d4775 Fix possible crash in file download after error.
Regression was introduced in 2fa2fa41c5.

In file download failed handler we suggest to try to load the file
once again to the same location. After some changes we started to
forget filename before failed handler. That resulted in large files
loading to memory instead of hard drive.

Add a precondition in FileLoader to prevent such bugs in the future.
2017-08-30 19:15:34 +03:00
John Preston 6cedf20c39 Remove old crash debug information. 2017-08-30 19:15:33 +03:00
John Preston 7df63db9b3 Hide "Ban Users" admin rights changes in channels. 2017-08-30 19:15:32 +03:00
John Preston 0303f18ac6 Fix check for _mouseSelection flag in dialogs.
Fixes #3781.
2017-08-30 19:15:32 +03:00
John Preston 81fb32504b Apply faved stickers limit when faving. 2017-08-30 19:15:31 +03:00
John Preston a72453fb1b Remove ContactsBox and contacts_box module. 2017-08-30 19:15:30 +03:00
John Preston b816d33d48 Replace add bot to group box with PeerListBox. 2017-08-30 19:15:29 +03:00
John Preston 782114d644 Add and use base::make_weak_unique() helper. 2017-08-30 19:15:28 +03:00
John Preston 0880c01a20 Replace group admins ContactsBox with PeerListBox. 2017-08-30 19:15:28 +03:00
John Preston f7359093b4 Replace ContactsBox with PeerListBox in two cases.
- View contacts list in PeerListBox.
- Add participants when creating group / channel in PeerListBox.
2017-08-30 19:15:27 +03:00
John Preston 17cef93ac0 Use gsl::finally() instead of base::scope_guard(). 2017-08-30 19:15:26 +03:00
John Preston 012d59ab42 Use nullptr instead of std::unique_ptr<Type>(). 2017-08-30 19:15:25 +03:00
John Preston 0bea2620b5 Replace BoxContent::closeHook() with boxClosing. 2017-08-30 19:15:24 +03:00
John Preston 95af8da66a Call correct destructor in base::Observable.
base::Subscription::Node doesn't have a virtual destructor.
2017-08-30 19:15:23 +03:00
John Preston 71e0e6ac4d Mark history as read at the bottom in any case. 2017-08-30 19:15:22 +03:00
John Preston bca444b92e Add base::optional as a wrapper of base::variant. 2017-08-30 19:15:21 +03:00
John Preston ae1dacb7d7 Add base/algorithm for range-based algorithms. 2017-08-30 19:15:21 +03:00
John Preston e209737b1a Display and follow unread mentions in history. 2017-08-30 19:15:13 +03:00
John Preston 7ad21ff713 Move std and gsl includes to precompiled header. 2017-08-25 14:39:33 +03:00
John Preston c8810f87b9 Move a lot of code from scheme.h to scheme.cpp. 2017-08-25 14:39:32 +03:00
John Preston 1207ddb2ea Add flat_map and flat_set using std::deque. 2017-08-25 14:39:31 +03:00
John Preston edbc3f8fde Use QDataStream directly on QByteArray. 2017-08-25 14:39:30 +03:00
John Preston dd9d604966 Fix incorrect scroll jumps.
If we invoke showHistory(h, msgId) several times we call
forgetScrollState() for this history being on the same scroll place.

To compute it again we need to call visibleAreaUpdated() even if
the real scroll position was not changed.
2017-08-25 14:39:29 +03:00
John Preston 65d81f96f3 Remove some App::wnd() occurences. 2017-08-25 14:39:28 +03:00
John Preston b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +03:00
John Preston fa818407e6 Improve group sticker set setup box. 2017-08-25 14:39:25 +03:00
John Preston 7f5a91d2bb Allow to hide empty megagroup sticker set. 2017-08-25 14:39:24 +03:00
John Preston 25f18c0c3a Allow to fave stickers from deleted sticker packs. 2017-08-25 14:39:23 +03:00
John Preston 472a714ef1 Apply faved stickers limit when faving a new one. 2017-08-25 14:39:22 +03:00
John Preston 9b01621791 Add height for checkbox/radiobutton ripple effect. 2017-08-25 14:39:20 +03:00
John Preston f04b25ea26 Allow setting group stickers set. 2017-08-25 14:39:19 +03:00
John Preston ab35829358 Remove App::app(), App::uploader(), App::api().
Also use Auth() instead of AuthSession::Current*().
2017-08-25 14:39:18 +03:00
John Preston 417f5684dc Add ability to disable animations. 2017-08-25 14:39:16 +03:00
John Preston a143505fd6 Remove lambda_slot() and lambda_slot_once(). 2017-08-25 14:39:15 +03:00
John Preston cb5b6d0cb8 Add megagroup stickerset to StickersListWidget. 2017-08-25 14:39:13 +03:00
John Preston d44b303fb3 Suggest faved stickers by emoji.
Request added faved sticker emoji if its pack is not loaded yet.
2017-08-25 14:39:12 +03:00
John Preston 8188724920 Remove faved stickers from StickersListWidget. 2017-08-25 14:39:11 +03:00
John Preston 070456882e Manage faved stickers from sticker context menu. 2017-08-25 14:39:09 +03:00
John Preston 134bc13169 Show faved stickers in StickersListWidget. 2017-08-25 14:39:07 +03:00
John Preston 667eb288d7 Add faved stickers set loading and saving.
Also move stickers loading methods to ApiWrap.
2017-08-25 12:58:13 +03:00
John Preston b0cc61c621 API scheme updated to layer 71. 2017-08-25 12:58:12 +03:00
John Preston 99afa1196c Improve search in peer / search from user design. 2017-08-25 12:58:11 +03:00
John Preston 0a6535ea94 Show "choose from user" box when typing "from:". 2017-08-25 12:58:10 +03:00
John Preston ce51abd9d0 Change dialogs filter text area for two icons. 2017-08-25 12:58:09 +03:00
Nicholas Guriev a2c93bc040 Fix updates of mute status in context menu of dialog list
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru>
2017-08-25 12:56:50 +03:00
nyuszika7h 31b460fe46 Improve multiple people typing/playing message
This is consistent with the Android version, and is more clear.

Also, in languages that use singular for all numbers, it avoids
confusion between "3 people are typing" and "a person named '3' is
typing".

Signed-off-by: nyuszika7h <nyuszika7h@gmail.com> (github: nyuszika7h)
2017-08-04 18:24:37 +02:00
Nicholas Guriev 24fc162e71 Mute settings box
Closes: #3153
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-08-04 18:16:54 +02:00
John Preston 98f3e9a853 Version 1.1.19: Update langs. 2017-08-01 22:57:41 +03:00
John Preston a90a18920b Version 1.1.19.
- Search by messages of specific group members.
- Bug fixes and other minor improvements.
2017-08-01 21:45:04 +03:00
John Preston 6f746c238a Search for messages from a specific user in group. 2017-08-01 21:38:01 +03:00
John Preston 8c60ac78aa Rename and split dialogswidget module.
Also remove some debug information for crash fix.
2017-08-01 21:15:03 +03:00
John Preston 91fda6b654 Add search from group member button to dialogs. 2017-08-01 21:15:02 +03:00
John Preston 6f27e310ae Send reply and forward when choosing bot command. 2017-08-01 21:14:45 +03:00
John Preston 96a2af842f Remove glitch with video messages floating player. 2017-08-01 21:14:44 +03:00
John Preston 9d81ea59dd Attempt to fix an out of memory crash. 2017-08-01 21:14:43 +03:00
John Preston 91f0d049db Fix saving a loaded file as another existing file. 2017-08-01 21:14:42 +03:00
John Preston 27151d5e25 Show who banned or restricted user in supergroup. 2017-08-01 21:14:41 +03:00
John Preston 1b46cec4fb Version 1.1.18.
- Bug fixes and other minor improvements.
2017-07-27 14:26:48 +03:00
John Preston 027340a8e0 Copy public channel link instead of following it. 2017-07-27 14:24:37 +03:00
John Preston 0517f9f780 Insert emoji instead of text replacement. 2017-07-27 13:22:51 +03:00
John Preston 80ee40eb18 Add debug info for out of memory crash. 2017-07-27 13:14:39 +03:00
John Preston 9194c68bd3 Version 1.1.17.
- Bug fixes and other minor improvements.
2017-07-26 23:47:17 +03:00
John Preston 2dadc9bd7a Langs updated. 2017-07-26 23:46:16 +03:00
John Preston 180f83c528 Fix crash in InnerDropdown widget animations. 2017-07-26 23:43:18 +03:00
John Preston dfa7cb1826 Version 1.1.16: Fix build for Qt 5.3.2 and GCC. 2017-07-26 19:10:04 +03:00
John Preston fdcb28f1a0 Version 1.1.16: Hide emoji replaces list for now. 2017-07-26 17:59:08 +03:00
John Preston 0e059ec788 Version 1.1.16: Add some debug info. 2017-07-26 17:56:01 +03:00
John Preston c681f75ad3 Version 1.1.16.
- Autocompletion for emoji. Start typing :e to get suggestions.
- Fixed a bug with forwarding messages.
2017-07-26 15:56:32 +03:00
John Preston 9bf40c927e Improve emoji suggestions and replace on send.
Bring recent emoji up in suggestions.
Apply saved skin color to emoji suggestions.
Write to recents when choosing emoji suggestion.
2017-07-26 15:55:04 +03:00
John Preston df2aeb0c58 Provide emoji suggestions as a service. 2017-07-26 15:55:03 +03:00
John Preston 2dec9c46a7 Add emoji autocomplete to history message field. 2017-07-26 15:55:02 +03:00
John Preston 8f8100af3a Add emoji autocomplete data and algorithm. 2017-07-26 15:55:01 +03:00
John Preston 65371ec1b8 Fix selected text render on Retina.
QPainter::viewport() can be a too large rect to be passed as a
clipping region to QPainter on Retina displays.

QPainter in case of Retina displays tries to transform QRegion using
scale matrix and fails with "QRegion: creating region from big
polygon failed" warning message and disables painting completely.
2017-07-26 15:51:24 +03:00
John Preston 647d6ae443 Fix language switch when getting difference. 2017-07-26 15:50:39 +03:00
John Preston 216692cd9b Remove the Link row in Settings.
Anyway it duplicates the Username row.
2017-07-26 14:56:58 +03:00
John Preston 2e5930eb58 Update full peer in profile and settings.
Not more than once in five seconds get the full info to update bio.
2017-07-26 14:53:49 +03:00
John Preston 24b3b2a658 Fix forwarded from for single message forward.
Closes #3699, closes #3701, closes #3700.
2017-07-26 09:07:05 +03:00
John Preston e1e286aa13 Allow to fast share not games to channels.
Fixes #3692.
2017-07-26 09:07:01 +03:00
John Preston 4081ceff22 Version 1.1.15.
— Send **bold** and __italic__ text in your messages.
— Get a share link for posts in public supergroups.
— Quickly share posts from channels and media messages from bots.
— Search large supergroup members by name.
— Search channel members by name for admins.
— Use search in the service actions log.
— Ban supergroup members via the right click menu in the service actions log.
2017-07-23 15:39:32 +03:00
John Preston 7db57b72f1 Some langs updated. 2017-07-23 15:37:44 +03:00
John Preston 9e0ca64e02 Closed beta 1001014001. 2017-07-23 13:30:02 +03:00
John Preston cc55e3b027 Don't jump in chats list scroll while reordering.
While we reorder the pinned chats we move chat rows around which
sometimes produces auto scroll event that will try to reorder more.

This should probably fix assertion violation that was debugged using
additional information from commits 8b96f72, c7e63ff and a935075.
2017-07-23 13:20:11 +03:00
John Preston f78335aa67 Fix keyboard scrolling in ContactsBox. 2017-07-23 12:48:49 +03:00
John Preston f283aa033b Fix a couple of layout bugs for username edit. 2017-07-23 12:34:44 +03:00
John Preston 7ff175a81e Display user Bio in profile. 2017-07-23 12:34:43 +03:00
John Preston 34d2e78308 Allow to edit Bio in Settings. 2017-07-23 12:34:43 +03:00
John Preston 9bd89121e8 Replace self-destruct media service messages text.
Also support runtime components with align up to std::max_align_t.
2017-07-23 12:34:42 +03:00
John Preston 2e0513a30f Check CDN file hashes. 2017-07-23 12:34:41 +03:00
John Preston cf02a4cc31 API scheme updated to layer 70. 2017-07-23 12:34:40 +03:00
John Preston 5a1ec3c9e0 Fix display of Search members button in profile. 2017-07-23 12:33:39 +03:00
John Preston fa70bf9e0c Fix text message edit admin event log entries.
Regression was introduced in a513b1c.

In case of text messages entry->_page minimal height is counted in
the whole message minimal height and should not be added.
2017-07-23 12:33:39 +03:00
John Preston 9bd983bb9d Alpha 1.1.14: Update langs. 2017-07-19 11:38:59 +03:00
John Preston 1618daaeae Alpha 1.1.14.
- Bug fixes and other minor improvements.
2017-07-19 11:35:37 +03:00
John Preston ed4c3cccb2 Add admins from search in admins list box.
When searching in admins list box show all group members and allow
to appoint a new administrator right from this box.
2017-07-19 11:18:20 +03:00
John Preston 90311dbf24 Fix CDN file download. 2017-07-18 22:01:22 +03:00
John Preston f7a354bfd1 Display "edited" mark on channel signed messages. 2017-07-18 22:00:33 +03:00
John Preston a513b1c7b3 Fix media caption edit admin event log entries. 2017-07-18 21:59:53 +03:00
John Preston 077e128e9a Don't uncheck a radiobutton on second click. 2017-07-18 20:11:44 +03:00
John Preston 794ad7bda7 Fix main menu night theme layout for non-English.
The place for the phrase was too small because of huge left padding.
2017-07-18 20:10:55 +03:00
John Preston 10906e2e16 Fix crash in change language box.
Each time a radiobutton was triggered it was destroyed in refresh().
2017-07-18 20:09:48 +03:00
John Preston a5e0b19b79 Copy correct text for a forwarded reply message. 2017-07-18 19:48:10 +03:00
John Preston 7c6bb132ce Don't display reply preview if it doesn't fit. 2017-07-18 19:47:56 +03:00
John Preston 3ba210b6e4 Automatically return window to screen.
Fixes #3551.
2017-07-18 19:38:11 +03:00
John Preston faf090781d No confirmation for known hosts links. 2017-07-15 15:41:15 +03:00
John Preston ab62b1591f Fix duplicated entries in calls log box.
Notify about new call service messages only for unread messages.
2017-07-15 15:41:04 +03:00
John Preston 397e1dde78 Move reply bar to the top of the sticker.
That way a fast share button in channels isn't overlapping with it.
2017-07-15 15:05:46 +03:00
John Preston a935075782 Add some more assertions and info for crash debug.
An assertion violation happens some time so add some debug info.
2017-07-15 14:22:17 +03:00
John Preston 588aabc6d7 Fix render bug in pinned chats reordering.
If the last chats row was painted a wrong lastPaintedPos was used.
2017-07-15 14:20:53 +03:00
John Preston ca47e4ebfd Alpha 1.1.13: Fix build for Xcode. 2017-07-14 15:52:53 +03:00
John Preston 58b79ab112 Alpha 1.1.13.
- Various bug fixes.
2017-07-14 15:31:22 +03:00
John Preston cabf35f2b3 Allow to create channel invite link in boxes.
SetupChannelBox (public/private) and MaxInviteBox are suggesting
to copy the channel invite link. Now they suggest to create it
in case the channel didn't have the invite link already.
2017-07-14 15:28:08 +03:00
John Preston 949104d879 Improve queued by pts updates handling.
The updates are ordered by pts and applied in the correct order.
Also some pts-dependent updates handling was moved to ApiWrap.
2017-07-14 14:57:05 +03:00
John Preston 101ec9a1c1 Remove duplicated Copy Link context menu items.
When right clicking on a real link don't add a message link copy.
Fixes #3662
2017-07-14 14:56:57 +03:00
John Preston 7cc38f8f6a Improve disabled Ui::Checkbox layout. 2017-07-14 12:47:44 +03:00
John Preston 9e73e22e13 Add channel members in ParticipantsBoxController.
Also remove MembersBox, it was replaced completely.
2017-07-14 09:46:57 +03:00
John Preston 4c6e1b2b1f Fix members kick from group members dropdown. 2017-07-13 19:25:28 +03:00
John Preston 3db913f15b Remove layer deletion by timer in MainWindow.
It could be: schedule deletion -> show new box -> delete it by timer.
This fixes the error box display when adding users to groups.
2017-07-13 19:14:31 +03:00
John Preston bd1547cd5e Show error when trying to delete a large channel.
Server doesn't allow to delete a channel with more than 1000 users.
2017-07-13 19:12:20 +03:00
John Preston c7e63ffef5 Add some more assertions and info for crash debug.
An assertion violation happens some time so add some debug info.
2017-07-13 18:11:26 +03:00
John Preston a69304fd25 Fix crash in forwarding messages.
HistoryHider holds pointers to items, so it should watch for
the history items being removed and remove the pointers.
2017-07-13 17:57:25 +03:00
John Preston e0c74c9546 Fix crash in handlePendingHistoryUpdate().
This method is called from InvokeQueued, so the auth session could
be destroyed already and should be checked before being accessed.
2017-07-13 17:44:45 +03:00
John Preston 2f816942b8 Use objects instead of pointers for corners.
Also don't change mask corner images when color theme is changed.
This prevents race condition in mask corner images access, because
the GIF frame readers access mask corner images from other threads.
2017-07-13 17:42:46 +03:00
John Preston 9fd8b040b7 Fix crash in history switch.
Don't call anything heavy between changing _history and _list.
2017-07-13 17:42:28 +03:00
John Preston f5a405e6f1 Fix auto media download settings box layout. 2017-07-12 16:53:42 +03:00
John Preston c79561e97f Add a couple of actions log phrases for channels. 2017-07-12 16:34:13 +03:00
Nicholas Guriev 38a53687a0 Fix a couple of typos
Signed-off-by: Nicholas Guriev <guriev-ns@ya.ru> (github: mymedia2)
2017-07-12 14:08:36 +03:00
Viktor Oreshkin 94e43f8f8a Fix openssl ldflags on macOS
If ld finds ssl/crypto dylibs it prefers them to static archived objects
And because of that produced .app links dynamically to openssl, so it
won't launch unless users install openssl.
There are two solutions: either uninstall openssl completely from build
machine on each build, or use paths to .a files.
Obviously latter is preferred.

Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-07-12 14:06:40 +03:00
John Preston 7b4393ba48 Fix radiobutton list boxes dimensions.
Closes #3655
2017-07-12 14:05:29 +03:00
John Preston 56cb5ac9c6 Alpha 1.1.12: Search in supergroup for count > 50.
Also move search in supergroup members to Actions profile block.
2017-07-11 21:40:51 +03:00
John Preston 76cafc5059 Alpha 1.1.12.
- Click on forwarded messages bar to change the recipient chat
in case you chose a wrong one first.
- Quickly share posts from channels and media messages from bots.
- Search in supergroup members by name.
- Search in channel members by name if you're a channel admin.
- Copy links to messages in public supergroups.
2017-07-11 20:28:37 +03:00
John Preston 48bd693679 Allow to copy message links in public supergroups. 2017-07-11 20:21:24 +03:00
John Preston f32af6999b Add a fast share button in channels and bots. 2017-07-11 20:11:06 +03:00
John Preston ac99784bf7 Change chat for forwarded items by click on them.
Closes #3637
2017-07-11 13:23:15 +03:00
John Preston d94ef82327 Fix opening a forwarded GIF in MediaView on click.
Fixes #3645
2017-07-11 13:21:01 +03:00
John Preston 06d4ea2975 Use ParticipantsBoxController for members list.
Add search in channel/supergroup members inside PeerListBox.
Also MembersBox is not used anymore.
2017-07-11 12:17:27 +03:00
John Preston b79ddb7a1c Handle click on userpic in edit admin/banned box.
In admins/banned/restricted lists on row click the edit box is shown.
Now click on the userpic in this box allows to get to user profile.
2017-07-10 15:43:30 +03:00
John Preston 58a592ba47 Allow to see admin / banned rights for everyone.
Even if you can't edit admin / banned rights you can see them.
2017-07-10 15:29:55 +03:00
John Preston 9344504781 Show error when adding a non-group bot to admins. 2017-07-10 13:56:29 +03:00
John Preston f7543e3261 Improve EditAdmin/RestrictedBox design. 2017-07-10 13:55:16 +03:00
John Preston 0402b4f5f4 Add X / V vector icon to checkbox Toggle view.
Also use them in the admin rights / restrictions boxes.
2017-07-09 18:06:27 +03:00
John Preston d5c5549c1a Make Checkbox text position relative to the View. 2017-07-07 14:27:13 +03:00
John Preston 21d2f6a44f Generalize Checkbox layout.
Now any Checkbox can have Check, Radio or Toggle layout.
Radiobutton is now a subclass of Checkbox with default Radio layout.
2017-07-07 14:16:37 +03:00
John Preston 0ecef54e2b Alpha 1.1.11: Update langs and libtgvoip. 2017-07-06 20:40:49 +03:00
John Preston f6eccf85dc Alpha 1.1.11.
- Send **bold** and __italic__ text in your messages (in addition
to already supported `monospace` and ```multiline monospace```).
- Search in channel and supergroup admin event log.
- Ban members from right click menu in supergroup admin event log.
2017-07-06 20:11:25 +03:00
John Preston 28f7dc73a5 Optimize markdown parser, use less regex matches. 2017-07-06 19:57:19 +03:00
John Preston 8d43bdb084 Use std::unique_ptrs for ITextBlocks. 2017-07-06 18:59:47 +03:00
John Preston 8550099110 Improve markdown parsing. 2017-07-06 18:59:38 +03:00
John Preston 921c27c9b1 Apply markdown bold/italic when editing a message. 2017-07-06 18:19:50 +03:00
John Preston 148c04fb41 Fix multiline monospace pre blocks editing.
Now we pass current flags and lnkIndex to the NewlineBlock, so that
we don't get one multiline pre block split to separate line blocks.
2017-07-06 17:10:33 +03:00
John Preston eaf91bba58 Parse bold / italic markdown entities. 2017-07-06 16:44:11 +03:00
John Preston da0d78135d Some refactoring in working with text entities.
Also move this code to TextUtilities namespace.
2017-07-06 14:37:42 +03:00
John Preston f38fad2f92 Correctly apply edit admin in channel.
For example update adminCount / membersCount. For that we pass not
only the newRights values, but also oldRights values to applyEdit*().
2017-07-06 00:11:49 +03:00
John Preston 73e550f432 Update libtgvoip. 2017-07-05 22:51:38 +03:00
John Preston 8b96f7214e Add some assertions and info for crash debug.
An assertion violation happens some time so add some debug info.
2017-07-05 22:41:50 +03:00
John Preston 8202a1633b Fix crash in single instance forcing.
Local server communication is allowed before Messenger constructor.
2017-07-05 21:45:46 +03:00
John Preston 7013a0dfef Update channel admin counter after removing admin. 2017-07-05 21:36:09 +03:00
John Preston 0c43aabfec Allow to ban from actions log user context menu. 2017-07-05 21:11:31 +03:00
John Preston 1a7353fb43 Fix phrase in HistoryJoined for supergroups. 2017-07-05 16:23:52 +03:00
John Preston 4d3e7ac30c Fix applying a draft with a reply in it.
Fixes #3407
2017-07-05 16:20:34 +03:00
John Preston 7d342b9c6d Add search to channel / supergroup recent actions. 2017-07-05 16:11:08 +03:00
John Preston e1709c11da Check weak pointer in AddParticipantBoxController.
This may fix some crashes.
2017-07-05 12:39:21 +03:00
John Preston 6d3a6d20b5 Version 1.1.10: Fix build for Xcode and GCC. 2017-07-04 19:17:44 +03:00
John Preston 91a6853f3c Version 1.1.10: Update langs. 2017-07-04 18:40:59 +03:00
John Preston 60d886a59a Version 1.1.10.
- Filter added to channel and supergroup event log.
- Search by username in privacy exceptions editor fixed.
- Adding admins in channels fixed.
2017-07-04 18:32:05 +03:00
John Preston 397797aac7 Add default changelog for the new stable version.
Also add a non-translated changelog for the new alpha/beta versions.
2017-07-04 18:32:04 +03:00
John Preston 61461d0a87 Improve boxes with checks / radios layout. 2017-07-04 16:59:00 +03:00
John Preston 0ae661edf0 Add channel / supergroup admin event log filter. 2017-07-04 16:31:18 +03:00
John Preston fc6aa288c2 Show all returned rows in RevokePublicLinkBox.
Fixes #3617
2017-07-03 16:57:46 +03:00
John Preston 58dcba71a4 Switch to PeerListBox in channel admin management.
This will fix the problem with adding admins to channels.
Also this will add local search to channel admins list.
Fixes #3615
2017-07-03 16:17:52 +03:00
John Preston 5ca3a81fe2 Fix global search by username in PeerListBox. 2017-07-03 16:17:44 +03:00
John Preston f316e3bd17 Add debug logs for window position and autoupdate. 2017-07-03 15:23:41 +03:00
John Preston ebb10fb8ed Improve night mode theme.
Also fix custom notification border painting with reply button.
2017-07-03 13:51:38 +03:00
John Preston d08dbb835f Paint admin stars with different color in profile. 2017-07-03 13:31:37 +03:00
John Preston 0d38106ed0 Fix Edit option display for supergroup creator.
Supergroup creator saw the Edit option for other users messages.
2017-07-03 13:13:32 +03:00
Viktor Oreshkin bca0e1e16c Fix remove option in normal groups
If user invites X to group and then X becomes an admin, user won't be
able to remove X anymore, so remove option shouldn't be shown.

Signed-off-by: Viktor Oreshkin <imselfish@stek29.rocks>
2017-07-02 22:29:24 +03:00
John Preston 96d1fe336a Fix assertion violation when editing an admin.
There is a possibility that an EditAdminBox will be shown for someone
who can't add admins right now (in case server says he can edit one).

In that case assertion about the admins checkbox is false and we fix
that. Currently server sometimes does return this flag by mistake.
2017-07-02 22:26:24 +03:00
John Preston 305e15dd03 Fix service message date in admin event log. 2017-07-02 22:26:23 +03:00
John Preston 22287d4c03 Version 1.1.9: Update langs. 2017-06-30 16:02:52 +03:00
John Preston 341b44119f Version 1.1.9.
- Supergroups can now have up to 10.000 members.
- Appoint supergroup admins with granular rights.
Choose who can add users, manage messages, block members,
edit group info & username, add new admins, etc.
- Restrict and ban supergroup members with granular precision.
Read-only bans, GIF & sticker bans, media bans,
temporary bans and restrictions.
- Check the new event log to see all service actions taken by
members and admins of a channel or supergroup in the last 48 hours.
- Toggle night mode in the main menu.
2017-06-30 15:08:29 +03:00
John Preston 0798a0148a Don't change custom background in night mode.
This will at least make it a bit better in #3598.

The real solution with remembering custom backgrounds for both
night mode on and off doesn't fit with current theming way too well.
2017-06-30 15:03:51 +03:00
John Preston 51c0df79fe Support emoji display in PeerListBox status texts. 2017-06-30 14:36:13 +03:00
John Preston 42febdb240 Fix alpha version changelog notification.
We should call window->serviceNotification() because it checks for
the service chat history being loaded before adding the message.

The method in MainWidget was renamed to prevent bugs in the future.
2017-06-30 14:30:11 +03:00
John Preston 5fe1175602 Fix crash when message for forward is deleted.
The messages prepared for forwarding are not a map (MsgId -> item),
but just a map (random int -> item), so we need to loop over them.
2017-06-30 13:46:41 +03:00
John Preston bf57a1506f Fix assertion violation in the admin events log.
Add support for a log entry about group/channel photo being removed.
2017-06-30 13:35:35 +03:00
John Preston 7b496b3741 Improve in-app changelogs for alpha version. 2017-06-30 13:32:10 +03:00
John Preston 197cdc3928 Alpha 1.1.8.
- Toggle night mode in the main menu.
2017-06-30 09:23:31 +03:00
John Preston 8d14112c5a Update langs. 2017-06-30 09:21:46 +03:00
John Preston 61659244b7 Add night mode switch to the main menu.
Also fix a bug with the default background applying.
2017-06-30 09:21:46 +03:00
John Preston 19023b4cc2 Display a toggle in Menu for Checkable actions. 2017-06-30 09:21:46 +03:00
John Preston 5dcf341aaa Display "no users" in empty add participant box. 2017-06-30 09:21:45 +03:00
John Preston 4993ff1921 Finalize rename / move. 2017-06-30 09:21:45 +03:00
John Preston d1536d0572 Rename / move history and historywidget modules. 2017-06-30 09:21:45 +03:00
John Preston 836fe119d9 Improve display of admin event log entries.
Don't show the Forward, Delete and Go to message in MediaView.
Better handle round video floating player in admin event log.
2017-06-30 09:21:45 +03:00
John Preston 0b3644b334 Improve phrase on copying selected items as text.
This is a better implementation of #3346.
2017-06-30 09:21:45 +03:00
John Preston 7357119b1a Fix scroll top overflow. Fixes #3524 2017-06-30 09:21:45 +03:00
John Preston 545915e481 Fix name/fwd/reply/viabot info display for media. 2017-06-30 09:21:45 +03:00
John Preston 6f90dc2374 Fix empty admin event log display. 2017-06-30 09:21:45 +03:00
John Preston 91dcfff423 Add unpinned message admin log event action. 2017-06-30 09:21:45 +03:00
John Preston 58b4798b79 Fix tooltip hiding when window is hidden by Cmd+H.
For some reason deleteLater() called for the tooltip from the main
window deactivation signal is really handled only on app quit :/
So now we use InvokeQueued(p, [p] { delete p; }); there instead.

Fixes #3461
2017-06-30 09:21:45 +03:00
John Preston 843d63c221 Fix edit channel controls layout. 2017-06-30 09:21:44 +03:00
John Preston 3b864d63b9 Fix crash in audio player destructor. 2017-06-30 09:21:44 +03:00
John Preston 2a51e2aa59 Workaround GCC bug and fix Linux build. 2017-06-30 09:21:44 +03:00