From 7b5ad884898c77926aeebac8281dc4d2fd27e637 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Morten=20Johan=20S=C3=B8rvig?= Date: Fri, 22 Mar 2013 09:33:15 +0100 Subject: Guard usage of [NSApp setDockMenu]. setDockMenu is not documented an may disappear. Closest documented replacement seems to be [NSApplicationDelegate applicationDockMenu:]. It can't be used as a direct replacement since it's a "virtual" getter that the application delegate implements. Change-Id: Id161196018057b75cbe7d6f6d2610c0932345c5f Reviewed-by: Gabriel de Dietrich --- src/plugins/platforms/cocoa/qcocoanativeinterface.mm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm index fde93a38db..a7f4d3b823 100644 --- a/src/plugins/platforms/cocoa/qcocoanativeinterface.mm +++ b/src/plugins/platforms/cocoa/qcocoanativeinterface.mm @@ -191,7 +191,10 @@ void QCocoaNativeInterface::setDockMenu(QPlatformMenu *platformMenu) QCocoaMenu *cocoaPlatformMenu = static_cast(platformMenu); NSMenu *menu = cocoaPlatformMenu->nsMenu(); // setDockMenu seems to be undocumented, but this is what Qt 4 did. - [NSApp setDockMenu: menu]; + if ([NSApp respondsToSelector:@selector(setDockMenu:)]) + [NSApp setDockMenu: menu]; + else + qWarning("Could not set dock menu: [NSApp setDockMenu] is not available."); } void *QCocoaNativeInterface::qMenuToNSMenu(QPlatformMenu *platformMenu) -- cgit v1.2.3