working suggestions but position is wrong

This commit is contained in:
filipriec
2025-04-12 16:22:07 +02:00
parent f4d234089f
commit 7b27d00972
4 changed files with 22 additions and 58 deletions

View File

@@ -318,21 +318,16 @@ pub async fn execute_edit_action<S: CanvasState + Any + Send>(
Ok("Suggestion changed up".to_string())
}
"select_suggestion" if register_state.in_suggestion_mode => {
if let Some(selected_index) = register_state.selected_suggestion_index {
if let Some(selected_role) = register_state.role_suggestions.get(selected_index) {
register_state.role = selected_role.clone();
register_state.show_role_suggestions = false;
register_state.selected_suggestion_index = None;
register_state.role_suggestions.clear();
let new_cursor_pos = register_state.role.len();
register_state.set_current_cursor_pos(new_cursor_pos);
*ideal_cursor_column = new_cursor_pos; // Update ideal column
Ok(format!("Selected role: {}", register_state.role))
} else {
Ok("Internal error: Invalid suggestion index".to_string())
}
if let Some(index) = register_state.selected_suggestion_index {
let selected_role = register_state.role_suggestions[index].clone();
register_state.role = selected_role.clone(); // Update the role field
register_state.in_suggestion_mode = false; // Exit suggestion mode
register_state.show_role_suggestions = false; // Hide suggestions
register_state.selected_suggestion_index = None; // Clear selection
Ok(format!("Selected role: {}", selected_role)) // Return success message
} else {
Ok("No suggestion selected".to_string())
}
}
"exit_suggestion_mode" => { // Handle Esc