diff --git a/crates/settings_ui/src/settings_ui.rs b/crates/settings_ui/src/settings_ui.rs index f448508971dbeb58126259be10111833fe4bb252..6d79b838743bb23f1bce7b409360f04929431df6 100644 --- a/crates/settings_ui/src/settings_ui.rs +++ b/crates/settings_ui/src/settings_ui.rs @@ -909,7 +909,7 @@ fn render_dropdown( let value = downcast_any_item::(value); let id = element_id_from_path(&value.path); - let menu = window.use_state(cx, |window, cx| { + let menu = window.use_keyed_state(id.clone(), cx, |window, cx| { let path = value.path.clone(); let handler = Rc::new(move |variant: &'static str, cx: &mut App| { SettingsValue::write_value(&path, serde_json::Value::String(variant.to_string()), cx);