From 88d6bf80f5cdbbb90ead197bd41a67eb8c44e50e Mon Sep 17 00:00:00 2001 From: Rubén Beltrán del Río Date: Sat, 17 Jan 2026 11:22:22 +0100 Subject: Make clippy stricter and fix --- src/preferences/models.rs | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'src/preferences/models.rs') diff --git a/src/preferences/models.rs b/src/preferences/models.rs index dee84e6..81fa4d1 100644 --- a/src/preferences/models.rs +++ b/src/preferences/models.rs @@ -17,7 +17,7 @@ use serde::{Deserialize, Serialize}; use uuid::Uuid; -/// Stage labels for custom stages (matches Swift Stage struct) +/// Stage labels for custom stages #[derive(Debug, Clone, Serialize, Deserialize, Default, PartialEq)] pub struct Stage { pub i: String, @@ -26,7 +26,7 @@ pub struct Stage { pub iv: String, } -/// Custom stage definition (matches Swift CustomStage) +/// Custom stage definition #[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] #[serde(rename_all = "camelCase")] pub struct CustomStage { @@ -73,7 +73,7 @@ impl CustomStage { } } -/// Template for new maps (matches Swift Template) +/// Template for new maps #[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] #[serde(rename_all = "camelCase")] pub struct Template { @@ -106,7 +106,7 @@ impl Template { } } -/// JSON import/export format (matches Swift UserPreferencesJSON) +/// JSON import/export format /// All fields optional to support partial imports #[derive(Debug, Clone, Serialize, Deserialize, Default)] #[serde(rename_all = "camelCase")] @@ -136,6 +136,7 @@ pub struct UserPreferencesJson { /// Main preferences struct stored in app #[derive(Debug, Clone, Serialize, Deserialize, PartialEq)] #[serde(rename_all = "camelCase")] +#[allow(clippy::struct_excessive_bools)] // These are independent boolean preferences, not a state machine pub struct UserPreferences { // Map preferences pub show_map_background: bool, @@ -218,10 +219,10 @@ impl UserPreferences { self.use_custom_font = *v; } if let Some(ref v) = json.custom_font_name { - self.custom_font_name = v.clone(); + self.custom_font_name.clone_from(v); } if let Some(ref v) = json.default_export_format { - self.default_export_format = v.clone(); + self.default_export_format.clone_from(v); } if let Some(v) = json.use_smart_label_positioning { self.use_smart_label_positioning = v; @@ -230,7 +231,7 @@ impl UserPreferences { self.use_custom_editor_font = *v; } if let Some(ref v) = json.custom_editor_font_name { - self.custom_editor_font_name = v.clone(); + self.custom_editor_font_name.clone_from(v); } if let Some(v) = json.editor_font_size { self.editor_font_size = v; @@ -239,13 +240,13 @@ impl UserPreferences { self.soft_wrap_lines = v; } if let Some(ref v) = json.map_templates { - self.map_templates = v.clone(); + self.map_templates.clone_from(v); } if let Some(ref v) = json.custom_stages { - self.custom_stages = v.clone(); + self.custom_stages.clone_from(v); } if let Some(ref v) = json.view_style { - self.view_style = v.clone(); + self.view_style.clone_from(v); } if let Some(v) = json.zoom { self.zoom = v; -- cgit