summaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-01-11 12:45:59 +0100
committerLiang Qi <liang.qi@qt.io>2018-01-11 12:45:59 +0100
commit5ba29e1672dafe16be004409661aef3a7ebf499a (patch)
tree245105a3445adc98d53b4de58ed7ce1338539ae2 /src/plugins
parent1df2906c75f379a62bce487d3d2db3ade3095b16 (diff)
parent0c5953fd4edbb8e6495aaf288186dbd6737fb8c0 (diff)
Merge remote-tracking branch 'origin/5.9.4' into 5.9
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/platforms/cocoa/qcocoaapplication.h12
-rw-r--r--src/plugins/platforms/cocoa/qcocoaapplication.mm30
-rw-r--r--src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm2
-rw-r--r--src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm2
-rw-r--r--src/plugins/platforms/cocoa/qcocoahelpers.h7
-rw-r--r--src/plugins/platforms/cocoa/qcocoahelpers.mm2
-rw-r--r--src/plugins/platforms/cocoa/qcocoanativeinterface.mm4
-rw-r--r--src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm3
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.h3
-rw-r--r--src/plugins/platforms/cocoa/qcocoawindow.mm5
10 files changed, 23 insertions, 47 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoaapplication.h b/src/plugins/platforms/cocoa/qcocoaapplication.h
index 7bd3c8c76c..66a92686bc 100644
--- a/src/plugins/platforms/cocoa/qcocoaapplication.h
+++ b/src/plugins/platforms/cocoa/qcocoaapplication.h
@@ -83,23 +83,11 @@
// We mean it.
//
-/*
- Cocoa Application Categories
-*/
#include "qglobal.h"
#include "private/qcore_mac_p.h"
#import <AppKit/AppKit.h>
-@class QT_MANGLE_NAMESPACE(QCocoaMenuLoader);
-
-@interface NSApplication (QT_MANGLE_NAMESPACE(QApplicationIntegration))
-- (void)QT_MANGLE_NAMESPACE(qt_setDockMenu):(NSMenu *)newMenu;
-- (int)QT_MANGLE_NAMESPACE(qt_validModesForFontPanel):(NSFontPanel *)fontPanel;
-
-- (void)QT_MANGLE_NAMESPACE(qt_sendPostedMessage):(NSEvent *)event;
-- (BOOL)QT_MANGLE_NAMESPACE(qt_filterEvent):(NSEvent *)event;
-@end
@interface QT_MANGLE_NAMESPACE(QNSApplication) : NSApplication {
}
diff --git a/src/plugins/platforms/cocoa/qcocoaapplication.mm b/src/plugins/platforms/cocoa/qcocoaapplication.mm
index 3b950efa55..d0f27795b6 100644
--- a/src/plugins/platforms/cocoa/qcocoaapplication.mm
+++ b/src/plugins/platforms/cocoa/qcocoaapplication.mm
@@ -82,25 +82,7 @@
QT_USE_NAMESPACE
-@implementation NSApplication (QT_MANGLE_NAMESPACE(QApplicationIntegration))
-
-- (void)QT_MANGLE_NAMESPACE(qt_setDockMenu):(NSMenu *)newMenu
-{
- [[QT_MANGLE_NAMESPACE(QCocoaApplicationDelegate) sharedDelegate] setDockMenu:newMenu];
-}
-
-- (int)QT_MANGLE_NAMESPACE(qt_validModesForFontPanel):(NSFontPanel *)fontPanel
-{
- Q_UNUSED(fontPanel);
- // only display those things that QFont can handle
- return NSFontPanelFaceModeMask
- | NSFontPanelSizeModeMask
- | NSFontPanelCollectionModeMask
- | NSFontPanelUnderlineEffectModeMask
- | NSFontPanelStrikethroughEffectModeMask;
-}
-
-- (void)QT_MANGLE_NAMESPACE(qt_sendPostedMessage):(NSEvent *)event
+static void qt_sendPostedMessage(NSEvent *event)
{
// WARNING: data1 and data2 is truncated to from 64-bit to 32-bit on OS 10.5!
// That is why we need to split the address in two parts:
@@ -128,7 +110,7 @@ QT_USE_NAMESPACE
static const QByteArray q_macLocalEventType = QByteArrayLiteral("mac_generic_NSEvent");
-- (BOOL)QT_MANGLE_NAMESPACE(qt_filterEvent):(NSEvent *)event
+static bool qt_filterEvent(NSEvent *event)
{
if (qApp && qApp->eventDispatcher()->
filterNativeEvent(q_macLocalEventType, static_cast<void*>(event), 0))
@@ -137,7 +119,7 @@ static const QByteArray q_macLocalEventType = QByteArrayLiteral("mac_generic_NSE
if ([event type] == NSApplicationDefined) {
switch (static_cast<short>([event subtype])) {
case QtCocoaEventSubTypePostMessage:
- [NSApp QT_MANGLE_NAMESPACE(qt_sendPostedMessage):event];
+ qt_sendPostedMessage(event);
return true;
default:
break;
@@ -147,8 +129,6 @@ static const QByteArray q_macLocalEventType = QByteArrayLiteral("mac_generic_NSE
return false;
}
-@end
-
static void qt_maybeSendKeyEquivalentUpEvent(NSEvent *event)
{
// Cocoa is known for not sending key up events for key
@@ -180,7 +160,7 @@ static void qt_maybeSendKeyEquivalentUpEvent(NSEvent *event)
// be called instead of sendEvent if redirection occurs.
// 'self' will then be an instance of NSApplication
// (and not QNSApplication)
- if (![NSApp QT_MANGLE_NAMESPACE(qt_filterEvent):event]) {
+ if (!qt_filterEvent(event)) {
[self QT_MANGLE_NAMESPACE(qt_sendEvent_original):event];
qt_maybeSendKeyEquivalentUpEvent(event);
}
@@ -190,7 +170,7 @@ static void qt_maybeSendKeyEquivalentUpEvent(NSEvent *event)
{
// This method will be called if
// no redirection occurs
- if (![NSApp QT_MANGLE_NAMESPACE(qt_filterEvent):event]) {
+ if (!qt_filterEvent(event)) {
[super sendEvent:event];
qt_maybeSendKeyEquivalentUpEvent(event);
}
diff --git a/src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm b/src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm
index 5d331c0e96..aa6124507d 100644
--- a/src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm
+++ b/src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm
@@ -49,7 +49,7 @@
QT_USE_NAMESPACE
-@interface QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) : NSObject<NSWindowDelegate, QT_MANGLE_NAMESPACE(QNSPanelDelegate)>
+@interface QT_MANGLE_NAMESPACE(QNSColorPanelDelegate) : NSObject<NSWindowDelegate, QNSPanelDelegate>
{
@public
NSColorPanel *mColorPanel;
diff --git a/src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm b/src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm
index dbd7e90dba..9a96895d07 100644
--- a/src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm
+++ b/src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm
@@ -75,7 +75,7 @@ static QFont qfontForCocoaFont(NSFont *cocoaFont, const QFont &resolveFont)
@class QT_MANGLE_NAMESPACE(QNSFontPanelDelegate);
-@interface QT_MANGLE_NAMESPACE(QNSFontPanelDelegate) : NSObject<NSWindowDelegate, QT_MANGLE_NAMESPACE(QNSPanelDelegate)>
+@interface QT_MANGLE_NAMESPACE(QNSFontPanelDelegate) : NSObject<NSWindowDelegate, QNSPanelDelegate>
{
@public
NSFontPanel *mFontPanel;
diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.h b/src/plugins/platforms/cocoa/qcocoahelpers.h
index 4478895538..0cf9cc0aff 100644
--- a/src/plugins/platforms/cocoa/qcocoahelpers.h
+++ b/src/plugins/platforms/cocoa/qcocoahelpers.h
@@ -161,7 +161,10 @@ T qt_mac_resolveOption(const T &fallback, QWindow *window, const QByteArray &pro
QT_END_NAMESPACE
-@protocol QT_MANGLE_NAMESPACE(QNSPanelDelegate)
+// @compatibility_alias doesn't work with protocols
+#define QNSPanelDelegate QT_MANGLE_NAMESPACE(QNSPanelDelegate)
+
+@protocol QNSPanelDelegate
@required
- (void)onOkClicked;
- (void)onCancelClicked;
@@ -179,7 +182,7 @@ QT_END_NAMESPACE
@property (nonatomic, readonly) NSView *panelContents; // ARC: unretained, make it weak
@property (nonatomic, assign) NSEdgeInsets panelContentsMargins;
-- (instancetype)initWithPanelDelegate:(id<QT_MANGLE_NAMESPACE(QNSPanelDelegate)>)panelDelegate;
+- (instancetype)initWithPanelDelegate:(id<QNSPanelDelegate>)panelDelegate;
- (void)dealloc;
- (NSButton *)createButtonWithTitle:(const char *)title;
diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.mm b/src/plugins/platforms/cocoa/qcocoahelpers.mm
index 5d0f13c5a9..c3efe158c7 100644
--- a/src/plugins/platforms/cocoa/qcocoahelpers.mm
+++ b/src/plugins/platforms/cocoa/qcocoahelpers.mm
@@ -308,7 +308,7 @@ QT_END_NAMESPACE
@synthesize panelContents = _panelContents;
@synthesize panelContentsMargins = _panelContentsMargins;
-- (instancetype)initWithPanelDelegate:(id<QT_MANGLE_NAMESPACE(QNSPanelDelegate)>)panelDelegate
+- (instancetype)initWithPanelDelegate:(id<QNSPanelDelegate>)panelDelegate
{
if ((self = [super initWithFrame:NSZeroRect])) {
// create OK and Cancel buttons and add these as subviews
diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm
index 26ab07ffaf..5504c2427f 100644
--- a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm
+++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm
@@ -42,7 +42,7 @@
#include "qcocoamenu.h"
#include "qcocoamenubar.h"
#include "qcocoahelpers.h"
-#include "qcocoaapplication.h"
+#include "qcocoaapplicationdelegate.h"
#include "qcocoaintegration.h"
#include "qcocoaeventdispatcher.h"
@@ -256,7 +256,7 @@ void QCocoaNativeInterface::setDockMenu(QPlatformMenu *platformMenu)
QMacAutoReleasePool pool;
QCocoaMenu *cocoaPlatformMenu = static_cast<QCocoaMenu *>(platformMenu);
NSMenu *menu = cocoaPlatformMenu->nsMenu();
- [NSApp QT_MANGLE_NAMESPACE(qt_setDockMenu): menu];
+ [[QCocoaApplicationDelegate sharedDelegate] setDockMenu:menu];
}
void *QCocoaNativeInterface::qMenuToNSMenu(QPlatformMenu *platformMenu)
diff --git a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
index 13e9d8809e..e756f0aeb0 100644
--- a/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
+++ b/src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm
@@ -289,9 +289,6 @@ void QCocoaSystemTrayIcon::showMessage(const QString &title, const QString &mess
}
QT_END_NAMESPACE
-@implementation NSStatusItem (Qt)
-@end
-
@implementation QNSImageView
-(id)initWithParent:(QNSStatusItem*)myParent {
self = [super init];
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.h b/src/plugins/platforms/cocoa/qcocoawindow.h
index deba861fcc..aa8fffdf7e 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.h
+++ b/src/plugins/platforms/cocoa/qcocoawindow.h
@@ -56,6 +56,9 @@ QT_FORWARD_DECLARE_CLASS(QCocoaWindow)
@class QT_MANGLE_NAMESPACE(QNSWindowHelper);
+// @compatibility_alias doesn't work with protocols
+#define QNSWindowProtocol QT_MANGLE_NAMESPACE(QNSWindowProtocol)
+
@protocol QNSWindowProtocol
@property (nonatomic, readonly) QT_MANGLE_NAMESPACE(QNSWindowHelper) *helper;
diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
index 5cd4beb4f0..aeeef55598 100644
--- a/src/plugins/platforms/cocoa/qcocoawindow.mm
+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
@@ -89,6 +89,11 @@ static void qt_closePopups()
}
}
+
+// @compatibility_alias doesn't work with categories or their methods
+#define FullScreenProperty QT_MANGLE_NAMESPACE(FullScreenProperty)
+#define qt_fullScreen QT_MANGLE_NAMESPACE(qt_fullScreen)
+
@interface NSWindow (FullScreenProperty)
@property(readonly) BOOL qt_fullScreen;
@end