/* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 Ġk oma _ mj Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġcom . k oma . video . detail Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . design . widget . Bottom Sheet Dialog Fragment Ċ import Ġandroid . support . v 4 . app . FragmentManager Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . k oma . video . R Ċ import Ġcom . k oma . video . Video Application Ċ import Ġcom . k oma . video . data . en ities . Video Entry Detail Ċ import Ġkotlinx . android . synt hetic . main . detail _ dialog .* Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠDetail Dialog Ġ: ĠBottom Sheet Dialog Fragment (), ĠDetail Contract . View Ġ{ ĊĠĠĠ Ġoverride Ġlateinit Ġvar Ġpresenter : ĠDetail Contract . Presenter ĊĊĠĠĠ Ġoverride Ġvar ĠisActive : ĠBoolean Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġis Added ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġdetail Presenter : ĠDetail Presenter ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . detail _ dialog , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ ĠD agger Detail Component . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. video Repository Component ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ(( context Ġas ĠAppCompatActivity ). application Ġas ĠVideo Application ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. video Repository Component ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. detail Presenter Module ( Detail Presenter Module ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inject ( this ) ĊĊĠĠĠĠĠĠĠ Ġarguments ?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter . load Video Entry Detail ( getLong ( MEDIA _ ID )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Loading Indicator ( active : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( progress _ bar ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( active ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhide () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Video Entry Detail ( video Entry Detail : ĠVideo Entry Detail ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtv _ title _ description . text Ġ= Ġvideo Entry Detail . title ĊĠĠĠĠĠĠĠ Ġtv _ duration _ description . text Ġ= Ġvideo Entry Detail . format Duration ĊĠĠĠĠĠĠĠ Ġcontext ?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ date _ taken . text Ġ= ĠgetString ( R . string . date _ taken , Ġvideo Entry Detail . format Date Taken ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ format . text Ġ= ĠgetString ( R . string . format , Ġvideo Entry Detail . format ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ size . text Ġ= ĠgetString ( R . string . size , Ġvideo Entry Detail . format Size ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv _ path . text Ġ= ĠgetString ( R . string . path , Ġvideo Entry Detail . path ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġgroup . visibility Ġ= ĠView . VISIBLE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" detail " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠMED IA _ ID Ġ= Ġ" media _ id " ĊĊĠĠĠĠĠĠĠ Ġfun Ġshow ( fragment Manager : ĠFragment Manager , Ġmedia Id : ĠLong ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdialog Ġ= ĠDetail Dialog () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Long ( MEDIA _ ID , Ġmedia Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . arguments Ġ= Ġbundle ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdialog . show ( fragment Manager , ĠTAG ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }