package Ġorg . metab rain z . mobile . presentation . features . dashboard Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Menu Ċ import Ġandroid . view . MenuItem Ċ import Ġandroid . view . View . GONE Ċ import Ġandroid . view . View . VISIBLE Ċ import Ġandroid . view . animation . Animation Utils Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . google . android . material . app bar . AppBar Layout Ċ import Ġcom . the fin est artist . fin est webview . Fin est WebView Ċ import Ġorg . metab rain z . mobile . R Ċ import Ġorg . metab rain z . mobile . databinding . Activity Dashboard Binding Ċ import Ġorg . metab rain z . mobile . presentation . Intent Factory Ċ import Ġorg . metab rain z . mobile . presentation . User Preferences . advanced Features Preference Ċ import Ġorg . metab rain z . mobile . presentation . features . about . About Activity Ċ import Ġorg . metab rain z . mobile . presentation . features . barcode . Barcode Activity Ċ import Ġorg . metab rain z . mobile . presentation . features . collection . Collection Activity Ċ import Ġorg . metab rain z . mobile . presentation . features . search . Search Activity Ċ import Ġorg . metab rain z . mobile . presentation . features . tag ger . Tag ger Activity Ċ Ċ class ĠDashboard Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbinding : ĠActivity Dashboard Binding ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbinding Ġ= ĠActivity Dashboard Binding . inflate ( layout Inflater ) ĊĊĠĠĠĠĠĠĠ ĠsetContentView ( binding . root ) ĊĊĠĠĠĠĠĠĠ Ġ// show ing Ġthe Ġtitle Ġonly Ġwhen Ġcollapsed ĊĠĠĠĠĠĠĠ Ġvar Ġis Show Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġvar Ġscroll Range Ġ= Ġ- 1 ĊĠĠĠĠĠĠĠ Ġbinding . app Bar Layout . add On Offset Changed Listener ( AppBar Layout . On Offset Changed Listener Ġ{ Ġbar Layout , Ġvertical Offset Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( scroll Range Ġ== Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscroll Range Ġ= Ġbar Layout ?. total Scroll Range !! ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( scroll Range Ġ+ Ġvertical Offset Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . col Toolbar Id . title Ġ= Ġ" Music Brain z " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Show Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( is Show ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . col Toolbar Id . title Ġ= Ġ" Ġ" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Show Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( binding . toolbar ) ĊĊĠĠĠĠĠĠĠ Ġ// navigation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Tag Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠT agger Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard About Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠAbout Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Search Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠSearch Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Collection Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠCollection Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Don ate Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠDon ate Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Scan Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , ĠBar code Activity :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Listen Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFin est WebView . Builder ( this ). show (" https :// listen brain z . org /"); ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Crit ique Id . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFin est WebView . Builder ( this ). show (" https :// crit ique brain z . org /"); ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ// card view Ġanimation ĊĠĠĠĠĠĠĠ Ġval Ġleft Item Animation Ġ= ĠAnimation Utils . load Animation ( this , ĠR . anim . left _ dashboard _ item _ animation ) ĊĠĠĠĠĠĠĠ Ġval Ġright Item Animation Ġ= ĠAnimation Utils . load Animation ( this , ĠR . anim . right _ dashboard _ item _ animation ) ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Tag Id . animation Ġ= Ġleft Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Search Id . animation Ġ= Ġright Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Scan Id . animation Ġ= Ġright Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Don ate Id . animation Ġ= Ġleft Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard About Id . animation Ġ= Ġright Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Collection Id . animation Ġ= Ġleft Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Crit ique Id . animation Ġ= Ġleft Item Animation ĊĠĠĠĠĠĠĠ Ġbinding . dashboard Listen Id . animation Ġ= Ġright Item Animation ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġif ( advanced Features Preference ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . advanced Features . visibility Ġ= ĠVIS IBLE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . advanced Features . visibility Ġ= ĠG ONE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġmenu Inflater . inflate ( R . menu . dash , Ġmenu ) ĊĠĠĠĠĠĠĠ Ġmenu ?. find Item ( R . id . menu _ open _ website )?. isVisible Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( item . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . menu _ login Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent Factory . get Login ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . menu _ preferences Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( Intent Factory . get Settings ( this )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . home Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Back Pressed () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }