Add a new message kMsgControllerCodecListUpdated and watch for it.
Fix naming of settings (Scale! That was the term!)
Move some code around, simplifying and separating the logic.
I actually broke many things, not in shape for being used.
Move GetScaledRect code into a TargetRect() method in Settings