Initialized empty files for tray implementations.
This commit is contained in:
		
							parent
							
								
									511805199f
								
							
						
					
					
						commit
						de194c4aa2
					
				
					 12 changed files with 193 additions and 0 deletions
				
			
		| 
						 | 
					@ -990,6 +990,8 @@ PRIVATE
 | 
				
			||||||
    platform/linux/notifications_manager_linux.h
 | 
					    platform/linux/notifications_manager_linux.h
 | 
				
			||||||
    platform/linux/specific_linux.cpp
 | 
					    platform/linux/specific_linux.cpp
 | 
				
			||||||
    platform/linux/specific_linux.h
 | 
					    platform/linux/specific_linux.h
 | 
				
			||||||
 | 
					    platform/linux/tray_linux.cpp
 | 
				
			||||||
 | 
					    platform/linux/tray_linux.h
 | 
				
			||||||
    platform/mac/file_utilities_mac.mm
 | 
					    platform/mac/file_utilities_mac.mm
 | 
				
			||||||
    platform/mac/file_utilities_mac.h
 | 
					    platform/mac/file_utilities_mac.h
 | 
				
			||||||
    platform/mac/launcher_mac.mm
 | 
					    platform/mac/launcher_mac.mm
 | 
				
			||||||
| 
						 | 
					@ -1005,6 +1007,8 @@ PRIVATE
 | 
				
			||||||
    platform/mac/specific_mac.h
 | 
					    platform/mac/specific_mac.h
 | 
				
			||||||
    platform/mac/specific_mac_p.mm
 | 
					    platform/mac/specific_mac_p.mm
 | 
				
			||||||
    platform/mac/specific_mac_p.h
 | 
					    platform/mac/specific_mac_p.h
 | 
				
			||||||
 | 
					    platform/mac/tray_mac.mm
 | 
				
			||||||
 | 
					    platform/mac/tray_mac.h
 | 
				
			||||||
    platform/mac/window_title_mac.mm
 | 
					    platform/mac/window_title_mac.mm
 | 
				
			||||||
    platform/mac/touchbar/items/mac_formatter_item.h
 | 
					    platform/mac/touchbar/items/mac_formatter_item.h
 | 
				
			||||||
    platform/mac/touchbar/items/mac_formatter_item.mm
 | 
					    platform/mac/touchbar/items/mac_formatter_item.mm
 | 
				
			||||||
| 
						 | 
					@ -1038,6 +1042,8 @@ PRIVATE
 | 
				
			||||||
    platform/win/notifications_manager_win.h
 | 
					    platform/win/notifications_manager_win.h
 | 
				
			||||||
    platform/win/specific_win.cpp
 | 
					    platform/win/specific_win.cpp
 | 
				
			||||||
    platform/win/specific_win.h
 | 
					    platform/win/specific_win.h
 | 
				
			||||||
 | 
					    platform/win/tray_win.cpp
 | 
				
			||||||
 | 
					    platform/win/tray_win.h
 | 
				
			||||||
    platform/win/windows_app_user_model_id.cpp
 | 
					    platform/win/windows_app_user_model_id.cpp
 | 
				
			||||||
    platform/win/windows_app_user_model_id.h
 | 
					    platform/win/windows_app_user_model_id.h
 | 
				
			||||||
    platform/win/windows_dlls.cpp
 | 
					    platform/win/windows_dlls.cpp
 | 
				
			||||||
| 
						 | 
					@ -1054,6 +1060,7 @@ PRIVATE
 | 
				
			||||||
    platform/platform_main_window.h
 | 
					    platform/platform_main_window.h
 | 
				
			||||||
    platform/platform_notifications_manager.h
 | 
					    platform/platform_notifications_manager.h
 | 
				
			||||||
    platform/platform_specific.h
 | 
					    platform/platform_specific.h
 | 
				
			||||||
 | 
					    platform/platform_tray.h
 | 
				
			||||||
    platform/platform_window_title.h
 | 
					    platform/platform_window_title.h
 | 
				
			||||||
    profile/profile_back_button.cpp
 | 
					    profile/profile_back_button.cpp
 | 
				
			||||||
    profile/profile_back_button.h
 | 
					    profile/profile_back_button.h
 | 
				
			||||||
