Commit Graph

321 Commits

Author SHA1 Message Date
John Preston
90c0929407 Load Rstrtmgr dynamically. 2020-09-29 19:03:29 +03:00
Ilya Fedin
70c993774a Get rid of redudant cmake options 2020-09-29 18:24:16 +03:00
Ilya Fedin
e523492de0 Add missed methods to specific_mac.h and specific_win.h 2020-08-30 17:00:43 +04:00
Ilya Fedin
3c8c059447 Eliminate the need of Q_OBJECT in main_window_linux and main_window_win 2020-08-30 17:00:43 +04:00
Ilya Fedin
ea8e256a23 Revert "Revert "Add main window shadow for Linux""
This reverts commit b7f5cfe083.
2020-08-30 17:00:43 +04:00
John Preston
b7f5cfe083 Revert "Add main window shadow for Linux"
This reverts commit d02092f09e.

Conflicts:
	Telegram/SourceFiles/mainwindow.cpp
	Telegram/SourceFiles/platform/linux/specific_linux.cpp
	Telegram/SourceFiles/window/main_window.cpp
2020-08-23 16:38:49 +04:00
John Preston
e782e065a0 Use audio device enumeration from lib_webrtc. 2020-08-21 17:52:12 +04:00
Ilya Fedin
d02092f09e Add main window shadow for Linux 2020-08-18 08:16:17 +04:00
Ilya Fedin
580e6baee6 Get rid of redudant fontconfig hack 2020-08-15 17:43:28 +04:00
John Preston
4ba7de8df1 Fix build on Windows. 2020-08-11 18:21:40 +04:00
Ilya Fedin
dc9d0aae54 Add support for showing window menu on Wayland 2020-08-11 10:56:29 +04:00
John Preston
c86ced8a1e Use dark Windows title bar for night mode. 2020-07-24 16:15:58 +04:00
Ilya Fedin
841908fe31 Read decoration layout property from gtk 2020-07-23 14:29:56 +04:00
John Preston
8c4e8212cd Add 'respect system dark mode' checkbox. 2020-07-22 17:18:17 +04:00
Ilya Fedin
47a237c924 Implement system-based dark mode for Windows and Linux 2020-07-22 10:32:56 +04:00
Ilya Fedin
b587328fed Add support for custom titlebar on Linux with Qt < 5.15 2020-07-12 23:19:05 +04:00
John Preston
f10b2194e6 Add option for a native window frame.
Fixes #2958.
2020-07-07 21:34:25 +04:00
John Preston
d1050e6041 Use window shadow from lib_ui. 2020-07-07 21:34:25 +04:00
John Preston
7f55fd2cad Use a safer way to load system libraries. 2020-07-02 21:01:25 +04:00
John Preston
613a2f358a Fix clearing session notifications. 2020-06-30 11:52:59 +04:00
John Preston
d8a2b391a3 Use Main::Session::uniqueId in notifications. 2020-06-24 13:05:56 +04:00
John Preston
4a8d297df3 Use username in notifications if available. 2020-06-23 21:53:43 +04:00
John Preston
997913be25 One Window::Notifications system for all sessions. 2020-06-23 21:53:42 +04:00
John Preston
83538675ce Move a lot of settings to Core::Settings. 2020-06-23 21:53:42 +04:00
John Preston
357caf8007 Keep separate MTP::Config's for separate accounts. 2020-06-23 21:53:41 +04:00
John Preston
ad4afe9293 Move session data localstorage -> storage_account. 2020-06-23 21:53:39 +04:00
John Preston
27af83267e Move autolock checking to Core::Application. 2020-06-23 21:53:38 +04:00
Ilya Fedin
3a91003eea Use gtk clipboard when available to avoid https://bugreports.qt.io/browse/QTBUG-56595 2020-06-17 20:34:47 +04:00
John Preston
793906ca9a Fix build on Windows. 2020-06-02 12:26:58 +04:00
Ilya Fedin
e098922a4b Add Platform::AutostartSupported 2020-06-01 18:25:21 +04:00
John Preston
d5b3fa017b Fix build for macOS. 2020-06-01 18:09:34 +04:00
John Preston
36fbdfb380 Simplify Image, remove ImageSource. 2020-06-01 18:09:33 +04:00
John Preston
f066e0f05a Use Data::CloudImage for userpics. 2020-06-01 18:09:33 +04:00
Ilya Fedin
cd81fc6727 Don't lose -freetype argument on restart 2020-05-25 09:26:49 +04:00
Ilya Fedin
492dc2568c Add DESKTOP_APP_USE_PACKAGED support for Windows 2020-05-12 17:32:40 +04:00
John Preston
6f760d513e Add a checkbox to disable taskbar flash.
Also add ability to set urgent flag for the window on Linux.

