diff options
Diffstat (limited to 'src/plugins/platforms')
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoaapplication.h | 12 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoaapplication.mm | 30 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm | 2 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoafontdialoghelper.mm | 2 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoahelpers.h | 7 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoahelpers.mm | 2 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoanativeinterface.mm | 4 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qcocoasystemtrayicon.mm | 3 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qnswindow.h | 7 | ||||
-rw-r--r-- | src/plugins/platforms/cocoa/qnswindow.mm | 27 | ||||
-rw-r--r-- | src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxwindow.cpp | 4 | ||||
-rw-r--r-- | src/plugins/platforms/xcb/qxcbintegration.cpp | 6 | ||||
-rw-r--r-- | src/plugins/platforms/xcb/qxcbwindow.cpp | 2 |
13 files changed, 45 insertions, 63 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 6c75db9bdb..2c4783b1e3 100644 --- a/src/plugins/platforms/cocoa/qcocoahelpers.h +++ b/src/plugins/platforms/cocoa/qcocoahelpers.h @@ -159,7 +159,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; @@ -177,7 +180,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 85d12040de..fdf4733f0e 100644 --- a/src/plugins/platforms/cocoa/qcocoahelpers.mm +++ b/src/plugins/platforms/cocoa/qcocoahelpers.mm @@ -293,7 +293,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 1422aebd65..955b147bfd 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/qnswindow.h b/src/plugins/platforms/cocoa/qnswindow.h index 1258fddb31..ea690b69e3 100644 --- a/src/plugins/platforms/cocoa/qnswindow.h +++ b/src/plugins/platforms/cocoa/qnswindow.h @@ -48,10 +48,17 @@ QT_FORWARD_DECLARE_CLASS(QCocoaWindow) +// @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 +// @compatibility_alias doesn't work with protocols +#define QNSWindowProtocol QT_MANGLE_NAMESPACE(QNSWindowProtocol) + @protocol QNSWindowProtocol @optional - (BOOL)canBecomeKeyWindow; diff --git a/src/plugins/platforms/cocoa/qnswindow.mm b/src/plugins/platforms/cocoa/qnswindow.mm index e846fa043c..cb13b7d184 100644 --- a/src/plugins/platforms/cocoa/qnswindow.mm +++ b/src/plugins/platforms/cocoa/qnswindow.mm @@ -99,18 +99,25 @@ static bool isMouseEvent(NSEvent *ev) const Class windowClass = [self class]; const Class panelClass = [QNSPanel class]; - unsigned int methodDescriptionsCount; - objc_method_description *methods = protocol_copyMethodDescriptionList( - objc_getProtocol("QNSWindowProtocol"), NO, YES, &methodDescriptionsCount); - - for (unsigned int i = 0; i < methodDescriptionsCount; ++i) { - objc_method_description method = methods[i]; - class_addMethod(panelClass, method.name, - class_getMethodImplementation(windowClass, method.name), - method.types); + unsigned int protocolCount; + Protocol **protocols = class_copyProtocolList(windowClass, &protocolCount); + for (unsigned int i = 0; i < protocolCount; ++i) { + Protocol *protocol = protocols[i]; + + unsigned int methodDescriptionsCount; + objc_method_description *methods = protocol_copyMethodDescriptionList( + protocol, NO, YES, &methodDescriptionsCount); + + for (unsigned int j = 0; j < methodDescriptionsCount; ++j) { + objc_method_description method = methods[j]; + class_addMethod(panelClass, method.name, + class_getMethodImplementation(windowClass, method.name), + method.types); + } + free(methods); } - free(methods); + free(protocols); } - (QCocoaWindow *)platformWindow diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxwindow.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxwindow.cpp index d682ea87fb..5e406017ca 100644 --- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxwindow.cpp +++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qxcbglxwindow.cpp @@ -60,7 +60,7 @@ const xcb_visualtype_t *QXcbGlxWindow::createVisual() if (!scr) return nullptr; - qDebug(lcQpaGl) << "Requested format before FBConfig/Visual selection:" << m_format; + qCDebug(lcQpaGl) << "Requested format before FBConfig/Visual selection:" << m_format; Display *dpy = static_cast<Display *>(scr->connection()->xlib_display()); const char *glxExts = glXQueryExtensionsString(dpy, scr->screenNumber()); @@ -79,7 +79,7 @@ const xcb_visualtype_t *QXcbGlxWindow::createVisual() const xcb_visualtype_t *xcb_visualtype = scr->visualForId(visualInfo->visualid); XFree(visualInfo); - qDebug(lcQpaGl) << "Got format:" << m_format; + qCDebug(lcQpaGl) << "Got format:" << m_format; return xcb_visualtype; } diff --git a/src/plugins/platforms/xcb/qxcbintegration.cpp b/src/plugins/platforms/xcb/qxcbintegration.cpp index 6afa7bc934..471287eb44 100644 --- a/src/plugins/platforms/xcb/qxcbintegration.cpp +++ b/src/plugins/platforms/xcb/qxcbintegration.cpp @@ -176,8 +176,8 @@ QXcbIntegration::QXcbIntegration(const QStringList ¶meters, int &argc, char #if defined(QT_DEBUG) if (!noGrabArg && !doGrabArg && underDebugger) { - qDebug("Qt: gdb: -nograb added to command-line options.\n" - "\t Use the -dograb option to enforce grabbing."); + qCDebug(lcQpaXcb, "Qt: gdb: -nograb added to command-line options.\n" + "\t Use the -dograb option to enforce grabbing."); } #endif m_canGrab = (!underDebugger && !noGrabArg) || (underDebugger && doGrabArg); @@ -213,7 +213,7 @@ QXcbIntegration::QXcbIntegration(const QStringList ¶meters, int &argc, char #if QT_CONFIG(xcb_native_painting) if (nativePaintingEnabled()) { - qDebug("QXCB USING NATIVE PAINTING"); + qCDebug(lcQpaXcb, "QXCB USING NATIVE PAINTING"); qt_xcb_native_x11_info_init(defaultConnection()); } #endif diff --git a/src/plugins/platforms/xcb/qxcbwindow.cpp b/src/plugins/platforms/xcb/qxcbwindow.cpp index 20d030b5c9..46698de158 100644 --- a/src/plugins/platforms/xcb/qxcbwindow.cpp +++ b/src/plugins/platforms/xcb/qxcbwindow.cpp @@ -226,7 +226,7 @@ static inline XTextProperty* qstringToXTP(Display *dpy, const QString& s) tl[1] = 0; errCode = XmbTextListToTextProperty(dpy, tl, 1, XStdICCTextStyle, &tp); if (errCode < 0) - qDebug("XmbTextListToTextProperty result code %d", errCode); + qCDebug(lcQpaXcb, "XmbTextListToTextProperty result code %d", errCode); } if (!mapper || errCode < 0) { mapper = QTextCodec::codecForName("latin1"); |