[Input] Action bound, but not called?

I want an actor to have some debugging going on based on user input.
I tried this:

ADisplayOut::ADisplayOut(const FObjectInitializer& objInitializer):
	Super(objInitializer)
{
	bFindCameraComponentWhenViewTarget = true;
	AutoReceiveInput = EAutoReceiveInput::Player0;
	PrimaryActorTick.bCanEverTick = true;
	mInputComponent = objInitializer.CreateDefaultSubobject<UInputComponent>(this, "InputComponent");
}

void ADisplayOut::PostInitializeComponents()
{
	Super::PostInitializeComponents();
	AMainGameState::SetDisplay(this);

	if (NULL != mInputComponent)
	{
		mInputComponent->BindAction("MoveOutputRight", EInputEvent::IE_Pressed, this, &ADisplayOut::OnMoveMonitorsToSide);
	}
}

The action gets bound, but the function is never called.
I tried Enabling input in several places (BeginPlay, Pre/Post initialize components).
Furthermore, this specific input is not consumed by the main pawn.
I Also tried to bind the ‘InputComponent’ that comes with the actor, but this gets NULLed after construction.

What class is ADisplayOut inheriting from?

Looks to me like if it’s just a regular actor and not a pawn that you need to call EnableInput on it and pass the PlayerController into it.

Hi overlawled. I tried that, didnt work.
If you look carefully in the code in PreInitializeComponents on AActor, you will see that if AutoReceiveInput != Disabled (which is the case) it automatically adds an InputComponent and EnablesInput for the actor. YET, it still NULL in BeginPlay…

So InputComponent is NULL or mInputComponent?

I think i found it. In simulate mode, input is never processed. I thought this was only for the MainPawn. But apparently also for other input components…or not… In normal play - finally - the action gets called.