From 39928c163d04d413e8f6fa8ff41813ddbb888cde Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Wed, 11 Aug 2010 19:23:51 +0000 Subject: [PATCH] Monotone-Parent: e55c7e9b0d4eff602ecb06071b3c60c6e2c19bf0 Monotone-Revision: 509b02f4f9f2961c7946b8a808d6fe29000b8cc9 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2010-08-11T19:23:51 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++++ SoObjects/SOGo/WORequest+SOGo.h | 1 + SoObjects/SOGo/WORequest+SOGo.m | 10 ++++++++++ 3 files changed, 15 insertions(+) diff --git a/ChangeLog b/ChangeLog index b596344a6..ab7cd08a8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2010-08-11 Wolfgang Sourdeau + * SoObjects/SOGo/WORequest+SOGo.m (-isAddressBookApp): new + (hackish) test method to determine whether the client is Apple's + AddressBook.app. + * UI/Common/UIxPageFrame.m (_dictionaryWithKeys:fromSource:): set an NSNull as value for keys which return no results, in order to avoid an NSInvalidArgumentException. diff --git a/SoObjects/SOGo/WORequest+SOGo.h b/SoObjects/SOGo/WORequest+SOGo.h index 415c3dbb4..f5b775e90 100644 --- a/SoObjects/SOGo/WORequest+SOGo.h +++ b/SoObjects/SOGo/WORequest+SOGo.h @@ -34,6 +34,7 @@ - (BOOL) isIPhone; - (BOOL) isICal; - (BOOL) isICal4; +- (BOOL) isAddressBookApp; @end diff --git a/SoObjects/SOGo/WORequest+SOGo.m b/SoObjects/SOGo/WORequest+SOGo.m index c1c0d042a..744a4802b 100644 --- a/SoObjects/SOGo/WORequest+SOGo.m +++ b/SoObjects/SOGo/WORequest+SOGo.m @@ -137,4 +137,14 @@ return [self isAppleDAVWithSubstring: @"iCal/4."]; } +- (BOOL) isAddressBookApp +{ + WEClientCapabilities *cc; + + cc = [self clientCapabilities]; + + return ([[cc userAgent] rangeOfString: @"CFNetwork"].location != NSNotFound + && [[cc userAgent] rangeOfString: @"Darwin"].location != NSNotFound); +} + @end