@Override
 public void onChange(boolean selfChange) {
   // If the database has ever changed, then we really need to force a reload of the
   // workspace on the next load
   mModel.resetLoadedState(false, true);
   mModel.startLoaderFromBackground();
 }
  @Override
  public void onThemeChanged() {
    /*mModel.resetLoadedState(false, true);
    //##date:2013/12/08 ##author:hongxing.whx ##bugid: 72248
    mModel.setThemeChanged(true);
    YUNOS END
    mModel.startLoaderFromBackground();*/

    /*YUNOS BEGIN*/
    // ##date:2014/8/1 ##author:zhangqiang.zq
    // favorite app
    GadgetCardHelper.onThemeChanged();
    LauncherGadgetHelper.cleanUp();
    mRecommendTask.refreshFavoriteAppIcons();
    /* YUNOS END */
    ThemeResources.reset();
    FolderIcon.onThemeChanged();
    mModel.onThemeChange();
    LauncherAnimUtils.onDestroyActivity();
  }
 @Override
 public void onFontChanged() {
   mModel.onFontChanged();
 }
 LauncherModel setLauncher(Launcher launcher) {
   mModel.initialize(launcher);
   mLauncher = launcher;
   return mModel;
 }