John Preston
47a52b0587
Moved several modules from history/ to data/.
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
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
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
b51f865c54
Save info members list state to memento.
2017-11-16 07:59:08 +04:00
John Preston
856ca22aad
Display online count in the info profile section.
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
66146c382d
Improve paths for Xcode build.
2017-11-16 07:59:07 +04:00
John Preston
7905694b31
Add tabs and other types links to Info::Media.
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
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
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
cdda7f8f9a
Allow not type-erased producers.
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
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
b9fb9af74f
Info shared media and common groups counters.
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
5c4daeee4c
Add rpl::variable, improve filter / combine.
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
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
487ddb5694
Add some rpl operators.
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
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
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
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
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
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
c76389e126
Allow to use base::lambda independently.
2017-09-03 15:45:49 +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
25ffaaaa2d
Replace t_assert() with Assert().
...
Also use this assertions for Expects(), Ensures() and Unexpected().
2017-08-30 19:15:42 +03:00