package Ġorg . step ic . d roid . adaptive . ui . dialogs Ċ Ċ import Ġandroid . app . Dialog Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ import Ġcom . github . jin at onic . conf et ti . Common Conf et ti Ċ import Ġcom . google . android . material . dialog . Material AlertDialog Builder Ċ import Ġio . reactivex . Comp letable Ċ import Ġio . reactivex . Scheduler Ċ import Ġkotlinx . android . synt hetic . main . dialog _ adaptive _ level . view .* Ċ import Ġorg . step ic . d roid . R Ċ import Ġorg . step ic . d roid . base . App Ċ import Ġorg . step ic . d roid . di . qual ifiers . Main Scheduler Ċ import Ġorg . step ic . d roid . util . resolve Color Attribute Ċ import Ġorg . step ic . d roid . util . resolve Float Attribute Ċ import Ġorg . step ik . android . view . base . ui . extension . Color Extensions Ċ import Ġru . nob ird . android . view . base . ui . extension . argument Ċ import Ġjava . util . concurrent . TimeUnit Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠAdapt ive Level Dialog Fragment Ġ: ĠDialog Fragment () Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( level : ĠLong ): ĠDialog Fragment Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAdapt ive Level Dialog Fragment (). apply Ġ{ Ġthis . level Ġ= Ġlevel Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġ@ field : Main Scheduler ĊĠĠĠ Ġlateinit Ġvar Ġmain Scheduler : ĠScheduler ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġexp Level Dialog Conf et ti : ĠViewGroup ĊĊĠĠĠ Ġprivate Ġvar Ġlevel Ġby Ġargument < Long >() ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠApp . component (). inject ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Dialog ( savedInstanceState : ĠBundle ?): ĠDialog Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġalert Dialog Builder Ġ= ĠMaterial AlertDialog Builder ( require Context ()) ĊĠĠĠĠĠĠĠ Ġval Ġroot Ġ= ĠView . inflate ( context , ĠR . layout . dialog _ adaptive _ level , Ġnull ) ĊĠĠĠĠĠĠĠ Ġroot . adaptive Level Dialog Title . text Ġ= Ġlevel . toString () ĊĊĠĠĠĠĠĠĠ Ġroot . continue Button . setOnClickListener Ġ{ Ġdismiss () Ġ} ĊĊĠĠĠĠĠĠĠ Ġexp Level Dialog Conf et ti Ġ= Ġroot . adaptive Level Dialog Conf et ti ĊĊĠĠĠĠĠĠĠ Ġalert Dialog Builder . setView ( root ) ĊĠĠĠĠĠĠĠ Ġreturn Ġalert Dialog Builder . create () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġexp Level Dialog Conf et ti . context Ġ// Ġwith Ġtheme Ġoverlay ĊĊĠĠĠĠĠĠĠ Ġval Ġalpha Ġ= Ġcontext . resolve Float Attribute ( R . attr . alpha Emp hasis Medium ) ĊĠĠĠĠĠĠĠ Ġval Ġcolor On Surface Ġ= Ġcontext . resolve Color Attribute ( R . attr . color On Surface ) ĊĠĠĠĠĠĠĠ Ġval Ġcolor Secondary Ġ= Ġcontext . resolve Color Attribute ( R . attr . color Secondary ) ĊĊĠĠĠĠĠĠĠ Ġval Ġcolors Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġint ArrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor On Surface , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor Extensions . color With Alpha ( color On Surface , Ġalpha ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Secondary ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠComp letable ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. timer ( 0 , ĠTimeUnit . MICRO SECONDS ) Ġ// Ġjs Ġlike Ġwork Ġaround ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( main Scheduler ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCommon Conf et ti ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. r aining Conf et ti ( exp Level Dialog Conf et ti , Ġcolors ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. infinite () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Velocity Y ( 1 0 0 f , Ġ 3 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Velocity X ( 0 f , Ġ 6 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set E mission Rate ( 1 5 f ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }