Commit Graph

526 Commits

Author SHA1 Message Date
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
Ilya Fedin
2f2de84b43 Fix d-bus type in MutterDBusLastUserInputTime 2020-08-30 16:57:51 +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
Ilya Fedin
6dfefa3f21 g_message is a more appropriate log level for some messages 2020-08-18 08:16:17 +04:00
Ilya Fedin
eaae7b1d03 Decrease indentation in XCBLastUserInputTime 2020-08-18 08:16:17 +04:00
Ilya Fedin
d02092f09e Add main window shadow for Linux 2020-08-18 08:16:17 +04:00
Ilya Fedin
1dcbb103a8 Move gtk clibpboard to linux_libs 2020-08-15 17:43:28 +04:00
Ilya Fedin
47673bba50 Move cExeName checks 2020-08-15 17:43:28 +04:00
Ilya Fedin
580e6baee6 Get rid of redudant fontconfig hack 2020-08-15 17:43:28 +04:00
Ilya Fedin
f56af090e0 Use GAppInfo instead of xdg-mime
This makes registering custom scheme distribution-compatible
2020-08-15 17:43:28 +04:00
Ilya Fedin
95c0c400c7 Use QProcess instead of system()
Use g_get_home_dir since it already uses both $HOME and passwd
2020-08-15 17:43:28 +04:00
Ilya Fedin
170ec16f39 Remove outdated snap autostart hack 2020-08-15 17:43:28 +04:00
Ilya Fedin
786bedf271 Disable Qt's integration mechanism on GTK-based DE to avoid early GTK loading
This also removes TDESKTOP_USE_GTK_FILE_DIALOG since it doesn't forces GTK dialog for anyone and there is no reason to leave it

