keymap_editor: Fix updating empty keymap (#40909)

Closes #40898

Release Notes:

- Fixed an issue where attempting to add or update a key binding in the
keymap editor with an empty `keymap.json` file would fail
This commit is contained in:
Ben Kunkle 2025-10-27 06:56:54 -07:00 committed by GitHub
parent 941033e373
commit 72c6a74505
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -150,6 +150,9 @@ pub enum KeymapFileLoadResult {
impl KeymapFile {
pub fn parse(content: &str) -> anyhow::Result<Self> {
if content.trim().is_empty() {
return Ok(Self(Vec::new()));
}
parse_json_with_comments::<Self>(content)
}
@ -211,11 +214,6 @@ impl KeymapFile {
}
pub fn load(content: &str, cx: &App) -> KeymapFileLoadResult {
if content.is_empty() {
return KeymapFileLoadResult::Success {
key_bindings: Vec::new(),
};
}
let keymap_file = match Self::parse(content) {
Ok(keymap_file) => keymap_file,
Err(error) => {