I don't think we should go further in this direction. There are many small scenarios where it can accidentally or intentionally happen to have an object active but not selected. Is it…
@PratikPB2123 I think the more likely root cause here based on their most recent comment is something related to Vulkan, not necessarily the brush being used - possibly a memory leak given the…
Just small inline comments so far; changes seem sane but I haven't pulled this down to test at all yet.
for (const int face_index : src_faces.index_range())
?
Do we need an UNUSED_VARS
here to silence a possible warning? I'm not really sure why I haven't seen any of the other unused vars in this file give a warning while doing other changes.
nit: I personally think BLI_assert(!face.is_empty()) is clearer
Ah, true. I forgot to put a note here that I was considering if a nested any
would make this more readable.
Invalid is probably not the right word here - it's more that it seemed like something we didn't want. I think it's probably fine to expose this as an option but not set it for any of our keymaps,…