diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2020-03-16 18:41:27 +0100 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2020-03-16 18:41:27 +0100 |
commit | ff922e7b87de147797fbd759167878aec7625f0c (patch) | |
tree | a326819f23e2421723f144522f9362ba608d6bb1 /src/plugins/platforms/cocoa/qcocoasystemtrayicon.h | |
parent | e464e1eb8eb63c631fb0916c3ea4540a88d8aad3 (diff) | |
parent | 75f52bd0ddc4afbd181c14b310d256e3507052d6 (diff) |
Merge remote-tracking branch 'origin/5.15' into dev
Conflicts:
src/corelib/kernel/qmetatype.cpp
Change-Id: I88eb0d3e9c9a38abf7241a51e370c655ae74e38a
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoasystemtrayicon.h')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoasystemtrayicon.h | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.h b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.h index 738c40aba6..7999438ca5 100644 --- a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.h +++ b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.h @@ -49,14 +49,23 @@ #include "QtCore/qstring.h" #include "QtGui/qpa/qplatformsystemtrayicon.h" -QT_BEGIN_NAMESPACE +#include "qcocoamenu.h" + +QT_FORWARD_DECLARE_CLASS(QCocoaSystemTrayIcon); + +@interface QT_MANGLE_NAMESPACE(QStatusItemDelegate) : NSObject <NSUserNotificationCenterDelegate> +- (instancetype)initWithSysTray:(QCocoaSystemTrayIcon *)platformSystemTray; +@property (nonatomic, assign) QCocoaSystemTrayIcon *platformSystemTray; +@end -class QSystemTrayIconSys; +QT_NAMESPACE_ALIAS_OBJC_CLASS(QStatusItemDelegate); + +QT_BEGIN_NAMESPACE class Q_GUI_EXPORT QCocoaSystemTrayIcon : public QPlatformSystemTrayIcon { public: - QCocoaSystemTrayIcon() : m_sys(nullptr) {} + QCocoaSystemTrayIcon() {} void init() override; void cleanup() override; @@ -70,8 +79,12 @@ public: bool isSystemTrayAvailable() const override; bool supportsMessages() const override; + void statusItemClicked(); + private: - QSystemTrayIconSys *m_sys; + NSStatusItem *m_statusItem = nullptr; + QStatusItemDelegate *m_delegate = nullptr; + QCocoaMenu *m_menu = nullptr; }; QT_END_NAMESPACE |