Commit Graph

165 Commits

Author SHA1 Message Date
23rd fe7cffc509 Improved management of online status from non-primary windows.
– The online status of the user should be checked and updated only
when the previous active window and the current active window both have
different sessions.
– Removed MainWindow::activeChangedHook since windows should not
change online status on their own on activating.
– Renamed Application::maybeActiveSession
to Application::maybePrimarySession.
– Added updating of online status on changing of the current account
since this seems to have been missed.
2022-06-12 16:07:41 +03:00
John Preston a780fbd09b Add "ctrl-click-chat-new-window" option. 2022-06-07 22:05:37 +04:00
23rd 0e16a50bbc Completely removed common and platform code for tray from main window. 2022-05-03 04:25:36 +03:00
23rd 94e06c6846 Removed Windows tray implementation from main window. 2022-05-03 04:25:36 +03:00
23rd 56fdc7d39a Added common and macOS tray implementations. 2022-05-03 04:25:36 +03:00
Ilya Fedin bf4fc2596a Remove unneeded primary screen fallbacks
QWidget::screen automatically fallbacks to primary screen as the last effort, so this is not needed
2022-04-19 09:33:23 +04:00
Ilya Fedin 1e744efef8 Replace setMinimumWidth with updateMinimumSize in Window::MainWindow
There's no RpWindow::setMinimumWidth
2022-03-23 09:40:28 +04:00
23rd add6352012 Provided primary MainWindow as default parent for toasts. 2022-02-25 19:41:16 +03:00
John Preston e4a7c01541 Move window_outdated_bar to td_ui subproject. 2022-02-25 14:14:43 +03:00
Ilya Fedin feb2d3066e Use RpWindow's method to set minimum window size 2022-02-22 18:15:05 +03: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 883509903f Fix build with Xcode. 2022-01-22 23:27:13 +03:00
Ilya Fedin 692adacc2a Fix support icon on Linux when system icon is present 2022-01-22 18:39:53 +04:00
John Preston 07f72c20eb Change application icon only in support mode.
Fixes #23895.
2022-01-22 16:40:57 +03:00
John Preston 18e6e2da9e Open specific chat only in one window. 2022-01-04 19:36:33 +03:00
John Preston 8b0725650d Move global event filter to Platform::Integration on Windows. 2022-01-04 15:29:40 +03:00
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