package Ġcom . ti ago hs . h qr . ui . adapters . com ics _ details Ċ Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . PopupMenu Ċ import Ġcom . ti ago hs . h qr . R Ċ import Ġcom . ti ago hs . h qr . helpers . utils . Date Utils Ċ import Ġcom . ti ago hs . h qr . helpers . utils . Image Utils Ċ import Ġcom . ti ago hs . h qr . helpers . utils . Screen Utils Ċ import Ġcom . ti ago hs . h qr . models . view _ models .* Ċ import Ġcom . ti ago hs . h qr . ui . adapters . config . Base Flex ible ViewHolder Ċ import Ġcom . ti ago hs . h qr . ui . views . activities . Reader Activity Ċ import Ġkotlinx . android . synt hetic . main . item _ com ic _ detail . view .* Ċ Ċ class ĠCom ic Details List Holder ( ĊĠĠĠĠĠĠĠ Ġval Ġview : ĠView , ĊĠĠĠĠĠĠĠ Ġval Ġadapter : ĠCom ic Details ListAdapter Ċ ): ĠBase Flex ible ViewHolder ( view , Ġadapter ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġview . more Btn . setOnClickListener Ġ{ Ġit . post Ġ{ Ġshow Pop Up Menu ( it ) Ġ} Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbind ( favorite Item : ĠCom ic Details ListItem ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcom ic Ġ= Ġfavorite Item . com ic ĊĠĠĠĠĠĠĠ Ġval Ġhistory Ġ= Ġfavorite Item . history ĊĊĠĠĠĠĠĠĠ Ġif Ġ( com ic . poster Path Ġ!= Ġnull Ġ&& Ġ! com ic . poster Path . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage Utils . load ( view . com ic Detail Image , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcom ic . poster Path , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . img _ placeholder , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . img _ placeholder , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġview . com ic Detail Title . text Ġ= Ġcom ic . name ĊĠĠĠĠĠĠĠ Ġview . com ic Detail Source . text Ġ= Ġview . context . getString ( R . string . source _ detail _ name , Ġfavorite Item . get Language (), Ġfavorite Item . getSource Name ()) ĊĊĠĠĠĠĠĠĠ Ġon Configure Publisher ( com ic . publisher ) ĊĠĠĠĠĠĠĠ Ġon Configure Status ( com ic . status ) ĊĠĠĠĠĠĠĠ Ġon Configure History ( history , Ġcom ic ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġon Configure Status ( status : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( view . com ic Detail Status Ġ!= Ġnull Ġ&& Ġ! status . isNull OrEmpty () Ġ&& Ġ! status . equals ( UNKNOWN )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail Status . text Ġ= ĠScreen Utils . get Com ic Status Text ( view . context , Ġstatus ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail Status . set BackgroundColor ( Screen Utils . generate Com ic Status Background ( view . context , Ġstatus )) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail Status . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġon Configure Publisher ( publisher : ĠList < Default Model View > ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( view . com ic Detail Publisher Ġ!= Ġnull Ġ&& Ġpublisher Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail Publisher . text Ġ= Ġpublisher . map Ġ{ Ġit . name Ġ}. join ToString (", Ġ") ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( view . com ic Detail Publisher Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail Publisher . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġon Configure History ( history : ĠCom ic History ViewModel ?, Ġcom ic : ĠCom ic ViewModel ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! adapter . show History ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail History Container . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( history Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . resume Detail Btn . text Ġ= Ġview . context . getString ( R . string . read ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail History Time . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail History Chapter . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail History Time . text Ġ= ĠDate Utils . form ate Date ( history . last Time Read !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . resume Detail Btn . text Ġ= Ġview . context . getString ( R . string . resume ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . com ic Detail History Chapter . text Ġ= Ġhistory . chapter ?. chapter Name ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġview . resume Detail Btn . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchapter ViewModel : ĠChapter ViewModel ? ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( history Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchapter ViewModel Ġ= Ġcom ic . chapter s ?. last () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchapter ViewModel Ġ= Ġhistory . chapter ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( chapter ViewModel Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . context . startActivity ( Reader Activity . new Intent ( view . context , Ġchapter ViewModel . chapter Path !! , Ġcom ic . path Link !! , Ġcom ic . source ?. id !! )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Pop Up Menu ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġadapter . getItem ( adapter Position ) Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġpopup Ġ= ĠPopup Menu ( view . context , Ġview ) ĊĊĠĠĠĠĠĠĠ Ġadapter . on Menu Create ( popup . menu Inflater , Ġpopup . menu ) ĊĠĠĠĠĠĠĠ Ġadapter . on Prepare Menu ( popup . menu , Ġadapter Position , Ġitem ) ĊĊĠĠĠĠĠĠĠ Ġpopup . setOn MenuItem ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . on Menu Click ( adapter Position , Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġpopup . show () ĊĠĠĠ Ġ} Ċ Ċ }