From 6e2f18c498b6d40d8184dfe05993ac6d0ba99326 Mon Sep 17 00:00:00 2001 From: Colin Snover Date: Sun, 10 Sep 2017 21:03:18 -0500 Subject: MACOS: Fix warnings about undeclared selectors When -Wundeclared-selector is enabled (recommended by Apple), the calls to the setBadgeLabel selector in MacOSXTaskbarManager are warned on because NSDockTile declarations are not included because they do not exist in macOS 10.4 and earlier. While I don't know that we are even supporting such old macOS versions these days, it is simple enough to fix this problem when compiling to modern macOS versions by conditionally including the necessary header. --- backends/taskbar/macosx/macosx-taskbar.mm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'backends/taskbar/macosx') diff --git a/backends/taskbar/macosx/macosx-taskbar.mm b/backends/taskbar/macosx/macosx-taskbar.mm index 692fa84429..f6d3be55ce 100644 --- a/backends/taskbar/macosx/macosx-taskbar.mm +++ b/backends/taskbar/macosx/macosx-taskbar.mm @@ -26,13 +26,10 @@ #if defined(MACOSX) && defined(USE_TASKBAR) -// NSDockTile was introduced with Mac OS X 10.5. -// Try provide backward compatibility by avoiding NSDockTile symbols. - #include "backends/taskbar/macosx/macosx-taskbar.h" #include "common/config-manager.h" #include "common/file.h" - +#include "backends/platform/sdl/macosx/macosx-compat.h" #include #include #include @@ -44,7 +41,16 @@ #include #include -id _dockTile; +// NSDockTile was introduced with Mac OS X 10.5. +// Try provide backward compatibility by avoiding NSDockTile symbols. +#if MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_5 +typedef id NSDockTilePtr; +#else +#include +typedef NSDockTile * NSDockTilePtr; +#endif + +NSDockTilePtr _dockTile; NSImageView *_applicationIconView; NSImageView *_overlayIconView; -- cgit v1.2.3