Example usage for android.support.v4.app FragmentManager removeOnBackStackChangedListener

List of usage examples for android.support.v4.app FragmentManager removeOnBackStackChangedListener

Introduction

In this page you can find the example usage for android.support.v4.app FragmentManager removeOnBackStackChangedListener.

Prototype

public abstract void removeOnBackStackChangedListener(OnBackStackChangedListener listener);

Source Link

Document

Remove a listener that was previously added with #addOnBackStackChangedListener(OnBackStackChangedListener) .

Usage

From source file:org.fuusio.api.flow.AbstractFlow.java

@Override
public final void stop() {
    mLifecycleState = LifecycleState.STOPPED;
    final FragmentManager manager = mFragmentContainer.getSupportFragmentManager();
    manager.removeOnBackStackChangedListener(this);
    mFlowManager.onFlowStopped(this);

    onStop();//from   www  .  java2 s . com
}

From source file:org.sufficientlysecure.keychain.ui.transfer.view.TransferFragment.java

@Override
public void addFakeBackStackItem(final String tag) {
    FragmentManager fragmentManager = getFragmentManager();

    fragmentManager.beginTransaction().addToBackStack(tag).commitAllowingStateLoss();
    fragmentManager.executePendingTransactions();

    fragmentManager.addOnBackStackChangedListener(new OnBackStackChangedListener() {
        @Override/*  ww w .  j  a  v  a  2 s  .c o m*/
        public void onBackStackChanged() {
            FragmentManager fragMan = getFragmentManager();
            fragMan.popBackStack(tag, FragmentManager.POP_BACK_STACK_INCLUSIVE);
            fragMan.removeOnBackStackChangedListener(this);

            presenter.onUiBackStackPop();
        }
    });
}

From source file:org.sufficientlysecure.keychain.ui.keyview.LinkedIdViewFragment.java

public void finishFragment() {
    new Handler().post(new Runnable() {
        @Override/*from   w  ww .  j av a 2s  . c om*/
        public void run() {
            FragmentManager manager = getFragmentManager();
            manager.removeOnBackStackChangedListener(LinkedIdViewFragment.this);
            manager.popBackStack("linked_id", FragmentManager.POP_BACK_STACK_INCLUSIVE);
        }
    });
}

From source file:org.sufficientlysecure.keychain.ui.BackupCodeFragment.java

private void popBackStackNoAction() {
    FragmentManager fragMan = getFragmentManager();
    fragMan.removeOnBackStackChangedListener(this);
    fragMan.popBackStackImmediate(BACK_STACK_INPUT, FragmentManager.POP_BACK_STACK_INCLUSIVE);
    mBackStackLevel = null;/*w  w w  .ja  v a  2  s.  c  o m*/
}

From source file:org.ohmage.auth.AuthenticatorActivity.java

@Override
protected void onPause() {
    super.onPause();

    FragmentManager fm = getSupportFragmentManager();
    fm.removeOnBackStackChangedListener(cancelRequests);
}

From source file:org.sufficientlysecure.keychain.ui.BackupCodeFragment.java

@Override
public void onBackStackChanged() {
    FragmentManager fragMan = getFragmentManager();
    if (mBackStackLevel != null && fragMan.getBackStackEntryCount() == mBackStackLevel) {
        fragMan.removeOnBackStackChangedListener(this);
        switchState(BackupCodeState.STATE_DISPLAY, true);
        mBackStackLevel = null;/*from   w  w w.j  av  a  2 s .co m*/
    }
}

From source file:com.btmura.android.reddit.app.AbstractBrowserActivity.java

private void safePopBackStackImmediate() {
    FragmentManager fm = getSupportFragmentManager();
    if (fm.getBackStackEntryCount() > 0) {
        fm.removeOnBackStackChangedListener(this);
        fm.popBackStackImmediate();/*from  ww w.j av a 2 s.  c  o  m*/
        fm.addOnBackStackChangedListener(this);
    }
}

