package Ġcom . v sh kl . e po xy handled rag and drop example Ċ Ċ import Ġandroid . view . Motion Event Ċ import Ġandroid . view . View Ċ import Ġcom . air bnb . e po xy . E po xy Controller Ċ import Ġcom . v sh kl . e po xy handled rag and drop example . Main ViewModel . Row Ċ import Ġcom . v sh kl . e po xy handled rag and drop example . e po xy models . header Ċ import Ġcom . v sh kl . e po xy handled rag and drop example . e po xy models . row Ċ Ċ class ĠMain Controller ( ĊĠĠĠ Ġprivate Ġval Ġcallback Adapter : ĠMain Callback Adapter Ċ ) Ġ: ĠE po xy Controller () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġfirst Rows Ġ= Ġempty List < Row >() ĊĠĠĠ Ġprivate Ġvar Ġsecond Rows Ġ= Ġempty List < Row >() ĊĊĠĠĠ Ġoverride Ġfun Ġbuild Models () Ġ{ ĊĠĠĠĠĠĠĠ Ġheader Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid (" header ", Ġ" 1 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res ( R . string . txt _ header _ one ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfirst Rows . map Ġ{ Ġrow Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrow Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid ( row . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrow Id ( row . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle ( row . title ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Drag Handle Touch Listener ( this @ Main Controller :: on Row Drag Handle Tou ched ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġheader Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid (" header ", Ġ" 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Res ( R . string . txt _ header _ two ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsecond Rows . map Ġ{ Ġrow Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrow Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid ( row . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrow Id ( row . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle ( row . title ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Drag Handle Touch Listener ( this @ Main Controller :: on Row Drag Handle Tou ched ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset First Rows Data ( first Rows Data : ĠList < Row >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . first Rows Ġ= Ġfirst Rows Data ĊĠĠĠĠĠĠĠ Ġrequest Model Build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Second Rows Data ( second Rows Data : ĠList < Row >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . second Rows Ġ= Ġsecond Rows Data ĊĠĠĠĠĠĠĠ Ġrequest Model Build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġon Row Drag Handle Tou ched ( view : ĠView , Ġevent : ĠMotion Event ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( event . action Ġ== ĠMotion Event . ACTION _ DOWN ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback Adapter . on Drag Start () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġview . perform Click () ĊĠĠĠ Ġ} Ċ Ċ } Ċ