dotnet avatar

Maui Safe Area

If you're hitting .NET 10 and your Android content suddenly bleeds behind the status bar, this is why: the new SafeAreaEdges property replaced the old iOS-only UseSafeArea API and changed ContentPage's default to edge-to-edge on all platforms. The skill covers the SafeAreaRegions flags (Container for system bars, SoftInput for keyboard), per-edge control, and migration patterns for chat UIs, immersive layouts, and mixed designs where your header goes full-bleed but your form stays safe. It's focused on .NET 10 plus only. If you're still on .NET 9, you'll need the legacy properties instead.

skills.sh installs
3.9K
GitHub stars
5.9K
last updated
Aug 21, 2026

Install

$ npx -y skills add dotnet/skills --skill maui-safe-area --agent claude-code

Installs into .claude/skills of the current project.

Files

Safe Area & Edge-to-Edge Layout (.NET 10+)

.NET 10 introduces a brand-new, cross-platform safe area API that replaces the legacy iOS-only UseSafeArea and the layout-level IgnoreSafeArea properties. The new SafeAreaEdges property and SafeAreaRegions flags enum give you per-edge, per-control safe area management on Android, iOS, and Mac Catalyst from a single API surface.

This is new API surface in .NET 10. If the project targets .NET 9 or earlier, these APIs do not exist. Guide the developer to the legacy ios:Page.UseSafeArea and Layout.IgnoreSafeArea properties instead.

When to Use

  • Content overlaps status bar, notch, Dynamic Island, or home indicator after upgrading to .NET 10
  • Implementing edge-to-edge / immersive layouts (photo viewers, video players, maps)
  • Keyboard avoidance for chat or form UIs
  • Migrating from ios:Page.UseSafeArea, Layout.IgnoreSafeArea, or WindowSoftInputModeAdjust.Resize
  • Blazor Hybrid apps that need CSS env(safe-area-inset-*) coordination
  • Mixed layouts with an edge-to-edge header but a safe-area-respecting body

When Not to Use

Sponsors

Details

Repository
github.com/dotnet/skills
Categories
Frontend Development, Backend & APIs, Mobile Development, Design & UI/UX, CLI & Terminal, .NET & C#
First seen
Jun 3, 2026

More from dotnet/skills

All 102
1markdown-viewer avatarumlmarkdown-viewer/skillsCreate UML diagrams using PlantUML syntax. Best for software modeling — Class, Sequence, Activity, State Machine, Component, Use Case, and Deployment diagrams w3.9Kskills.sh installs
2dotnet avatarconfigure-authdotnet/skillsAdd authentication and authorization to a Blazor Web App, accounting for the app's render mode. USE WHEN the user needs [Authorize] on pages, AuthorizeView, rol3.9Kskills.sh installs
3anthropics avatardesign-handoffanthropics/knowledge-work-pluginsGenerate developer handoff specs from a design. Use when a design is ready for engineering and needs a spec sheet covering layout, design tokens, component prop3.8Kskills.sh installs
4dotnet avatarcreate-blazor-projectdotnet/skillsCreate a new ASP.NET Core web application or web site using Blazor. USE FOR: creating a new Blazor web app, scaffolding a new web project, starting a new web si3.8Kskills.sh installs
5dotnet avatarcollect-user-inputdotnet/skillsBuild forms, validate data, and react to user input in Blazor. USE FOR adding forms, search boxes, filter panels, inline editing, data-entry UI, file uploads, v3.7Kskills.sh installs
6dotnet avatarcoordinate-componentsdotnet/skillsShare state between components that don't have a direct parent-child parameter relationship, using cascading values, scoped services with change events, or Casc3.7Kskills.sh installs