fix: исправить навигацию клавиатуры в TUI через GlobalKeyboardService
- Добавить GlobalKeyboardService — выделенный поток с блокирующим Console.ReadKey, единственный источник клавишных событий для TUI - Убрать FocusManager из App.razor: перехватывал Tab до компонентов - Удалить @onkeydown с <Select>: RazorConsole не пробрасывает Tab/стрелки через этот механизм - Использовать FocusedValue вместо Value в Select для корректной подсветки - Обновить CLAUDE.md и AGENTS.md: архитектура TUI, RazorConsole gotchas - Добавить docs/tui_log.md: разбор проблемы и справочник по RazorConsole Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
8
LazyBear.MCP/TUI/Models/OverviewRow.cs
Normal file
8
LazyBear.MCP/TUI/Models/OverviewRow.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
namespace LazyBear.MCP.TUI.Models;
|
||||
|
||||
public sealed record OverviewRow(
|
||||
string ModuleName,
|
||||
string Description,
|
||||
bool IsModuleEnabled,
|
||||
int ConfiguredTools,
|
||||
int TotalTools);
|
||||
18
LazyBear.MCP/TUI/Models/SettingsEntry.cs
Normal file
18
LazyBear.MCP/TUI/Models/SettingsEntry.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
namespace LazyBear.MCP.TUI.Models;
|
||||
|
||||
public enum SettingsEntryKind
|
||||
{
|
||||
Module,
|
||||
Tool
|
||||
}
|
||||
|
||||
public sealed record SettingsEntry(
|
||||
SettingsEntryKind Kind,
|
||||
string ModuleName,
|
||||
string? ToolName,
|
||||
string Label,
|
||||
string Description,
|
||||
bool IsChecked,
|
||||
bool IsModuleEnabled,
|
||||
bool IsExpanded,
|
||||
int Depth);
|
||||
Reference in New Issue
Block a user