Assume you have a job A that launch a child Job B and that job A has to wait Job B finished to continue its steps.
If you stopped job A while job B is processing, the job B isn't stopped.
It should be stopped.
I have a parent job "Parent" that triggers child jobs "Child(1-N)", and then blocks waiting for them to finish.
1. Start Parent job.
2. Wait for children to launch.
3. Abort Parent job.
Parent job aborts but children continue to run. If the child jobs have no meaning outside of the parent, then child jobs have to be manually aborted.
I can see why you would want this behavior. It is certainly the correct behavior in the "post-build step" case. It is probably correct in the "non-blocking build step" case. In the case of the parent build blocking on children completing, there are definitely scenarios where it is not.
When "Block on child job completion" checkbox is checked, a list of options is shown. Add option to the list: "Child job action when parent job is aborted". Values: "None, continue running (default)", "Abort immediately".