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
