feat: activated selected entry on tab in the completion palette

closes #423
This commit is contained in:
CJ van den Berg 2025-12-10 12:38:47 +01:00
parent 6bb6141ef3
commit 4cb0f7df02
Signed by: neurocyte
GPG key ID: 8EB1E1BB660E3FB9
2 changed files with 10 additions and 0 deletions

View file

@ -205,6 +205,10 @@ fn get_replace_selection(replace: Buffer.Selection) ?Buffer.Selection {
replace;
}
pub fn complete(palette: *Type, _: ?*Type.ButtonType) !void {
palette.menu.activate_selected();
}
fn select(menu: **Type.MenuType, button: *Type.ButtonType, _: Type.Pos) void {
const values = get_values(button.opts.label);
const editor = tui.get_active_editor() orelse return;

View file

@ -554,6 +554,12 @@ pub fn Create(options: type) type {
.icon = "󰗨",
};
pub fn palette_menu_complete(self: *Self, _: Ctx) Result {
if (@hasDecl(options, "complete"))
options.complete(self, self.menu.get_selected()) catch {};
}
pub const palette_menu_complete_meta: Meta = .{};
pub fn palette_menu_activate(self: *Self, _: Ctx) Result {
self.menu.activate_selected();
}