TDESKTOP_DISABLE_GTK_INTEGRATION can be also tested via action now
2020-08-15 17:43:28 +04:00
Ilya Fedin
1de1747c38 Fix length of some lines in specific_linux and main_window_linux 2020-08-15 17:43:28 +04:00
Ilya Fedin
5dad293335 Add warnings about some build options and environment variables 2020-08-15 17:43:28 +04:00
Ilya Fedin
e4ac70090e Use GDBus to send notifications to avoid Q_OBJECT 2020-08-15 17:43:28 +04:00
John Preston
b703f4e555 Fix build on Linux. 2020-08-11 18:21:40 +04:00
Ilya Fedin
449fa0ef2c Don't focus parent window after opening file dialog 2020-08-11 10:57:11 +04:00
Ilya Fedin
dc9d0aae54 Add support for showing window menu on Wayland 2020-08-11 10:56:29 +04:00
Ilya Fedin
252bdd2353 TDESKTOP_DISABLE_DBUS_INTEGRATION -> DESKTOP_APP_DISABLE_DBUS_INTEGRATION 2020-08-11 10:55:50 +04:00
Ilya Fedin
2b89700f66 libwayland headers are needed only with Qt < 5.13 2020-07-23 14:29:56 +04:00
Ilya Fedin
ab95751a66 Make gdk backend limit more permissive 2020-07-23 14:29:56 +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
c24da4c3df Don't generate 64px tray icon since badge counter generator doesn't support it 2020-07-22 10:33:12 +04:00
Ilya Fedin
47a237c924 Implement system-based dark mode for Windows and Linux 2020-07-22 10:32:56 +04:00
Ilya Fedin
ba50393e86 Update icon theme on the fly 2020-07-16 07:07:33 +04:00
Ilya Fedin
c61cabb075 Make qt_make_filter_list a part of file_utilities_linux.cpp 2020-07-13 06:53:45 +04:00
Ilya Fedin
a6fe5c08ad Add a method to get flatpak ID 2020-07-13 06:53:45 +04:00
Ilya Fedin
256e976167 Hide ProcessNameByPID and RealExecutablePath into a private namespace 2020-07-13 06:53:45 +04:00
Ilya Fedin
e081ed4b4a Follow device pixel ratio in TrayIconFile 2020-07-13 06:53:45 +04:00
Ilya Fedin
b587328fed Add support for custom titlebar on Linux with Qt < 5.15 2020-07-12 23:19:05 +04:00
Ilya Fedin
2fd5771c3d Add support for org.gnome.Mutter.IdleMonitor 2020-07-12 22:19:44 +04:00
Ilya Fedin
59b521d666 Implement xcb-based LastUserInputTime method 2020-07-12 22:19:44 +04:00
John Preston
f10b2194e6 Add option for a native window frame.
Fixes #2958.
2020-07-07 21:34:25 +04:00
Sean Wei
212944d89c Fix format 2020-07-02 11:32:17 +04:00
Ilya Fedin
dd76d54aeb Fix build with TDESKTOP_DISABLE_GTK_INTEGRATION 2020-06-30 22:13:36 +04:00
John Preston
613a2f358a Fix clearing session notifications. 2020-06-30 11:52:59 +04:00
Ilya Fedin
90af3d295b Always fallback to gtk icon theme
To inherit icon theme even on WM-based environments
2020-06-30 10:23:07 +04:00
Ilya Fedin
0ede4bba72 Unity doesn't support _NET_WM_MOVERESIZE 2020-06-29 19:17:06 +04:00
Ilya Fedin
916601a52c Don't request IsStatusNotifierHostRegistered when SNI become available
To avoid situations when StatusNotifierItem registers icon, but tdesktop assumes that there are still no SNI
2020-06-29 16:58:00 +04:00
Ilya Fedin
a726c6411b Don't use custom notificaions on Wayland even with TDESKTOP_DISABLE_DBUS_INTEGRATION 2020-06-29 16:53:50 +04:00
Ilya Fedin
bb8f9a1b7f Link to gtk3 without QLibrary if DESKTOP_APP_USE_PACKAGED is defined 2020-06-29 16:27:45 +04:00
Ilya Fedin
4922768086 Don't use QLibrary for glib 2020-06-29 16:27:45 +04:00
Ilya Fedin
806f2e0b50 Check for all needed gtk functions for gtk clipboard 2020-06-29 16:27:45 +04:00
Ilya Fedin
d319c85c57 Don't load another gtk version if gtk_init_check was called 2020-06-29 16:27:45 +04:00
John Preston
9703f7460a Fix build on Linux. 2020-06-26 12:27:54 +04:00
John Preston
325840703e Fix launching with a passcode on macOS. 2020-06-26 11:51:05 +04:00
John Preston
d8a2b391a3 Use Main::Session::uniqueId in notifications. 2020-06-24 13:05:56 +04:00
John Preston
e7b8a52278 Move terms lock from Core::App to Session. 2020-06-24 11:56:16 +04:00
23rd
e318a7d65f Simplified ranges::find_if with ranges::any_of and ranges::none_of. 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
bc144377c0 Support logout of a secondary account. 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
Ilya Fedin
06a4480520 Drop unneeded GTK methods 2020-06-23 21:29:18 +04:00
Ilya Fedin
9a65481e9d Unset QT_STYLE_OVERRIDE instead of forcing Fusion
To don't break styling on KDE
2020-06-23 21:23:47 +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
Ilya Fedin
56de3194ef Never use custom notifications on Wayland since there are no positioning API 2020-06-17 20:32:50 +04:00
Ilya Fedin
e009ac026d Update snap to core20 2020-06-09 19:01:35 +04:00
Ilya Fedin
d45e74619d Use Platform::IsWayland from lib_base 2020-06-03 11:43:55 +04:00
Ilya Fedin
d92b5eebcc Restore X error handler just like qgtk3 2020-06-03 11:31:34 +04:00
Ilya Fedin
5c6b4d95b0 Suppress warning about transient parent when opening gtk file dialog 2020-06-03 11:31:34 +04:00
Ilya Fedin
0fbec5eba1 Use QVersionNumber to compare version in native notifications 2020-06-03 11:31:34 +04:00
Ilya Fedin
ab13d9bdaf Skip empty parts in QT_QPA_PLATFORMTHEME 2020-06-03 11:31:34 +04:00
Ilya Fedin
0165e31ca7 Never use custom code for portal detecting in flatpak 2020-06-03 11:31:34 +04:00
Ilya Fedin
c776f81dc7 Add support for choosing directories via xdg-desktop-portal 2020-06-03 11:31:34 +04:00
Ilya Fedin
e098922a4b Add Platform::AutostartSupported 2020-06-01 18:25:21 +04:00
Ilya Fedin
413ddf285e Fix crash in gtk file dialog on Wayland 2020-06-01 18:22:53 +04:00
Ilya Fedin
7ac78be984 Load gtk2 even on Wayland 2020-06-01 18:22:53 +04:00
Ilya Fedin
4c546156da Remove duplicate log line 2020-06-01 18:22:53 +04:00
Ilya Fedin
10b169f9f6 Make not supported errors static 2020-06-01 18:19:34 +04:00
Ilya Fedin
c83b8d4043 Fix naming of static variables 2020-06-01 18:19:34 +04:00
Ilya Fedin
1fc2b19c94 Add Cinnamon sound settings command 2020-06-01 18:19:34 +04:00
Ilya Fedin
fb97940cac Rename SandboxAutostart to PortalAutostart 2020-06-01 18:19:34 +04:00
Ilya Fedin
16c38b54e2 Rename InSandbox to InFlatpak 2020-06-01 18:19:34 +04:00
Ilya Fedin
7f29f57c3d Use custom gtk file dialog only on gtk-based DEs 2020-06-01 18:19:34 +04:00
Ilya Fedin
1fb1d57a27 Get system icon theme on gtk-based DEs 2020-06-01 18:19:34 +04:00
Ilya Fedin
47d7bd95ae Add a method to check if gtk integration is forced 2020-06-01 18:19:34 +04:00
John Preston
b7aa60bedf Fix build for Linux. 2020-06-01 18:09:34 +04:00
John Preston
d5b3fa017b Fix build for macOS. 2020-06-01 18:09:34 +04:00
Ilya Fedin
1504136828 Don't spam logs if there are no dbus 2020-05-26 07:24:18 +04:00
Ilya Fedin
4c1f83daca Add a check for bundled Qt plugins 2020-05-24 10:57:37 +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
Ilya Fedin
d1d1f83881 Remove outdated LIBGL_ALWAYS_INDIRECT hack 2020-05-08 12:54:21 +04:00
Ilya Fedin
13c2d6ff72 Detect global menu at runtime 2020-05-05 09:54:35 +04:00
Ilya Fedin
5180d31b40 Fix decoration applying and trigger repainting on update
For some reason this is needed for newer Qt in flatpak
2020-05-02 16:29:00 +04:00
Ilya Fedin
161e51757c Change color of wayland decoration according to theme 2020-05-01 12:26:10 +04:00
Ilya Fedin
46d4b03d49 Fix freeze in notifications settings when notification daemon is unavailable 2020-05-01 12:15:01 +04:00
Ilya Fedin
95b4f56b86 Don't use QDesktopServices::openUrl on snap 2020-05-01 12:06:01 +04:00
Ilya Fedin
7f890122e6 Add methods to detect appimage, static binary and forced gtk dialog 2020-04-26 12:28:34 +04:00
Ilya Fedin
7bc86cc9af Fix directory opening with portal and use them by default with KDE 2020-04-24 14:33:26 +04:00
Ilya Fedin
41d39012d2 Synchronize AppMenu availability check with Qt 2020-04-21 14:06:03 +04:00
Ilya Fedin
ed91c07f99 Restore the old behavior with fallback fontconfig configuration
With current code fallback works only through time and replaces the config even if it is changed by the user.

