Fix Appearance module when using Chrome Debugger
Summary: The appearance module uses sync native module methods which doesn't work with the chrome debugger. This broke in 0.62: https://github.com/facebook/react-native/issues/26705 This fix makes the appearance module return 'light' when using the chrome debugger. Changelog: [Fixed] Appearance `getColorScheme` no longer breaks the debugger Reviewed By: yungsters Differential Revision: D20879779 fbshipit-source-id: ad49c66226096433bc9f270e004ad4a6f54fa8c2
This commit is contained in:
Родитель
990dd869cf
Коммит
f7b90336be
|
@ -17,6 +17,7 @@ import NativeAppearance, {
|
|||
type ColorSchemeName,
|
||||
} from './NativeAppearance';
|
||||
import invariant from 'invariant';
|
||||
import {isAsyncDebugging} from './DebugEnvironment';
|
||||
|
||||
type AppearanceListener = (preferences: AppearancePreferences) => void;
|
||||
const eventEmitter = new EventEmitter();
|
||||
|
@ -50,6 +51,14 @@ module.exports = {
|
|||
* @returns {?ColorSchemeName} Value for the color scheme preference.
|
||||
*/
|
||||
getColorScheme(): ?ColorSchemeName {
|
||||
if (__DEV__) {
|
||||
if (isAsyncDebugging) {
|
||||
// Hard code light theme when using the async debugger as
|
||||
// sync calls aren't supported
|
||||
return 'light';
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: (hramos) T52919652 Use ?ColorSchemeName once codegen supports union
|
||||
const nativeColorScheme: ?string =
|
||||
NativeAppearance == null
|
||||
|
|
Загрузка…
Ссылка в новой задаче