efl_del should be used only when an object has a parent.
The previous code leads to efl_del error messages in C# due to being
called on objects already without a parent. We can't guarantee the order
the objects in C# are collected, even if they have a parent-child like
relationship.
Fixes T8216