Fixes #223, fixes #897, fixes #906.
2020-05-12 14:16:24 +04:00
John Preston
f5c0e5d31d Remove unnecessary include. 2020-05-12 09:43:54 +04:00
Ilya Fedin
95b4f56b86 Don't use QDesktopServices::openUrl on snap 2020-05-01 12:06:01 +04:00
John Preston
e1dc15321a Work around 32-bitness of GetLastInputInfo.
Fixes #7637.
2020-04-21 18:55:35 +04:00
John Preston
0d58f1c9fa Try system font config once in snap build. 2020-03-30 12:18:50 +04:00
Ilya Fedin
8b704f9bd7 Fix escaping in linux launcher creating 2020-02-27 11:51:28 +04:00
John Preston
a88423a33f Fix bad window rendering with maximize-on-launch.
I have no idea why MainWindow is ruined completely in case you call
MainWindow::show, MainWindow::setWindowState(maximized) and then
in the same context (without crl::on_main) create full screen viewer.
2020-02-12 12:09:17 +04:00
John Preston
bcd0fe38f0 Fix invisible passcode field.
Regression was introduced in fd8ae60dc.
2020-02-11 13:01:55 +04:00
John Preston
74d848311b Replace str_const with base::const_string. 2020-01-29 12:47:50 +03:00
Ilya Fedin
ffe037f9f1 Fix single instance socket path for compatibility with flatpak 2020-01-23 09:58:12 +03:00
John Preston
322367c1b1 Correctly minimize window.
Fixes #6932.
2020-01-02 14:57:36 +03:00
John Preston
4eeac7dc18 Fix whitespace and indentation errors.
See #6672, thanks Sea-n.
2020-01-02 14:25:53 +03:00
John Preston
6a668fc171 'TDESKTOP_DISABLE_CRASH_REPORTS' => 'DESKTOP_APP_DISABLE_..' 2019-11-07 13:53:55 +03:00
John Preston
92d48a7846 Fix build on Windows. 2019-10-20 15:32:44 +04:00
John Preston
01936b5f1b Build with Qt 5.12.5 and OpenSSL 1.1.1. 2019-10-19 12:27:56 +04:00
John Preston
7bb23519f9 Use base::Platform::ShowInFolder. 2019-10-19 12:27:56 +04:00
John Preston
09a7daf164 Update submodules. 2019-10-19 12:27:56 +04:00
John Preston
246c45ce0e Use lib_ui from submodule. 2019-10-19 12:27:28 +04:00
John Preston
3b0bf7cb1e Move some more widgets and effects. 2019-10-01 23:59:46 +03:00
John Preston
849deb57e2 Move many widget classes to lib_ui. 2019-10-01 23:59:46 +03:00
John Preston
c5845f17ae Remove twidget header. 2019-10-01 23:59:46 +03:00
John Preston
0c713a930a Remove app.h / facades.h from precompiled header. 2019-10-01 23:59:46 +03:00
John Preston
f463d3ec6d Divide autoupdate paths for OS versions. 2019-09-10 14:22:20 +03:00
John Preston
b631d09a40 Fix possible crash in event loop nesting. 2019-09-09 10:45:18 +03:00
John Preston
6343221d7b Remove many includes from stdafx.pch. 2019-09-06 19:31:07 +03:00
John Preston
3715fa4b1e Fix scheduled notifications on inbox read. 2019-08-30 17:06:21 +03:00
John Preston
0a4f91a53d Notify about published scheduled messages. 2019-08-29 10:01:28 +03:00
John Preston
ff44094ded Rename AuthSession to Main::Session. 2019-07-24 13:45:24 +02:00
John Preston
0e964b06dc Hook main queue processing to update requests. 2019-07-04 16:26:13 +02:00
John Preston
d5497c3105 Version 1.7.10: Don't load OpenSSL config on Win. 2019-06-24 14:23:08 +02:00
John Preston
7c2f114330 Force OpenSSL not loading local config. 2019-06-24 12:49:37 +02:00
John Preston
7d585ab72f Handle located groups as public. 2019-06-21 14:27:46 +02:00
John Preston
4917ca7b32 Remove all legacy global namespace langs. 2019-06-21 11:06:52 +02:00
John Preston
87fc066e67 Use tr:: instead of lang(). 2019-06-21 11:06:51 +02:00
John Preston
1225c9194a Fix window title on Windows 7.
Regression was introduced in dd68c7e90.

