Commit Graph

149 Commits

Author SHA1 Message Date
Magnus Groß
c2b2d0a92a Do not destroy drag after launchDrag()
On X11 we need to keep the QDrag around a little longer.

Right now, drag is scoped local to launchDrag() and will be destroyed
immediately when launchDrag() finishes. However for X11 we must keep the
drag object alive a little longer. It may only be destroyed once the
drag operation has been accepted by another window, otherwise drag and
drop is broken on Linux and no action happens when something is dragged
from Telegram into another window.

This is because there is still communication happening in the XDND
protocol once QDrag::exec() finishes. See the documentation for
reference: https://freedesktop.org/wiki/Specifications/XDND/

Fixes #17291
2021-12-22 14:15:36 +04:00
Ilya Fedin
936d4004ff Update controls geometry in MainWindow according to body changes 2021-11-10 19:30:29 +04:00
John Preston
aef45b3a1d Refactor icon unread counter painting. 2021-11-02 20:12:57 +04:00
Ilya Fedin
847c01d605 Add Qt 6 support
Tested only on Linux so far
2021-10-21 13:15:00 +04:00
John Preston
703ea9aacd Apply scale keeping window center in place. 2021-09-17 10:25:36 +03:00
John Preston
3e681e5449 Always force window frame inside screen geometry.
I hope this fixes #16934.
2021-09-17 10:25:36 +03:00
Ilya Fedin
e92ae40ecb Implement close to taskbar option 2021-09-13 17:46:53 +03:00
23rd
613f2ba708 Replaced instant base::call_delayed with InvokeQueued. 2021-09-07 23:41:07 +03:00
John Preston
1dec054766 Check if native window frame fits for saved geometry. 2021-08-10 15:46:18 +03:00
Ilya Fedin
1ebf27bfa1 Switch MainWindow to Ui::RpWindow 2021-07-28 18:05:39 +03:00
Ilya Fedin
ba9b72e038 Fix -Wunused-variable warnings with gcc 2021-07-19 22:31:27 +03:00
John Preston
4276b6cce0 Use rpl for Window::Theme::Background updates. 2021-07-15 16:42:36 +03:00
Ilya Fedin
79cc797aff Fix -Wunused-variable warnings 2021-07-13 21:43:34 +03:00
23rd
a631a28092 Removed App::pixmapFromImageInPlace. 2021-07-06 12:13:06 +03:00
Ilya Fedin
7e6439e4f8 Fix counting screen bottom point when restoring geometry 2021-06-30 00:27:39 +03:00
John Preston
e1120d1cb5 Optimize out most of LastUserInputTime() calls.
Fixes #16118.
2021-06-18 19:22:36 +04:00
23rd
707b36dc12 Moved DBIWorkMode to Core::Settings. 2021-06-16 09:31:32 +03:00
23rd
5334372671 Moved WorkMode global variable from facades to core settings. 2021-06-16 09:31:32 +03:00
23rd
9e6afa0d4e Removed observable dragFinished from MainWindow. 2021-06-16 09:31:32 +03:00
Ilya Fedin
7de8d6f9ac Fix resetting of available geometry fix in some cases 2021-05-11 10:43:04 +03:00
Ilya Fedin
7b466e0643 Take shadow into account when saving/restoring window geometry 2021-04-28 10:13:54 +04:00
John Preston
aa843ee978 Update lib_ui. 2021-04-12 13:02:53 +04:00
Ilya Fedin
ad0c93cbb1 Take shadow into account when saving/restoring window geometry 2021-04-12 11:55:30 +03:00
Ilya Fedin
0cd8cc67c5 Scale window icon manually when getting from icon theme 2021-04-05 08:02:50 +03:00
Ilya Fedin
ae0b9141dd Trying to get rid of unused variables... 2021-03-15 11:40:44 +03:00
John Preston
ae5c7b19f6 Fix refreshing MainWindow::desktopRect. 2021-03-13 14:37:58 +04:00
John Preston
54f06740d5 Remove some App::wnd() calls. 2021-03-03 11:29:26 +04:00
John Preston
204dd0a869 Revert "Use custom method to focus main window on X11"
This reverts commit f9bba75395.

See #10441.
2021-03-01 11:47:59 +04:00
Ilya Fedin
f9bba75395 Use custom method to focus main window on X11 2021-02-24 21:41:14 +04:00
Ilya Fedin
1a3253ae8b Implement three items tray menu on Linux 2021-02-23 17:14:57 +04:00
Ilya Fedin
15d18077b8 Use new methods from lib_ui 2021-02-19 14:15:09 +04:00
John Preston
b3660f1ed8 Version 2.5.9: Move window position to Core::Settings. 2021-02-17 19:20:05 +04:00
Ilya Fedin
57ca6e23b9 Port Qt-based title widget to lib_ui 2021-02-04 18:11:44 +04:00
Ilya Fedin
f51055d606 Ensure the window is not out of available geometry on geometry restoring 2021-01-31 12:38:41 +04:00
Ilya Fedin
9c86755546 Take custom scale in account when saving window geometry 2021-01-31 12:38:41 +04:00
John Preston
40e90af76d Detect tablet mode on Windows 10. 2021-01-25 16:47:41 +04:00
Ilya Fedin
5e60b87cf9 Remove platform_specific.h include from mainwindow.h
In order to avoid mass rebuilds on specific_*.h changing
2021-01-22 17:22:37 +04:00
John Preston
574d915c23 Fix build and tray icon menu on Windows. 2021-01-22 16:53:59 +04:00
Ilya Fedin
d7ef484aec Use QWindow::setFlag that doesn't hide the windw 2020-11-16 12:33:55 +03:00
Ilya Fedin
e0de4dbc5e Replace new #ifdef Q_OS_LINUX in main_window.cpp added a month ago 2020-11-09 11:19:03 +03:00
John Preston
4ebc62afd2 Fix build on Linux. 2020-10-02 17:29:28 +03:00
John Preston
18cb26fed6 Change flags / attributes when changing window frame. 2020-10-02 16:17:53 +03:00
Ilya Fedin
5cc4066b65 Don't change window flags in Window::MainWindow::recountGeometryConstraints 2020-10-02 16:10:38 +03:00
John Preston
c4dfc634d0 Fix crash in main window destruction. 2020-10-01 17:45:25 +03:00
Ilya Fedin
4c2779bbaf Fix saving maximized state on Linux 2020-09-29 18:25:57 +03:00
Ilya Fedin
612e0d4a10 Update window shadow size on window state change 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
0139390c71 Use tg_owt in OS X 10.10-10.11 build. 2020-08-21 17:52:13 +04:00
Ilya Fedin
d02092f09e Add main window shadow for Linux 2020-08-18 08:16:17 +04:00