From source file:com.koushikdutta.widgets.ListContentFragmentInternal.java

@SuppressLint("InlinedApi")
void setContentNative(final String breadcrumb) {
    android.app.Fragment f = (android.app.Fragment) mCurrentContent;
    Activity fa = getActivity();/*from   w  ww  .  j a va 2  s.com*/
    final android.app.FragmentManager fm = fa.getFragmentManager();

    android.app.FragmentTransaction ft = fm.beginTransaction();
    if (isPaged()) {
        if (listener == null) {
            fm.addOnBackStackChangedListener(new android.app.FragmentManager.OnBackStackChangedListener() {
                {
                    listener = this;
                }

                @Override
                public void onBackStackChanged() {
                    android.app.Fragment f = (android.app.Fragment) getFragment();
                    if (f.isDetached() || f.isRemoving()) {
                        fm.removeOnBackStackChangedListener(this);
                        return;
                    }
                    View v = getFragment().getView();
                    if (v == null)
                        return;
                    final View l = v.findViewById(R.id.list_fragment);
                    if (l == null)
                        return;
                    if (fm.getBackStackEntryCount() > 0 && "content"
                            .equals(fm.getBackStackEntryAt(fm.getBackStackEntryCount() - 1).getName())) {
                        l.setVisibility(View.GONE);
                    } else {
                        l.setVisibility(View.VISIBLE);
                    }
                }
            });
        }

        fm.popBackStack("content", android.app.FragmentManager.POP_BACK_STACK_INCLUSIVE);
        ft.setBreadCrumbTitle(breadcrumb);
        ft.setBreadCrumbShortTitle(breadcrumb);
        ft.addToBackStack("content");
    }
    ft.replace(getContentId(), f, "content");
    ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
    ft.commit();
}

From source file:com.koushikdutta.widgets.ListContentFragmentInternal.java

public void setContent(FragmentInterfaceWrapper content, boolean clearChoices, String breadcrumb) {
    mCurrentContent = content;/*from www  . j  av  a 2  s.com*/
    if (getActivity() instanceof FragmentActivity) {
        Fragment f = (Fragment) mCurrentContent;
        FragmentActivity fa = (FragmentActivity) getActivity();
        final FragmentManager fm = fa.getSupportFragmentManager();
        FragmentTransaction ft = fa.getSupportFragmentManager().beginTransaction();
        if (isPaged()) {
            View v = getFragment().getView();
            Assert.assertNotNull(v);
            final View l = v.findViewById(R.id.list_fragment);
            Assert.assertNotNull(l);
            l.setVisibility(View.GONE);
            fm.addOnBackStackChangedListener(new OnBackStackChangedListener() {
                {
                    listener = this;
                }

                @Override
                public void onBackStackChanged() {
                    Fragment f = (Fragment) getFragment();
                    if (f.isDetached() || f.isRemoving()) {
                        fm.removeOnBackStackChangedListener(this);
                        return;
                    }
                    View v = getFragment().getView();
                    if (v == null)
                        return;
                    final View l = v.findViewById(R.id.list_fragment);
                    if (l == null)
                        return;
                    if (fm.getBackStackEntryCount() > 0 && "content"
                            .equals(fm.getBackStackEntryAt(fm.getBackStackEntryCount() - 1).getName())) {
                        l.setVisibility(View.GONE);
                    } else {
                        l.setVisibility(View.VISIBLE);
                    }
                }
            });

            fm.popBackStack("content", FragmentManager.POP_BACK_STACK_INCLUSIVE);
            ft.setBreadCrumbTitle(breadcrumb);
            ft.setBreadCrumbShortTitle(breadcrumb);
            ft.addToBackStack("content");
        }
        ft.replace(getContentId(), f, "content");
        ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
        ft.commit();
    } else {
        setContentNative(breadcrumb);
    }

    if (clearChoices)
        getListView().clearChoices();
}