Fixes #6106.
2019-06-07 14:46:07 +03:00
John Preston
dd68c7e90d Use Window::Controller to manage MainWindow. 2019-06-06 14:20:21 +03:00
John Preston
dcdaee3db2 Beta version 1.7.4: Fix build for Xcode. 2019-06-04 21:13:47 +03:00
John Preston
1fb529803e Add an 'Update your OS' top bar.
Set EOL for Windows XP / Vista version at September 1, 2019.
2019-06-04 14:28:13 +03:00
John Preston
9c613fe2f7 Move system versions to platform/platform_info. 2019-06-04 14:23:14 +03:00
John Preston
271d929ad6 Use VersionHelper API for Windows version. 2019-06-03 13:48:57 +03:00
23rd
9059b2e617 Fixes for Audio Player in touchbar.
- Removed unused Platform::SetTouchBar.
 - Added rpl::event_stream in Media Player Instance for handle closing player.
 - Fixed hiding of touchbar when last track is ended.
 - Fixed display of time when last track is ended.
 - Slightly refactored.
2019-05-27 15:34:58 +02:00
23rd
58604406f8 Added initial implementation touchbar. 2019-05-27 15:34:54 +02:00
John Preston
7cfb122dea Fix crash with event loop nesting tracking. 2019-04-12 17:30:43 +04:00
John Preston
eba2a98703 Add general StorageFileLocation abstraction. 2019-03-29 14:24:06 +04:00
John Preston
f1b0b60340 Fix possible crash in MainWindow destructor. 2019-03-24 12:12:41 +04:00
John Preston
0df628dc7a Fix notifications hiding on Linux.
Regression was introduced in 3372dfcd3e.

Only when platform-specific code can give us the global time of the
last user input event we rely on idle time for notifications hiding.

Fixes #5791.
2019-03-14 21:59:10 +04:00
23rd
3372dfcd3e Refactored checking of last input while notifications are displayed.
- Removed condition for Windows platform only.
 - Added smooth hiding of notifications in case video is watched or voice message is recorded.
 - psUserActionDone() was completely replaced with Core::App().updateNonIdle().
2019-03-10 22:02:58 +04:00
23rd
78d00bcf22 Refactored counting idle time.
- psIdleTime() was replaced with Platform::LastUserInputTime().
 - _lastTimeVideoPlayedAt was moved to Application as _lastNonIdleTime.
 - Call of updateNonIdle() was added while voice is recording.
 - Fixed #5695.
 - Thanks Preston. =)
