Recents: use an observer for button location, and handle layout more smart-like

Change-Id: Ic64dc6030e0da86ae315b3982eeb1e5f6cd6ef1b