diff --git a/projectfiles/Xcode/Fix_Xcode_Dependencies b/projectfiles/Xcode/Fix_Xcode_Dependencies index e688a3273b1..2320ec1cf2b 100755 --- a/projectfiles/Xcode/Fix_Xcode_Dependencies +++ b/projectfiles/Xcode/Fix_Xcode_Dependencies @@ -13,7 +13,6 @@ sdl2_image_required_version="2.0.3" sdl2_mixer_required_version="2.0.2" sdl2_net_required_version="2.0.1" sdl2_ttf_required_version="2.0.14" -growl_required_version="2.0.1" ###/Required Version Defines ###Sha256 @@ -22,7 +21,6 @@ sdl2_image_dmg_sha256="f1beefadf4dfc4f923c5cdb37d012fd94063b9c5085f492f9170e0043 sdl2_mixer_dmg_sha256="174a371e2acdfa7ae26be71134b9925f46e5257c8c8d608f09a6726a0368606b" sdl2_net_dmg_sha256="3a126e31b323d832be0ef4b9941fc3113b931e42a26e9bcc989487fd5348f858" sdl2_ttf_dmg_sha256="7cdfb4239aaacfed2fd235c12f600b21b193b6ceb60b32b1cbb674fbde04e9f3" -growl_zip_sha256="f57c3beeba51738c44f1f741c008815c54352282d1085076e0ed61d6f17806a8" ###/Sha256 ###Functions @@ -60,39 +58,22 @@ framework_install() { fi if [ "$path" == "none" ]; then echo "==> Downloading $PACKAGE $REQUIRED_VERSION" - if [ "$PACKAGE" != "Growl" ]; then - if [ -f "$PACKAGE-$REQUIRED_VERSION.dmg" ]; then - rm "$PACKAGE-$REQUIRED_VERSION.dmg" - fi - if [ "$PACKAGE" == "SDL2" ]; then - wget "https://www.libsdl.org/release/$PACKAGE-$REQUIRED_VERSION.dmg" -q --show-progress - else - wget "https://www.libsdl.org/projects/$(echo "$PACKAGE" | sed -e 's/SDL2/SDL/g')/release/$PACKAGE-$REQUIRED_VERSION.dmg" -q --show-progress - fi - if [ "$(shasum -a 256 $PACKAGE-$REQUIRED_VERSION.dmg | awk '{print $1}')" != $SHA256 ]; then - echo "Error: SHA256 Checksum of $PACKAGE-$REQUIRED_VERSION.dmg doesn't match!" >&2 - exit 1 - fi - hdiutil attach "$PACKAGE-$REQUIRED_VERSION.dmg" > /dev/null - cp -Rf /Volumes/$PACKAGE/$PACKAGE.framework $PACKAGE.framework - hdiutil detach /Volumes/$PACKAGE > /dev/null - path="$MY_PATH/temp/$PACKAGE.framework" - else - if [ -f "$PACKAGE-$REQUIRED_VERSION-SDK.zip" ]; then - rm "$PACKAGE-$REQUIRED_VERSION-SDK.zip" - fi - wget "http://growl.cachefly.net/$PACKAGE-$REQUIRED_VERSION-SDK.zip" -q --show-progress - if [ "$(shasum -a 256 $PACKAGE-$REQUIRED_VERSION-SDK.zip | awk '{print $1}')" != $SHA256 ]; then - echo "Error: SHA256 Checksum of $PACKAGE-$REQUIRED_VERSION-SDK.zip doesn't match!" >&2 - exit 1 - fi - if [ -d "$PACKAGE-$REQUIRED_VERSION-SDK" ]; then - rm -rf "$PACKAGE-$REQUIRED_VERSION-SDK" - fi - unzip "$PACKAGE-$REQUIRED_VERSION-SDK.zip" > /dev/null - cp -Rf "$PACKAGE-$REQUIRED_VERSION-SDK/Framework/$PACKAGE.framework" Growl.framework - path="$MY_PATH/temp/$PACKAGE.framework" + if [ -f "$PACKAGE-$REQUIRED_VERSION.dmg" ]; then + rm "$PACKAGE-$REQUIRED_VERSION.dmg" fi + if [ "$PACKAGE" == "SDL2" ]; then + wget "https://www.libsdl.org/release/$PACKAGE-$REQUIRED_VERSION.dmg" -q --show-progress + else + wget "https://www.libsdl.org/projects/$(echo "$PACKAGE" | sed -e 's/SDL2/SDL/g')/release/$PACKAGE-$REQUIRED_VERSION.dmg" -q --show-progress + fi + if [ "$(shasum -a 256 $PACKAGE-$REQUIRED_VERSION.dmg | awk '{print $1}')" != $SHA256 ]; then + echo "Error: SHA256 Checksum of $PACKAGE-$REQUIRED_VERSION.dmg doesn't match!" >&2 + exit 1 + fi + hdiutil attach "$PACKAGE-$REQUIRED_VERSION.dmg" > /dev/null + cp -Rf /Volumes/$PACKAGE/$PACKAGE.framework $PACKAGE.framework + hdiutil detach /Volumes/$PACKAGE > /dev/null + path="$MY_PATH/temp/$PACKAGE.framework" fi } @@ -223,11 +204,6 @@ sdl2_net_path="$path" framework_install "SDL2_ttf" "$sdl2_ttf_required_version" "$sdl2_ttf_dmg_sha256" sdl2_ttf_path="$path" ###/SDL2_ttf - -###Growl -framework_install "Growl" "$growl_required_version" "$growl_zip_sha256" -growl_path="$path" -###/Growl cd .. if [ -d "lib" ]; then @@ -263,7 +239,6 @@ ln -s "$sdl2_image_path" ln -s "$sdl2_mixer_path" ln -s "$sdl2_net_path" ln -s "$sdl2_ttf_path" -ln -s "$growl_path" diff --git a/projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj b/projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj index ee54b92d589..7c7940683a7 100644 --- a/projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj +++ b/projectfiles/Xcode/Wesnoth.xcodeproj/project.pbxproj @@ -816,9 +816,7 @@ 91FBBAD81CB6BC3F00470BFE /* filesystem_sdl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91FBBAD71CB6BC3F00470BFE /* filesystem_sdl.cpp */; }; 91FBBADB1CB6D1B700470BFE /* markov_generator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91FBBAD91CB6D1B700470BFE /* markov_generator.cpp */; }; B504B94C1284C06B00261FE9 /* tips.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B504B94A1284C06B00261FE9 /* tips.cpp */; }; - B508D13F10013BF900B12852 /* Growl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B508D13E10013BF900B12852 /* Growl.framework */; }; B508D14B10013E4700B12852 /* Growl Registration Ticket.growlRegDict in Resources */ = {isa = PBXBuildFile; fileRef = B508D14A10013E4700B12852 /* Growl Registration Ticket.growlRegDict */; }; - B508D15F10013F8100B12852 /* Growl.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = B508D13E10013BF900B12852 /* Growl.framework */; }; B508D193100146E300B12852 /* engine_fai.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B508D191100146E300B12852 /* engine_fai.cpp */; }; B508D1FB100155F300B12852 /* helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B508D1E7100155F300B12852 /* helper.cpp */; }; B508D2161001560100B12852 /* stacked_widget.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B508D2141001560100B12852 /* stacked_widget.cpp */; }; @@ -1374,7 +1372,6 @@ dstSubfolderSpec = 10; files = ( 905440871EE46ABC0091D1AE /* libcrypto.1.1.dylib in Copy Frameworks */, - B508D15F10013F8100B12852 /* Growl.framework in Copy Frameworks */, 91B622011B76C0A600B00E0F /* libboost_filesystem-mt.dylib in Copy Frameworks */, 91B622021B76C0A600B00E0F /* libboost_iostreams-mt.dylib in Copy Frameworks */, 91B622031B76C0A600B00E0F /* libboost_locale-mt.dylib in Copy Frameworks */, @@ -1854,7 +1851,6 @@ 91FBBADA1CB6D1B700470BFE /* markov_generator.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = markov_generator.hpp; sourceTree = ""; }; B504B94A1284C06B00261FE9 /* tips.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tips.cpp; sourceTree = ""; }; B504B94B1284C06B00261FE9 /* tips.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = tips.hpp; sourceTree = ""; }; - B508D13E10013BF900B12852 /* Growl.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Growl.framework; path = lib/Growl.framework; sourceTree = ""; }; B508D14A10013E4700B12852 /* Growl Registration Ticket.growlRegDict */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; name = "Growl Registration Ticket.growlRegDict"; path = "Resources/Growl Registration Ticket.growlRegDict"; sourceTree = ""; }; B508D191100146E300B12852 /* engine_fai.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = engine_fai.cpp; sourceTree = ""; }; B508D192100146E300B12852 /* engine_fai.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = engine_fai.hpp; sourceTree = ""; }; @@ -2747,7 +2743,6 @@ ECA9E7471CA20AA800A947D6 /* libreadline.7.0.dylib in Frameworks */, 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, F4D2A99614DAED0E00CAFF31 /* CoreFoundation.framework in Frameworks */, - B508D13F10013BF900B12852 /* Growl.framework in Frameworks */, 91B6221D1B76C0F400B00E0F /* libboost_filesystem-mt.dylib in Frameworks */, 91B6221E1B76C0F400B00E0F /* libboost_iostreams-mt.dylib in Frameworks */, 91B6221F1B76C0F400B00E0F /* libboost_locale-mt.dylib in Frameworks */, @@ -2881,7 +2876,6 @@ isa = PBXGroup; children = ( 46BAF784206672240004711F /* libboost_chrono-mt.dylib */, - B508D13E10013BF900B12852 /* Growl.framework */, B55999220EC61F59008DD061 /* SDL2_image.framework */, B55999240EC61F59008DD061 /* SDL2_mixer.framework */, B5599E9B0EC68BF2008DD061 /* SDL2_ttf.framework */, @@ -6338,7 +6332,7 @@ ); LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks"; LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/lib"; - MACOSX_DEPLOYMENT_TARGET = 10.7; + MACOSX_DEPLOYMENT_TARGET = 10.8; ONLY_ACTIVE_ARCH = YES; OTHER_CFLAGS = ( "-Wall", @@ -6389,7 +6383,7 @@ ); LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks"; LIBRARY_SEARCH_PATHS = "$(PROJECT_DIR)/lib"; - MACOSX_DEPLOYMENT_TARGET = 10.7; + MACOSX_DEPLOYMENT_TARGET = 10.8; OTHER_CFLAGS = ( "-Wno-unused-local-typedefs", "-Wno-unused-private-field", diff --git a/src/build_info.cpp b/src/build_info.cpp index b6782a06203..28014aa91f9 100644 --- a/src/build_info.cpp +++ b/src/build_info.cpp @@ -40,10 +40,6 @@ // apple_notification.mm uses Foundation.h, which is an Objective-C header; // but CoreFoundation.h is a C header which also defines these. #include - -#if (defined MAC_OS_X_VERSION_10_8) && (MAC_OS_X_VERSION_10_8 <= MAC_OS_X_VERSION_MAX_ALLOWED) -#define HAVE_NS_USER_NOTIFICATION -#endif #endif namespace game_config @@ -298,17 +294,9 @@ version_table_manager::version_table_manager() #endif #ifdef __APPLE__ - + // Always compiled in. features.emplace_back(N_("feature^Cocoa notifications back end")); -#ifdef HAVE_NS_USER_NOTIFICATION features.back().enabled = true; -#endif - - features.emplace_back(N_("feature^Growl notifications back end")); -#ifdef HAVE_GROWL - features.back().enabled = true; -#endif - #endif /* __APPLE__ */ } diff --git a/src/desktop/apple_notification.mm b/src/desktop/apple_notification.mm index 7193bfe9ab5..c516116e586 100644 --- a/src/desktop/apple_notification.mm +++ b/src/desktop/apple_notification.mm @@ -18,21 +18,6 @@ #import -#if (defined MAC_OS_X_VERSION_10_8) && (MAC_OS_X_VERSION_10_8 <= MAC_OS_X_VERSION_MAX_ALLOWED) -#define HAVE_NS_USER_NOTIFICATION -#endif - -#ifdef HAVE_GROWL -#import "Growl/Growl.h" - -@interface WesnothGrowlDelegate : NSObject -@end - -@implementation WesnothGrowlDelegate -// Empty delegate to interact with Growl. Implement protocol if we want to handle messages from Growl. -@end -#endif - namespace apple_notifications { bool available() { @@ -47,40 +32,20 @@ bool available() { return false; } -#ifdef HAVE_NS_USER_NOTIFICATION void send_cocoa_notification(const std::string& owner, const std::string& message); -#endif -#ifdef HAVE_GROWL -void send_growl_notification(const std::string& owner, const std::string& message, const desktop::notifications::type note_type); -#endif #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wunused-parameter" -#ifdef HAVE_NS_USER_NOTIFICATION void send_notification(const std::string& owner, const std::string& message, const desktop::notifications::type note_type) { @autoreleasepool { Class appleNotificationClass = NSClassFromString(@"NSUserNotificationCenter"); if (appleNotificationClass) { send_cocoa_notification(owner, message); -#ifdef HAVE_GROWL - } else { - send_growl_notification(owner, message, note_type); -#endif } } } -#else // HAVE_NS_USER_NOTIFICATION -void send_notification(const std::string& owner, const std::string& message, const desktop::notifications::type note_type) { -#ifdef HAVE_GROWL - @autoreleasepool { - send_growl_notification(owner, message, note_type); - } -#endif -} -#endif //end else HAVE_NS_USER_NOTIFICATION #pragma clang diagnostic pop -#ifdef HAVE_NS_USER_NOTIFICATION void send_cocoa_notification(const std::string& owner, const std::string& message) { NSString *title = [NSString stringWithCString:owner.c_str() encoding:NSUTF8StringEncoding]; NSString *description = [NSString stringWithCString:message.c_str() encoding:NSUTF8StringEncoding]; @@ -91,39 +56,6 @@ void send_cocoa_notification(const std::string& owner, const std::string& messag [[NSUserNotificationCenter defaultUserNotificationCenter] scheduleNotification:notification]; } -#endif //end HAVE_NS_USER_NOTIFICATION - -#ifdef HAVE_GROWL -void send_growl_notification(const std::string& owner, const std::string& message, const desktop::notifications::type note_type) { - static WesnothGrowlDelegate *delegate = nil; - if (!delegate) { - delegate = [[WesnothGrowlDelegate alloc] init]; - [GrowlApplicationBridge setGrowlDelegate:delegate]; - } - - NSString *notificationName = @""; - switch (note_type) { - case desktop::notifications::CHAT: - notificationName = @"Chat Message"; - break; - case desktop::notifications::TURN_CHANGED: - notificationName = @"Turn Changed"; - break; - case desktop::notifications::OTHER: - notificationName = @"Wesnoth"; - break; - } - NSString *title = [NSString stringWithCString:owner.c_str() encoding:NSUTF8StringEncoding]; - NSString *description = [NSString stringWithCString:message.c_str() encoding:NSUTF8StringEncoding]; - [GrowlApplicationBridge notifyWithTitle:title - description:description - notificationName:notificationName - iconData:nil - priority:0 - isSticky:NO - clickContext:nil]; -} -#endif //end HAVE_GROWL } #endif //end __APPLE__