Lightweight Components
How might one address these limitations in component creation?
Starting with JDK 1.1b3 provided support for the Lightweight UI Framework.
This enabled one to subclass Component and Container directly (instead of just Canvas or Panel).
Lightweights do not involve the use of native peer resources. That is, Java (and not the OS) is responsible for rendering the component. With less indirection, there is less delay, and greater control.