title: MPMoviePlayerController does not remove view when clicking done
body: <p>I am creating a MPMoviePlayerController object and streaming a video in full screen mode.</p>
  
  <p>I am using a UIViewController to display the movie view.</p>
  
  <pre><code>- (void)viewDidAppear:(BOOL)animated {
      [super viewDidAppear:animated];
      //http://www.youtube.com/watch?feature=player_detailpage&amp;v=ebeQaznNcmE
      NSURL *url = [NSURL URLWithString:@"http://a1408.g.akamai.net/5/1408/1388/2005110405/1a1a1ad948be278cff2d96046ad90768d848b41947aa1986/sample_mpeg4.mp4"];
      MPMoviePlayerController *mPlayer = [[MPMoviePlayerController alloc]initWithContentURL:url]; 
      mPlayer.view.frame = gMainView.frame;
  
      [[NSNotificationCenter defaultCenter] addObserver:self
                                              selector:@selector(moviePlayBackDidFinish:)
                                              name:MPMoviePlayerPlaybackDidFinishNotification
                                              object:mPlayer];
      mPlayer.shouldAutoplay = YES;
      mPlayer.controlStyle = MPMovieControlStyleFullscreen;
      [gMainView addSubview:mPlayer.view];
      [mPlayer prepareToPlay];
      [mPlayer setFullscreen:YES animated:YES];
      [mPlayer play];
  }
  
  
  - (void)moviePlayBackDidFinish:(NSNotification*)notification {
      int reason = [[[notification userInfo] valueForKey:MPMoviePlayerPlaybackDidFinishReasonUserInfoKey] intValue];
      if (reason == MPMovieFinishReasonPlaybackEnded) {
          //movie finished playing
      }
      else if (reason == MPMovieFinishReasonUserExited) {
          //user hit the done button
          MPMoviePlayerController *moviePlayer = [notification object];
  
          [[NSNotificationCenter defaultCenter] removeObserver:self      
                                                        name:MPMoviePlayerPlaybackDidFinishNotification
                                                        object:moviePlayer];
  
          if ([moviePlayer respondsToSelector:@selector(setFullscreen:animated:)]) {
              [moviePlayer.view removeFromSuperview];
          }
          [moviePlayer release];
      }
      else if (reason == MPMovieFinishReasonPlaybackError) {
          //error
      }
  }
  </code></pre>
  
  <p>When clicking done, the video visual is removed from the screen, but the controls are not removed from the screen and the view is not removed from the screen.</p>
  
  <p>The control does come to "//user hit the done button". It does execute the code to remove the view from superview, I checked by adding logs, <strong>but the controls are not removed from the screen and the view is not removed from the screen</strong>.
  What am I doing wrong?</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>If I use MPMoviePlayerViewController then it doesn't even wait for me to press Done. Once the video is complete it automatically removes the view. But I don' want that.</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>If I remove "[mPlayer setFullscreen:YES animated:YES]" then when clicking on Done, the view is removed completely. But the video is not displayed in full screen and the status bar goes gray which is again what I don't want.</p>