Skip to content

Instantly share code, notes, and snippets.

@steipete
Created November 26, 2014 11:10
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save steipete/879f037db0bf0bd44559 to your computer and use it in GitHub Desktop.
Save steipete/879f037db0bf0bd44559 to your computer and use it in GitHub Desktop.
- [UIPopoverPresentationController dimmingViewWasTapped:] decompiled with Decompiled with IDA Pro 6.6.1 and the x86 Decompiler
// UIPopoverPresentationController - (void)dimmingViewWasTapped:(id)
void __cdecl -[UIPopoverPresentationController dimmingViewWasTapped:](struct UIPopoverPresentationController *self, SEL a2, id a3)
{
void *v3; // eax@2
void *v4; // eax@5
void *v5; // eax@6
void *v6; // eax@7
void *v7; // eax@8
if ( !objc_msgSend(self, selRef_delegate)
|| (v3 = objc_msgSend(self, selRef_delegate),
!(unsigned __int8)objc_msgSend(
v3,
selRef_respondsToSelector_,
selRef_popoverPresentationControllerShouldDismissPopover_))
|| (unsigned __int8)objc_msgSend(self, selRef_presented)
&& !(unsigned __int8)objc_msgSend(self, selRef_dismissing)
&& (v4 = objc_msgSend(self, selRef_delegate),
(unsigned __int8)objc_msgSend(v4, selRef_popoverPresentationControllerShouldDismissPopover_, self)) )
{
self->super.NSObject_opaque[OBJC_IVAR___UIPopoverPresentationController__isDismissingBecauseDimmingViewTapped] = 1;
v5 = objc_msgSend(self, selRef_presentingViewController);
objc_msgSend(v5, selRef_dismissViewControllerAnimated_completion_, 1, 0);
if ( objc_msgSend(self, selRef_delegate) )
{
v6 = objc_msgSend(self, selRef_delegate);
if ( (unsigned __int8)objc_msgSend(
v6,
selRef_respondsToSelector_,
selRef_popoverPresentationControllerWillDismissPopover_) )
{
v7 = objc_msgSend(self, selRef_delegate);
objc_msgSend(v7, selRef_popoverPresentationControllerWillDismissPopover_, self);
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment