Example usage for android.support.v4.app FragmentTransaction isEmpty

List of usage examples for android.support.v4.app FragmentTransaction isEmpty

Introduction

In this page you can find the example usage for android.support.v4.app FragmentTransaction isEmpty.

Prototype

public abstract boolean isEmpty();

Source Link

Usage

From source file:org.peterbaldwin.vlcremote.util.FragmentUtil.java

public void removeFragmentsByTag(String... tags) {
    FragmentTransaction ft = fm.beginTransaction();
    for (String tag : tags) {
        Fragment f = fm.findFragmentByTag(tag);
        if (f != null) {
            ft.remove(f);//w w  w .j  a v a2 s  . c  om
        }
    }
    if (!ft.isEmpty()) {
        ft.commit();
        fm.executePendingTransactions();
    }
}

From source file:com.voyageonline.threepane.UIControllerBase.java

/**
 * Commit a {@link FragmentTransaction}.
 *///from  ww  w .  j av a 2  s .  c om
protected void commitFragmentTransaction(FragmentTransaction ft) {
    if (!ft.isEmpty()) {
        // NB: there should be no cases in which a transaction is committed after
        // onSaveInstanceState. Unfortunately, the "state loss" check also happens when in
        // LoaderCallbacks.onLoadFinished, and we wish to perform transactions there. The check
        // by the framework is conservative and prevents cases where there are transactions
        // affecting Loader lifecycles - but we have no such cases.
        // TODO: use asynchronous callbacks from loaders to avoid this implicit dependency
        ft.commitAllowingStateLoss();
        mFragmentManager.executePendingTransactions();
    }
}

From source file:org.dmfs.android.microfragments.HostFragment.java

private void executeTransition(@NonNull Activity activity, @NonNull FragmentTransition fragmentTransition) {

    if (!fragmentTransition.timestamp().isAfter(mLastTransactionTimestamp)) {
        // ignore outdated transition
        return;//from w w  w  .ja  v a2 s  .c o m
    }
    mLastTransactionTimestamp = fragmentTransition.timestamp();

    MicroFragment microFragment = new FragmentEnvironment<>(
            mFragmentManager.findFragmentById(R.id.microfragments_host)).microFragment();
    MicroFragmentHost host = new BasicMicroFragmentHost(mOperationDoveCote.cage());
    fragmentTransition.prepare(activity, mFragmentManager, host, microFragment);
    FragmentTransaction fragmentTransaction = fragmentTransition.updateTransaction(activity,
            mFragmentManager.beginTransaction(), mFragmentManager, host, microFragment);
    if (!fragmentTransaction.isEmpty()) {
        fragmentTransaction.commit();
    }
    mFragmentManager.executePendingTransactions();
    fragmentTransition.cleanup(activity, mFragmentManager, host, microFragment);

    // post an update, in case the backstack has not been changed by the transition we still have to notify the listener
    postUpdate(new FragmentEnvironment<>(currentFragment()).microFragment());

    // close keyboard if necessary
    if (activity.getCurrentFocus() == null) {
        // no view is focused, close the keyboard
        InputMethodManager inputManager = (InputMethodManager) activity
                .getSystemService(Context.INPUT_METHOD_SERVICE);
        inputManager.hideSoftInputFromWindow(activity.findViewById(android.R.id.content).getWindowToken(), 0);
    }
}

From source file:org.solovyev.android.sherlock.ActionBarNavigationFragmentListener.java

@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
    final FragmentManager fragmentManager = this.activity.getSupportFragmentManager();

    final FragmentTransaction ft = fragmentManager.beginTransaction();
    try {//  w  w  w . j a v  a 2s.  co  m
        if (selected != itemPosition) {
            if (selected >= 0 && selected < items.size()) {
                items.get(selected).onUnselected(ft);
            }

            if (itemPosition < items.size()) {
                items.get(itemPosition).onSelected(ft);
                selected = itemPosition;
            }
        }
    } finally {
        if (ft != null && !ft.isEmpty()) {
            ft.commit();
        }
    }

    return true;
}

