If I toggle my deployment off (set schedule inactive) and then trigger an ad-hoc flow run, will this ad-hoc run be executed?

Yes! Your run will still be executed.

The toggle is only used for scheduling. This means that even if you set the schedule as inactive, the deployment still exists and can be triggered ad-hoc from the UI, CLI, run_deployment Python function or via an API call.

The UI makes it easy to distinguish between scheduled runs and ad-hoc runs from deployment thanks to the auto-scheduled tag applied only to the scheduled runs: