package Ġme . ros uh . easy watermark . ui . dialog Ċ Ċ import Ġandroid . content . DialogInterface Ċ import Ġandroid . os . Build Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . Html Ċ import Ġandroid . text . Sp anned Ċ import Ġandroid . text . method . Link Movement Method Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . core . text . Html Compat . FROM _ HTML _ MODE _ LEG ACY Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġandroidx . lifecycle . lifecycle Scope Ċ import Ġcom . google . android . material . bottom sheet . Bottom Sheet Dialog Fragment Ċ import Ġdagger . h ilt . android . Android EntryPoint Ċ import Ġkotlinx . coroutines . launch Ċ import Ġme . ros uh . easy watermark . Build Config Ċ import Ġme . ros uh . easy watermark . R Ċ import Ġme . ros uh . easy watermark . data . repo . User Config Repository Ċ import Ġme . ros uh . easy watermark . utils . k tx . open Link Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* Ġ@ author Ġhi @ ros uh . me Ċ Ġ* Ġ@ date Ġ 2 0 2 0 / 9 / 3 Ċ Ġ* ĠA Ġdialog Ġshowing Ġchange Ġlog , Ġwhich Ġusing Ġ[ Build Config . VERSION _ CODE ] Ċ Ġ* Ġand Ġ[ R . string . dialog _ change _ log _ content ] Ġto Ġgenerate Ġmd 5 ĠTo Ġdecide Ġwhether Ġto Ġdisplay Ċ Ġ*/ Ċ @ Android EntryPoint Ċ class ĠChange Log Dialog Fragment Ġ: ĠBottom Sheet Dialog Fragment () Ġ{ ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġrepo : ĠUser Config Repository ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġroot Ġ= Ġinflater . inflate ( R . layout . dialog _ change _ log , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġwith ( root ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . tv _ content ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmovement Method Ġ= ĠLink Movement Method () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtext : ĠString Ġ= Ġrequire Activity (). getString ( R . string . dialog _ change _ log _ content ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstyled Text : ĠSp anned Ġ= Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . N ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠHtml . from Html ( text , ĠFROM _ HTML _ MODE _ LEG ACY ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠHtml . from Html ( text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Text ( styled Text ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfindViewById < View >( R . id . tv _ go _ github ). setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Activity (). open Link (" https :// github . com / ros u H / Easy Watermark / releases /") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġroot ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" Change Log Dialog Fragment " ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġnew Instance (): ĠChange Log Dialog Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠChange Log Dialog Fragment () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġsafety Show ( manager : ĠFragment Manager ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkotlin . run Catch ing Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġf Ġ= Ġmanager . find Fragment By Tag ( TAG ) Ġas ? ĠChange Log Dialog Fragment ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġf Ġ== Ġnull Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnew Instance (). show ( manager , ĠTAG ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ! f . is Added Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġf . show ( manager , ĠTAG ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