Source/sources/android/support/design/widget/CoordinatorLayout.java
public final void onChildViewsChanged(int type) {
        boolean handled;
        int layoutDirection = ViewCompat.getLayoutDirection(this);
        int childCount = this.mDependencySortedChildren.size();
        Rect inset = acquireTempRect();
        Rect drawRect = acquireTempRect();
        Rect lastDrawRect = acquireTempRect();
        for (int i = 0; i < childCount; i++) {
            View child = (View) this.mDependencySortedChildren.get(i);
            LayoutParams lp = (LayoutParams) child.getLayoutParams();
            if (type != 0 || child.getVisibility() != 8) {
                for (int j = 0; j < i; j++) {
                    if (lp.mAnchorDirectChild == ((View) this.mDependencySortedChildren.get(j))) {
                        offsetChildToAnchor(child, layoutDirection);
                    }
                }
                getChildRect(child, true, drawRect);
                if (lp.insetEdge != 0 && !drawRect.isEmpty()) {
                    int absInsetEdge = GravityCompat.getAbsoluteGravity(lp.insetEdge, layoutDirection);
                    switch (absInsetEdge & 112) {
                        case 48:
                            inset.top = Math.max(inset.top, drawRect.bottom);
                            break;
                        case 80:
                            inset.bottom = Math.max(inset.bottom, getHeight() - drawRect.top);
                            break;
                    }
                    switch (absInsetEdge & 7) {
                        case 3:
                            inset.left = Math.max(inset.left, drawRect.right);
                            break;
                        case 5:
                            inset.right = Math.max(inset.right, getWidth() - drawRect.left);
                            break;
                    }
                }
                if (lp.dodgeInsetEdges != 0 && child.getVisibility() == 0) {
                    offsetChildByInset(child, inset, layoutDirection);
                }
                if (type != 2) {
                    getLastChildRect(child, lastDrawRect);
                    if (!lastDrawRect.equals(drawRect)) {
                        recordLastChildRect(child, drawRect);
                    }
                }
                for (int j2 = i + 1; j2 < childCount; j2++) {
                    View checkChild = (View) this.mDependencySortedChildren.get(j2);
                    LayoutParams checkLp = (LayoutParams) checkChild.getLayoutParams();
                    Behavior b = checkLp.getBehavior();
                    if (b != null && b.layoutDependsOn(this, checkChild, child)) {
                        if (type != 0 || !checkLp.getChangedAfterNestedScroll()) {
                            switch (type) {
                                case 2:
                                    b.onDependentViewRemoved(this, checkChild, child);
                                    handled = true;
                                    break;
                                default:
                                    handled = b.onDependentViewChanged(this, checkChild, child);
                                    break;
                            }
                            if (type == 1) {
                                checkLp.setChangedAfterNestedScroll(handled);
                            }
                        } else {
                            checkLp.resetChangedAfterNestedScroll();
                        }
                    }
                }
            }
        }
        releaseTempRect(inset);
        releaseTempRect(drawRect);
        releaseTempRect(lastDrawRect);
    }
/* access modifiers changed from: 0000 */
access modifiers changed from: 0000
access modifiers changed from : 0000
public final void onChildViewsChanged(int type) {
        boolean handled;
        int layoutDirection = ViewCompat.getLayoutDirection(this);
        int childCount = this.mDependencySortedChildren.size();
        Rect inset = acquireTempRect();
        Rect drawRect = acquireTempRect();
        Rect lastDrawRect = acquireTempRect();
        for (int i = 0; i < childCount; i++) {
            View child = (View) this.mDependencySortedChildren.get(i);
            LayoutParams lp = (LayoutParams) child.getLayoutParams();
            if (type != 0 || child.getVisibility() != 8) {
                for (int j = 0; j < i; j++) {
                    if (lp.mAnchorDirectChild == ((View) this.mDependencySortedChildren.get(j))) {
                        offsetChildToAnchor(child, layoutDirection);
                    }
                }
                getChildRect(child, true, drawRect);
                if (lp.insetEdge != 0 && !drawRect.isEmpty()) {
                    int absInsetEdge = GravityCompat.getAbsoluteGravity(lp.insetEdge, layoutDirection);
                    switch (absInsetEdge & 112) {
                        case 48:
                            inset.top = Math.max(inset.top, drawRect.bottom);
                            break;
                        case 80:
                            inset.bottom = Math.max(inset.bottom, getHeight() - drawRect.top);
                            break;
                    }
                    switch (absInsetEdge & 7) {
                        case 3:
                            inset.left = Math.max(inset.left, drawRect.right);
                            break;
                        case 5:
                            inset.right = Math.max(inset.right, getWidth() - drawRect.left);
                            break;
                    }
                }
                if (lp.dodgeInsetEdges != 0 && child.getVisibility() == 0) {
                    offsetChildByInset(child, inset, layoutDirection);
                }
                if (type != 2) {
                    getLastChildRect(child, lastDrawRect);
                    if (!lastDrawRect.equals(drawRect)) {
                        recordLastChildRect(child, drawRect);
                    }
                }
                for (int j2 = i + 1; j2 < childCount; j2++) {
                    View checkChild = (View) this.mDependencySortedChildren.get(j2);
                    LayoutParams checkLp = (LayoutParams) checkChild.getLayoutParams();
                    Behavior b = checkLp.getBehavior();
                    if (b != null && b.layoutDependsOn(this, checkChild, child)) {
                        if (type != 0 || !checkLp.getChangedAfterNestedScroll()) {
                            switch (type) {
                                case 2:
                                    b.onDependentViewRemoved(this, checkChild, child);
                                    handled = true;
                                    break;
                                default:
                                    handled = b.onDependentViewChanged(this, checkChild, child);
                                    break;
                            }
                            if (type == 1) {
                                checkLp.setChangedAfterNestedScroll(handled);
                            }
                        } else {
                            checkLp.resetChangedAfterNestedScroll();
                        }
                    }
                }
            }
        }
        releaseTempRect(inset);
        releaseTempRect(drawRect);
        releaseTempRect(lastDrawRect);
    }
