package Ġnet . squ anch y . speaker . widget Ċ Ċ import Ġandroid . annotation . Target Api Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Build Ċ import Ġandroid . text . Html Ċ import Ġandroid . text . Sp anned Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . widget . LinearLayout Ċ import Ġkotlinx . android . synt hetic . main . activity _ speaker _ details . view .* Ċ import Ġnet . squ anch y . speaker . domain . view . Speaker Ċ Ċ class ĠS peaker Details Layout ( context : ĠContext , Ġattrs : ĠAttributeSet ) Ġ: ĠLinearLayout ( context , Ġattrs ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . set Orientation ( LinearLayout . VERTICAL ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Orientation ( orientation : ĠInt ): ĠNothing Ġ{ ĊĠĠĠĠĠĠĠ Ġthrow ĠUnsupportedOperationException (" Changing Ġorientation Ġis Ġnot Ġsupported Ġfor ĠS peaker Details Layout ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġupdate With ( speaker : ĠS peaker ) Ġ{ ĊĠĠĠĠĠĠĠ Ġspeaker Details Header . update With ( speaker ) ĊĠĠĠĠĠĠĠ Ġspeaker Bio . text Ġ= Ġparse Html ( speaker . bio ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Target Api ( Build . VERSION _ CODES . N ) Ġ// ĠThe Ġolder Ġfrom Html () Ġis Ġonly Ġcalled Ġpre - 2 4 ĊĠĠĠ Ġprivate Ġfun Ġparse Html ( description : ĠString ): ĠSp anned Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠTODO Ġhandle Ġthis Ġproperly ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . N ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHtml . from Html ( description , ĠHtml . FROM _ HTML _ MODE _ LEG ACY ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress (" DE PREC ATION ") Ġ// ĠThis Ġis Ġa Ġ" compat " Ġmethod Ġcall , Ġwe Ġonly Ġuse Ġthis Ġon Ġpre - N ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHtml . from Html ( description ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