diff --git a/.changes/next-release/bugfix-4a387896-7a93-4474-a86d-f6dc5d53ab57.json b/.changes/next-release/bugfix-4a387896-7a93-4474-a86d-f6dc5d53ab57.json new file mode 100644 index 00000000000..05315d9fc2d --- /dev/null +++ b/.changes/next-release/bugfix-4a387896-7a93-4474-a86d-f6dc5d53ab57.json @@ -0,0 +1,4 @@ +{ + "type" : "bugfix", + "description" : "Fix issue where Amazon Q inline chat can be invoked from non-editor windows" +} \ No newline at end of file diff --git a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/inline/OpenChatInputAction.kt b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/inline/OpenChatInputAction.kt index e35d5a1ee67..e9ec4058c05 100644 --- a/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/inline/OpenChatInputAction.kt +++ b/plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/inline/OpenChatInputAction.kt @@ -3,13 +3,17 @@ package software.aws.toolkits.jetbrains.services.cwc.inline +import com.intellij.execution.impl.ConsoleViewImpl import com.intellij.openapi.actionSystem.AnAction import com.intellij.openapi.actionSystem.AnActionEvent import com.intellij.openapi.actionSystem.CommonDataKeys class OpenChatInputAction : AnAction() { override fun actionPerformed(e: AnActionEvent) { - val editor = e.getRequiredData(CommonDataKeys.EDITOR) + val editor = e.getData(CommonDataKeys.EDITOR) ?: return + val isConsole = editor.document.getUserData(ConsoleViewImpl.IS_CONSOLE_DOCUMENT) + if (isConsole == true) return + if (!editor.document.isWritable) return val project = editor.project ?: return val inlineChatController = InlineChatController.getInstance(project)