summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qeventdispatcher_cf.mm
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2018-05-07 15:10:01 +0200
committerTor Arne Vestbø <tor.arne.vestbo@qt.io>2018-05-30 09:16:23 +0000
commit0587941f6eda05dfc3cc66ce44bf8f32320d7d24 (patch)
tree53e649e33eeeab68d20c015bb8678062c875f81d /src/corelib/kernel/qeventdispatcher_cf.mm
parent6ada504475fc8ec3f7fe4d05f8af1ba3735208e9 (diff)
Add function to safely access the shared application on Apple platforms
Change-Id: I52910309ba94d84d69f049b5c1990f1f866e1698 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Diffstat (limited to 'src/corelib/kernel/qeventdispatcher_cf.mm')
-rw-r--r--src/corelib/kernel/qeventdispatcher_cf.mm17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/corelib/kernel/qeventdispatcher_cf.mm b/src/corelib/kernel/qeventdispatcher_cf.mm
index 8499b3fd57..503836d071 100644
--- a/src/corelib/kernel/qeventdispatcher_cf.mm
+++ b/src/corelib/kernel/qeventdispatcher_cf.mm
@@ -72,17 +72,12 @@ QT_NAMESPACE_ALIAS_OBJC_CLASS(RunLoopModeTracker);
if (self = [super init]) {
m_runLoopModes.push(kCFRunLoopDefaultMode);
- [[NSNotificationCenter defaultCenter]
- addObserver:self
- selector:@selector(receivedNotification:)
- name:nil
-#ifdef Q_OS_OSX
- object:[NSApplication sharedApplication]];
-#elif defined(Q_OS_WATCHOS)
- object:[WKExtension sharedExtension]];
-#else
- // Use performSelector so this can work in an App Extension
- object:[[UIApplication class] performSelector:@selector(sharedApplication)]];
+#if !defined(Q_OS_WATCHOS)
+ if (!qt_apple_isApplicationExtension()) {
+ [[NSNotificationCenter defaultCenter]
+ addObserver:self selector:@selector(receivedNotification:)
+ name:nil object:qt_apple_sharedApplication()];
+ }
#endif
}