diff --git a/modules/gui/macosx/VLCOpenWindowController.m b/modules/gui/macosx/VLCOpenWindowController.m
index 994953a8b02f9f086356e2b5f148801ea7be8b3b..57920bc09dd7abbac33afaac4740a55c91eff863 100644
--- a/modules/gui/macosx/VLCOpenWindowController.m
+++ b/modules/gui/macosx/VLCOpenWindowController.m
@@ -414,8 +414,11 @@ static NSString *kCaptureTabViewId  = @"capture";
     // load window
     [self window];
 
-    [_tabView selectTabViewItemWithIdentifier:identifier];
-    [_fileSubCheckbox setState: NSOffState];
+    // Delay this to allow the full animation to run inside the modal event loop
+    dispatch_async(dispatch_get_main_queue(), ^{
+        [_tabView selectTabViewItemWithIdentifier:identifier];
+        [_fileSubCheckbox setState: NSOffState];
+    });
 
     int i_result = [NSApp runModalForWindow: self.window];
     [self.window close];