0.5.1

⚠️ Breaking — renamed public methods (on* → add*Listener / handle*)

No peer-dependency changes this release. The break is a method rename: tosijs's elementCreator treats any on<Event>-named member as addEventListener sugar and shadows a component method of the same name (it now fires a live warning, and it was a latent bug — the handler silently never ran). So the multi-listener subscribe methods and the lifecycle hooks moved off the on* prefix. The new names are also more honest: the subscribe methods push to a listener list (add/remove semantics), not a single-handler setter.

Old (0.5.0) New (0.5.1) On
onSceneAddition / offSceneAddition addSceneListener / removeSceneListener B3d (scene owner)
onOriginShift / offOriginShift addOriginListener / removeOriginListener B3d (scene owner)
onGainFocus / onLoseFocus handleGainFocus / handleLoseFocus B3dControllable
onButton handleButton TouchGamepadSource, B3dGamepad

What a consumer must do: if you wrote a custom scene child that called owner.onSceneAddition(cb) / owner.onOriginShift(cb), or subclassed B3dControllable and overrode onGainFocus/onLoseFocus, or a gamepad source with an onButton callback, rename to the new members. It's a pure rename — signatures are unchanged. Built-in components are all migrated; this only affects code you wrote against these surfaces.

Added

Changed

Fixed