Commit Graph

97 Commits

Author SHA1 Message Date
John Preston 0e1b53dfa7 Use single global menu on macOS. 2026-04-24 13:06:15 +07:00
John Preston 1ba2e78f4d Make DeadlockDetector an experimental setting. 2026-01-02 16:56:58 +04:00
23rd eca8dfb0ec Renamed rpl::start_with_ with rpl::on_. 2025-12-10 21:28:33 +03:00
Ilya Fedin 5fbf280e4a Combine startUrls and sendPaths
This commit allows to handle multiple URLs of all types as positional arguments simultaneously:
* tg:// links
* tonsite:// links
* interpret:// file paths
* generic file paths (to share files)

This allows to Drag'n'Drop files to the Telegram shortcut/binary.
2025-10-23 10:23:53 +04:00
John Preston 93b7c47cda Support building on Windows with Qt 6. 2024-06-21 11:36:18 +04:00
Ilya Fedin 5e3e9ba824 Ensure Qt doesn't prevent quit due to ignored widget close events 2024-05-22 16:47:08 +04:00
Ilya Fedin fe06cd63ac Lock event loop 2024-04-09 20:48:47 +04:00
John Preston 0ce6a4cbdb Beta version 4.16.3: Re-enable system proxy (Linux).
This reverts commit 1e6fb202f0.
2024-04-05 20:48:06 +04:00
John Preston 1e6fb202f0 Re-apply "Disable system proxy support on Linux".
This reverts commit c71c24a6bc.
2024-04-01 22:44:25 +04:00
John Preston c71c24a6bc Re-revert "Disable system proxy support on Linux".
This reverts commit 55b2b04e2e.
2024-03-25 10:25:34 +04:00
John Preston 55b2b04e2e Reapply "Disable system proxy support on Linux"
This reverts commit 202a4064a4.
2024-03-16 09:54:07 +04:00
John Preston 202a4064a4 Revert "Disable system proxy support on Linux"
This reverts commit 3af646a584.
2024-03-13 21:20:31 +04:00
Ilya Fedin 3af646a584 Disable system proxy support on Linux
Reading system proxy on Linux reads to massive crashes in system libraries.

Since those crashes are unreproducible in development environment, it's not possible to find the root cause.

Workarounds #27482.
2024-02-18 00:26:36 +04:00
Ilya Fedin 29646707a1 QString::arg usage optimization 2023-12-31 22:03:57 +00:00
Ilya Fedin ea37e83b13 Revert "Force enable fractional-scale-v1 experimental option"
This reverts commit 4696f731da.
2023-12-27 22:44:58 +00:00
Ilya Fedin e173c727f7 Fix remaining known xdg-output fractional scaling issues on Wayland
And enable it by default
2023-12-07 10:24:19 +04:00
Ilya Fedin 664ebe4ed0 Use xdg-output for Wayland fractional scaling
That's way more stable
2023-12-01 15:39:14 +04:00
Ilya Fedin 4a0ee22670 Shorten setting QSessionManager restart hint 2023-11-27 12:02:19 +04:00
Ilya Fedin 4696f731da Force enable fractional-scale-v1 experimental option 2023-11-21 21:20:50 +04:00
Ilya Fedin 618ce15b21 Revert "Workaround Wayland popup menu bug."
This reverts commit 51027a0bc2.
2023-09-26 12:26:18 +04:00
Ilya Fedin ff9321e971 Main thread deadlock detector for debug mode 2023-09-21 12:23:23 +04:00
Ilya Fedin ec9f8943de Use QEvent::registerEventType for custom event types 2023-08-16 16:41:55 +02:00
John Preston 51027a0bc2 Workaround Wayland popup menu bug.
When hiding a child popup first the app receives ApplicationDeactivate
event and in a short time (a couple of ms) ApplicationActivate.

But the first event hides all popups, so the parent popup gets closed too.

