Legacy themes based on DisplayListWatcher will actually continue to work in Feathers 2.0. If you created a custom theme, you should have to make no major changes. However, if you extended one of the example themes (such as MetalWorksMobileTheme), then you'll need to update your subclass to run on the new architecture.
Updating to the new architecture is a pretty simple matter.
If you created a custom theme (and didn't extend an example theme), change your subclass from DisplayListWatcher to StyleNameFunctionTheme.
Change the way that styling functions are set up.
Instead of calling setInitializerForClass(), like this:
You now call getStyleProviderForClass() to get the StyleNameFunctionStyleProvider. You can set its defaultStyleFunction property, if you don't have a style name:
this.getStyleProviderForClass(Button).defaultStyleFunction = this.setButtonStyles;
If you are specifying a style name, it's a little different. Instead of calling setInitializerForClass(), like this:
this.setInitializerForClass(Button, callToActionButtonInitializer, Button.ALTERNATE_NAME_CALL_TO_ACTION_BUTTON);
Get the StyleNameFunctionStyleProvider like before, but call setFunctionForStyleName() and pass in the function and style name:
I will try to write a more detailed migration guide for the new theme architecture in the next week or two.