From source file:com.kncwallet.wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    final ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);
    actionBar.setIcon(R.drawable.ic_knclogo);
    final FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    final FragmentTransaction removal = fragmentManager.beginTransaction();

    if (walletAddressesFragment == null)
        walletAddressesFragment = new WalletAddressesFragment();
    else/*  w  w  w. j  a  va2s  . c  o m*/
        removal.remove(walletAddressesFragment);

    if (sendingAddressesFragment == null)
        sendingAddressesFragment = new SendingAddressesFragment();
    else
        removal.remove(sendingAddressesFragment);

    if (!removal.isEmpty()) {
        removal.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:com.mybitcoin.wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    //      final ActionBar actionBar = getSupportActionBar();
    //      actionBar.setDisplayHomeAsUpEnabled(true);

    final FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    final FragmentTransaction removal = fragmentManager.beginTransaction();

    if (walletAddressesFragment == null)
        walletAddressesFragment = new WalletAddressesFragment();
    else/*from   w w w .j  a v a  2  s . co  m*/
        removal.remove(walletAddressesFragment);

    if (sendingAddressesFragment == null)
        sendingAddressesFragment = new SendingAddressesFragment();
    else
        removal.remove(sendingAddressesFragment);

    if (!removal.isEmpty()) {
        removal.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:com.bushstar.htmlcoin_android_wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    final ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);

    final FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    final FragmentTransaction removal = fragmentManager.beginTransaction();

    if (walletAddressesFragment == null)
        walletAddressesFragment = new WalletAddressesFragment();
    else/*from   w w  w  .ja v  a  2  s  .c o m*/
        removal.remove(walletAddressesFragment);

    if (sendingAddressesFragment == null)
        sendingAddressesFragment = new SendingAddressesFragment();
    else
        removal.remove(sendingAddressesFragment);

    if (!removal.isEmpty()) {
        removal.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:cc.mintcoin.wallet.ui.AddressBookActivity.java

@Override
protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.address_book_content);

    final ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayHomeAsUpEnabled(true);

    FragmentManager fragmentManager = getSupportFragmentManager();

    walletAddressesFragment = (WalletAddressesFragment) fragmentManager.findFragmentByTag(TAG_LEFT);
    sendingAddressesFragment = (SendingAddressesFragment) fragmentManager.findFragmentByTag(TAG_RIGHT);

    FragmentTransaction remove = fragmentManager.beginTransaction();
    if (walletAddressesFragment == null) {
        walletAddressesFragment = new WalletAddressesFragment();
    } else {/*from w  ww.j  a  v a  2 s.  c om*/
        remove.remove(walletAddressesFragment);
    }
    if (sendingAddressesFragment == null) {
        sendingAddressesFragment = new SendingAddressesFragment();
    } else {
        remove.remove(sendingAddressesFragment);
    }
    if (!remove.isEmpty()) {
        remove.commit();
        fragmentManager.executePendingTransactions();
    }

    final ViewPager pager = (ViewPager) findViewById(R.id.address_book_pager);
    if (pager != null) {
        pager.setAdapter(
                new TwoFragmentAdapter(fragmentManager, walletAddressesFragment, sendingAddressesFragment));

        final ViewPagerTabs pagerTabs = (ViewPagerTabs) findViewById(R.id.address_book_pager_tabs);
        pagerTabs.addTabLabels(R.string.address_book_list_receiving_title,
                R.string.address_book_list_sending_title);

        pager.setOnPageChangeListener(pagerTabs);
        final int position = getIntent().getBooleanExtra(EXTRA_SENDING, true) ? 1 : 0;
        pager.setCurrentItem(position);
        pager.setPageMargin(2);
        pager.setPageMarginDrawable(R.color.bg_less_bright);

        pagerTabs.onPageSelected(position);
        pagerTabs.onPageScrolled(position, 0, 0);
    } else {
        fragmentManager.beginTransaction()
                .add(R.id.wallet_addresses_fragment, walletAddressesFragment, TAG_LEFT)
                .add(R.id.sending_addresses_fragment, sendingAddressesFragment, TAG_RIGHT).commit();
    }

    updateFragments();
}

From source file:org.dmfs.webcal.fragments.CalendarItemFragment.java

