From 7c746bb9e3474b7211fec70676ff731fa922536a Mon Sep 17 00:00:00 2001 From: Joan Lluch Date: Tue, 2 Apr 2013 11:26:39 +0200 Subject: [PATCH] update --- .gitignore | 39 +++++++++++--- .../project.pbxproj | 11 ++-- RevealControllerExample2/.DS_Store | Bin 15364 -> 0 bytes RevealControllerExample3/.DS_Store | Bin 15364 -> 15364 bytes RevealControllerStoryboardExample/.DS_Store | Bin 6148 -> 6148 bytes .../UserInterfaceState.xcuserstate | Bin 34244 -> 37424 bytes .../en.lproj/MainStoryboard.storyboard | 7 ++- .../SWRevealViewController.h | 3 ++ .../SWRevealViewController.m | 48 +++++++++--------- 9 files changed, 67 insertions(+), 41 deletions(-) delete mode 100644 RevealControllerExample2/.DS_Store diff --git a/.gitignore b/.gitignore index bd75dfb..6b3620b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,33 @@ -/RevealControllerProject3.xcodeproj/xcuserdata/Nick.xcuserdatad/ -/RevealControllerProject3.xcodeproj/project.xcworkspace/xcuserdata/Nick.xcuserdatad/ -/RevealControllerProject2.xcodeproj/xcuserdata/Nick.xcuserdatad/ -/RevealControllerProject2.xcodeproj/project.xcworkspace/xcuserdata/Nick.xcuserdatad/ -/RevealControllerProject.xcodeproj/xcuserdata/Nick.xcuserdatad/ -/RevealControllerProject.xcodeproj/project.xcworkspace/xcuserdata/Nick.xcuserdatad/ \ No newline at end of file +#/RevealControllerProject3.xcodeproj/xcuserdata/Nick.xcuserdatad/ +#/RevealControllerProject3.xcodeproj/project.xcworkspace/xcuserdata/Nick.xcuserdatad/ +#/RevealControllerProject2.xcodeproj/xcuserdata/Nick.xcuserdatad/ +#/RevealControllerProject2.xcodeproj/project.xcworkspace/xcuserdata/Nick.xcuserdatad/ +#/RevealControllerProject.xcodeproj/xcuserdata/Nick.xcuserdatad/ +#/RevealControllerProject.xcodeproj/project.xcworkspace/xcuserdata/Nick.xcuserdatad/ + + +martinhj.* +hhernandez.* +joan.* +*xcuserdata/* +*copy.* + +# From https://github.com/github/gitignore/blob/master/Objective-C.gitignore +# +*.DS_Store +build/ +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 +*.xcworkspace +!default.xcworkspace +xcuserdata +profile +*.moved-aside +DerivedData +.idea/ \ No newline at end of file diff --git a/RevealControllerExample/RevealControllerProject.xcodeproj/project.pbxproj b/RevealControllerExample/RevealControllerProject.xcodeproj/project.pbxproj index cd08c10..1e5480a 100755 --- a/RevealControllerExample/RevealControllerProject.xcodeproj/project.pbxproj +++ b/RevealControllerExample/RevealControllerProject.xcodeproj/project.pbxproj @@ -335,7 +335,7 @@ CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_IDENTITY = "iPhone Developer: Joan Lluch (MV7322A4Y6)"; COPY_PHASE_STRIP = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; @@ -351,7 +351,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 6.0; - "PROVISIONING_PROFILE[sdk=iphoneos*]" = ""; + PROVISIONING_PROFILE = "D37F0C7B-5F86-43A3-863A-8F78A80A6E61"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; }; @@ -367,7 +367,7 @@ CLANG_WARN_ENUM_CONVERSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_IDENTITY = "iPhone Developer: Joan Lluch (MV7322A4Y6)"; COPY_PHASE_STRIP = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_VERSION = com.apple.compilers.llvm.clang.1_0; @@ -377,6 +377,7 @@ GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 6.0; OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1"; + PROVISIONING_PROFILE = "D37F0C7B-5F86-43A3-863A-8F78A80A6E61"; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; @@ -386,12 +387,10 @@ 5E605BC714A081F900853025 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "RevealControllerProject/Project-Prefix.pch"; INFOPLIST_FILE = "RevealControllerProject/RevealControllerProject-Info.plist"; PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE = ""; WRAPPER_EXTENSION = app; }; name = Debug; @@ -399,12 +398,10 @@ 5E605BC814A081F900853025 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "RevealControllerProject/Project-Prefix.pch"; INFOPLIST_FILE = "RevealControllerProject/RevealControllerProject-Info.plist"; PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE = ""; WRAPPER_EXTENSION = app; }; name = Release; diff --git a/RevealControllerExample2/.DS_Store b/RevealControllerExample2/.DS_Store deleted file mode 100644 index 3872e709e285e4246e8d533f45e8fb6badf4d0bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15364 zcmeHMU2GIp6u#%SzziK_imBMZ3V^~jPWM7{evqn<7nL^*Q zsS#bX?AqE3K#Pj!%$+9)^95<3S2GlIti{Y4ighqPWRAr(MNK6$4>@%^X=kmLWX92S zChZ~AIQ4GR)UiI`S@&v+Jv1nnO-!t-+gRUF9cirFJXsx?sH<Tb!#bd5ER=)t0t*4$oi>fmjLP(ba%noLr?Yy}R-1J_ zu05<;y=ha=4jUG;PG?MA?=&rqb<>xy)p48I6sQvYmYK0z9mj-*{kv9j)>6Av>|7gF zV>pB*gCLw)uq3i-UE}>NyE<}m>B4&!Ee-_w@tGR7c0^M%J!9-q^(C#eYABjzUgdWY<#&Vu1;^WGDy&Z>7hF~;OXbo^zoj4?WOl6? z6-zW*T_p$BNY#EbQ9dkmTe$FCux7m+s0%a{T3BNDaono8;D(K|)D+m_w-97S?9r1c zRnG;tZj+_$f#yP!y<+dE`>b-o)|f0U4zv{*iHWp1JdAKzx!~?SveYi^FR+o%3y0Xk z+LM;uF`^o5ZJiG?2)YYwg+6B4tSG9oJio!0N2}cGw3b@8MZ}-ia#BxXBtZ@%nJ368 z@;rHoyiMLE?~(V(Ir16#hI~&hli$f-3Z8~%;50l3FTyME2D}Mp;Vt+8K7{k|C42>6!v**OF2iqd1+Kz1 zN@)o#rDZfkD`=S3&`oq3ZKJ#BZW^ZpRHX(TbEi)8MDEY8(`z3`ITJ2=M_17UH{oJ$ zqEGG*-@#nGxWHrJy-Su=t>3sUwzup0?s5n>ogNMY+%4>E_54=#?KB_rmX?LeE5cF_ zazh>WZ@xT(<#~+RLauW8ieR`RygJ|Rw--g3xH%Q?E zbrG@{506bvq0L)xLcViGo`VEM?+3PrqRrt#?_$|vN6(I(p|)K&@SZF0W!~-kLi;;z zFf{=giRyTFsHD1ZYJxb8XESErrzA%%lAp-0diN4Nw(BlCWN zKj8|+-yJ%K&ZYCHOanARE9nZllCGlb=?1!;MrkwM<1*04z5yTmj?9F8qw$QPo5oS} zWvs5e)fW#^L&otH#3Ty7ij24~CAxVuj%VwLGe0MoAi~k+s@q#135#R`L1ULd50geDifFr;W;0SO8I0762jsQo1Bft^(Pa^Oy DP8NOT diff --git a/RevealControllerExample3/.DS_Store b/RevealControllerExample3/.DS_Store index d711323edcb0d9feba9c9aff6b3ae849e53b0379..0ac523bd01ead53b6b69ab3edc988db2e286466b 100644 GIT binary patch delta 27 jcmZpvXsOt6TY~B6;>mXK<)@&@i!nT=R;jc6Rw3Q4? delta 27 jcmZpvXsOt6TY~9O|Kz(8!OVtFR5uo0VcX2E@K+iDu!sxw diff --git a/RevealControllerStoryboardExample/.DS_Store b/RevealControllerStoryboardExample/.DS_Store index 6445c93564870d4f299388b0059ada11638989c2..093668b16c6ca173e20b6ca8a840db8fce604c88 100644 GIT binary patch delta 32 ocmZoMXffDO%*f2>Fmo~wW7OmejNHtIPgFNQWK?5Y%)%i60H?DFkN^Mx delta 32 ocmZoMXffDO%*f1;d15jTW7OmejNHtk4Kp`CWK?5Y%)%i60Iom@+W-In diff --git a/RevealControllerStoryboardExample/RevealControllerStoryboardExample.xcodeproj/project.xcworkspace/xcuserdata/joan.xcuserdatad/UserInterfaceState.xcuserstate b/RevealControllerStoryboardExample/RevealControllerStoryboardExample.xcodeproj/project.xcworkspace/xcuserdata/joan.xcuserdatad/UserInterfaceState.xcuserstate index 7923fdd031fc15bd78f0ca11b87e9fa485168d22..25d02d716e3203fde6fa8da2e4bb390c8f8bc6b6 100644 GIT binary patch delta 16624 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 delta 14501 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 diff --git a/RevealControllerStoryboardExample/RevealControllerStoryboardExample/en.lproj/MainStoryboard.storyboard b/RevealControllerStoryboardExample/RevealControllerStoryboardExample/en.lproj/MainStoryboard.storyboard index 08b29b2..1b05e4a 100644 --- a/RevealControllerStoryboardExample/RevealControllerStoryboardExample/en.lproj/MainStoryboard.storyboard +++ b/RevealControllerStoryboardExample/RevealControllerStoryboardExample/en.lproj/MainStoryboard.storyboard @@ -1,7 +1,7 @@ - + - + @@ -186,7 +186,6 @@ - @@ -213,7 +212,7 @@ - + \ No newline at end of file diff --git a/SWRevealViewController/SWRevealViewController.h b/SWRevealViewController/SWRevealViewController.h index dded6f7..93635ad 100755 --- a/SWRevealViewController/SWRevealViewController.h +++ b/SWRevealViewController/SWRevealViewController.h @@ -140,6 +140,9 @@ typedef enum - (void)revealController:(SWRevealViewController *)revealController animateToPosition:(FrontViewPosition)position; +- (void)revealControllerPanGestureBegan:(SWRevealViewController *)revealController; +- (void)revealControllerPanGestureEnded:(SWRevealViewController *)revealController; + @end diff --git a/SWRevealViewController/SWRevealViewController.m b/SWRevealViewController/SWRevealViewController.m index 368a3b1..d2315c6 100755 --- a/SWRevealViewController/SWRevealViewController.m +++ b/SWRevealViewController/SWRevealViewController.m @@ -429,16 +429,17 @@ - (void)loadView // load any defined front/rear controllers from the storyboard if ( self.storyboard && _rearViewController == nil ) { - [self performSegueWithIdentifier:SWSegueRearIdentifier sender:nil]; - [self performSegueWithIdentifier:SWSegueFrontIdentifier sender:nil]; - } - - // load any defined right controllers from the storyboard - if ( self.storyboard && _rightViewController == nil ) - { - [self performSegueWithIdentifier:SWSegueRightIdentifier sender:nil]; + @try + { + [self performSegueWithIdentifier:SWSegueRearIdentifier sender:nil]; + [self performSegueWithIdentifier:SWSegueFrontIdentifier sender:nil]; + [self performSegueWithIdentifier:SWSegueRightIdentifier sender:nil]; + } + @catch(NSException *exception) + { + //NSLog(@"Caught %@: %@", [exception name], [exception reason]); + } } - // Apple also tells us to do this: _contentView.backgroundColor = [UIColor blackColor]; @@ -472,6 +473,11 @@ - (void)viewDidAppear:(BOOL)animated // [_frontViewController view]; // [_rearViewController view]; + + // we store at this point the view's user interaction state as we may temporarily disable it + // and resume it back to the previous state, it is possible to override this behaviour by + // intercepting it on the panGestureBegan and panGestureEnded delegates + _userInteractionStore = _contentView.userInteractionEnabled; } @@ -604,9 +610,12 @@ - (void)rightRevealToggle:(id)sender // disable userInteraction on the entire control - (void)_disableUserInteraction { - _userInteractionStore = _contentView.userInteractionEnabled; + //_userInteractionStore = _contentView.userInteractionEnabled; [_contentView setUserInteractionEnabled:NO]; [_contentView setDisableLayout:YES]; + + if ( [_delegate respondsToSelector:@selector(revealControllerPanGestureBegan:)] ) + [_delegate revealControllerPanGestureBegan:self]; } // restore userInteraction on the control @@ -616,6 +625,9 @@ - (void)_restoreUserInteraction // to have our view interaction disabled beforehand [_contentView setUserInteractionEnabled:_userInteractionStore]; [_contentView setDisableLayout:NO]; + + if ( [_delegate respondsToSelector:@selector(revealControllerPanGestureEnded:) ] ) + [_delegate revealControllerPanGestureEnded:self]; } @@ -894,6 +906,8 @@ - (void)_setFrontViewPosition:(FrontViewPosition)newPosition withDuration:(NSTim void (^animations)() = ^() { + // We call the layoutSubviews method on the contentView view and send a delegate, which will + // occur inside of an animation block if any animated transition is being performed [_contentView layoutSubviews]; if ([_delegate respondsToSelector:@selector(revealController:animateToPosition:)]) @@ -965,20 +979,6 @@ - (void)_setRightViewController:(UIViewController*)newRightViewController } -#pragma mark view controller deployment and layout - -// Calls the layoutSubviews method on the contentView view and sends a delegate call, which will -// occur inside of an animation block if any animated transition is being performed -- (void)_layoutControllerViews -{ - [_contentView layoutSubviews]; - - if ([_delegate respondsToSelector:@selector(revealController:animateToPosition:)]) - [_delegate revealController:self animateToPosition:_frontViewPosition]; - -} - - #pragma mark Position based view controller deployment // Deploy/Undeploy of the front view controller following the containment principles. Returns a block