AccessToken (@NotNull String actionId, @NotNull String place, @Nullable InputEvent event, @Nullable Component component) { ActionContextElement parent = UIUtil.uiParents(component, false) .filterMap(o -> ClientProperty.get(o, ACTION_CONTEXT_ELEMENT_KEY)).first(); return installThreadContext(currentThreadContext().plus( new ActionContextElement(actionId, place, event == null ? -1 : event.getID(), parent)), true); }