yeah it seems to pass the MouseEvents through, but i must be doing something silly ...
So i made the [FileDragAndDropTarget] as a TOP most component, and registered all the BOTTOM components as a MouseListener to it.
MouseEvents are passed through, i can proove it by monitoring Component's MouseDown/MouseDrag methods ... however BOTTOM components do not react to this, even if their MouseDown/MouseDrag methods are called. Why its stopping them from beeing repainted/updated ? i must be missunderstanding something obvious here .
if you can change your gui structure so you can avoid overlaying components, it will probably make things easier...
However, if the component is occluded by the component in front, it needs to know, that it is still visible. You can give the system a hint via setOpaque to false: https://www.juce.com/doc/classComponent#a7320d543cba40183c894474ab78798ea but not being opaque is the default, so probably this won't help, but worth to check...
Thats the whole fun with overlaying components as a desired composition ... its a special case anyway, but its required to work.
I do not have long experience in that matter so i must be doing silly things that makes me wonder about the causes.
In my scenario, BOTTOM components where containers for the Sliders. When i tried to add those containers as a [MouseListener] to the TOP most component that was my [DragAndDropTarget] i could receive [Mouse Events] but those events werent passed to its child components (Sliders) . I had to register those [Sliders] as a [MouseListeners] to my [DragAndDropTarget] component directly which made them respond to [Mouse Events].
Can i easily avoid that situation, and let the containers pass [Mouse Events] to its [Sliders] without reqistering them individually ?