This was an issue with the `operator_context`. It's a bit confusing because it looks like every `uiLayout` has its own, but in `uiLayoutSetOperatorContext` you can see that the `operator_context` is always set on the root layout for some reason. The fix is to set `INVOKE_REGION_WIN` as the operator context after it has been set to something else (I found this to be the default by printing the operator context before it was changed). Pull Request: https://projects.blender.org/blender/blender/pulls/106213