Commit Graph

3171 Commits

Author SHA1 Message Date
leha-bot 17e2bda404 Add optional support for Yandex.Maps static API
You could enable it via CMake option KEPKA_OPTION_USE_YANDEX_MAPS:
cmake -DKEPKA_OPTION_USE_YANDEX_MAPS=ON ..

It is used instead of Google Maps API for locations and on location click.
Sometimes Google Maps return no maps data. It is related with recent free
API usages count decrease from 750k requests to 28k (according to
https://habr.com/post/417715/).

The code on this commit should be cleaned up and rewritten using Maps API
string builders.
2018-12-31 04:44:12 +03:00
leha-bot 419705ed15 Add logo copyright info to README 2018-12-31 04:37:48 +03:00
leha-bot 8d681800e3 Happy new Copyright Year! (in winrc) 2018-12-31 04:18:45 +03:00
leha-bot 0dc9c0b8c7 Replace stock copyright-protected logo by ours
These logo variants are available under Creative Commons
Attribution Share-Alike License 4.0. See
https://creativecommons.org/licenses/by-sa/4.0/
(c) 2018 leha-bot.

The short guide about branding and logo usages
(from /Telegram/Resources/art) in Kepka:
1. logo_256.png/logo_256_no_margin.png -
 used in /Telegram/SourceFiles/window/main_window.cpp for loading logo
 (nowrap logo is used on Mac), in /Telegram/SourceFiles/messenger.[cpp|h],
 in /Telegram/SourceFiles/platform/linux/specific_linux.cpp and in qrc.
 Required for branding;
2. icon64.png - Doxyfile and MacOS image assets (they are duplicated in
 /Telegram/Telegram/Images.xcassets/[Icon.iconset|AppIcon.appiconset);
3. icon[<resolution>[@x2]].png - MacOS image assets. We will update
 these icons in next commit;
4. favicon.ico - seems unused;
5. icon256.ico - Windows Resource for EXE;

There is also a dangling reference inside
/Telegram/Resources/uwp/AppX/AppxManifest.xml. It shoud be fixed in some
of next commits.
2018-12-31 03:50:04 +03:00
crackedmind 284df273cb Remove unused code 2018-12-27 03:27:39 +03:00
leha-bot 21ea23741d Use {appname} for splash screen string
Also update usage in intro widget. Please note that the language strings
with placeholders must be created using {lang_id}(lt_{placeholder},
lang({placeholder}), where you should replace {lang_id} with your actual
language string identifier and {placeholder} with your actual string
data.
2018-12-24 02:56:10 +03:00
Berkus Decker 4fd2f16142 Clang-format 2018-11-01 00:12:21 +02:00
Berkus Decker ee47a1c904 Update .style files 2018-11-01 00:12:21 +02:00
Berkus Decker d3c5e4458e Fix codegenerated license headers 2018-11-01 00:12:21 +02:00
Berkus Decker 8e50d9637f Convert manually what couldn't be converted automatically 2018-11-01 00:12:21 +02:00
Berkus Decker 8fcbf45bba Convert license headers automatically 2018-11-01 00:12:21 +02:00
Berkus Decker 97011cd84a Convert last mentions of offical in strings 2018-11-01 00:12:21 +02:00
Stanislav Ershov 6c2d2613ad Use FindPython3 cmake module to launch codegen_scheme 2018-10-28 23:03:07 +03:00
Evgenii Zheltonozhskii 2a341d77b1 Fix broken lambda (MSVC bug?) 2018-10-27 12:40:27 +00:00
Evgenii Zheltonozhskii 25fbc2f7e1 Minor refactoring 2018-10-27 12:40:27 +00:00
Evgenii Zheltonozhskii 4b78d52194 Fix more warnings 2018-10-27 12:40:27 +00:00
Evgenii Zheltonozhskii 16318f93fc Remove now unused Generator::writeSetSearch 2018-10-27 12:40:27 +00:00
Evgenii Zheltonozhskii f1b4a86cfe Fix unused variables, lambda captures. 2018-10-27 12:40:27 +00:00
Evgenii Zheltonozhskii f526586bfb Delete Instance constructor, since its member constructor is deleted 2018-10-27 12:40:27 +00:00
Evgenii Zheltonozhskii e4478fd0fd Reformat 2018-10-27 12:28:53 +00:00
Evgenii Zheltonozhskii 0e7d653b32 Replace switch with map 2018-10-27 12:28:53 +00:00
Evgenii Zheltonozhskii 6bed3132ae Replace switch with map 2018-10-27 12:28:53 +00:00
Evgenii Zheltonozhskii af4cfd8a41 Fix generator 2018-10-27 12:28:53 +00:00
Evgenii Zheltonozhskii 0c4399431a Replace strings with raw strings in style 2018-10-27 12:28:53 +00:00
Stanislav Ershov ed2cceec57 Update config.h.in 2018-10-27 11:19:19 +03:00
Stanislav Ershov f85e740494 Rename Telegram.rc -> Kepka.rc.in
Configure Kepka.rc.in -> Kepka.rc
2018-10-27 11:19:19 +03:00
Stanislav Ershov ac62bc1469 Improve cmake 2018-10-27 11:19:19 +03:00
Stanislav Ershov 9cf55590c0 Fix some warnings 2018-10-24 02:34:15 +03:00
Stanislav Ershov e2e9b8aefc Fix compilation errors in conformance mode 2018-10-20 20:27:10 +03:00
Stanislav Ershov 5d336eb54f Enable conformance mode for MSVC >= 15.5 2018-10-20 20:27:10 +03:00
Evgenii Zheltonozhskii f4ae3d5e0d Replace mess with maps in lang_auto ( https://github.com/procxx/kepka/issues/196 ). Also fixes https://github.com/procxx/kepka/issues/59 2018-10-19 18:01:27 +00:00
Vladislav Isenbaev 56b40c4e31 OS X build fixes (#193)
The AppleClang 9.1 doesn't support std::is_invocable (introduced in f488d5f), so we have to use backported version from Facebook's Folly library which provides "batteries" for C++ and Standard Library's backports from C++14/17. Folly library is licensed under Apache 2.0 License which is compatible with GNU GPL v3.
Also set CMAKE_BUNDLE_DIR to CMAKE_INSTALL_DIR to avoid the CMake error "install TARGETS given no BUNDLE DESTINATION for MACOSX_BUNDLE executable" (seems it introduced in CMake 3.12.x).
2018-10-19 12:37:41 +03:00
leha-bot 8b5f81a218 Fix channel message pinning for channel moderators
The way of fixing this is weird and is a natural clutch. But we have to
live with it. And I hate it.

Note: all another function members movings from header file to source
are postponed to another commit.

This commit based on
75d8d01b17 (diff-efcc341e70654031bd8fee83d8b7105bR999)

Fixes #189.
2018-10-18 14:48:11 +03:00
leha-bot 04882ed746 Allow edit messages older than 2 days in sgroups
This feature is cherry-picked from
75d8d01b17 (diff-c0b32cc8ed01e3b1cdbfd5427184a41dL874)
2018-10-18 14:48:11 +03:00
leha-bot 4a63c69d7f Enable messages unpinning for channels
Also make History Widget react on pinning Channel message event and show
it in UI.

This commit is based on upstream commit
75d8d01b17

Related to #114.
Closes #8.
2018-09-22 01:03:29 +03:00
leha-bot ae75810cd5 HistoryItem: enable pins for channel messages
Now we can pin and unpin channel messages.

This commit is based on upstream commit
75d8d01b17

Related to #8, #114.
2018-09-22 01:03:29 +03:00
leha-bot dd003ffb7d PinMessageBox: show notify checkbox only for group
Prepare for pinning messages in Channels, in which we are could not
disable the pin notification.

Based on upstream commit
75d8d01b17

Related to #8, #114.
2018-09-22 01:03:29 +03:00
leha-bot 265cd836ef Enable pins for channels
Based on upstream commit 75d8d01b17

Related to #114, #8.
2018-09-22 01:03:29 +03:00
leha-bot 04112679b5 Rudimentary support for Live Locations
Cherry picked from upstream commit 6ca105a290

Related to #114
2018-09-22 01:03:29 +03:00
leha-bot 2aaf08bd71 Minimal layer 72 support
Compile fixes.

Based on upstream commit 6ca105a290
Closes #114.
2018-09-22 01:03:29 +03:00
leha-bot 6717ea2cd5 API scheme updated to layer 72.
Shortlog:
1. InputMediaUploadedDocument now has the new flag nosound_video;
2. InputMediaVenue now has the new string venue_type (it seems to be
   related to FourSquare Venue Types like "food/icecream" or another.
   See core.telegram.org/bot/api#Venue for details);
3. Add live locations (InputMediaGeoLive);
4. channelFull object now has a flag hidden_prehistory (see issue #113
   for details);
5. messageMediaVenue now has the same string venue_type;
6. messageMediaGeoLive now has the same fields as InputMediaGeoLive;
7. Add mysterious messageActionCustomAction;
8. Add messages.messagesNotModified (seems it's related to seamless
   message counter decrement as in Telegram for Android since v 4.8);
9. Remove inputMessagesFilterPhotoVideoDocuments;
10. Add filters inputMessagesFilterGeo and inputMessagesFilterContact;
11. Add updateChannelAvailableMessages (seems it's a new kind of Update
    related to listening of channel only updates);
12. Add channels.channelParticipantsNotModified;
13. inputBotInlineMessageMediaGeo now has the period field (like new
    live locations);
14. botInlineMessageMediaGeo now has the same period field;
15. BotResults now has a users vector field;
16. messages.botCallbackAnswer now has a new native_ui flag (seems it's
    related to some new kind of notification. Right now bots could send you
    either the message box or the modeless notification which is appeared
    from top of chat viewport);
17. Add inputPaymentCredentials[Android|Apple]Pay for (possible) Android
    Pay / Apple Pay support;
18. Add channelAdminLogEventActionTogglePreHistoryHidden for toggling
    history for chat newcomers (see issue #113);
19. Add strange recentMeUrl[Unknown|User|Chat|ChatInvite|StickerSet].
    Seems it's related to "Saved Messages" functionality.
20. Add help.recentMeUrl method;
21. messages.getHistory now has an argument hash;
22. messages.editMessage now has the new flag stop_geo_live related to
    Live Locations;
23. messages.editInlineBotMesages now has the same new flag;
24. Add new method messages.readMentions(peer:InputPeer);
25. Add new method help.getRecentMeUrls(referer:string);
26. channels.getParticipants now has a new parameter hash;
27. Add new method chanels.deleteHistory (seems it's related to issue
    #112);
28. Add new method channels.togglePreHistoryHidden (see #113).

This commit is based on upstream commit bccd801874 and related to #114.
2018-09-22 01:03:29 +03:00
leha-bot 0a1a0162e4 Fix Windows build
There was a regression after PCH cleanup with headers order in
/file_utilities_win.cpp. Seems that the CI and local MSVS used some kind
of cache.
2018-09-22 01:03:29 +03:00
fox.cpp d405a2a60a Fix tg.protocol installation directory
Closes #171.
2018-08-15 12:28:19 +03:00
Evgenii Zheltonozhskii 38efa1bf4b Replace base::lambda with shorter term.
Partially backport dd81f5d59f
2018-07-27 14:24:31 +00:00
John Preston e7bace9ab3 Rewrite base::lambda_guard, use only one pointer.
(cherry picked from commit f6ed3df)
2018-07-27 14:24:31 +00:00
John Preston f488d5f9c1 Use std::function for base::lambda implementation.
(cherry picked from commit 101d4f6)
2018-07-27 14:24:31 +00:00
Evgeniy Zheltonozhskiy 9f1896c680 Filter RTL in displayed file names(#156)
Adopted from upstream commit aec496d520 to avoid the phishing filenames.

Closes #103.
2018-06-20 22:20:39 +03:00
Alex 0d013603bd
Fix "no return in nonvoid function" error in libtgvoip (#167)
Return nullptr to avoid compile error.

Before this commit these functions:
1. void *AudioInputALSA::StartThread();
2. void *AudioOutputALSA::StartThread()
 - don't return any values. 

Also please note that this fix should be ported after syncing libtgvoip to upstream if these functions still don't return values!

Related to #153.
2018-06-20 21:33:58 +03:00
Evgenii Zheltonozhskii b6df430aa8 Get rid of OrderedSet 2018-06-20 15:40:52 +03:00
Evgenii Zheltonozhskii 8b189226e4 Minimize type_traits (https://github.com/procxx/kepka/issues/27) 2018-06-20 15:40:52 +03:00