MediaPicker.CapturePhotoAsync camera not opening fullscreen on iPad Pro 13-inch (M5)

Ekta Gautam (NCS) 0 Reputation points
2026-07-07T06:54:41.2666667+00:00

When using MediaPicker.Default.CapturePhotoAsync() in a .NET MAUI application on iPad, the camera is not always presented in fullscreen mode. On certain iPad devices, the camera opens as a sheet/popover instead of occupying the full screen. The issue is reproducible on an iPad Pro 13-inch (M5) running iOS 26.3 but is not reproducible on an iPad mini (A17 pro) and iPad Air 11-inch (M4)using the same application build.

Steps to Reproduce

  1. Create or run a .NET MAUI application that uses MediaPicker.Default.CapturePhotoAsync().
  2. Launch the application on an iPad Pro 13-inch (M5).
  3. Trigger photo capture by calling await MediaPicker.Default.CapturePhotoAsync();
  4. Observe the camera presentation.

Expected Behavior:

The camera should open in fullscreen mode when capturing a photo.

Actual Behavior:

The camera opens in a sheet/popover style presentation instead of fullscreen.

Environment

.NET MAUI Version: 10.0.70

.NET SDK Version: 10.0.203

iOS Version: 26.3

Device: iPad Pro 13-inch (M5)

Not Reproducible On: iPad mini (A17 pro), iPad Air 11-inch (M4)

Additional Information

  • Camera functionality itself works correctly.
  • Users are able to capture photos successfully.
  • The issue appears to be limited to the presentation style of the native camera UI.
  • The application uses the standard .NET MAUI MediaPicker.Default.CapturePhotoAsync() API without any custom camera implementation.
  • Based on investigation, .NET MAUI internally uses Apple's native UIImagePickerController for camera capture.

Workaround

The issue can be worked around by bypassing the .NET MAUI MediaPicker implementation and using a custom native iOS/UIKit camera implementation.

By presenting the native UIImagePickerController (or an alternative native camera controller) with an explicit fullscreen presentation style, the camera can be displayed in fullscreen mode on affected iPad devices.

However, this requires platform-specific iOS code and moves away from the standard .NET MAUI MediaPicker abstraction, increasing implementation and maintenance complexity. For this reason, we would prefer to continue using the MAUI MediaPicker API if there is a supported way to control the presentation style.

Question

Is this behavior expected due to iPadOS presentation rules on certain device size classes, or is there a supported way in .NET MAUI to force fullscreen presentation of the camera interface on iPad devices?

Developer technologies | .NET | Xamarin
0 comments No comments

1 answer

Sort by: Most helpful
  1. Nancy Vo (WICLOUD CORPORATION) 7,495 Reputation points Microsoft External Staff Moderator
    2026-07-07T07:49:42.6133333+00:00

    Hello @Ekta Gautam (NCS) ,

    Thanks for your question.

    Regarding your issue with MediaPicker.CapturePhotoAsync not opening fullscreen on the 13-inch iPad Pro:

    Is this behavior expected due to iPadOS presentation rules?

    Yes, this is entirely expected. The root cause is an underlying Apple iOS default behavior, not a bug in .NET MAUI.

    Starting in iOS 13, Apple changed the default way new screens are presented from fullscreen to a style called pageSheet. The way a pageSheet looks depends strictly on the physical size of the device:

    • On massive screens (like the iPad Pro 13-inch), there is plenty of room, so the OS renders the pageSheet as a floating popover/sheet in the middle of the screen.
    • On smaller screens (like the iPad mini or iPad Air), the system recognizes the screen is "compact" and automatically stretches that exact same pageSheet to fill the entire screen.

    Because .NET MAUI's MediaPicker is a basic cross-platform wrapper, it simply calls the native camera using Apple's default system settings and inherits this exact behavior.

    Is there a supported way in .NET MAUI to force fullscreen?

    No. The standard .NET MAUI MediaPicker does not expose a property to change Apple's native modalPresentationStyle to fullscreen.

    If your application strictly requires the camera to be fullscreen on 13-inch iPads, you cannot use the default MediaPicker.Default.CapturePhotoAsync(). You must write a custom native iOS implementation using UIImagePickerController and manually set its presentation style to UIModalPresentationFullScreen to override Apple's default behavior.

    For more detailed information, you can refer to UIModalPresentationStyle.pageSheet and Media picker for photos and videos.

    While this is a non-Microsoft link, it’s official Apple documentation and is safe to visit.

    I hope this addresses your question. If this response was helpful, please consider following the guidance to provide feedback.

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.