This commit fixes that.
2020-04-13 10:49:30 +04:00
Ilya Fedin
a1a7399023 Don't remove SNI object when SNI is lost 2020-04-13 10:43:37 +04:00
John Preston
0d58f1c9fa Try system font config once in snap build. 2020-03-30 12:18:50 +04:00
Ilya Fedin
86b9927965 Log global menu usage 2020-03-29 14:17:11 +04:00
Ilya Fedin
aa4968faaa Re-use fontconfig fallback code in snap 2020-03-29 14:14:56 +04:00
Ilya Fedin
13e8b60d6c Don't recreate tray icon if it is disabled 2020-03-24 17:21:00 +04:00
Ilya Fedin
d2291f5b17 Fix panel icon forcing 2020-03-19 01:02:15 +04:00
Ilya Fedin
9823615a84 Check if icon has desired size when saving 2020-03-16 16:57:22 +04:00
Ilya Fedin
d47e94ea4d Fallback to launcher basename if FLATPAK_ID variable is empty 2020-03-16 13:04:52 +04:00
Ilya Fedin
da926d7f10 Disable SNI tray icon name setting in snap
Otherwise there are a dummy icon when tray counter is disabled
2020-03-16 13:03:53 +04:00
Ilya Fedin
99a8c93ac1 Fix build with gcc 9 2020-03-16 13:00:16 +04:00
John Preston
fec6a8dd96 Beta version 1.9.20: Fix build without dbus. 2020-03-14 16:13:33 +04:00
Ilya Fedin
46445e0542 Implement global menu on Linux 2020-03-14 15:32:10 +04:00
Ilya Fedin
5f33abd391 Change tray implementation on demand 2020-03-14 15:26:13 +04:00
Ilya Fedin
75d54adfce Add TDESKTOP_FORCE_PANEL_ICON environment variable for possibility to use system icon even if it is not detected 2020-03-13 11:00:09 +04:00
Ilya Fedin
ba5d9eda2d Minimize dbus requests 2020-03-11 11:43:14 +04:00
Ilya Fedin
5927e8272c Convert TDESKTOP_DISABLE_DESKTOP_FILE_GENERATION to runtime environment variable 2020-03-09 11:02:45 +04:00
Ilya Fedin
7ac4c6e479 Add mark as read feature to linux native notifications 2020-03-06 18:39:34 +04:00
Ilya Fedin
fdf16d0aea Fix notification daemon detection on KDE
Minimize usage of QDBusInterface