2019-03-10 22:02:58 +04:00
John Preston
fe618bd652 Use crl::time/now instead of TimeMs/getms. 2019-02-19 11:06:33 +04:00
John Preston
98cb85df66 Polymorphic classes without virtual dtor warning. 2019-02-15 15:55:34 +04:00
John Preston
032694ad9e Move files to media/audio and media/clip. 2019-02-13 15:41:33 +03:00
John Preston
e2f0886950 Add option to blur chat background. 2019-02-07 19:36:30 +03:00
John Preston
a70e72f75d Application->Sandbox, Messenger->Application. 2019-01-23 12:51:58 +04:00
John Preston
314e30272b Replace SingleTimer with base::Timer. 2019-01-18 16:41:08 +04:00
John Preston
65430d92ea Refactor calls settings panel. 2019-01-11 17:30:57 +04:00
Gregory K
11b991cddc Add call settings (#5540) 2019-01-05 15:08:02 +04:00
John Preston
d1be4c6d96 Fix crash with event loop nesting. 2018-12-25 14:11:10 +04:00
John Preston
de4a477686 Mark event loop nesting more carefully.
Fixes #5506. I hope fixes #5508.
2018-12-23 16:08:48 +04:00
John Preston
b683d84df1 Report memory usage in MB. 2018-12-11 16:26:33 +04:00
John Preston
6562a1f6af Add 'Count unread messages' option. 2018-12-04 14:32:48 +04:00
John Preston
3f58c930e3 Use separate download folder for support. 2018-11-22 17:15:52 +04:00
John Preston
60103f7ad6 Use upstream range-v3 on MSVC.
The build works using MSVS 15.9 and latest range-v3 code.
2018-11-20 19:38:39 +04:00
John Preston
4ab0e693c1 Write memory usage to crashdump on Windows. 2018-11-12 14:39:21 +04:00
John Preston
6db4972208 Fix blurry App Switcher icon on macOS.
Fixes #5267.
2018-11-04 15:51:38 +04:00
John Preston
113f665295 Move Image and derived to ui/image. 2018-11-04 15:51:36 +04:00
John Preston
a429e22b93 Beta version 1.4.4: Add some checks. 2018-10-17 09:25:24 +03:00
Grishka
44eac2bf07 Added support for platform-specific microphone permission in calls 2018-10-17 08:53:23 +03:00
John Preston
6e566e0165 Swap 'alpha' and 'beta'. Happy debugging! 2018-09-26 21:23:08 +03:00
John Preston
2e5a0e056c Move to std::optional. 2018-09-21 19:28:46 +03:00
John Preston
81731139e9 Add tests for storage encrypted file.
Also fix some bugs found by the tests.
2018-09-01 18:56:08 +03:00
John Preston
8a371b9c1b New storage encrypted file. 2018-09-01 18:56:08 +03:00
John Preston
c8aa35d23c Don't show PopupMenu for inactive window on macOS.
This is a fixup for 06bf67c146.
2018-08-04 15:17:23 +03:00
John Preston
c7ed36d558 Check for composition in WM_NCACTIVATE. 2018-07-31 22:56:04 +03:00
John Preston
fae0bccc9c Don't use registry quiet hours entry any more.
In the latest Windows 10 those settings aren't stored in registry.
2018-07-31 22:53:37 +03:00
John Preston
4c9ef606f3 Display unread/mention mark in small left column.
Fixes #4939.
2018-07-12 22:25:10 +03:00
John Preston
52e7ddf079 Add '-externalupdater' command-line argument.
Now no-autoupdater mode can be switched on in runtime.
Also TDESKTOP_DISABLE_AUTOUPDATE build is disabled in CI (trivial).

Fixes #4895.
2018-07-12 18:35:59 +03:00
John Preston
e2bc6990c7 Fix crash in taskbar icon refresher.
Regression was introduced in 3b956c598.
2018-07-11 23:20:21 +03:00
John Preston
3b956c598b Fix data export window theme changing.
Fixes #4902.
2018-06-28 04:39:10 +01:00
John Preston
d6a00523a8 Add crash annotations for file dialog. 2018-06-06 21:45:32 +03:00
John Preston
9ebeddbed8 Request, show and require accept for updated ToS. 2018-06-06 21:37:01 +03:00
John Preston
72f95b984f Replace cDebug() with Logs::DebugEnabled(). 2018-06-05 21:51:05 +03:00
John Preston
dd81f5d59f Replace base::lambda with shorter term.
base::lambda -> Fn (type alias for std::function).
base::lambda_once -> FnMut (type alias for base::unique_function).
base::lambda_guarded -> crl::guard.
base::lambda_call_type_t -> crl::deduced_call_type.
2018-06-04 18:38:27 +03:00
John Preston
67ea175fc6 Show choose file box over the passport panel. 2018-06-03 23:16:37 +03:00
John Preston
ddb4527159 Start passport support: handle link, receive form. 2018-06-03 23:16:33 +03:00
John Preston
e122353bfb Show better information in sessions list. 2018-06-03 23:14:44 +03:00
Kirsan
3ff033cdf3 Fix for https://github.com/telegramdesktop/tdesktop/issues/4544
(cherry picked from commit d99c757d44d7c31fbb0eb290f273ad4d2d464255)
2018-04-07 12:13:52 +04:00
John Preston
97a9089ebf Move draw / getState code to HistoryView::Message.
Item dimensions broken for now.
Also remove history.h from pch.
2018-02-08 12:20:48 +03:00
John Preston
ea7441ae77 Use single LEGAL file with license and copyright. 2018-01-03 13:23:14 +03:00
John Preston
af552fb4c0 Replace base/task_queue with crl. 2017-12-31 00:28:38 +03: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
837dac50fa Fix build for the original range-v3. 2017-11-26 18:20:22 +04:00
John Preston
ac99318f34 Use ranges:: algorithms instead of base:: 2017-11-20 16:24:00 +04:00
John Preston
5c12b0e5fa Use /permissive- flag for Visual Studio builds. 2017-11-16 07:59:10 +04:00
John Preston
41ed2d1b84 New storage for shared media messages index. 2017-11-16 07:59:02 +04: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
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
df64c972d8 Replace QFlags with base::flags. 2017-09-03 15:45:47 +03:00
John Preston
8e433971c9 Improve current executable path computing.
Fixes #960 (hopefully).
2017-08-30 19:15:35 +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
b08732cf28 Move MediaView from MainWindow to Messenger. 2017-08-25 14:39:27 +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
f316e3bd17 Add debug logs for window position and autoupdate. 2017-07-03 15:23:41 +03:00
John Preston
e39b95175b Handle channel event log mouse events. 2017-06-30 09:21:42 +03:00
John Preston
f5353080e7 Use Qt UI language if system was not determined.
Also rename platform/mac/specific_mac.cpp to .mm
2017-06-29 11:39:47 +03:00
John Preston
139d4e72b5 Start cloud langpack support.
Change the way langpacks are stored.
Support custom langpacks in the new storage.
2017-06-29 11:39:42 +03:00
John Preston
2334ba1fe1 Use QString + Lang::Tag() instead of Lang::String. 2017-06-29 11:39:40 +03:00
John Preston
110e7c8074 Finalize rename / move. 2017-06-29 11:39:38 +03:00
John Preston
983c2c0869 Support non-standard binary names in autoupdater.
On Linux and Windows support non-standard application binary name.
2017-05-30 21:26:53 +03:00
John Preston
57f0158ade Disable quiet hours check in Windows before 10.
We had several reports about wrong values in registry on Windows 8.1,
like the quiet hours are enabled and all notifications are skipped,
without anything like that being enabled in Windows settings.
2017-05-26 17:40:46 +03:00
John Preston
1e6d4d6b41 Activate mediaview instead of main window.
If the mediaview is currently shown and we receive an activation
event for the main window we should activate and focus mediaview.
2017-05-24 16:25:08 +03:00
John Preston
b74dea8662 Move logo images to Messenger. Set call panel icon. 2017-05-12 18:28:44 +03:00
John Preston
6f89d01452 Add new Media::Audio::Instance for audio tracks.
Move some audio-related code from Media::Player to Media::Audio.
2017-05-09 23:46:29 +03:00