-
Notifications
You must be signed in to change notification settings - Fork 376
Expand file tree
/
Copy pathOpenNewChatAction.java
More file actions
39 lines (33 loc) · 1.18 KB
/
OpenNewChatAction.java
File metadata and controls
39 lines (33 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package ee.carlrobert.codegpt.actions.editor;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.AnActionEvent;
import ee.carlrobert.codegpt.Icons;
import ee.carlrobert.codegpt.conversations.ConversationsState;
import ee.carlrobert.codegpt.toolwindow.chat.ChatToolWindowContentManager;
import org.jetbrains.annotations.NotNull;
public class OpenNewChatAction extends AnAction {
public OpenNewChatAction() {
super(Icons.OpenNewTab);
}
@Override
public void update(@NotNull AnActionEvent event) {
event.getPresentation().setEnabled(event.getProject() != null);
}
@Override
public void actionPerformed(@NotNull AnActionEvent event) {
var project = event.getProject();
if (project != null) {
ConversationsState.getInstance(project).setCurrentConversation(null);
var tabPanel =
project.getService(ChatToolWindowContentManager.class).createNewTabPanel();
if (tabPanel != null) {
tabPanel.displayLandingView();
}
}
}
@Override
public @NotNull ActionUpdateThread getActionUpdateThread() {
return ActionUpdateThread.BGT;
}
}