From 60e61ae74735e89fb1048f6cb2cf8483a6b89d22 Mon Sep 17 00:00:00 2001 From: Eric Goldberg Date: Fri, 28 Feb 2014 12:42:10 -0800 Subject: [PATCH 1/2] Send a willDismissSemiModalView message if self responds to it Allows for cleanup or other work to be done when view is dismissed by a tap in the top area --- Source/UIViewController+KNSemiModal.m | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Source/UIViewController+KNSemiModal.m b/Source/UIViewController+KNSemiModal.m index acd17f2..645c692 100755 --- a/Source/UIViewController+KNSemiModal.m +++ b/Source/UIViewController+KNSemiModal.m @@ -305,6 +305,8 @@ -(void)updateBackground{ [self kn_addOrUpdateParentScreenshotInView:overlay]; } -(void)dismissSemiModalView { + if ([self respondsToSelector:@selector(willDismissSemiModalView)]) + [self performSelectorOnMainThread:@selector(willDismissSemiModalView) withObject:nil waitUntilDone:YES]; [self dismissSemiModalViewWithCompletion:nil]; } From 2c7325d3e58ffe89c7194fd1f773e6b5c966ad8c Mon Sep 17 00:00:00 2001 From: Eric Goldberg Date: Fri, 28 Feb 2014 12:53:43 -0800 Subject: [PATCH 2/2] Create selector at runtime to silence warnings --- Source/UIViewController+KNSemiModal.m | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Source/UIViewController+KNSemiModal.m b/Source/UIViewController+KNSemiModal.m index 645c692..533c8a3 100755 --- a/Source/UIViewController+KNSemiModal.m +++ b/Source/UIViewController+KNSemiModal.m @@ -305,8 +305,9 @@ -(void)updateBackground{ [self kn_addOrUpdateParentScreenshotInView:overlay]; } -(void)dismissSemiModalView { - if ([self respondsToSelector:@selector(willDismissSemiModalView)]) - [self performSelectorOnMainThread:@selector(willDismissSemiModalView) withObject:nil waitUntilDone:YES]; + SEL willDismissSelector = NSSelectorFromString(@"willDismissSemiModalView"); + if ([self respondsToSelector:willDismissSelector]) + [self performSelectorOnMainThread:willDismissSelector withObject:nil waitUntilDone:YES]; [self dismissSemiModalViewWithCompletion:nil]; }