/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 7 Ġst f alcon . com Ċ Ġ* Ċ Ġ* ĠĠĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* ĠĠĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠĠĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠĠĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* ĠĠĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠĠĠ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠĠĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* ĠĠĠ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . st f alcon . new _ u aro ads _ android . features . tracks Ċ Ċ import Ġandroid . content . Component Name Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Service Connection Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . os . IB inder Ċ import Ġandroid . support . v 7 . widget . Linear LayoutManager Ċ import Ġcom . st f alcon . mvp helper . M vp Activity Ċ import Ġcom . st f alcon . new _ u aro ads _ android . R Ċ import Ġcom . st f alcon . new _ u aro ads _ android . common . database . models . Track Realm Ċ import Ġcom . st f alcon . new _ u aro ads _ android . ext . hide View Ċ import Ġcom . st f alcon . new _ u aro ads _ android . ext . show View Ċ import Ġcom . st f alcon . new _ u aro ads _ android . features . tracks . adapter . Tracks ListAdapter Ċ import Ġcom . st f alcon . new _ u aro ads _ android . features . tracks . service . Tracks Upload Service Ċ import Ġio . realm . Realm Results Ċ import Ġkotlinx . android . synt hetic . main . activity _ tracks .* Ċ import Ġorg . jetbrains . ank o . intent For Ċ import Ġorg . jetbrains . ank o . toast Ċ Ċ /* Ċ Ġ* ĠCreated Ġby ĠAnt on ĠBe v za Ġon Ġ 4 / 2 6 / 1 7 . Ċ Ġ*/ Ċ class ĠTrack s Activity Ġ: ĠM vp Activity < Tracks Contract . Presenter , ĠTrack s Contract . View >(), ĊĠĠĠĠĠĠĠ ĠTrack s Contract . View , ĠService Connection Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġget Intent ( context : ĠContext ) Ġ= Ġcontext . intent For < Tracks Activity >() ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġvar Ġis Bound : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Res Id () Ġ= ĠR . layout . activity _ tracks ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġinit Toolbar () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĠĠĠĠĠĠĠ Ġis Bound Ġ= Ġbind Service ( intent For < Tracks Upload Service >(), Ġthis , ĠContext . BIND _ AUTO _ CREATE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Stop () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Stop () ĊĠĠĠĠĠĠĠ Ġif Ġ( is Bound ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġun bind Service ( this ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Toolbar () Ġ{ ĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( toolbar ) ĊĠĠĠĠĠĠĠ Ġsupport ActionBar ?. set Display Home As Up Enabled ( true ) ĊĠĠĠĠĠĠĠ Ġtoolbar . set Navigation OnClickListener Ġ{ Ġon Back Pressed () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Track List ( tracks : ĠRealm Results < Track Realm >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= ĠTrack s ListAdapter ( this , Ġtracks ) ĊĠĠĠĠĠĠĠ Ġif Ġ( tracks . isEmpty ()) Ġempty State . show View () Ġelse Ġempty State . hide View () ĊĠĠĠĠĠĠĠ Ġadapter . on Send Button Click Ġ= Ġ{ Ġpresenter ?. on Send Track Clicked ( it ) Ġ} ĊĠĠĠĠĠĠĠ Ġadapter . onDelete Button Click Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter ?. onDelete Track Clicked ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( adapter . item Count Ġ== Ġ 0 ) Ġempty State . show View () Ġelse Ġempty State . hide View () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtracks RecyclerView . adapter Ġ= Ġadapter ĊĠĠĠĠĠĠĠ Ġtracks RecyclerView . layout Manager Ġ= ĠLinearLayoutManager ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Connection Error () Ġ{ ĊĠĠĠĠĠĠĠ Ġtoast ( R . string . error _ connection ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Service Connected ( name : ĠComponent Name ?, Ġservice : ĠI Binder ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġpresenter ?. on Service Connected (( service Ġas ĠTrack s Upload Service . Local Binder ). service ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Service Disconnected ( name : ĠComponent Name ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġpresenter ?. on Service Disconnected () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstart Up loading Service () Ġ{ ĊĠĠĠĠĠĠĠ Ġstart Service ( intent For < Tracks Upload Service >()) ĊĠĠĠ Ġ} Ċ }