You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The iOS implementation of SetupPlatformStatusBar applies the wrong UIStatusBarStyle for the current theme. In Theme.ios.kt, dark theme currently uses UIStatusBarStyleDarkContent and light theme uses UIStatusBarStyleLightContent, which reverses the intended contrast.
This bug is currently latent because FoliaryTheme still defaults isDarkTheme to false, but it will become visible as soon as dark mode is enabled by default or passed explicitly on iOS. The result is poor or invisible status bar icon/text contrast against the app background.
Steps to Reproduce
Launch the iOS app.
Render FoliaryTheme with dark mode enabled, such as isDarkTheme = true or isSystemInDarkTheme().
Observe the iOS status bar content against the dark app background.
Switch back to light mode and observe the status bar content again.
Actual Behavior
On iOS, the status bar style is inverted:
Dark theme uses dark status bar content.
Light theme uses light status bar content.
This can make the status bar icons and text hard to read or effectively invisible in both themes, depending on the background.
Expected Behavior
On iOS, the status bar style should match the active theme contrast:
Dark theme should use UIStatusBarStyleLightContent.
Light theme should use UIStatusBarStyleDarkContent.
Additional Information
Environment: iOS
Priority: Low
Related Files: foliary/src/commonMain/kotlin/dev/appoutlet/foliary/core/ui/theme/Theme.kt, foliary/src/iosMain/kotlin/dev/appoutlet/foliary/core/ui/theme/Theme.ios.kt, foliary/src/androidMain/kotlin/dev/appoutlet/foliary/core/ui/theme/Theme.android.kt
Workaround: Keep dark theme disabled by default on iOS until the status bar mapping is corrected.
Description
The iOS implementation of
SetupPlatformStatusBarapplies the wrongUIStatusBarStylefor the current theme. InTheme.ios.kt, dark theme currently usesUIStatusBarStyleDarkContentand light theme usesUIStatusBarStyleLightContent, which reverses the intended contrast.This bug is currently latent because
FoliaryThemestill defaultsisDarkThemetofalse, but it will become visible as soon as dark mode is enabled by default or passed explicitly on iOS. The result is poor or invisible status bar icon/text contrast against the app background.Steps to Reproduce
FoliaryThemewith dark mode enabled, such asisDarkTheme = trueorisSystemInDarkTheme().Actual Behavior
On iOS, the status bar style is inverted:
This can make the status bar icons and text hard to read or effectively invisible in both themes, depending on the background.
Expected Behavior
On iOS, the status bar style should match the active theme contrast:
UIStatusBarStyleLightContent.UIStatusBarStyleDarkContent.Additional Information
foliary/src/commonMain/kotlin/dev/appoutlet/foliary/core/ui/theme/Theme.kt,foliary/src/iosMain/kotlin/dev/appoutlet/foliary/core/ui/theme/Theme.ios.kt,foliary/src/androidMain/kotlin/dev/appoutlet/foliary/core/ui/theme/Theme.android.kt