Log the whole notification daemon information
2020-03-06 18:39:34 +04:00
Ilya Fedin
7aadaca62e Implement SkipAudio and SkipToast on Linux 2020-03-06 18:29:57 +04:00
Ilya Fedin
3fb6bbeae4 Optimize icon regeneration 2020-03-06 18:28:56 +04:00
Ilya Fedin
7202ffca76 Remove unneeded TrayIconFileTemplate function
Use /.flatpak-info instead of deprecated /run/user/$UID/flatpak-info

Improve indentation in UseXDGDesktopPortal and IsAppIndicator

Remove unneeded NeedTrayIconFile and rename IsAppIndicator to IsIndicatorApplication

Include only needed part of QtDBus in main_window_linux.cpp

Remove usage of QDBusInterface from SandboxAutostart and IsSNIAvailable

Don't check dbus activatable services in IsIndicatorApplication

Move XEmbed menu initialization to initTrayMenuHook, tray availability check to initHook

Don't create unneeded file for tooltip icon, since indicator-application doesn't support tooltips

Passthrough counter from updateIconCounters

Suppress log errors for LastUserInputTime on GNOME

Set applcation name and icon name for pulseaudio
2020-03-06 18:28:56 +04:00
Ilya Fedin
5c89dfad85 Implement LastUserInputTime on Linux
This is a dbus implementation, ideally a X11 implementation should be added as a fallback to get it work on non-mainstream DEs (and WMs)
2020-03-03 18:39:31 +04:00
Ilya Fedin
57b76e3f00 Remove usage of QDBusInterface from non-class methods in Linux native notifications 2020-03-02 11:22:36 +04:00
Ilya Fedin
7bd0598555 Unified function to detect icon name on Linux 2020-02-27 15:17:32 +04:00
Ilya Fedin
3b300f23e1 Independent check for image in Linux native notifications 2020-02-27 12:23:56 +04:00
Ilya Fedin
8b704f9bd7 Fix escaping in linux launcher creating 2020-02-27 11:51:28 +04:00
John Preston
3b327d9397 Fix launching with data in ~/.TelegramDesktop
Regression was introduced in 60612635ef.