| 
						 | 
					@ -1260,6 +1267,8 @@ PRIVATE
 | 
				
			||||||
    settings.cpp
 | 
					    settings.cpp
 | 
				
			||||||
    settings.h
 | 
					    settings.h
 | 
				
			||||||
    stdafx.h
 | 
					    stdafx.h
 | 
				
			||||||
 | 
					    tray.cpp
 | 
				
			||||||
 | 
					    tray.h
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if (NOT build_winstore)
 | 
					if (NOT build_winstore)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -46,6 +46,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
#include "lang/lang_instance.h"
 | 
					#include "lang/lang_instance.h"
 | 
				
			||||||
#include "inline_bots/bot_attach_web_view.h"
 | 
					#include "inline_bots/bot_attach_web_view.h"
 | 
				
			||||||
#include "mainwidget.h"
 | 
					#include "mainwidget.h"
 | 
				
			||||||
 | 
					#include "tray.h"
 | 
				
			||||||
#include "core/file_utilities.h"
 | 
					#include "core/file_utilities.h"
 | 
				
			||||||
#include "core/click_handler_types.h" // ClickHandlerContext.
 | 
					#include "core/click_handler_types.h" // ClickHandlerContext.
 | 
				
			||||||
#include "core/crash_reports.h"
 | 
					#include "core/crash_reports.h"
 | 
				
			||||||
| 
						 | 
					@ -149,6 +150,7 @@ Application::Application(not_null<Launcher*> launcher)
 | 
				
			||||||
, _langpack(std::make_unique<Lang::Instance>())
 | 
					, _langpack(std::make_unique<Lang::Instance>())
 | 
				
			||||||
, _langCloudManager(std::make_unique<Lang::CloudManager>(langpack()))
 | 
					, _langCloudManager(std::make_unique<Lang::CloudManager>(langpack()))
 | 
				
			||||||
, _emojiKeywords(std::make_unique<ChatHelpers::EmojiKeywords>())
 | 
					, _emojiKeywords(std::make_unique<ChatHelpers::EmojiKeywords>())
 | 
				
			||||||
 | 
					, _tray(std::make_unique<Tray>())
 | 
				
			||||||
