Get rid of unneeded MainWindow::Private class on Linux

This commit is contained in:
Ilya Fedin 2022-03-01 05:51:40 +04:00 committed by John Preston
parent 8db567ba7a
commit daaa654065
2 changed files with 10 additions and 14 deletions

View file

@ -27,7 +27,6 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#include "window/window_session_controller.h" #include "window/window_session_controller.h"
#include "base/platform/base_platform_info.h" #include "base/platform/base_platform_info.h"
#include "base/event_filter.h" #include "base/event_filter.h"
#include "base/unique_qptr.h"
#include "ui/widgets/popup_menu.h" #include "ui/widgets/popup_menu.h"
#include "ui/widgets/input_fields.h" #include "ui/widgets/input_fields.h"
#include "ui/ui_utility.h" #include "ui/ui_utility.h"
@ -405,14 +404,8 @@ uint djbStringHash(const std::string &string) {
} // namespace } // namespace
class MainWindow::Private {
public:
base::unique_qptr<Ui::PopupMenu> trayIconMenuXEmbed;
};
MainWindow::MainWindow(not_null<Window::Controller*> controller) MainWindow::MainWindow(not_null<Window::Controller*> controller)
: Window::MainWindow(controller) : Window::MainWindow(controller) {
, _private(std::make_unique<Private>()) {
} }
void MainWindow::initHook() { void MainWindow::initHook() {
@ -462,7 +455,7 @@ bool MainWindow::isActiveForTrayMenu() {
} }
void MainWindow::psShowTrayMenu() { void MainWindow::psShowTrayMenu() {
_private->trayIconMenuXEmbed->popup(QCursor::pos()); _trayIconMenuXEmbed->popup(QCursor::pos());
} }
void MainWindow::psTrayMenuUpdated() { void MainWindow::psTrayMenuUpdated() {
@ -555,8 +548,8 @@ void MainWindow::updateIconCounters() {
} }
void MainWindow::initTrayMenuHook() { void MainWindow::initTrayMenuHook() {
_private->trayIconMenuXEmbed.emplace(nullptr, trayIconMenu); _trayIconMenuXEmbed.emplace(nullptr, trayIconMenu);
_private->trayIconMenuXEmbed->deleteOnHide(false); _trayIconMenuXEmbed->deleteOnHide(false);
} }
void MainWindow::createGlobalMenu() { void MainWindow::createGlobalMenu() {

View file

@ -8,9 +8,14 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
#pragma once #pragma once
#include "platform/platform_main_window.h" #include "platform/platform_main_window.h"
#include "base/unique_qptr.h"
class QMenuBar; class QMenuBar;
namespace Ui {
class PopupMenu;
} // namespace Ui
namespace Platform { namespace Platform {
class MainWindow : public Window::MainWindow { class MainWindow : public Window::MainWindow {
@ -43,9 +48,7 @@ protected:
void psSetupTrayIcon(); void psSetupTrayIcon();
private: private:
class Private; base::unique_qptr<Ui::PopupMenu> _trayIconMenuXEmbed;
friend class Private;
const std::unique_ptr<Private> _private;
QMenuBar *psMainMenu = nullptr; QMenuBar *psMainMenu = nullptr;
QAction *psLogout = nullptr; QAction *psLogout = nullptr;