public void createFolder() {
    FragmentTransaction ft = getFragmentManager().beginTransaction();
    Fragment prev = getFragmentManager().findFragmentByTag(CreateFolderDialogFragment.TAG);
    if (prev != null) {
      ft.remove(prev);
    }
    ft.addToBackStack(null);

    // Create and show the dialog.
    AddFolderDialogFragment.newInstance(parentFolder).show(ft, CreateFolderDialogFragment.TAG);
  }
  public void createFolder() {
    FragmentTransaction ft = getFragmentManager().beginTransaction();
    Fragment prev = getFragmentManager().findFragmentByTag(CreateFolderDialogFragment.TAG);
    if (prev != null) {
      ft.remove(prev);
    }
    ft.addToBackStack(null);

    // Create and show the dialog.
    AddFolderDialogFragment newFragment = AddFolderDialogFragment.newInstance(parentFolder);

    newFragment.setOnCreateListener(
        new OnNodeCreateListener() {
          @Override
          public void afterContentCreation(Node node) {
            ActionManager.actionRefresh(
                ChildrenBrowserFragment.this,
                IntentIntegrator.CATEGORY_REFRESH_OTHERS,
                IntentIntegrator.NODE_TYPE);
          }

          public boolean hasWaiting = false;

          @Override
          public void beforeContentCreation(
              Folder arg0, String arg1, Map<String, Serializable> arg2, ContentFile arg3) {
            if (!hasWaiting
                && getFragmentManager().findFragmentByTag(WaitingDialogFragment.TAG) == null) {
              new WaitingDialogFragment().show(getFragmentManager(), WaitingDialogFragment.TAG);
            }
            hasWaiting = true;
          }

          @Override
          public void onExeceptionDuringCreation(Exception e) {
            ActionManager.actionDisplayError(ChildrenBrowserFragment.this, e);
          }
        });

    newFragment.show(ft, CreateFolderDialogFragment.TAG);
  }