package Ġcom . ib ash k imi . theme . activity Ċ Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . os . Build Ċ import Ġandroid . view . View Ċ import Ġandroidx . appcompat . app . AppCompat Delegate Ċ import Ġandroidx . fragment . app . Fragment Activity Ċ import Ġcom . ib ash k imi . theme . R Ċ import Ġcom . ib ash k imi . theme . theme . NavBar Color Ċ import Ġcom . ib ash k imi . theme . theme . Night Mode Ċ import Ġcom . ib ash k imi . theme . theme . Theme Ċ import Ġcom . ib ash k imi . theme . utils . Style Utils Ċ Ċ fun ĠFragment Activity . apply Night Mode ( night Mode : ĠNight Mode ) Ġ{ ĊĠĠĠ ĠAppCompat Delegate . setDefault Night Mode ( when Ġ( night Mode ) Ġ{ ĊĠĠĠĠĠĠĠ ĠNight Mode . DAY Ġ-> ĠAppCompat Delegate . MODE _ N IGHT _ NO ĊĠĠĠĠĠĠĠ ĠNight Mode . N IGHT Ġ-> ĠAppCompat Delegate . MODE _ N IGHT _ YES ĊĠĠĠĠĠĠĠ ĠNight Mode . DAY N IGHT Ġ-> ĠAppCompat Delegate . MODE _ N IGHT _ FOLLOW _ SYSTEM ĊĠĠĠ Ġ}) Ċ } Ċ Ċ fun ĠFragment Activity . apply Theme ( theme : ĠTheme ) Ġ= Ġset Theme ( theme . style ) Ċ Ċ fun ĠFragment Activity . apply NavBar Color ( nav Bar Color : ĠNav Bar Color ) Ġ{ ĊĠĠĠ Ġval Ġcolor Ġ= Ġwhen Ġ( nav Bar Color ) Ġ{ ĊĠĠĠĠĠĠĠ ĠNav Bar Color . SYSTEM Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremove Light NavigationBar () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle Utils . obtain Color ( this , Ġandroid . R . attr . navigation Bar Color , ĠColor . BLACK ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠNav Bar Color . THEME Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremove Light NavigationBar () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle Utils . obtain Color ( this , ĠR . attr . color Primary Dark , ĠColor . BLACK ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠNav Bar Color . BLACK Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremove Light NavigationBar () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠColor . BLACK ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠNav Bar Color . WHITE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! set Light NavigationBar ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ ĠColor . WHITE ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġwindow . navigation Bar Color Ġ= Ġcolor Ċ } Ċ Ċ fun ĠFragment Activity . apply NavBar Color ( color : ĠInt , Ġis Light Color : ĠBoolean Ġ= Ġfalse ) Ġ{ ĊĠĠĠ Ġif Ġ( is Light Color ) ĊĠĠĠĠĠĠĠ Ġset Light NavigationBar () ĊĠĠĠ Ġelse ĊĠĠĠĠĠĠĠ Ġremove Light NavigationBar () ĊĠĠĠ Ġwindow . navigation Bar Color Ġ= Ġcolor Ċ } Ċ Ċ fun ĠFragment Activity . set Light NavigationBar (): ĠBoolean Ġ{ ĊĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= Ġ 2 6 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwindow . decor View . system Ui Visibility Ġ= Ġwindow . decor View . system Ui Visibility Ġor ĠView . SYSTEM _ UI _ FLAG _ LIGHT _ NAV IG ATION _ BAR ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġfalse Ċ } Ċ Ċ fun ĠFragment Activity . remove Light NavigationBar () Ġ{ ĊĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= Ġ 2 6 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwindow . decor View . system Ui Visibility Ġ= Ġwindow . decor View . system Ui Visibility Ġand ĠView . SYSTEM _ UI _ FLAG _ LIGHT _ NAV IG ATION _ BAR . inv () ĊĠĠĠ Ġ} Ċ }