I just committed a large scale refactoring of the skinning logic in r24195. This change was needed after I realized that I wasn't able to really dispose of cached components reliably, and in some cases (such as the recent Dock Button bug I fixed), I was disposing of components that were removed from view but kept for reuse later.
See
here for more details about the changes. Bottom line, this change will hopefully truly fix the memory leak issues resulting from the previous skinning implementation, in addition to making our code cleaner and easier to write for skinning logic.
Let me know if you have any questions.
Thanks.
-Dan