/* Ċ Ġ* ĠMIT ĠLicense Ċ Ġ* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 1 ĠAnd re - max Ċ Ġ* Ċ Ġ* Ġ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 . andre _ max . tik tok clone . presentation . ui . upload . select _ media Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroidx . databinding . Data Binding Util Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . view Models Ċ import Ġandroidx . navigation . fragment . find Nav Controller Ċ import Ġandroidx . view pager 2 . adapter . Fragment State Adapter Ċ import Ġcom . andre _ max . tik tok clone . R Ċ import Ġcom . andre _ max . tik tok clone . databinding . Fragment Select Media Binding Ċ import Ġcom . andre _ max . tik tok clone . presentation . ui . upload . select _ media . tab . Each Media Tab Ċ import Ġcom . andre _ max . tik tok clone . utils . Bottom Nav View Utils Ċ import Ġcom . andre _ max . tik tok clone . utils . System Bar Colors Ċ import Ġcom . andre _ max . tik tok clone . utils . View Utils Ċ import Ġcom . andre _ max . tik tok clone . utils . architecture . Base Fragment Ċ import Ġcom . andre _ max . tik tok clone . utils . architecture . Base ViewModel Ċ import Ġcom . google . android . material . tabs . Tab Layout Mediator Ċ import Ġtim ber . log . Tim ber Ċ Ċ class ĠSelect Media Fragment Ġ: ĠBase Fragment ( R . layout . fragment _ select _ media ) Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠFragment Select Media Binding ĊĊĠĠĠ Ġoverride Ġval ĠviewModel Ġby Ġview Models < Select Media ViewModel >() ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġval Ġtab Configuration Strategy Ġ= ĠTab Layout Mediator . Tab Configuration Strategy Ġ{ Ġtab , Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . d (" tab Ġis Ġ$ tab Ġand Ġtab Ġposition Ġis Ġ$ position ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtab . text Ġ= ĠgetString ( if Ġ( position Ġ== Ġ 0 ) ĠR . string . images Ġelse ĠR . string . videos ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠTab Layout Mediator ( binding . tab Layout , Ġbinding . view Pager , Ġtab Configuration Strategy ). attach () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠsetUp Layout () Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠData Binding Util . bind ( require View ()) !! ĊĠĠĠĠĠĠĠ ĠviewModel . init ViewModel ( require Context ()) ĊĊĠĠĠĠĠĠĠ Ġbinding . view Pager . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= ĠMedia Fragment State Adapter () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠsetUp Click Listeners () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . setUp Click Listeners () ĊĠĠĠĠĠĠĠ Ġbinding . close Btn . setOnClickListener Ġ{ Ġfind Nav Controller (). pop Back Stack () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ ĠBottom Nav View Utils . hide Bottom NavBar ( activity ) ĊĠĠĠĠĠĠĠ ĠView Utils . change System Bars ( activity , ĠSystem Bar Colors . WHITE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠMedia Fragment State Adapter Ġ: ĠFragment State Adapter ( this ) Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġ 2 ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate Fragment ( position : ĠInt ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEach Media Tab . getInstance ( position , ĠviewModel . local Media Repo ) ĊĠĠĠ Ġ} Ċ Ċ }