clearing CopyPasteManager by Esc is only needed in actual commander, not in file structure panel

This commit is contained in:
Dmitry Jemerov
2009-10-09 15:51:39 +04:00
parent 78b86449d1
commit eaa1935ce2
2 changed files with 18 additions and 17 deletions
@@ -139,20 +139,6 @@ public class CommanderPanel extends JPanel {
});
}
myList.addKeyListener(new KeyAdapter() {
public void keyPressed(final KeyEvent e) {
if (KeyEvent.VK_ESCAPE == e.getKeyCode()) {
if (e.isConsumed()) return;
final PsiCopyPasteManager copyPasteManager = PsiCopyPasteManager.getInstance();
final boolean[] isCopied = new boolean[1];
if (copyPasteManager.getElements(isCopied) != null && !isCopied[0]) {
copyPasteManager.clear();
e.consume();
}
}
}
});
myList.addFocusListener(new FocusAdapter() {
public void focusGained(final FocusEvent e) {
setActive(true);
@@ -1,5 +1,6 @@
package com.intellij.ide.commander;
import com.intellij.ide.PsiCopyPasteManager;
import com.intellij.ide.TwoPaneIdeView;
import com.intellij.ide.projectView.ProjectViewNode;
import com.intellij.ide.projectView.impl.AbstractProjectTreeStructure;
@@ -39,9 +40,7 @@ import javax.swing.event.ListDataListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.awt.event.*;
import java.util.ArrayList;
/**
@@ -299,6 +298,22 @@ public class Commander extends JPanel implements PersistentStateComponent<Elemen
private CommanderPanel createPanel() {
final CommanderPanel panel = new CommanderPanel(myProject, true);
panel.getList().addKeyListener(new KeyAdapter() {
public void keyPressed(final KeyEvent e) {
if (KeyEvent.VK_ESCAPE == e.getKeyCode()) {
if (e.isConsumed()) return;
final PsiCopyPasteManager copyPasteManager = PsiCopyPasteManager.getInstance();
final boolean[] isCopied = new boolean[1];
if (copyPasteManager.getElements(isCopied) != null && !isCopied[0]) {
copyPasteManager.clear();
e.consume();
}
}
}
});
final ProjectAbstractTreeStructureBase treeStructure = createProjectTreeStructure();
panel.setBuilder(new ProjectListBuilder(myProject, panel, treeStructure, AlphaComparator.INSTANCE, true));
panel.setProjectTreeStructure(treeStructure);