, _autoLockTimer([=] { checkAutoLock(); }) {
 | 
					, _autoLockTimer([=] { checkAutoLock(); }) {
 | 
				
			||||||
	Ui::Integration::Set(&_private->uiIntegration);
 | 
						Ui::Integration::Set(&_private->uiIntegration);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -300,6 +302,8 @@ void Application::run() {
 | 
				
			||||||
	startShortcuts();
 | 
						startShortcuts();
 | 
				
			||||||
	startDomain();
 | 
						startDomain();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						startTray();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	_primaryWindow->widget()->show();
 | 
						_primaryWindow->widget()->show();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	const auto currentGeometry = _primaryWindow->widget()->geometry();
 | 
						const auto currentGeometry = _primaryWindow->widget()->geometry();
 | 
				
			||||||
| 
						 | 
					@ -409,6 +413,9 @@ void Application::startSystemDarkModeViewer() {
 | 
				
			||||||
	}, _lifetime);
 | 
						}, _lifetime);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void Application::startTray() {
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
auto Application::prepareEmojiSourceImages()
 | 
					auto Application::prepareEmojiSourceImages()
 | 
				
			||||||
-> std::shared_ptr<Ui::Emoji::UniversalImages> {
 | 
					-> std::shared_ptr<Ui::Emoji::UniversalImages> {
 | 
				
			||||||
	const auto &images = Ui::Emoji::SourceImages();
 | 
						const auto &images = Ui::Emoji::SourceImages();
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -103,6 +103,7 @@ namespace Core {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class Launcher;
 | 
					class Launcher;
 | 
				
			||||||
struct LocalUrlHandler;
 | 
					struct LocalUrlHandler;
 | 
				
			||||||
 | 
					class Tray;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
enum class LaunchState {
 | 
					enum class LaunchState {
 | 
				
			||||||
	Running,
 | 
						Running,
 | 
				
			||||||
| 
						 | 
					@ -317,6 +318,7 @@ private:
 | 
				
			||||||
	void startDomain();
 | 
						void startDomain();
 | 
				
			||||||
	void startEmojiImageLoader();
 | 
						void startEmojiImageLoader();
 | 
				
			||||||
	void startSystemDarkModeViewer();
 | 
						void startSystemDarkModeViewer();
 | 
				
			||||||
 | 
						void startTray();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	friend void QuitAttempt();
 | 
						friend void QuitAttempt();
 | 
				
			||||||
	void quitDelayed();
 | 
						void quitDelayed();
 | 
				
			||||||
| 
						 | 
					@ -377,6 +379,8 @@ private:
 | 
				
			||||||
	std::unique_ptr<Lang::Translator> _translator;
 | 
						std::unique_ptr<Lang::Translator> _translator;
 | 
				
			||||||
	QPointer<Ui::BoxContent> _badProxyDisableBox;
 | 
						QPointer<Ui::BoxContent> _badProxyDisableBox;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						const std::unique_ptr<Tray> _tray;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	std::unique_ptr<Media::Player::FloatController> _floatPlayers;
 | 
						std::unique_ptr<Media::Player::FloatController> _floatPlayers;
 | 
				
			||||||
	Media::Player::FloatDelegate *_defaultFloatPlayerDelegate = nullptr;
 | 
						Media::Player::FloatDelegate *_defaultFloatPlayerDelegate = nullptr;
 | 
				
			||||||
	Media::Player::FloatDelegate *_replacementFloatPlayerDelegate = nullptr;
 | 
						Media::Player::FloatDelegate *_replacementFloatPlayerDelegate = nullptr;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										15
									
								
								Telegram/SourceFiles/platform/linux/tray_linux.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Telegram/SourceFiles/platform/linux/tray_linux.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#include "platform/linux/tray_linux.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tray::Tray() {
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
							
								
								
									
										22
									
								
								Telegram/SourceFiles/platform/linux/tray_linux.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								Telegram/SourceFiles/platform/linux/tray_linux.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "platform/platform_tray.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tray final {
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						Tray();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
							
								
								
									
										22
									
								
								Telegram/SourceFiles/platform/mac/tray_mac.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								Telegram/SourceFiles/platform/mac/tray_mac.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "platform/platform_tray.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tray final {
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						Tray();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
							
								
								
									
										15
									
								
								Telegram/SourceFiles/platform/mac/tray_mac.mm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Telegram/SourceFiles/platform/mac/tray_mac.mm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#include "platform/mac/tray_mac.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tray::Tray() {
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
							
								
								
									
										24
									
								
								Telegram/SourceFiles/platform/platform_tray.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								Telegram/SourceFiles/platform/platform_tray.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,24 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tray;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Platform dependent implementations.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#ifdef Q_OS_MAC
 | 
				
			||||||
 | 
					#include "platform/mac/tray_mac.h"
 | 
				
			||||||
 | 
					#elif defined Q_OS_UNIX // Q_OS_MAC
 | 
				
			||||||
 | 
					#include "platform/linux/tray_linux.h"
 | 
				
			||||||
 | 
					#elif defined Q_OS_WIN // Q_OS_MAC || Q_OS_UNIX
 | 
				
			||||||
 | 
					#include "platform/win/tray_win.h"
 | 
				
			||||||
 | 
					#endif // Q_OS_MAC || Q_OS_UNIX || Q_OS_WIN
 | 
				
			||||||
							
								
								
									
										15
									
								
								Telegram/SourceFiles/platform/win/tray_win.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Telegram/SourceFiles/platform/win/tray_win.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#include "platform/win/tray_win.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tray::Tray() {
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
							
								
								
									
										22
									
								
								Telegram/SourceFiles/platform/win/tray_win.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								Telegram/SourceFiles/platform/win/tray_win.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,22 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "platform/platform_tray.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Platform {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tray final {
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						Tray();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Platform
 | 
				
			||||||
							
								
								
									
										15
									
								
								Telegram/SourceFiles/tray.cpp
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Telegram/SourceFiles/tray.cpp
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,15 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#include "tray.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Core {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Tray::Tray() {
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Core
 | 
				
			||||||
							
								
								
									
										23
									
								
								Telegram/SourceFiles/tray.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								Telegram/SourceFiles/tray.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,23 @@
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					This file is part of Telegram Desktop,
 | 
				
			||||||
 | 
					the official desktop application for the Telegram messaging service.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					For license and copyright information please follow this link:
 | 
				
			||||||
 | 
					https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					#pragma once
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "platform/platform_tray.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Core {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class Tray final {
 | 
				
			||||||
 | 
					public:
 | 
				
			||||||
 | 
						Tray();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					private:
 | 
				
			||||||
 | 
						Platform::Tray _tray;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					} // namespace Core
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue