package Ġcom . s ui han 7 4 . utilities . extensions Ċ Ċ import Ġandroidx . lifecycle . Observer Ċ Ċ /** Ċ Ġ* Ġ èĩª èº« ãĤĴ ãĤ³ãĥ³ ãĥĨ ãĤŃ ãĤ¹ãĥĪ ãĤª ãĥĸãĤ¸ãĤ§ãĤ¯ãĥĪ ãģ¨ãģĹãģ¦ æ¸ ¡ ãģĹãģ¦ ` on Changed ()` ãĤĴ åĳ¼ ãģ ¶ ` Observer < T >` ãĤĴä½ľæĪĲ ãģĻãĤĭ Ċ Ġ* Ċ Ġ* ĠãĤ ª ãĥĸ ãĤ¶ ãĥ¼ãĥĲ ãģ® åĨħ åģ ´ ãģ§ èĩª èº« ãĤĴ éĢļçŁ¥ å¯¾è±¡ ãģĭãĤī åīĬéĻ¤ ãģĻãĤĭ çĶ¨ éĢ Ķ ãģ§ ãģ® ä½¿çĶ¨ ãĤĴ æĥ³ å®ļ ãģĹãģ¦ãģĦãĤĭ Ċ Ġ*/ Ċ fun Ġ< T > Ġscoped Observer ( on Changed : ĠObserver < T >. ( T )-> Unit ) Ġ: ĠObserver < T > Ġ{ ĊĠĠĠ Ġlateinit Ġvar Ġobserver : ĠObserver < T > ĊĠĠĠ Ġobserver Ġ= ĠObserver < T > Ġ{ ĊĠĠĠĠĠĠĠ ĠonChanged ( observer , Ġit ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġobserver Ċ } Ċ Ċ /** Ċ Ġ* Ġ åĪĿ åĽŀ ãģ® åĳ¼ ãģ³ åĩº ãģĹ ãĤĴ çĦ¡ è¦ĸ ãģĻãĤĭ ` Observer ` Ċ Ġ*/ Ċ fun Ġ< T > Ġobserver For Only Updates ( on Changed : Ġ( T )-> Unit ) Ġ: ĠObserver < T > Ġ{ ĊĠĠĠ Ġvar Ġinitialized Ġ= Ġfalse ĊĠĠĠ Ġval Ġbody Ġ: Ġ( T )-> Unit Ġ= Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( initialized ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonChanged ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġinitialized Ġ= Ġtrue ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn ĠObserver ( body ) Ċ } Ċ