fix(settings): List every installed font family in the font pickers (#225)

The font pickers never read the installed fonts: they probed a hard-coded list of ~30 names with canvas width checks, so anything outside the list never appeared and the monospaced filter changed nothing. A new ide-fonts crate asks the platform font system for families and their fixed-pitch flag (CoreText on macOS, DirectWrite on Windows, fc-list on Linux/BSD), exposed as system_font_families (spawn_blocking, cached). Every font picker — editor font and fallback, terminal font and fallback, UI custom font — uses one FontSelect with prefix type-ahead, a real monospaced filter, and keeps an uninstalled selection visible.

Not verified on Windows or Linux machines.

Fixes #199

Claude-Session: https://claude.ai/code/session_01Dq6jQQn8ZhRfkkyj3PRutA
Цей коміт міститься в:
l0ng-ai authored and GitHub committed 2026-10-29 12:05:46 +08:00
1 джерело e537dd43a0
коміт aea0b33585
21 files changed
+647 -124

No files matched your search

+5
Переглянути файл
@@ -23,6 +23,11 @@
}
/* "[x] Limit history to: [1000] rows" */
.fontFamily {
display: flex;
align-items: center;
gap: 8px;
}
.inlineRow {
display: flex;
align-items: center;