feat: dynamically suggest typing backend based on XDG_SESSION_TYPE detection
This commit is contained in:
@@ -50,10 +50,14 @@ public static class OnboardCommand
|
|||||||
return ValidationResult.Success();
|
return ValidationResult.Success();
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
var sessionType = Environment.GetEnvironmentVariable("XDG_SESSION_TYPE")?.ToLowerInvariant();
|
||||||
|
var defaultBackend = sessionType == "wayland" ? "wtype" : "xdotool";
|
||||||
|
var otherBackend = defaultBackend == "wtype" ? "xdotool" : "wtype";
|
||||||
|
|
||||||
config.TypingBackend = AnsiConsole.Prompt(
|
config.TypingBackend = AnsiConsole.Prompt(
|
||||||
new SelectionPrompt<string>()
|
new SelectionPrompt<string>()
|
||||||
.Title("Select [green]Typing Backend[/]:")
|
.Title($"Select [green]Typing Backend[/] (Detected: {sessionType}):")
|
||||||
.AddChoices(new[] { "wtype", "xdotool" }));
|
.AddChoices(new[] { defaultBackend, otherBackend }));
|
||||||
|
|
||||||
var availableSkills = SkillRegistry.AllSkills.Select(s => s.Name).ToList();
|
var availableSkills = SkillRegistry.AllSkills.Select(s => s.Name).ToList();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user