ParentHyerarchyChanged behaviour

Hello all,
I’m setting up a hot reloader for my plugin UI - basically an XML with components descriptions that in release builds gets loaded from a BinaryData resource and in debug (desktop) builds gets loaded from the corresponding xml file which is watched for changes.

My current problem is: upon reloading the plugin sub-components when the layout file changes, I don’t get a ParentHierarchyChanged call on the components across the structure (I get it only the first time I build it)

Structure and flow is the following:

(1) first time build

PluginEditor 
	-> MyAppLayoutRoot (via Component::addAndMakeVisible)
		-> Layout components Tree Level 1 (via Component::addAndMakeVisible where parent is the parent node not the root)
		 ….
		  —> Layout components Tree Level N (via Component::addAndMakeVisible where parent is the parent node not the root)

(2) the layout tree xml changes and gets reloaded

MyAppLayoutRoot.removeAllChildren();
MyAppLayoutRoot.deleteAllChildren();
MyAppLayoutRoot.rebuildLayout() ; // recreates the components and rebuilds the tree via AddAndMakeVisible calls

I’m wondering:

  • is Component::ParentHierarchyChanged not getting recalled (a) something normal or (b) something due to the way I’m rebuilding the Component structure the second time around ?
  • how can I get this component api to be called every time I build the layout ?