title: MFMailComposeViewController didFinishWithResult issue when the keyboard appears
body: <p>I've got a standard implementation of the MFMailComposeViewController.</p>
  
  <p>I've set the right delegate protocols, and have a log happening on the didFinishWithResult method.</p>
  
  <p>See:</p>
  
  <pre><code>mailComposer = [[MFMailComposeViewController alloc] init];
  [mailComposer setSubject:emailTitle];
  [mailComposer setMessageBody:messageBody isHTML:YES];
  mailComposer.mailComposeDelegate = self;
  
  [[self getController] presentViewController:mailComposer animated:YES completion:NULL];
  </code></pre>
  
  <hr>
  
  <pre><code>- (void) mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error
  {
      NSLog(@"mail dismiss");
      [[self getController] dismissViewControllerAnimated:YES completion:NULL];
  }
  </code></pre>
  
  <p>That shows the mail composer properly, and everything works well. Meaning, if I press the "cancel" button, the didFinishWithResult method gets called and the mailComposer gets dismissed.</p>
  
  <p>However, if I try to type anything, such as TO: email address, or anything else in the mail composer itself, <strong>it feels like the keyboard appearing is removing the delegate actions of my view controller, since the "cancel" and "send" buttons trigger no actions</strong>.</p>
  
  <p>Any thoughts? It's driving me crazy :/</p>
  
  <p>Cheers</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>Here's the code for getController:</p>
  
  <pre><code>- (UIViewController *) getController
  {
      Class vcc = [UIViewController class];
  
      UIResponder *responder = self;
      while ((responder = [responder nextResponder]))
          if ([responder isKindOfClass: vcc])
              return (UIViewController *)responder;
  
      return nil;
  }
  </code></pre>