mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-13 07:28:59 +01:00
Use Qt signal for macOS Dock icon click event
This moves the Dock icon click reaction code to the common place and allows some cleanup in obj_c code. According to the Apple's docs `class_replaceMethod` behaves as `class_addMethod`, if the method identified by name does not yet exist; or as `method_setImplementation`, if it does exist.
This commit is contained in:
@@ -1,11 +1,10 @@
|
||||
// Copyright (c) 2011-2015 The Bitcoin Core developers
|
||||
// Copyright (c) 2011-2018 The Bitcoin Core developers
|
||||
// Distributed under the MIT software license, see the accompanying
|
||||
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||||
|
||||
#ifndef BITCOIN_QT_MACDOCKICONHANDLER_H
|
||||
#define BITCOIN_QT_MACDOCKICONHANDLER_H
|
||||
|
||||
#include <QMainWindow>
|
||||
#include <QObject>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
@@ -13,7 +12,7 @@ class QMenu;
|
||||
class QWidget;
|
||||
QT_END_NAMESPACE
|
||||
|
||||
/** Macintosh-specific dock icon handler.
|
||||
/** macOS-specific Dock icon handler.
|
||||
*/
|
||||
class MacDockIconHandler : public QObject
|
||||
{
|
||||
@@ -23,10 +22,8 @@ public:
|
||||
~MacDockIconHandler();
|
||||
|
||||
QMenu *dockMenu();
|
||||
void setMainWindow(QMainWindow *window);
|
||||
static MacDockIconHandler *instance();
|
||||
static void cleanup();
|
||||
void handleDockIconClickEvent();
|
||||
|
||||
Q_SIGNALS:
|
||||
void dockIconClicked();
|
||||
@@ -36,7 +33,6 @@ private:
|
||||
|
||||
QWidget *m_dummyWidget;
|
||||
QMenu *m_dockMenu;
|
||||
QMainWindow *mainWindow;
|
||||
};
|
||||
|
||||
#endif // BITCOIN_QT_MACDOCKICONHANDLER_H
|
||||
|
||||
Reference in New Issue
Block a user