composedNode

The node a composition published on this exact component, or null where none did.

It is the live node: SwingComponentNode.component is this component, and SwingComponentNode.modifier is the modifier chain the composition declares for it now - reading it needs no slot table walk, unlike findDeclaringGroup.

It answers only for a component a composition published while isDebugInspectorInfoEnabled was on when that component was inserted. Content mounted under a context a caller captured with rememberCompositionContext() is reached on the next pass it takes for any reason, rather than at once

This reads the receiver alone, not its Swing ancestors, so a component that stands inside a composition without being declared by it - one built by hand and added beside declared content - answers null here even where findCompositionData answers with the composition it stands in.

The published node is a client property, so the receiver is a JComponent. A composition that declares a raw java.awt.Component carries no bag to publish to; findDeclaringGroup is what answers with the node there.

A component this answered for stops answering once the node that published it is released - the composition removed the component, or the switch turned off, which re-inserts the content into fresh, unpublished components.

It is not a androidx.compose.runtime.tooling.CompositionGroup: findDeclaringGroup is what answers with the group, for sourceInfo, data and identity.

Must be called on the Event Dispatch Thread.