diff --git a/CHANGELOG.md b/CHANGELOG.md index f4fbc438..240a15ab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,12 @@ ## [Unreleased] +## [v0.51.471] — 2026-06-17 — Release QF (searchable settings) + +### Added + +- **Settings is now searchable (#3850).** A search box at the top of the Settings panel lets you find any setting across all sections (Appearance, Preferences, Providers, Plugins, System) without clicking through tabs — type a label fragment (e.g. "model", "theme", "language") and matching fields appear in a dropdown with their section breadcrumb. Clicking a result jumps to that section, scrolls the field into view, and pulses a brief highlight on it. Search clears after a pick. The index is built once on first search (covering lazily-loaded provider/plugin cards) and memoized. Thanks @rodboev. + ## [v0.51.470] — 2026-06-17 — Release QE (transcript virtualization now experimental / off by default) ### Changed diff --git a/static/i18n.js b/static/i18n.js index 49f048a1..3033b323 100644 --- a/static/i18n.js +++ b/static/i18n.js @@ -614,6 +614,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: 'Settings', + settings_search_placeholder: 'Search settings…', + settings_search_no_results: 'No settings found.', settings_save_btn: 'Save Settings', settings_label_model: 'Default Model', settings_desc_model: 'Used for new conversations. Existing conversations keep their selected model.', @@ -2102,6 +2104,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: 'Impostazioni', + settings_search_placeholder: 'Ricerca impostazioni…', + settings_search_no_results: 'Nessuna impostazione trovata.', settings_save_btn: 'Salva Impostazioni', settings_label_model: 'Modello Predefinito', settings_desc_model: 'Usato per le nuove conversazioni. Le conversazioni esistenti mantengono il modello selezionato.', @@ -3581,6 +3585,8 @@ const LOCALES = { settings_help_issue_desc: 'GitHub で既存のレポートを検索するか、新しく報告を作成します。', settings_help_issue_link: 'GitHub Issues を開く', settings_title: '設定', + settings_search_placeholder: '設定を検索…', + settings_search_no_results: '設定が見つかりません。', settings_save_btn: '設定を保存', settings_label_model: 'デフォルトモデル', settings_desc_model: '新しい会話で使用されます。既存の会話は選択済みモデルを保持します。', @@ -4852,6 +4858,8 @@ const LOCALES = { all_uploads_failed: (n) => `Не удалось загрузить все ${n} файлов`, archive_extracted: (n, c) => `Извлечено ${n} файл(ов) из ${c} архив(ов)`, settings_title: 'Настройки', + settings_search_placeholder: 'Поиск параметров…', + settings_search_no_results: 'Параметры не найдены.', settings_save_btn: 'Сохранить настройки', settings_label_model: 'Модель по умолчанию', settings_desc_model: 'Используется для новых бесед. Существующие беседы сохраняют выбранную модель.', @@ -6248,6 +6256,8 @@ const LOCALES = { archive_extracted: (n, c) => `${n} archivo(s) extraído(s) de ${c} archivo(s) comprimido(s)`, // settings panel settings_title: 'Configuración', + settings_search_placeholder: 'Buscar configuración…', + settings_search_no_results: 'No se encontraron configuraciones.', settings_save_btn: 'Guardar configuración', settings_label_model: 'Modelo predeterminado', settings_desc_model: 'Se usa para conversaciones nuevas. Las conversaciones existentes conservan su modelo seleccionado.', @@ -7642,6 +7652,8 @@ const LOCALES = { all_uploads_failed: (n) => `Alle ${n} Upload(s) fehlgeschlagen`, // settings panel settings_title: 'Einstellungen', + settings_search_placeholder: 'Einstellungen durchsuchen…', + settings_search_no_results: 'Keine Einstellungen gefunden.', settings_save_btn: 'Einstellungen speichern', settings_label_model: 'Standard-Modell', settings_desc_model: 'Wird für neue Chats verwendet. Bestehende Chats behalten ihr ausgewähltes Modell.', @@ -9101,6 +9113,8 @@ const LOCALES = { all_uploads_failed: (n) => `${n} 个文件全部上传失败`, // settings panel settings_title: '设置', + settings_search_placeholder: '搜索设置…', + settings_search_no_results: '未找到设置。', settings_save_btn: '保存设置', settings_label_model: '默认模型', settings_desc_model: '用于新对话。现有对话保持各自选定的模型。', @@ -10725,6 +10739,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: '設定', + settings_search_placeholder: '搜尋設定…', + settings_search_no_results: '找不到設定。', settings_save_btn: '儲存設定', settings_label_model: '預設模型', settings_desc_model: '用於新對話。現有對話會保留各自選定的模型。', @@ -12096,6 +12112,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: 'Configurações', + settings_search_placeholder: 'Pesquisar configurações…', + settings_search_no_results: 'Nenhuma configuração encontrada.', settings_save_btn: 'Salvar Configurações', settings_label_model: 'Modelo Padrão', settings_desc_model: 'Usado para novas conversas. Conversas existentes mantêm o modelo selecionado.', @@ -13476,6 +13494,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: '설정', + settings_search_placeholder: '설정 검색…', + settings_search_no_results: '설정을 찾을 수 없습니다.', settings_save_btn: '설정 저장', settings_label_model: '기본 모델', settings_desc_model: '새 대화에 사용됩니다. 기존 대화는 선택된 모델을 유지합니다.', @@ -14873,6 +14893,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: 'Paramètres', + settings_search_placeholder: 'Rechercher les paramètres…', + settings_search_no_results: 'Aucun paramètre trouvé.', settings_save_btn: 'Enregistrer les paramètres', settings_label_model: 'Modèle par défaut', settings_desc_model: 'Utilisé pour les nouvelles conversations. Les conversations existantes conservent leur modèle sélectionné.', @@ -16371,6 +16393,8 @@ const LOCALES = { settings_help_issue_desc: 'Search existing reports or open a new one on GitHub.', settings_help_issue_link: 'Open GitHub Issues', settings_title: 'Ayarlar', + settings_search_placeholder: 'Ayarları ara…', + settings_search_no_results: 'Ayar bulunamadı.', settings_save_btn: 'Ayarları Kaydet', settings_label_model: 'Varsayılan Model', settings_label_auxiliary_models: 'Yardımcı Modeller', @@ -17863,6 +17887,8 @@ const LOCALES = { settings_help_issue_desc: 'Przeszukaj istniejące zgłoszenia lub utwórz nowe w serwisie GitHub.', settings_help_issue_link: 'Otwórz zgłoszenia GitHub', settings_title: 'Ustawienia', + settings_search_placeholder: 'Szukaj ustawień…', + settings_search_no_results: 'Nie znaleziono ustawień.', settings_save_btn: 'Zapisz ustawienia', settings_label_model: 'Domyślny model', settings_desc_model: 'Używany dla nowych konwersacji. Istniejące konwersacje zachowują swój wybrany model.', diff --git a/static/index.html b/static/index.html index 4d9dde78..cdb42b85 100644 --- a/static/index.html +++ b/static/index.html @@ -348,6 +348,16 @@ Settings