Add WebUI navigation improvements: keyboard shortcuts, hash routing, command palette, cross-entity links
- Keyboard shortcuts: Ctrl+1-4 for tab switching - URL hash routing: #tab/subtab format with browser back/forward support - Tab count badges: running targets and active profiles counts - Cross-entity quick links: clickable references navigate to related cards - Command palette (Ctrl+K): global search across all entities with keyboard navigation - Expand/collapse all sections: buttons in sub-tab bars - Sticky section headers: headers pin while scrolling long card grids - Improved section filter: better styling with reset button Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -253,6 +253,9 @@
|
||||
"common.edit": "Edit",
|
||||
"common.clone": "Clone",
|
||||
"section.filter.placeholder": "Filter...",
|
||||
"section.filter.reset": "Clear filter",
|
||||
"section.expand_all": "Expand all sections",
|
||||
"section.collapse_all": "Collapse all sections",
|
||||
"streams.title": "\uD83D\uDCFA Sources",
|
||||
"streams.description": "Sources define the capture pipeline. A raw source captures from a display using a capture template. A processed source applies postprocessing to another source. Assign sources to devices.",
|
||||
"streams.group.raw": "Screen Capture",
|
||||
@@ -849,5 +852,20 @@
|
||||
"value_source.error.name_required": "Please enter a name",
|
||||
"targets.brightness_vs": "Brightness Source:",
|
||||
"targets.brightness_vs.hint": "Optional value source that dynamically controls brightness each frame (overrides device brightness)",
|
||||
"targets.brightness_vs.none": "None (device brightness)"
|
||||
"targets.brightness_vs.none": "None (device brightness)",
|
||||
|
||||
"search.placeholder": "Search entities... (Ctrl+K)",
|
||||
"search.loading": "Loading...",
|
||||
"search.no_results": "No results found",
|
||||
"search.group.devices": "Devices",
|
||||
"search.group.targets": "LED Targets",
|
||||
"search.group.kc_targets": "Key Colors Targets",
|
||||
"search.group.css": "Color Strip Sources",
|
||||
"search.group.profiles": "Profiles",
|
||||
"search.group.streams": "Picture Streams",
|
||||
"search.group.capture_templates": "Capture Templates",
|
||||
"search.group.pp_templates": "Post-Processing Templates",
|
||||
"search.group.pattern_templates": "Pattern Templates",
|
||||
"search.group.audio": "Audio Sources",
|
||||
"search.group.value": "Value Sources"
|
||||
}
|
||||
|
||||
@@ -253,6 +253,9 @@
|
||||
"common.edit": "Редактировать",
|
||||
"common.clone": "Клонировать",
|
||||
"section.filter.placeholder": "Фильтр...",
|
||||
"section.filter.reset": "Очистить фильтр",
|
||||
"section.expand_all": "Развернуть все секции",
|
||||
"section.collapse_all": "Свернуть все секции",
|
||||
"streams.title": "\uD83D\uDCFA Источники",
|
||||
"streams.description": "Источники определяют конвейер захвата. Сырой источник захватывает экран с помощью шаблона захвата. Обработанный источник применяет постобработку к другому источнику. Назначайте источники устройствам.",
|
||||
"streams.group.raw": "Захват Экрана",
|
||||
@@ -849,5 +852,20 @@
|
||||
"value_source.error.name_required": "Введите название",
|
||||
"targets.brightness_vs": "Источник яркости:",
|
||||
"targets.brightness_vs.hint": "Необязательный источник значений для динамического управления яркостью каждый кадр (переопределяет яркость устройства)",
|
||||
"targets.brightness_vs.none": "Нет (яркость устройства)"
|
||||
"targets.brightness_vs.none": "Нет (яркость устройства)",
|
||||
|
||||
"search.placeholder": "Поиск... (Ctrl+K)",
|
||||
"search.loading": "Загрузка...",
|
||||
"search.no_results": "Ничего не найдено",
|
||||
"search.group.devices": "Устройства",
|
||||
"search.group.targets": "LED-цели",
|
||||
"search.group.kc_targets": "Цели Key Colors",
|
||||
"search.group.css": "Источники цветных лент",
|
||||
"search.group.profiles": "Профили",
|
||||
"search.group.streams": "Потоки изображений",
|
||||
"search.group.capture_templates": "Шаблоны захвата",
|
||||
"search.group.pp_templates": "Шаблоны постобработки",
|
||||
"search.group.pattern_templates": "Шаблоны паттернов",
|
||||
"search.group.audio": "Аудиоисточники",
|
||||
"search.group.value": "Источники значений"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user