drop host action workaround in ActionButton.update

EA-1114700 - UOE: BackendActionGroup.update

GitOrigin-RevId: 66fe8e47be82d667b0e04316b9bdfe631101fccd
This commit is contained in:
Gregory.Shrago
2024-03-29 02:17:03 +00:00
committed by intellij-monorepo-bot
parent 4c7ac79e77
commit 00a400dab2
@@ -25,7 +25,6 @@ import com.intellij.ui.codeFloatingToolbar.CodeFloatingToolbar;
import com.intellij.ui.popup.PopupFactoryImpl;
import com.intellij.ui.popup.PopupState;
import com.intellij.ui.popup.WizardPopup;
import com.intellij.util.ReflectionUtil;
import com.intellij.util.ui.JBDimension;
import com.intellij.util.ui.JBInsets;
import com.intellij.util.ui.StartupUiUtil;
@@ -317,12 +316,12 @@ public class ActionButton extends JComponent implements ActionButtonComponent, A
if (!myUpdateThreadOnDirectUpdateChecked) {
myUpdateThreadOnDirectUpdateChecked = true;
if (myAction.getActionUpdateThread() == ActionUpdateThread.BGT &&
!(myAction instanceof OverridingAction) && // todo workaround BackendDelegatingAction
!AnAction.class.equals(ReflectionUtil.getMethodDeclaringClass(myAction.getClass(), "update", AnActionEvent.class))) {
String name = myAction.getClass().getName();
!ActionClassMetaData.isDefaultUpdate(myAction)) {
ActionManager actionManager = ActionManager.getInstance();
LOG.error(PluginException.createByClass(
myAction.getActionUpdateThread() + " action " + StringUtil.getShortName(name) + " (" + name + ") is not allowed. " +
"Only EDT actions are allowed.", null, myAction.getClass()));
"BGT operation " + Utils.operationName(
myAction, "update", myPlace, o -> o instanceof AnAction a ? actionManager.getId(a) : null) +
" is not allowed on EDT", null, myAction.getClass()));
}
}
AnActionEvent e = AnActionEvent.createFromInputEvent(null, myPlace, myPresentation, getDataContext(), false, true);