App vs AppBase - what's the connection

What’s the connection between App and AppBase? Initially I thought they did the same thing, except AppBase provides additional convenience stuff such as virtuals for the input events, so you don’t have to connect to the signals manually. But then I saw that AppBase doesn’t inherit from App, which makes me doubt my theory.

I just found that it’s classes like AppMsw that inherit from AppBase, and not the other way round. So that’s solved, apparently, I should just use the App typedef. What had tripped me up is that (I think) in earlier cinder versions, there was a class called AppBasic that inherited from App.

Yes, that has all been rewritten a while ago, to better support multiple platforms.