diff --git a/desktop/flipper-common/src/settings.tsx b/desktop/flipper-common/src/settings.tsx index c1ea10167..02b72f8c0 100644 --- a/desktop/flipper-common/src/settings.tsx +++ b/desktop/flipper-common/src/settings.tsx @@ -39,6 +39,7 @@ export type Settings = { darkMode: 'dark' | 'light' | 'system'; showWelcomeAtStartup: boolean; suppressPluginErrors: boolean; + persistDeviceData: boolean; /** * Plugin marketplace - allow internal plugin distribution */ diff --git a/desktop/flipper-server-core/src/utils/settings.tsx b/desktop/flipper-server-core/src/utils/settings.tsx index dc483f7a7..5c4a9b3ba 100644 --- a/desktop/flipper-server-core/src/utils/settings.tsx +++ b/desktop/flipper-server-core/src/utils/settings.tsx @@ -66,6 +66,7 @@ function getDefaultSettings(): Settings { darkMode: 'light', showWelcomeAtStartup: true, suppressPluginErrors: false, + persistDeviceData: false, enablePluginMarketplace: false, marketplaceURL: '', enablePluginMarketplaceAutoUpdate: true, diff --git a/desktop/flipper-ui-core/src/chrome/SettingsSheet.tsx b/desktop/flipper-ui-core/src/chrome/SettingsSheet.tsx index 08adbde82..5ab70a300 100644 --- a/desktop/flipper-ui-core/src/chrome/SettingsSheet.tsx +++ b/desktop/flipper-ui-core/src/chrome/SettingsSheet.tsx @@ -127,6 +127,7 @@ class SettingsSheet extends Component { reactNative, darkMode, suppressPluginErrors, + persistDeviceData, enablePluginMarketplace, enablePluginMarketplaceAutoUpdate, marketplaceURL, @@ -270,6 +271,18 @@ class SettingsSheet extends Component { })); }} /> + { + this.setState((prevState) => ({ + updatedSettings: { + ...prevState.updatedSettings, + persistDeviceData: enabled, + }, + })); + }} + /> Theme Selection