Skip to content

Commit

Permalink
fix for status bar dark mode issue
Browse files Browse the repository at this point in the history
  • Loading branch information
kanzitelli committed Oct 20, 2022
1 parent 076acc4 commit 68fe493
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 1 deletion.
11 changes: 10 additions & 1 deletion src/services/navigation/options.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
import {StatusBar} from 'react-native';
import {Options, OptionsTopBar} from 'react-native-navigation';
import {Colors} from 'react-native-ui-lib';
import Ionicons from 'react-native-vector-icons/Ionicons';
import {getThemeColor, getThemeStatusBarStyle} from '../../utils/designSystem';
import {
getThemeColor,
getThemeRNStatusBarStyle,
getThemeStatusBarStyle,
} from '../../utils/designSystem';
import {NavButton, navButtons} from './buttons';

const ICON_SIZE = 25;
Expand Down Expand Up @@ -53,6 +58,10 @@ export const tabsDefaultOptions = (): Options => {
};

export const navDefaultOptions = (): Options => {
// quick-fix: it seems like RNN options ignore status bar style,
// so StatusBar from react-native is used
StatusBar.setBarStyle(getThemeRNStatusBarStyle());

return {
layout: {
orientation: ['portrait'],
Expand Down
18 changes: 18 additions & 0 deletions src/utils/designSystem.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import {StatusBarStyle as RNStatusBarStyle} from 'react-native';
import {Color} from 'react-native-navigation';
import {Colors, Typography} from 'react-native-ui-lib';
import {stores} from '../stores';
Expand Down Expand Up @@ -80,3 +81,20 @@ export const getThemeStatusBarStyle = (): StatusBarStyle => {
}
}
};

export const getThemeRNStatusBarStyle = (): RNStatusBarStyle => {
const {ui} = stores;

if (ui.isAppearanceSystem) {
return 'default';
} else {
switch (ui.appearance) {
case 'dark':
return 'light-content';
case 'light':
return 'dark-content';
default:
return 'default';
}
}
};

0 comments on commit 68fe493

Please sign in to comment.