mirror of
https://github.com/carlrobertoh/ProxyAI.git
synced 2026-05-13 07:02:34 +00:00
* initial telemetry * fixed segment bugs * Move telemetry impl to submodule, add more actions * Replace privacy policy link, minor refactoring --------- Co-authored-by: Carl-Robert Linnupuu <carlrobertoh@gmail.com>
43 lines
1.5 KiB
Java
43 lines
1.5 KiB
Java
package ee.carlrobert.codegpt.actions.toolwindow;
|
|
|
|
import com.intellij.icons.AllIcons;
|
|
import com.intellij.openapi.actionSystem.AnAction;
|
|
import com.intellij.openapi.actionSystem.AnActionEvent;
|
|
import com.intellij.openapi.ui.Messages;
|
|
import ee.carlrobert.codegpt.actions.editor.EditorActionsUtil;
|
|
import ee.carlrobert.codegpt.completions.TelemetryAction;
|
|
import ee.carlrobert.codegpt.conversations.ConversationService;
|
|
import ee.carlrobert.codegpt.conversations.ConversationsState;
|
|
import ee.carlrobert.codegpt.util.OverlayUtils;
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
|
public class DeleteConversationAction extends AnAction {
|
|
|
|
private final Runnable onDelete;
|
|
|
|
public DeleteConversationAction(Runnable onDelete) {
|
|
super("Delete Conversation", "Delete single conversation", AllIcons.General.Remove);
|
|
this.onDelete = onDelete;
|
|
EditorActionsUtil.registerOrReplaceAction(this);
|
|
}
|
|
|
|
@Override
|
|
public void update(@NotNull AnActionEvent event) {
|
|
event.getPresentation().setEnabled(ConversationsState.getCurrentConversation() != null);
|
|
}
|
|
|
|
@Override
|
|
public void actionPerformed(@NotNull AnActionEvent event) {
|
|
if (OverlayUtils.showDeleteConversationDialog() == Messages.YES) {
|
|
var project = event.getProject();
|
|
if (project != null) {
|
|
TelemetryAction.createActionMessage(TelemetryAction.IDE_ACTION)
|
|
.property("action", "DELETE_CONVERSATION")
|
|
.send();
|
|
|
|
ConversationService.getInstance().deleteSelectedConversation();
|
|
onDelete.run();
|
|
}
|
|
}
|
|
}
|
|
}
|