Bug 1032070 - [Settings] add done feature in onBeforsShow()

**another try** , WIP by the way.
Note that I just realized that we should call to `beforeHide` before calling to `beforeShow` as in many cases a panel saves values used by the next panel before leaving, so that I think it may make more sense to call to `beforeHide` first.