From 4050555e75ff12ad0aa75c5aff28b3ae4644fa12 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Fri, 15 Sep 2017 14:58:20 +0200 Subject: [PATCH] pass action as a parameter to clear user data in action presentation --- .../openapi/actionSystem/impl/ActionMenuItem.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionMenuItem.java b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionMenuItem.java index 9f3c81904302..8acc00e30b7a 100644 --- a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionMenuItem.java +++ b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionMenuItem.java @@ -46,7 +46,10 @@ import javax.swing.*; import javax.swing.plaf.MenuItemUI; import javax.swing.plaf.synth.SynthMenuItemUI; import java.awt.*; -import java.awt.event.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.KeyEvent; +import java.awt.event.MouseEvent; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.HashSet; @@ -98,6 +101,14 @@ public class ActionMenuItem extends JBCheckBoxMenuItem { } } + public AnAction getAnAction() { + return myAction.getAction(); + } + + public String getPlace() { + return myPlace; + } + private static boolean isEnterKeyStroke(KeyStroke keyStroke) { return keyStroke.getKeyCode() == KeyEvent.VK_ENTER && keyStroke.getModifiers() == 0; } @@ -114,7 +125,7 @@ public class ActionMenuItem extends JBCheckBoxMenuItem { public void fireActionPerformed(ActionEvent event) { AnAction action = myAction.getAction(); if (action != null && ActionPlaces.MAIN_MENU.equals(myPlace)) { - MainMenuCollector.getInstance().record(); + MainMenuCollector.getInstance().record(action); } TransactionGuard.submitTransaction(ApplicationManager.getApplication(), () -> super.fireActionPerformed(event)); }