Fixes #7289.
2020-02-26 20:13:40 +04:00
Ilya Fedin
2b0e62dafe Follow hidding reply setting in native notifications on Linux, use system icon 2020-02-24 21:00:25 +04:00
Ilya Fedin
9979c220ce Multiple sizes for linux tray icon 2020-02-24 19:57:42 +04:00
Ilya Fedin
db2aa7000a Fallback to non-panel icon when tray counter is disabled 2020-02-21 18:25:08 +04:00
Ilya Fedin
5bdc0db9e2 Generalize backward compatibility of linux launcher 2020-02-21 18:12:48 +04:00
Ilya Fedin
ca1623f34a Use XDG Desktop Portal only when variable is set 2020-02-21 18:11:24 +04:00
Ilya Fedin
9d0ae61ee0 Revert tray icon size to 22 on Linux (except KDE) and fix tray counter disabling in KDE 2020-02-18 11:37:17 +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
Ilya Fedin
3574a9c874 Fix lost qgetenv in GetLauncherBasename 2020-02-11 13:14:22 +04:00
Ilya Fedin
e62f727135 Fix creating of autostart launcher in snap 2020-02-10 19:30:41 +04:00
Ilya Fedin
77719750ee Fix name of the snap desktop file
Use new switch for GSL
2020-02-10 15:34:03 +04:00
Ilya Fedin
6206b6f843 Adapt indicator-application check for sandboxed environments
Fix quality loss in the tray icon image

Fix window showing by clicking on the tray icon on macOS

