How To Use Custom Input Component

I wrote my own Input Component. I am now trying to figure out how to set it up so my controller will use my custom input component rather than it’s inherited one.

void APlayerController::SetupInputComponent()
{
	Super::SetupInputComponent();

	check(InputComponent);
	
	if (!CharacterInputComponent)
	{
		CharacterInputComponent = NewObject<UCharacterInputComponent>(this);
		CharacterInputComponent->RegisterComponent();
		CharacterInputComponent->bBlockInput = false;
		CharacterInputComponent->Priority = 0;

		if (UInputDelegateBinding::SupportsInputDelegate(GetClass()))
		{
			UInputDelegateBinding::BindInputDelegates(GetClass(), CharacterInputComponent);
		}
	}
}

I am currently trying this way but the custom input component never seems to get activated.

I figure it out. I was missing this step

this->PushInputComponent(CharacterInputComponent);

Where this is the player controller. You need to push it onto the stack in order for it to be looked at.