/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠOle ks and r ĠBe z ush ko Ċ Ġ* Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ċ Ġ* Ġof Ġthis Ġsoftware Ġand Ġassociated Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ċ Ġ* Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ġrights Ċ Ġ* Ġto Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ċ Ġ* Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ċ Ġ* Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ċ Ġ* Ġcopies Ġor Ġsubstantial Ġportions Ġof Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ Ġ* ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ Ġ* ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE Ċ Ġ* ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER Ċ Ġ* ĠLIABILITY , ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , Ċ Ġ* ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE Ċ Ġ* ĠSOFTWARE . Ċ Ġ*/ Ċ Ċ package Ġcom . ins iders er . android . template . widget Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroidx . appcompat . widget . LinearLayout Compat Ċ import Ġandroidx . core . content . with Styled Attributes Ċ import Ġandroidx . core . view . isVisible Ċ import Ġcom . ins iders er . android . template . R Ċ import Ġcom . ins iders er . android . template . databinding . Preference View Binding Ċ Ċ /** Ċ Ġ* ĠA Ġview Ġthat Ġrepresents Ġa Ġsingle Ġuser Ġpreference . Ċ Ġ* ĠSimilar Ġto ĠPreference Ġfrom ĠAndroid 's Ġpreferences Ġlibrary . Ċ Ġ*/ Ċ @ Suppress (" Member Visibility Can Be Private ") Ċ class ĠPreference View Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġattrs : ĠAttributeSet ? Ġ= Ġnull Ċ ) Ġ: ĠLinearLayout Compat ( context , Ġattrs ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġbinding Ġ= ĠPreference View Binding . inflate ( LayoutInflater . from ( context ), Ġthis ) ĊĊĠĠĠ Ġ/** ĠCurrent Ġtitle Ġof Ġthe Ġpreference . Ġ*/ ĊĠĠĠ Ġvar Ġtitle : ĠCharSequence ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġbinding . title . text ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . title . text Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠShort Ġsummary Ġof Ġthe Ġcurrent Ġvalue Ġof Ġthe Ġpreference . Ġ*/ ĊĠĠĠ Ġvar Ġsummary : ĠCharSequence ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġbinding . summary . text ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . summary . text Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . summary . isVisible Ġ= Ġ! value . isNull OrEmpty () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġorientation Ġ= ĠV ERT ICAL ĊĊĠĠĠĠĠĠĠ Ġcontext . with Styled Attributes ( attrs , ĠR . style able . Preference View ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= ĠgetText ( R . style able . Preference View _ title ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsummary Ġ= ĠgetText ( R . style able . Preference View _ summary ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Orientation ( orientation : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrequire ( orientation Ġ== ĠV ERT ICAL ) Ġ{ Ġ" Preference Ġcan Ġonly Ġbe Ġla id Ġout Ġvert ically " Ġ} ĊĠĠĠĠĠĠĠ Ġsuper . set Orientation ( orientation ) ĊĠĠĠ Ġ} Ċ } Ċ