Fix tray icon displaying on KDE
2020-02-10 15:09:47 +04:00
Kai Uwe Broulik
9e3fa2e4bc Check action id when invoked
Makes it more resilient
2020-02-10 14:45:07 +04:00
Ilya Fedin
3b4dfa1381 Use LXQt's StatusNotifierItem implementation instead of appindicator 2020-02-05 18:38:34 +04:00
John Preston
28a567986d Try linking some libs dynamically on Linux. 2020-01-31 16:33:35 +03:00
Ilya Fedin
2807c5ef19 Use system icon theme and increase icon size 2020-01-31 16:03:41 +03:00
Ilya Fedin
0477bda929 Use XDG Desktop Portal for file dialog 2020-01-31 16:02:11 +03:00
Ilya Fedin
d80b3fda7d Fix duplicate object path in SandboxAutostart and add some logging 2020-01-31 15:47:44 +03:00
Ilya Fedin
a831c1703a Split launcher filename detection to a function 2020-01-31 15:46:39 +03:00
John Preston
74d848311b Replace str_const with base::const_string. 2020-01-29 12:47:50 +03:00
Ilya Fedin
9536a3c98e Use packaged build in the snap package 2020-01-28 20:38:12 +03:00
Ilya Fedin
05eabfd539 Add autostart support for linux 2020-01-28 16:44:27 +03:00
Ilya Fedin
74942cd06e Use QDBusConnection::connect to fix signal connection on old distributions 2020-01-28 16:43:23 +03:00
John Preston
24da40ef05 Fix -startintray on Ubuntu. 2020-01-28 11:41:05 +03:00
Ilya Fedin
1d85416434 Remove unneeded include from QtDBus notifications 2020-01-24 18:06:58 +03:00
Ilya Fedin
04cfd598e2 Use appindicator in flatpak and fix desktop environment detection, add pavucontrol-qt 2020-01-24 16:51:50 +03:00
Vitaly Zaitsev
b94c8436eb Added missing Qt header. Fixed clang build.
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2020-01-24 15:35:15 +03:00
Ilya Fedin
ffe037f9f1 Fix single instance socket path for compatibility with flatpak 2020-01-23 09:58:12 +03:00
John Preston
fef90ea363 Fix build for Linux. 2020-01-21 23:32:05 +03:00
Ilya Fedin
0480611bf8 Add possibility to build without dbus 2020-01-21 23:30:47 +03:00
John Preston
48b24d12b2 Always ask for TDESKTOP_LAUNCHER_BASENAME on Linux. 2020-01-21 18:47:36 +03:00
kbroulik
b50073d281 Implement inline-reply
On supported notification servers (currently only KDE Plasma 5.18+) this
action will create a reply text field inside the notification.
2020-01-21 15:27:50 +03:00
Ilya Fedin
2298eed8bf Use QStringList::contains also 2020-01-21 11:57:52 +03:00
Nicholas Guriev
8fab9167be Use QStringList::join to print notifications capabilities 2020-01-20 14:05:00 +03:00
Ilya Fedin
0bcc4befa1 Change fc-custom.conf condition to DESKTOP_APP_USE_PACKAGED 2020-01-17 17:49:07 +03:00
John Preston
afe34121af Use MACRO_TO_STRING from lib_base. 2020-01-17 14:15:40 +03:00
Ilya Fedin
ee9336f781 Fix notification actions for Cinnamon, fix notification icon for Gnome, add support for TDESKTOP_LAUNCHER_FILENAME in notifications and fix indentation 2020-01-17 13:40:31 +03:00
John Preston
4eeac7dc18 Fix whitespace and indentation errors.
See #6672, thanks Sea-n.
2020-01-02 14:25:53 +03:00
ilya-fedin
3d36b4f866 Replace libnotify with QtDBus notification implementation (#6825) 2019-12-29 18:41:45 +03:00
John Preston
da4120bddd Fix building without glib. 2019-11-18 10:52:32 +03:00
John Preston
c961acabbc Include private header only if needed. 2019-11-18 10:52:08 +03:00
Christian Hesse
0c0c8f3584 libnotify: capabilities are not exclusive
Capabilities "actions" and "body-markup" can be available at the
same time.

Signed-off-by: Christian Hesse <mail@eworm.de>
2019-11-13 11:22:08 +03:00
John Preston
7bb23519f9 Use base::Platform::ShowInFolder. 2019-10-19 12:27:56 +04:00
John Preston
30a1bd7ba2 Use base::call_delayed. 2019-10-19 12:27:56 +04:00
John Preston
2fc9fd5887 Remove some unused code. 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
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
c9c0d74b68 Fix build for Linux. 2019-09-09 17:50:26 +03:00
John Zimmermann
fd4f384c3b Allow GDK wayland backend when Telegram is running under Wayland
and make sure that it never tries to load gtk2 under wayland, it can
lead to Telegram crashing
2019-09-09 10:25:01 +03:00
John Preston
12a020cd09 Beta version 1.8.5: Fix build for Linux. 2019-09-08 23:38:45 +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
e9ab8df737 Use QLocale::uiLanguages for system language. 2019-08-09 11:51:36 +01:00
Vitaly Lipatov
9276101809 Get language name and country name from QLocale (Linux) 2019-08-09 11:51:36 +01:00
John Zimmermann
0c3773486e linux/specific_linux.h: remove unnecessary include of execinfo 2019-08-09 11:51:35 +01:00
Konstantin Popov
b831766375 Make .desktop file search respect TDESKTOP_LAUNCHER_FILENAME 2019-08-09 11:51:35 +01:00
Nicholas Guriev
325989ed47 Fix small typo 2019-08-09 11:51:35 +01:00
John Preston
0e964b06dc Hook main queue processing to update requests. 2019-07-04 16:26:13 +02:00
John Preston
7d585ab72f Handle located groups as public. 2019-06-21 14:27:46 +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
0868a9f7b9 Use Controller::account in MainWindow. 2019-06-06 14:59:00 +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
45a6985df5 Force GTK file chooser only in the official builds. 2019-05-31 12:03:10 +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
23rd
b2f821d3de Updated version of GCC to 8. 2019-05-20 15:59:06 +03:00
John Zimmermann
4d42e7e5b9 Correctly set _desktopFile to Telegram.desktop if Telegram.desktop was found 2019-04-25 13:39:40 +04:00
John Preston
7cfb122dea Fix crash with event loop nesting tracking. 2019-04-12 17:30:43 +04:00
Vitaly Zaitsev
14ad7a2479 Fixed "Show in Folder" feature on Gnome 3.30+.
Parameter --no-desktop is deprecated and should not be used.

Closes #5896.
2019-04-10 11:20:01 +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 Zimmermann
add2356c8a Generalize Unity Integration to not depend on libunity 2019-02-01 12:34:55 +03:00
John Preston
646d15b257 Add LSFileQuarantineEnabled to the .plist 2019-01-29 14:52:33 +03:00
John Preston
a70e72f75d Application->Sandbox, Messenger->Application. 2019-01-23 12:51:58 +04:00
John Preston
65430d92ea Refactor calls settings panel. 2019-01-11 17:30:57 +04:00
John Preston
3e7a688811 Fix tray icon counter on Linux.
Fixes #5525.
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
Anton Skorochod
4416dab6c1 Allow UnityCounters for KDE5 resolves #4554 2018-12-06 10:57:07 +04:00
John Preston
6562a1f6af Add 'Count unread messages' option. 2018-12-04 14:32:48 +04:00
John Preston
338129faea Destroy boxes in Ui::hideLayer(). 2018-11-26 15:00:31 +04:00
John Preston
3f58c930e3 Use separate download folder for support. 2018-11-22 17:15:52 +04:00
Vitaly Zaitsev
31e3a426a6 Refactored FallbackFontConfig() to use native Qt methods.
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2018-11-16 20:09:33 +04:00
Nicholas Guriev
b6432e7d13 Switch to Ayatana Indicators 2018-11-13 10:30:54 +04:00
John Preston
997d1fbc80 Move custom fonts.conf to resources. 2018-11-12 17:34:47 +04:00
John Preston
8ee958bfa0 Force custom bundled fonts.conf if fontconfig is new.
If system fontconfig version is 2.13 or above use custom FONTCONFIG_FILE.
Fixes #4493, fixes #4240.
2018-11-12 15:26:36 +04:00
Kirill Romanov
496c361bdc Gnome notification fix (#5215)
* Set notification desktop entry hint

* Set X-GNOME-UsesNotifications flag
2018-11-08 14:58:04 +04:00
Marco Trevisan (Treviño)
dcb748c544 destkop: add keywords stanza
They are used by mayor desktops to search through apps.

Remove this modification from snapcraft
2018-11-06 09:50:59 +04:00
John Preston
4e6f55e176 Closed alpha version 1.4.4.1: Fix build for macOS. 2018-11-04 15:51:38 +04:00
John Preston
6db4972208 Fix blurry App Switcher icon on macOS.
Fixes #5267.
2018-11-04 15:51:38 +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
Henning Schild
5292d75617 Linux: disable RegisterCustomScheme when internal updater is disabled
Closes: https://github.com/telegramdesktop/tdesktop/issues/5118
Signed-off-by: Henning Schild <henning@hennsch.de>
2018-09-01 10:12:09 +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
be043a4437 Remove BypassWindowManagerHint in MediaView / Passport.
It makes all kinds of usages buggy, including choose file dialog.

Fixes #4936.
I hope fixes #4950, I hope fixes #4955, I hope fixes #3553.
2018-07-31 22:55:30 +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
b0077d98f0 Version 1.3.7: Fix file dialog parent widget.
Regression was introduced in 67ea175fc6.

Fixes #4817.
2018-06-11 23:40:30 +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
Marco Trevisan (Treviño)
e88c575d4a linux: use $HOME to determine actual user path
As it could be different in confined environments.
2018-03-10 00:55:24 +03:00
Marco Trevisan (Treviño)
0de9c62675 linux-desktop-environment: detect Ubuntu properly enabling features
In Ubuntu (running in GNOME) we support AppIndicator and
Unity counters still.
2018-03-10 00:52:06 +03:00
Marco Trevisan
9dc03c4f0f Linux ARM compile fixes (#4399)
This fixes errors when compiling in ARM
2018-03-09 23:48:47 +03:00
John Preston
2aa477176c Fix build for Xcode / GCC. 2018-02-08 12:20:52 +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
14034c255e Replace QSharedPointer with std::shared_ptr. 2017-12-18 13:07:18 +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
Mike Zueff
64e9958585 Fixed awesome WM tray icon. 2017-12-07 09:11:39 +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
f4d9618487 Improve layer / section exchange for Info. 2017-11-16 07:59:04 +04:00