Bug 1055897 - [settings] add settings panel support

Why we need a mock defer? It is exactly the same as the original one.