Add scroll font size preference and bump v1.3.5

This commit is contained in:
Yuri Karamian
2026-08-26 17:16:16 +02:00
parent ce48d77cd8
commit a15b267614
13 changed files with 130 additions and 8 deletions
+16
View File
@@ -470,6 +470,22 @@ pub fn set_font_size(app: AppHandle, state: State<'_, AppState>, size: u32) -> R
.map_err(|e| e.to_string())
}
#[tauri::command]
pub fn set_scroll_to_change_font_size(
app: AppHandle,
state: State<'_, AppState>,
enabled: bool,
) -> Result<(), String> {
let mut config = state.config.lock().map_err(|e| e.to_string())?;
config.scroll_to_change_font_size = enabled;
save_app_config(&config)?;
drop(config);
use tauri::Emitter;
app.emit("scroll-to-change-font-size-changed", enabled)
.map_err(|e| e.to_string())
}
#[tauri::command]
pub fn set_font_family(state: State<'_, AppState>, family: String) -> Result<(), String> {
let mut config = state.config.lock().map_err(|e| e.to_string())?;
+1
View File
@@ -172,6 +172,7 @@ pub fn run() {
commands::export_custom_theme,
commands::import_custom_themes,
commands::set_font_size,
commands::set_scroll_to_change_font_size,
commands::set_font_family,
commands::set_line_height,
commands::set_ui_scale,
+18
View File
@@ -124,6 +124,8 @@ pub struct AppConfig {
pub accent_color: Option<String>,
#[serde(default)]
pub font_size: Option<u32>,
#[serde(default = "default_true")]
pub scroll_to_change_font_size: bool,
#[serde(default)]
pub font_family: Option<String>,
#[serde(default)]
@@ -296,6 +298,7 @@ impl Default for AppConfig {
system_dark_theme: default_system_dark_theme(),
accent_color: None,
font_size: None,
scroll_to_change_font_size: true,
font_family: None,
line_height: None,
ui_scale: None,
@@ -554,4 +557,19 @@ mod startup_view_tests {
assert!(!config.show_note_switcher);
}
#[test]
fn scroll_font_sizing_stays_enabled_for_new_and_existing_configs() {
let config = AppConfig::default();
assert!(config.scroll_to_change_font_size);
let mut value = serde_json::to_value(config).unwrap();
value
.as_object_mut()
.unwrap()
.remove("scroll_to_change_font_size");
let config: AppConfig = serde_json::from_value(value).unwrap();
assert!(config.scroll_to_change_font_size);
}
}