mirror of
https://github.com/LGUG2Z/komorebi.git
synced 2026-04-21 08:11:30 +02:00
feat(shortcuts): add helper written in egui
This commit adds a simple egui helper application which shows a list of shortcuts defined in a user's whkdrc file. Parsing AHK files is not supported. In addition to listing out shortcuts defined in the whkdrc file, the top line allows users to add filter a filter to narrow down the list of commands and key bindings to the ones they are interested in. A new komorebic command "toggle-shortcuts" has been introduced which will first attempt to kill "komorebi-shortcuts.exe", and then exit if the kill signal was successful (ie. a process was closed), or proceed to open "komorebi-shortcuts.exe" if the kill signal was not successful (ie. no process was closed, so we should open one). "komorebi-shortcuts.exe" has been added as a floating application in lib.rs to allow for users to use the "komorebic move" command to manipulate its position via their existing keyboard bindings.
This commit is contained in:
@@ -1003,6 +1003,8 @@ enum SubCommand {
|
||||
GlobalState,
|
||||
/// Launch the komorebi-gui debugging tool
|
||||
Gui,
|
||||
/// Toggle the komorebi-shortcuts helper
|
||||
ToggleShortcuts,
|
||||
/// Show a JSON representation of visible windows
|
||||
VisibleWindows,
|
||||
/// Show information about connected monitors
|
||||
@@ -2713,6 +2715,15 @@ if (Get-Command Get-CimInstance -ErrorAction SilentlyContinue) {
|
||||
SubCommand::Gui => {
|
||||
Command::new("komorebi-gui").spawn()?;
|
||||
}
|
||||
SubCommand::ToggleShortcuts => {
|
||||
let output = Command::new("taskkill")
|
||||
.args(["/F", "/IM", "komorebi-shortcuts.exe"])
|
||||
.output()?;
|
||||
|
||||
if !output.status.success() {
|
||||
Command::new("komorebi-shortcuts.exe").spawn()?;
|
||||
}
|
||||
}
|
||||
SubCommand::VisibleWindows => {
|
||||
print_query(&SocketMessage::VisibleWindows);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user