Skip to content

Commit c094346

Browse files
committed
feat: Allow user to copy console text
1 parent 4e63d39 commit c094346

2 files changed

Lines changed: 14 additions & 1 deletion

File tree

gui/src/main/java/org/mcphackers/mcp/gui/TextAreaContextMenu.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77

88
import org.mcphackers.mcp.MCP;
99
import org.mcphackers.mcp.main.MainGUI;
10+
import org.mcphackers.mcp.tools.Util;
1011

1112
public class TextAreaContextMenu extends JPopupMenu {
1213
private final MCP mcp;
@@ -29,6 +30,17 @@ private void addItems() {
2930
doc.setCharacterAttributes(0, doc.getLength(), defaultStyle, true);
3031
}
3132
});
33+
JMenuItem copyText = new JMenuItem(MCP.TRANSLATOR.translateKey("mcp.copyConsole"));
34+
copyText.addActionListener(actionEvent -> {
35+
if (this.mcp instanceof MainGUI) {
36+
MainGUI mainGUI = (MainGUI) this.mcp;
37+
JTextPane textPane = mainGUI.textPane;
38+
String consoleText = textPane.getSelectedText() != null ? textPane.getSelectedText() : textPane.getText();
39+
Util.copyToClipboard(consoleText);
40+
}
41+
});
3242
this.add(clearText);
43+
this.add(copyText);
44+
3345
}
3446
}

src/main/resources/lang/en_US.lang

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ mcp.side = Side
2828
mcp.startClient = Launch client
2929
mcp.startServer = Launch server
3030
mcp.console = Console output
31-
mcp.clearConsole = Clear Console
31+
mcp.clearConsole = Clear console
32+
mcp.copyConsole = Copy text
3233

3334
side.client = Client
3435
side.server = Server

0 commit comments

Comments
 (0)