Delay handling of ApplicationDeactivate event in this specific case.
2023-07-20 07:20:47 +04:00
Ilya Fedin a7bd097b2f Have a global Core::Launcher accessor
This allows to use Launcher in code executing before Sandbox is created
2023-06-13 12:19:21 +04:00
Ilya Fedin a6e5e7ab84 Tell QLocalSocket the socket is abstract 2023-04-07 12:21:35 +04:00
Ilya Fedin e632ac631e Add version check for abstract sockets 2023-04-02 00:06:04 +04:00
Ilya Fedin 30f057fff5 Use abstract socket for single instance on Linux 2023-04-01 00:17:58 +04:00
John Preston 7264d82e8d Allow larger scales on high-dpi screens. 2023-03-15 17:17:46 +04:00
Ilya Fedin 0b100884fc Round system scale in step of 5 points, just like in settings 2023-02-11 15:40:00 +04:00
Ilya Fedin 6e89d41d58 Use variables from style namespace instead of hardcoded scale limits 2023-02-11 15:40:00 +04:00
John Preston 7023b013ce Initial support of separate windows for accounts. 2023-01-19 09:45:28 +04:00
John Preston 39075538fb Enable RoundPreferFloor HighDpi support on Windows.
Add an experimental setting for exact HighDPI on Windows.
2023-01-12 13:57:09 +04:00
John Preston 05911a7172 Fix initial scale counting from dpi. 2023-01-10 09:51:12 +04:00
John Preston c49dac57b7 Don't use window title for IPC. 2023-01-09 16:08:34 +04:00
Ilya Fedin 6288da2f3d Remove socket errors from Qt adapters 2023-01-09 15:01:14 +04:00
John Preston 3532e187fd Write more DPI logs. 2023-01-09 09:05:07 +04:00
23rd 4fabb3f2a2 Replaced some qsl with u""_q literal. 2022-11-30 17:17:14 +03:00
John Preston ad3f8e72a0 Remove namespace App. 2022-11-30 17:28:09 +04:00
Ilya Fedin 2f0d14bd35 Use customWorkingDir() outside of Core::Launcher
This allows to add -workdir to shortcuts only if the process was launched with -workdir
2022-11-21 21:30:17 +00:00
John Preston 644ec1f599 Remove base::Observable / base::Variable. 2022-11-11 11:43:24 +04:00
Ilya Fedin 4f261ced8e Ceil device pixel ratio
Qt 6.4 provides QT_WIDGETS_HIGHDPI_DOWNSCALE that allows widgets to draw at integer device pixel ratio by using the next integer. Ceiling this value makes tdesktop in sync with technique and provides sharp content.

Without QT_WIDGETS_HIGHDPI_DOWNSCALE, this doesn't makes the content sharp, but the quality is still better as Qt attempts to downscale those graphic rather than upscale.
2022-09-02 21:27:41 +04:00
Ilya Fedin 0921ae283b Send XDG_ACTIVATION_TOKEN to the first instance 2022-08-03 15:26:08 +04:00
Ilya Fedin 0a876226fe Move QT_FONT_DPI workaround to Qt patches 2022-06-14 16:36:44 +04:00
Ilya Fedin db33fbac27 Get rid of DisableCustomScaling hack
This shouldn't be needed since Qt is built without High-DPI scaling support in official binaries and QT_SCALE_FACTOR is a debug environment variable, so any use of it is a user's environment misconfiguration.

https://doc.qt.io/qt-6/highdpi.html#environment-variable-reference
2022-05-19 17:23:47 +04:00
Ilya Fedin 9a4d2bc8f9 Make processDpi a constexpr and remove unneeded qreal 2022-04-19 08:40:07 +04:00
John Preston 28f2c213f7 Remove app module. Support delayed quit by Cmd+Q on macOS. 2022-01-27 15:54:20 +03:00
John Preston b8f1cebeb6 Support confirm-on-Quit on macOS. 2022-01-26 14:50:10 +03:00
23rd 0143d22a21 Split qt_adapters to separated files. 2022-01-26 10:33:28 +03:00
Ilya Fedin 7ff7473db6 Auto-check for many instance
This option was invented when single instance check wasn't adapted for -workdir. Now, -workdir can work without -many and this option is redudant, but auto-update prevention is helpful. Let's autodetect whether the binary is already running with a lock file.
2021-12-22 14:07:22 +04:00
John Preston 9b2d080e8e Fix restart before exec on macOS. 2021-11-08 17:42:33 +04:00