Trinidad has a whole bunch of APIs for writing Renderers - lots in
org.apache.myfaces.trinidadinternal.renderkit,and elsewhere -
which are, by virtue of their packaging, off-limits as far as
general third-party development goes.   So, no one can rely
on their stability, which is something that we'll need to solve
going forward.

I'd like to start moving some of these out of "trinidadinternal"
and the trinidad-impl JAR, and into the main, stable
trinidad-api JAR so that developers can start writing renderers,
skins, etc., without fear that we'll keep breaking the APIs.

On a first pass, this would ideally involve at the
following APIs:

- RenderingContext
- FormData
- Skin, SkinFactory, SkinExtension
- Icon (and everything in the icon package)
- PartialPageContext
- CoreRenderer
- TrinidadAgent and related APIs
- AccessKeyUtils
- OutputUtils
- XhtmlUtils
- SelectItemSupport

Unfortunately, there's some issues with moving over all of these.  For
example,
Jeanne Waldman has some proposed Icon API changes;  and Skin currently
has hard dependencies on things like StyleSheetDocument, etc., which I
really
don't think we want in our public API.  So, I think this'll have to be a
combination
of some refactoring to get the private details moved down lower, and a
go-slow
with some of these classes that need changes.

but maybe not
- XhtmlRenderer
- XhtmlConstants
- SkinSelectors

and definitely not at this time
- any of our concrete renderer classes

Comments?

-- Adam

Reply via email to