fluttercommunity / fluttercommunity/apple_maps_flutter

Add option to manually set light/dark appearance (overrideUserInterfaceStyle)

Open
#77 2 comments 1 reaction 1 assignee Claimed by @LuisThein View on GitHub
enhancement
Dominant language
Dart
Stars
83
Forks
119
PR merge metrics
No merged PRs in 30d

Description

### Is your feature request related to a problem? Please describe.

I'm building a themable Flutter app where users can manually choose between light or dark mode, regardless of the system theme. Currently, the `apple_maps_flutter` plugin only follows the iOS system appearance, and there’s no way to manually set the map style to light or dark programmatically. This results in inconsistent theming when the app is in dark mode but the system is in light mode (or vice versa).

### Describe the solution you'd like

I’d like the plugin to expose an option in the `AppleMap` widget that allows developers to explicitly set the map appearance mode.

Example:

```
AppleMap(
appearance: MapAppearance.dark, // .light, .dark, .system (default)
)
```

Which would internally map to:

```
if #available(iOS 13.0, *) {
map.overrideUserInterfaceStyle = .dark // or .light / .unspecified
}
```

### Describe alternatives you've considered

- Forking the plugin and modifying the native iOS code to expose a custom method channel for `overrideUserInterfaceStyle`, but this increases maintenance burden.
- Forcing the entire app to change the system interface style via `Info.plist` or theming wrappers, which affects the whole app and doesn't allow per-widget control.

### Additional context

This would bring more flexibility for apps that support manual theme switching and improve visual consistency in user interfaces that integrate Apple Maps.

Thank you for the great work on this plugin!

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.