This functions pretty much identically to the other callbacks - we still have a level of indirection, we're just changing the type of the listener by wrapping the MuteButtonListener in a OnCheckedChangeListener - this decouples the implementation (Check Button) from the model (Mute button is either on or off).
.