package Ġme . s aket . press . shared . theme Ċ Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . os . Build . VERSION . SDK _ INT Ċ import Ġandroid . os . Build . VERSION _ CODES . P Ċ import Ġandroid . text . TextUtils . Truncate At Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . core . content . res . Resources Compat Ċ import Ġme . s aket . press . shared . Build Config Ċ import Ġme . s aket . press . shared . R Ċ import Ġme . s aket . press . shared . theme . Ui Styles . Font Family . WORK _ SAN S Ċ import Ġme . s aket . press . shared . theme . Ui Styles . Font Variant . BOLD Ċ import Ġme . s aket . press . shared . theme . Ui Styles . Font Variant . ITAL IC Ċ import Ġme . s aket . press . shared . theme . Ui Styles . Font Variant . REG ULAR Ċ Ċ fun ĠUi Styles . Text . apply Style ( view : ĠTextView ) Ġ{ ĊĠ Ġview . text Size Ġ= Ġtext Size ĊĠ Ġview . type face Ġ= Ġread Font ( view ) ĊĠ Ġview . set Line Spacing ( 0 f , Ġline Spacing Multiplier ) ĊĊĠ Ġif Ġ( max Lines Ġ!= Ġnull ) Ġ{ ĊĠĠĠ Ġview . max Lines Ġ= Ġmax Lines ĊĠĠĠ Ġview . el lip size Ġ= ĠTr uncate At . END ĊĠ Ġ} Ċ } Ċ Ċ private Ġfun ĠUi Styles . Text . read Font ( view : ĠTextView ): ĠType face Ġ{ ĊĠ Ġval ĠfontFamily Ġ= ĠResources Compat . getFont ( view . context , Ġwhen Ġ( font . family ) Ġ{ ĊĠĠĠ ĠWORK _ SAN S Ġ-> ĠR . font . work _ sans ĊĠ Ġ}) ĊĊĠ Ġreturn Ġif Ġ( SDK _ INT Ġ>= ĠP ) Ġ{ ĊĠĠĠ Ġval Ġis Italic Ġ= Ġfont . variant . is Italic ĊĠĠĠ ĠType face . create ( fontFamily , Ġfont . variant . weight , Ġis Italic ) ĊĠ Ġ} Ġelse Ġ{ ĊĠĠĠ Ġif Ġ( Build Config . DEBUG Ġ&& Ġfont . variant . weight Ġ> Ġ 4 0 0 Ġ&& Ġfont . variant Ġ== ĠIT AL IC ) Ġ{ ĊĠĠĠĠĠ Ġthrow ĠTODO (" Find Ġa Ġway Ġbackward - compatible Ġway Ġto Ġrender Ġcomposite Ġstyles Ġ( i . e ., Ġitalic Ġ+ Ġbold )") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġstyle Int Ġ= Ġwhen Ġ( font . variant ) Ġ{ ĊĠĠĠĠĠ ĠREG ULAR Ġ-> ĠType face . NORMAL ĊĠĠĠĠĠ ĠIT AL IC Ġ-> ĠType face . ITAL IC ĊĠĠĠĠĠ ĠB OLD Ġ-> ĠType face . BOLD ĊĠĠĠ Ġ} ĊĠĠĠ ĠType face . create ( fontFamily , Ġstyle Int ) ĊĠ Ġ} Ċ } Ċ