package Ġcom . sh uy u . github . kotlin . module . code Ċ Ċ import Ġandroid . arch . lifecycle . Observer Ċ import Ġandroid . arch . lifecycle . ViewModel Provider Ċ import Ġandroid . arch . lifecycle . ViewModel Providers Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġcom . alibaba . android . ar outer . facade . annotation . Autowired Ċ import Ġcom . alibaba . android . ar outer . facade . annotation . Route Ċ import Ġcom . sh uy u . github . kotlin . R Ċ import Ġcom . sh uy u . github . kotlin . common . utils . Common Utils Ċ import Ġcom . sh uy u . github . kotlin . common . utils . copy Ċ import Ġcom . sh uy u . github . kotlin . databinding . Fragment Code Detail Binding Ċ import Ġcom . sh uy u . github . kotlin . di . AR outer Injectable Ċ import Ġcom . sh uy u . github . kotlin . module . AR outer Address Ċ import Ġcom . sh uy u . github . kotlin . module . base . Base Fragment Ċ import Ġkotlinx . android . synt hetic . main . fragment _ code _ detail .* Ċ import Ġorg . jetbrains . ank o . browse Ċ import Ġorg . jetbrains . ank o . share Ċ import Ġorg . jetbrains . ank o . toast Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġgu os hu yu Ċ Ġ* ĠDate : Ġ 2 0 1 8 - 1 0 - 2 9 Ċ Ġ*/ Ċ Ċ @ Route ( path Ġ= ĠA Router Address . Code Detail Fragment ) Ċ class ĠCode Detail Fragment Ġ: ĠBase Fragment < Fragment Code Detail Binding >(), ĠA Router Injectable Ġ{ ĊĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġvar Ġpath Ġ= Ġ"" ĊĊĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġvar Ġurl Ġ= Ġ"" ĊĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġvar Ġrepos Name Ġ= Ġ"" ĊĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġvar ĠuserName Ġ= Ġ"" ĊĊĠĠĠ Ġ@ Autowired ĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġvar Ġlocal Code : ĠString ? Ġ= Ġnull ĊĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar ĠviewModel Factory : ĠViewModel Provider . Factory ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠviewModel : ĠCode Detail ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( main View : ĠView ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel Ġ= ĠViewModel Providers . of ( this , ĠviewModel Factory ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. get ( Code Detail ViewModel :: class . java ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġcode _ detail _ web . spin Kit . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ ĠviewModel . html Data . observe ( this , ĠObserver Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ Observer ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcode _ detail _ web . spin Kit . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcode _ detail _ web . web View . request Intercept Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcode _ detail _ web . web View . load Data ( it , Ġ" text / html ", Ġ" utf - 8 ") ĊĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġif Ġ( local Code Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . getCode Html ( userName , Ġrepos Name , Ġurl ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . html Data . value Ġ= Ġlocal Code ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Id (): ĠInt Ġ= ĠR . layout . fragment _ code _ detail ĊĊĊĠĠĠ Ġoverride Ġfun Ġaction Open By Browser () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( url . isBlank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext ?. browse ( Common Utils . getFile Html Url ( userName , Ġrepos Name , Ġurl )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġaction Copy () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( url . isBlank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext ?. copy ( Common Utils . getFile Html Url ( userName , Ġrepos Name , Ġurl )) ĊĠĠĠĠĠĠĠ Ġcontext ?. toast ( R . string . had Copy ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġaction Share () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( url . isBlank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcontext ?. share ( Common Utils . getFile Html Url ( userName , Ġrepos Name , Ġurl )) ĊĠĠĠ Ġ} Ċ }