public final void onChildViewsChanged ( int type ) { boolean handled ; int layoutDirection = ViewCompat . getLayoutDirection ( this ) ; int childCount = this . mDependencySortedChildren . size ( ) ; Rect inset = acquireTempRect ( ) ; Rect drawRect = acquireTempRect ( ) ; Rect lastDrawRect = acquireTempRect ( ) ; for ( int i = 0 ; i < childCount ; i ++ ) { View child = ( View ) this . mDependencySortedChildren . get ( i ) ; LayoutParams lp = ( LayoutParams ) child . getLayoutParams ( ) ; if ( type != 0 || child . getVisibility ( ) != 8 ) { for ( int j = 0 ; j < i ; j ++ ) { if ( lp . mAnchorDirectChild == ( ( View ) this . mDependencySortedChildren . get ( j ) ) ) { offsetChildToAnchor ( child , layoutDirection ) ; } } getChildRect ( child , true , drawRect ) ; if ( lp . insetEdge != 0 && ! drawRect . isEmpty ( ) ) { int absInsetEdge = GravityCompat . getAbsoluteGravity ( lp . insetEdge , layoutDirection ) ; switch ( absInsetEdge & 112 ) { case 48 : inset . top = Math . max ( inset . top , drawRect . bottom ) ; break ; case 80 : inset . bottom = Math . max ( inset . bottom , getHeight ( ) - drawRect . top ) ; break ; } switch ( absInsetEdge & 7 ) { case 3 : inset . left = Math . max ( inset . left , drawRect . right ) ; break ; case 5 : inset . right = Math . max ( inset . right , getWidth ( ) - drawRect . left ) ; break ; } } if ( lp . dodgeInsetEdges != 0 && child . getVisibility ( ) == 0 ) { offsetChildByInset ( child , inset , layoutDirection ) ; } if ( type != 2 ) { getLastChildRect ( child , lastDrawRect ) ; if ( ! lastDrawRect . equals ( drawRect ) ) { recordLastChildRect ( child , drawRect ) ; } } for ( int j2 = i + 1 ; j2 < childCount ; j2 ++ ) { View checkChild = ( View ) this . mDependencySortedChildren . get ( j2 ) ; LayoutParams checkLp = ( LayoutParams ) checkChild . getLayoutParams ( ) ; Behavior b = checkLp . getBehavior ( ) ; if ( b != null && b . layoutDependsOn ( this , checkChild , child ) ) { if ( type != 0 || ! checkLp . getChangedAfterNestedScroll ( ) ) { switch ( type ) { case 2 : b . onDependentViewRemoved ( this , checkChild , child ) ; handled = true ; break ; default : handled = b . onDependentViewChanged ( this , checkChild , child ) ; break ; } if ( type == 1 ) { checkLp . setChangedAfterNestedScroll ( handled ) ; } } else { checkLp . resetChangedAfterNestedScroll ( ) ; } } } } } releaseTempRect ( inset ) ; releaseTempRect ( drawRect ) ; releaseTempRect ( lastDrawRect ) ; }
access modifiers changed from: 0000
access modifiers changed from : 0000