package Ġcom . github . pp as zk iew ic z . tools . toolbox . view Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Frame Layout Ċ import Ġandroidx . annotation . Keep Ċ import Ġandroidx . constraint layout . motion . widget . Motion Layout Ċ import Ġandroidx . core . view . Nested Scrolling Parent 3 Ċ Ċ /** ĠFrame Ġlayout Ġthat Ġserves Ġas Ġa Ġproxy Ġbetween Ġtwo Ġmotion Ġlayouts Ġ( ie . Ġfragment Ġcontainer ). Ġ*/ Ċ class ĠMotion Frame Layout Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġattrs : ĠAttributeSet ? Ġ= Ġnull , ĊĠĠĠ Ġdef Style Attr : ĠInt Ġ= Ġ 0 Ċ ) Ġ: ĠFrame Layout ( context , Ġattrs , Ġdef Style Attr ), ĠNested Scrolling Parent 3 Ġ{ ĊĊĠĠĠ Ġ/** ĠModify Ġprogress Ġof Ġchild Ġmotion Ġlayout . Ġ*/ ĊĠĠĠ Ġvar Ġprogress : ĠFloat ĊĠĠĠĠĠĠĠ Ġ@ Keep Ġget () Ġ= Ġmotion Layout ?. progress Ġ?: Ġ 0 f ĊĠĠĠĠĠĠĠ Ġ@ Keep Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmotion Layout ?. progress Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Log . d (" MF ", Ġ" motion Ġis Ġ$ v ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠChild Ġmotion Ġlayout . Ġ*/ ĊĠĠĠ Ġval Ġmotion Layout : ĠMotion Layout ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġget Child At ( 0 ) Ġas ? ĠMotion Layout ĊĊĠĠĠ Ġprivate Ġval Ġnested Scroll Parent Ġ: ĠNested Scrolling Parent 3 ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġparent Ġas ĠNested Scrolling Parent 3 ĊĊĠĠĠ Ġ// Ġdelegate Ġscroll s Ġto Ġscrolling Ġparent ĊĊĠĠĠ Ġoverride Ġfun ĠonStart Nested Scroll ( child : ĠView , Ġtarget : ĠView , Ġaxes : ĠInt , Ġtype : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnested Scroll Parent . onStart Nested Scroll ( child , Ġtarget , Ġaxes , Ġtype ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Nested Scroll Accepted ( child : ĠView , Ġtarget : ĠView , Ġaxes : ĠInt , Ġtype : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnested Scroll Parent . on Nested Scroll Accepted ( child , Ġtarget , Ġaxes , Ġtype ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Stop Nested Scroll ( target : ĠView , Ġtype : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnested Scroll Parent . on Stop Nested Scroll ( target , Ġtype ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Nested Scroll ( target : ĠView , Ġdx Cons umed : ĠInt , Ġdy Cons umed : ĠInt , Ġdx Un consumed : ĠInt , Ġdy Un consumed : ĠInt , Ġtype : ĠInt , Ġconsumed : ĠInt Array ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnested Scroll Parent . on Nested Scroll ( target , Ġdx Cons umed , Ġdy Cons umed , Ġdx Un consumed , Ġdy Un consumed , Ġtype , Ġconsumed ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Nested Scroll ( target : ĠView , Ġdx Cons umed : ĠInt , Ġdy Cons umed : ĠInt , Ġdx Un consumed : ĠInt , Ġdy Un consumed : ĠInt , Ġtype : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnested Scroll Parent . on Nested Scroll ( target , Ġdx Cons umed , Ġdy Cons umed , Ġdx Un consumed , Ġdy Un consumed , Ġtype ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Nested Pre Scroll ( target : ĠView , Ġdx : ĠInt , Ġdy : ĠInt , Ġconsumed : ĠInt Array , Ġtype : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnested Scroll Parent . on Nested Pre Scroll ( target , Ġdx , Ġdy , Ġconsumed , Ġtype ) ĊĠĠĠ Ġ} Ċ }