@Override
public View onCreateItemView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View returnView = inflater.inflate(R.layout.fragment_calendar_item, container, false);

    // TODO: don't put the progress indicator into the header view
    View progressView = inflater.inflate(R.layout.progress_indicator, null, false);

    mProgressBar = (ProgressBar) progressView.findViewById(android.R.id.progress);

    mListView = (ListView) returnView.findViewById(android.R.id.list);

    mListView.addHeaderView(progressView);
    mListView.setOnItemClickListener(this);
    mListView.setHeaderDividersEnabled(false);
    mListAdapter = new EventListAdapter(inflater.getContext(), null);
    mListView.setAdapter(mSectionAdapter = new SectionTitlesAdapter(inflater.getContext(), mListAdapter,
            new SectionIndexer() {

                @Override/* www.j a v a2 s . c  om*/
                public String getSectionTitle(int index) {
                    Time start = new Time(TimeZone.getDefault().getID());
                    start.set(index & 0x00ff, (index >> 8) & 0x00ff, (index >> 16) & 0x0ffff);

                    return DateUtils.formatDateTime(getActivity(), start.toMillis(true),
                            DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_YEAR
                                    | DateUtils.FORMAT_SHOW_WEEKDAY | DateUtils.FORMAT_ABBREV_WEEKDAY);
                }

                @Override
                public int getSectionIndex(Object object) {
                    Cursor cursor = (Cursor) object;

                    Time start = new Time(
                            cursor.getString(cursor.getColumnIndex(WebCalReaderContract.Events.TIMZONE)));
                    start.set(cursor.getLong(cursor.getColumnIndex(WebCalReaderContract.Events.DTSTART)));
                    boolean allday = cursor
                            .getInt(cursor.getColumnIndex(WebCalReaderContract.Events.IS_ALLDAY)) == 1;
                    start.allDay = allday;

                    // we return an encoded date as index
                    return (start.year << 16) + (start.month << 8) + start.monthDay;

                }
            }, R.layout.events_preview_list_section_header));

    FragmentManager fm = getChildFragmentManager();
    FragmentTransaction ft = fm.beginTransaction();

    mTitleFragment = (CalendarTitleFragment) fm.findFragmentById(R.id.calendar_title_fragment_container);
    if (mTitleFragment == null) {
        mTitleFragment = CalendarTitleFragment.newInstance();
        ft.replace(R.id.calendar_title_fragment_container, mTitleFragment);
    }

    if (!ft.isEmpty()) {
        ft.commit();
    }

    LoaderManager lm = getLoaderManager();
    lm.initLoader(LOADER_CALENDAR_ITEM, null, this);
    lm.initLoader(LOADER_SUBSCRIBED_CALENDAR, null, this);
    lm.initLoader(LOADER_SUBSCRIPTION, null, this);

    // set this to true, so the menu is cleared automatically when leaving the fragment, otherwise the star icon will stay visible
    setHasOptionsMenu(true);

    return returnView;
}

From source file:android.support.v7.app.ActionBarImplBase.java

@Override
public void selectTab(Tab tab) {
    if (getNavigationMode() != NAVIGATION_MODE_TABS) {
        mSavedTabPosition = tab != null ? tab.getPosition() : INVALID_POSITION;
        return;//w  w  w  . j av a  2  s. co m
    }

    final FragmentTransaction trans = mActivity.getSupportFragmentManager().beginTransaction()
            .disallowAddToBackStack();

    if (mSelectedTab == tab) {
        if (mSelectedTab != null) {
            mSelectedTab.getCallback().onTabReselected(mSelectedTab, trans);
            mTabScrollView.animateToTab(tab.getPosition());
        }
    } else {
        mTabScrollView.setTabSelected(tab != null ? tab.getPosition() : Tab.INVALID_POSITION);
        if (mSelectedTab != null) {
            mSelectedTab.getCallback().onTabUnselected(mSelectedTab, trans);
        }
        mSelectedTab = (TabImpl) tab;
        if (mSelectedTab != null) {
            mSelectedTab.getCallback().onTabSelected(mSelectedTab, trans);
        }
    }

    if (!trans.isEmpty()) {
        trans.commit();
    }
}