/** * Kicks off a scene transition that animates visibility changes of individual contact list items * via explode animation. * * @param show whether the contact lists are to be shown or hidden. */ private void startExplodeTransitionForContactLists(final boolean show) { if (!OsUtil.isAtLeastL()) { // Explode animation is not supported pre-L. return; } final Explode transition = new Explode(); final Rect epicenter = mPendingExplodeView == null ? null : UiUtils.getMeasuredBoundsOnScreen(mPendingExplodeView); transition.setDuration(UiUtils.COMPOSE_TRANSITION_DURATION); transition.setInterpolator(UiUtils.EASE_IN_INTERPOLATOR); transition.setEpicenterCallback( new EpicenterCallback() { @Override public Rect onGetEpicenter(final Transition transition) { return epicenter; } }); // Kick off the delayed scene explode transition. Anything happens after this line in this // method before the next frame will be tracked by the transition manager for visibility // changes and animated accordingly. TransitionManager.beginDelayedTransition(mCustomHeaderViewPager, transition); toggleContactListItemsVisibilityForPendingTransition(show); }
/** * Toggle the visibility of contact list items in the contact lists for them to be tracked by the * transition manager for pending explode transition. */ private void toggleContactListItemsVisibilityForPendingTransition(final boolean show) { if (!OsUtil.isAtLeastL()) { // Explode animation is not supported pre-L. return; } mAllContactsListViewHolder.toggleVisibilityForPendingTransition(show, mPendingExplodeView); mFrequentContactsListViewHolder.toggleVisibilityForPendingTransition(show, mPendingExplodeView); }
/** {@inheritDoc} */ @Override public void dump(final FileDescriptor fd, final PrintWriter writer, final String[] args) { // First dump out the default SMS app package name String defaultSmsApp = PhoneUtils.getDefault().getDefaultSmsApp(); if (TextUtils.isEmpty(defaultSmsApp)) { if (OsUtil.isAtLeastKLP()) { defaultSmsApp = "None"; } else { defaultSmsApp = "None (pre-Kitkat)"; } } writer.println("Default SMS app: " + defaultSmsApp); // Now dump logs LogUtil.dump(writer); }