package Ġcom . example . clone _ da um . ui . main . navigation Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . view . View Ċ import Ġandroidx . databinding . Observable Boolean Ċ import Ġandroidx . databinding . Observable Field Ċ import Ġandroidx . databinding . Observable Float Ċ import Ġandroidx . databinding . Observable Int Ċ import Ġb rig it te .* Ċ import Ġb rig it te . arch . Single Live Event Ċ import Ġb rig it te . view model . Command Event ViewModel Ċ import Ġcom . example . clone _ da um . R Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġ< a Ġhref =" mailto : auc d 2 9 @ gmail . com "> Bur ke ĠCh oi </ a > Ġon Ġ 2 0 1 8 . Ġ 1 2 . Ġ 2 0 . Ġ< p /> Ċ Ġ*/ Ċ Ċ class ĠNavigation ViewModel Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġapp : ĠApplication Ċ ) Ġ: ĠCommand Event ViewModel ( app ), ĠID ialog Aware Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠLoggerFactory . getLogger ( Navigation ViewModel :: class . java ) ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠURL _ NOTIFICATION ĠĠ Ġ= Ġ" https :// m . da um . net / channel / notice _ an " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ SETTING ĠĠĠĠĠĠĠ Ġ= Ġ" setting " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ MAIL ĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ" mail " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ CA FE ĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ" ca fe " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ ALARM ĠĠĠĠĠĠĠĠĠ Ġ= Ġ" alarm " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ LOGIN ĠĠĠĠĠĠĠĠĠ Ġ= Ġ" login " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ BROWSER ĠĠĠĠĠĠĠ Ġ= Ġ" browser " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ URL _ HISTORY ĠĠĠ Ġ= Ġ" url - history " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ EDIT _ HOME _ MENU Ġ= Ġ" edit - home - menu " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ TEXT _ SIZE ĠĠĠĠĠ Ġ= Ġ" text - size " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠCMD _ BOOK MARK ĠĠĠĠĠĠ Ġ= Ġ" bookmark " ĊĊĠĠĠĠĠĠĠ Ġconst Ġval ĠIT N _ FA V _ DESC _ SHOW Ġ Ġ= Ġ" favorites - desc - show " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠIT N _ FA V _ DESC _ HIDE Ġ Ġ= Ġ" favorites - desc - hide " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġdialog Event Ġ= ĠSingle Live Event < Dialog Param >() ĊĊĠĠĠ Ġval Ġbackground Alpha Ġ Ġ= ĠObservable Float ( 1 f ) ĊĠĠĠ Ġval Ġview Favorite Desc Ġ= ĠObservable Int ( View . GONE ) ĊĠĠĠ Ġval Ġcircle Crop ĠĠĠĠĠĠ Ġ= ĠObservable Boolean ( true ) ĊĠĠĠ Ġval Ġdefault User Photo Ġ= ĠObservable Field (" drawable :// ic _ mood _ black _ 2 4 dp ") ĊĠĠĠ Ġval Ġrequire Login ĠĠĠĠ Ġ= ĠObservable Field ( this . app . string ( R . string . nav i _ require _ login )) ĊĊĠĠĠ Ġ// //////////////////////////////////////////////////////////////////////////////// // ĊĠĠĠ Ġ// ĊĠĠĠ Ġ// ĠCOMMAND ĊĠĠĠ Ġ// ĊĠĠĠ Ġ// //////////////////////////////////////////////////////////////////////////////// // ĊĊĠĠĠ Ġoverride Ġfun Ġcommand ( cmd : ĠString , Ġdata : ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( cmd ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIT N _ FA V _ DESC _ SHOW Ġ-> Ġview Favorite Desc . visible () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIT N _ FA V _ DESC _ HIDE Ġ-> Ġview Favorite Desc . g one () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġsuper . command ( cmd , Ġdata ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }