Dialog renderer

Why do you want to make this change? It might make sense to keep the method signature the same so that we can introduce a Component interface soon and have the same method names on all components and the same lifecycle.