improved workaround for Sun Bug 4818143: slow clipboard access on Linux and Mac (IDEA-17972)

This commit is contained in:
nik
2011-02-24 14:04:57 +03:00
parent be47d71a46
commit 49af07e6f0
15 changed files with 245 additions and 231 deletions
@@ -18,13 +18,10 @@ package com.intellij.execution.ui;
import com.intellij.execution.ExecutionBundle;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.ide.CopyPasteManager;
import com.intellij.openapi.project.Project;
import com.intellij.ui.PopupHandler;
import com.intellij.util.ui.EmptyClipboardOwner;
import javax.swing.*;
import java.awt.*;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.StringSelection;
public class ConfigurationArgumentsHelpArea extends JPanel {
@@ -68,17 +65,8 @@ public class ConfigurationArgumentsHelpArea extends JPanel {
}
public void actionPerformed(final AnActionEvent e) {
try {
final StringSelection contents = new StringSelection(myHelpArea.getText().trim());
final Project project = PlatformDataKeys.PROJECT.getData(e.getDataContext());
if (project == null) {
final Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
clipboard.setContents(contents, EmptyClipboardOwner.INSTANCE);
} else {
CopyPasteManager.getInstance().setContents(contents);
}
} catch(Exception ex) {
}
final StringSelection contents = new StringSelection(myHelpArea.getText().trim());
CopyPasteManager.getInstance().setContents(contents);
}
}