/**
   * Once the UI has been created, initializes the content. This creates the pages, selects the
   * first one, setup sources and scan for local folders.
   *
   * <p>Returns true if we should show the window.
   */
  private boolean postCreate() {
    mUpdaterData.setWindowShell(getShell());
    mTaskFactory = new ProgressTaskFactory(getShell());
    mUpdaterData.setTaskFactory(mTaskFactory);
    mUpdaterData.setImageFactory(new ImageFactory(getShell().getDisplay()));

    setWindowImage(mAndroidSdkUpdater);

    addPage(mAvdManagerPage, "Virtual devices");
    addPage(mLocalPackagePage, "Installed packages");
    addPage(mRemotePackagesPage, "Available packages");
    addExtraPages();

    int pageIndex = 0;
    int i = 0;
    for (Composite p : mPages) {
      if (p.getClass().equals(mInitialPage)) {
        pageIndex = i;
        break;
      }
      i++;
    }
    displayPage(pageIndex);
    mPageList.setSelection(pageIndex);

    setupSources();
    initializeSettings();

    if (mUpdaterData.checkIfInitFailed()) {
      return false;
    }

    mUpdaterData.broadcastOnSdkLoaded();

    if (mRequestAutoUpdate) {
      mUpdaterData.updateOrInstallAll_WithGUI(
          null /*selectedArchives*/, false /* includeObsoletes */);
    }

    return true;
  }