Commit Graph

182 Commits

Author SHA1 Message Date
Ilya Fedin ceb323ac7c Use QMenuBar instead of own global menu implementation on Linux
This is another attempt of 79f96480c2
2022-01-22 21:18:37 +04:00
Ilya Fedin b65d40a22b Get rid of custom SNI implementation
XDG is inventing new tray specification, so SNI will be outdated soon and it's better to just use QSystemTrayIcon.
I believe all the major drawbacks of QSystemTrayIcon are solved and we can live with minor ones.
Given the planned MainWindow refactoring, it seems it's the best time to do that.
2022-01-22 21:18:37 +04:00
Klemens Nanni 078a2af385 Fix -Wunused-const-variable warnings under DESKTOP_APP_DISABLE_DBUS_INTEGRATION
OpenBSD builds without dbus integration (for now);  this fixes the warnings.
Those variables have been introduced in multiple commits.
2021-12-29 20:16:04 +03:00
Ilya Fedin 33b7ac209e Don't use QPlatformNativeInterface-based XCB::GetRootWindowFromQt 2021-12-13 14:24:34 +04:00
Ilya Fedin 8fda1169e5 Get rid of Platform::MainWindow::psLinux* 2021-11-26 18:28:37 +04:00
Ilya Fedin 53305f5f46 Fix paste check in Linux global menu 2021-11-26 18:28:37 +04:00
John Preston aef45b3a1d Refactor icon unread counter painting. 2021-11-02 20:12:57 +04:00
Ilya Fedin c50a5db277 Restore dbusmenu-qt dependent functionality with Qt 6 2021-10-24 20:01:55 +04:00
Ilya Fedin 847c01d605 Add Qt 6 support
Tested only on Linux so far
2021-10-21 13:15:00 +04:00
Ilya Fedin ac86f3e5bd Use Communications category for tray icon
Since tdesktop fits it
2021-08-10 15:42:21 +03:00
Ilya Fedin d986e70a89 Fix global menu on 64-bit systems with X11
When Wayland support for global menu was added (0b86feeeb5), X11 support was broken since QWindow::winId returns WId what is a quintptr that expands to uint32 on 32-bit and to uint64 on 64-bit, while AppMenu d-bus service accepts only uint32.
2021-07-28 23:41:36 +03:00
Ilya Fedin 1ebf27bfa1 Switch MainWindow to Ui::RpWindow 2021-07-28 18:05:39 +03:00
23rd a631a28092 Removed App::pixmapFromImageInPlace. 2021-07-06 12:13:06 +03:00
Ilya Fedin 6f031a715e Revert "Use QMenuBar instead of own global menu implementation on Linux"
This reverts commit 79f96480c2.
2021-07-05 21:01:20 +03:00
Ilya Fedin c3fb392906 Clean dbus-specific code in main_window_linux.h 2021-06-29 10:30:48 +03:00
Ilya Fedin a59bfdb2f8 Fix handleNativeSurfaceChanged when dbus integration is disabled 2021-06-29 10:30:48 +03:00
Ilya Fedin 79f96480c2 Use QMenuBar instead of own global menu implementation on Linux 2021-06-29 10:30:48 +03:00
23rd b422ec025e Removed Ui::show from classes that have pointer to Controller. 2021-06-17 10:57:45 +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
Ilya Fedin c6dcc57c5e Set _KDE_NET_WM_DESKTOP_FILE on X11 2021-05-31 20:30:51 +03:00
Ilya Fedin 3cf739eca9 Use event filter to get surface expose event 2021-05-17 10:00:01 +03:00
Ilya Fedin cfee688feb Replace call_delayed with InvokeQueued in MainWindow::handleVisibleChanged 2021-05-17 10:00:01 +03:00
Ilya Fedin 0b86feeeb5 Implement appmenu on Wayland with org_kde_kwin_appmenu protocol 2021-05-17 10:00:01 +03:00
Ilya Fedin 434ef34378 Implement taskbar icon hidding on Wayland with org_kde_plasma_shell protocol 2021-05-17 10:00:01 +03:00
Ilya Fedin 0d96657c33 Fix check for disconnected error 2021-04-30 08:43:25 +03:00
Ilya Fedin c08a148baf Fix build on 32-bit systems 2021-03-23 18:21:07 +03:00
Ilya Fedin e493ab12dc Get rid of GetLauncherFilename
Use QGuiApplication::desktopFileName directly instead
2021-03-12 15:44:37 +04:00
Ilya Fedin cc736158a6 Get rid of QByteArray in djbStringHash 2021-03-10 09:46:13 +04:00
Ilya Fedin 092b6e7c18 Fix spaces on ends of lines 2021-03-05 13:31:56 +04:00
Ilya Fedin b08c33cf8a Move remaining usage of dbus to glibmm in main_window_linux 2021-03-04 12:07:54 +04:00
Ilya Fedin 8042a83fd2 Move glib usage to glibmm 2021-03-04 12:07:54 +04:00
John Preston 54f06740d5 Remove some App::wnd() calls. 2021-03-03 11:29:26 +04:00
Ilya Fedin 9b88f816d6 Use new Platform::IsX11 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 14b09e88d6 Add DESKTOP_APP_DISABLE_X11_INTEGRATION 2021-02-22 23:39:00 +04:00
Ilya Fedin bbf49b024a Fix implicit conversions from QByteArray 2021-02-19 14:15:09 +04:00
Ilya Fedin 513054a307 Get rid of unneeded material wayland decorations 2021-02-19 14:15:09 +04:00
Ilya Fedin f1ee5b5704 Expose gtk integration to lib_base 2021-02-19 12:41:09 +04:00
23rd fb9a34a069 Removed App::wnd for opening about box. 2021-02-04 18:13:04 +04:00
23rd b4af805521 Moved showLogoutConfirmation from MainWindow to Window::Controller. 2021-02-04 18:13:03 +04:00
23rd 1f80c297ec Removed App:wnd for opening settings.
Removed unused App::showSettings from facades.
2021-02-04 18:13:03 +04:00
23rd 019e691fbb Moved some session dependent methods to SessionController.
MainWindow::showAddContact(),
MainWindow::showNewGroup(),
MainWindow::showNewChannel().
2021-02-04 18:13:03 +04:00
Ilya Fedin f1e0b36f61 Use operator-> for tray icon biggest size 2021-01-22 17:22:37 +04:00
Ilya Fedin ada22ee6cc Split GTK integration into a singleton 2021-01-22 17:22:37 +04:00
Ilya Fedin 2fe2105a5f Don't add counter when icon theme has 'panel' icon
These icons should have a dot indicating unread messages, counter is redudant for them
2021-01-22 17:09:50 +04:00
Ilya Fedin 690c5df87c Format dbus errors logging 2021-01-22 17:02:50 +04:00
Ilya Fedin 1e2759840d Check _sniDBusProxy for nullptr before connecting to signals 2021-01-22 17:02:50 +04:00
Ilya Fedin bad888496c Decrease some indentation in linux platform code 2021-01-22 17:02:50 +04:00
John Preston 574d915c23 Fix build and tray icon menu on Windows. 2021-01-22 16:53:59 +04:00