@ file : Suppress (" unused ") Ċ Ċ package Ġcom . wei wei . extensions . bundler Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Bundle Ċ Ċ /** Ċ Ġ* Ġ@ author Ġwe i wei Ċ Ġ* Ġ@ date Ġ 2 0 2 1 . 0 5 . 0 6 Ċ Ġ*/ Ċ Ċ /** Ġcreate Ġa Ġnew Ġinstance Ġof Ġthe Ġ[ Bund ler ] Ġusing Ġkotlin Ġd sl . Ġ*/ Ċ @ Jvm Synt hetic Ċ @ Inline Bundle Dsl Ċ inline Ġfun Ġbund ler ( cross inline Ġblock : ĠBund ler . () Ġ-> ĠUnit ) Ġ= ĠBund ler ( Intent ()). apply ( block ) Ċ Ċ /** ĠBund ler Ġis Ġa Ġwrapper Ġclass Ġof Ġthe Ġ[ Intent ] Ġfor Ġputting Ġintent Ġdata Ġeleg ant ly . Ġ*/ Ċ inline Ġclass ĠBund ler ( val Ġintent : ĠIntent Ġ= ĠIntent ()) Ġ{ ĊĊĠ Ġ/** ĠAdd Ġa Ġnew Ġcategory Ġto Ġthe Ġintent . Ġ*/ ĊĠ Ġfun Ġadd Category ( category : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . add Category ( category ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠRemove Ġa Ġcategory Ġfrom Ġan Ġintent . Ġ*/ ĊĠ Ġfun Ġremove Category ( category : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . remove Category ( category ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠAdd Ġadditional Ġflags Ġto Ġthe Ġintent Ġ( or Ġwith Ġexisting Ġflags Ġvalue ). Ġ*/ ĊĠ Ġfun Ġadd Flags ( flags : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . add Flags ( flags ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠCopy Ġthe Ġcontents Ġof Ġother Ġin Ġto Ġthis Ġobject , Ġbut Ġonly Ġwhere Ġfields Ġare Ġnot Ġdefined Ġby Ġthis Ġobject . Ġ*/ ĊĠ Ġfun Ġfill In ( other : ĠIntent , Ġflags : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . fill In ( other , Ġflags ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠDetermine Ġif Ġtwo Ġintent s Ġare Ġthe Ġsame Ġfor Ġthe Ġpurposes Ġof Ġintent Ġresolution Ġ( filtering ). Ġ*/ ĊĠ Ġfun Ġfilter Equals ( other : ĠIntent ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . filter Equals ( other ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠComp let ely Ġreplace Ġthe Ġextras Ġin Ġthe ĠIntent Ġwith Ġthe Ġextras Ġin Ġthe Ġgiven ĠIntent . Ġ*/ ĊĠ Ġfun Ġreplace Extras ( src : ĠIntent ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . replace Extras ( src ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠComp let ely Ġreplace Ġthe Ġextras Ġin Ġthe ĠIntent Ġwith Ġthe Ġgiven ĠBundle Ġof Ġextras . Ġ*/ ĊĠ Ġfun Ġreplace Extras ( extras : ĠBundle ?) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . replace Extras ( extras ) ĊĠ Ġ} ĊĊĠ Ġ/** ĠSet Ġthe Ġgeneral Ġaction Ġto Ġbe Ġperformed . Ġ*/ ĊĠ Ġfun Ġset Action ( action : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . action Ġ= Ġaction ĊĠ Ġ} ĊĊĠ Ġ/** ĠSet Ġthe Ġdata Ġthis Ġintent Ġis Ġoperating Ġon . Ġ*/ ĊĠ Ġfun ĠsetData ( data : ĠUri ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . data Ġ= Ġdata ĊĠ Ġ} ĊĊĠ Ġ/** ĠSet Ġspecial Ġflags Ġcontrolling Ġhow Ġthis Ġintent Ġis Ġhandled . Ġ*/ ĊĠ Ġfun Ġset Flags ( flags : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . flags Ġ= Ġflags ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLaunch Ġa Ġnew Ġactivity Ġwith Ġno Ġoptions Ġspecified . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġcontext ĠA Ġcontext Ġfor Ġlaunch ing Ġan Ġactivity . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ throws Ġandroid . content . Activity NotFoundException ĊĠĠ Ġ*/ ĊĠ Ġfun ĠstartActivity ( context : ĠContext ) Ġ{ ĊĠĠĠ Ġcontext . startActivity ( intent ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLaunch Ġa Ġnew Ġactivity Ġwith Ġoptions . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġcontext ĠA Ġcontext Ġfor Ġlaunch ing Ġan Ġactivity . ĊĠĠ Ġ* Ġ@ param Ġoptions ĠAdditional Ġoptions Ġfor Ġhow Ġthe ĠActivity Ġshould Ġbe Ġstarted . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ throws Ġandroid . content . Activity NotFoundException ĊĠĠ Ġ*/ ĊĠ Ġfun ĠstartActivity ( context : ĠContext , Ġoptions : ĠBundle ) Ġ{ ĊĠĠĠ Ġcontext . startActivity ( intent , Ġoptions ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLaunch Ġan Ġactivity Ġfor Ġwhich Ġyou Ġwould Ġlike Ġa Ġresult Ġwhen Ġit Ġfinished . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġactivity ĠAn Ġactivity Ġfor Ġreceiving Ġthe Ġresult . ĊĠĠ Ġ* Ġ@ param Ġrequest Code ĠIf Ġ>= Ġ 0 , Ġthis Ġcode Ġwill Ġbe Ġreturned Ġin ĊĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Activity Result () Ġwhen Ġthe Ġactivity Ġexits . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ throws Ġandroid . content . Activity NotFoundException ĊĠĠ Ġ*/ ĊĠ Ġfun ĠstartActivity For Result ( activity : ĠActivity , Ġrequest Code : ĠInt ) Ġ{ ĊĠĠĠ Ġactivity . startActivity For Result ( intent , Ġrequest Code ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLaunch Ġan Ġactivity Ġfor Ġwhich Ġyou Ġwould Ġlike Ġa Ġresult Ġwhen Ġit Ġfinished . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġactivity ĠAn Ġactivity Ġfor Ġreceiving Ġthe Ġresult . ĊĠĠ Ġ* Ġ@ param Ġrequest Code ĠIf Ġ>= Ġ 0 , Ġthis Ġcode Ġwill Ġbe Ġreturned Ġin ĊĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Activity Result () Ġwhen Ġthe Ġactivity Ġexits . ĊĠĠ Ġ* Ġ@ param Ġoptions ĠAdditional Ġoptions Ġfor Ġhow Ġthe ĠActivity Ġshould Ġbe Ġstarted . ĊĠĠ Ġ* ĠSee Ġ{@ link Ġandroid . content . Context # startActivity ( Intent , ĠBundle )} ĊĠĠ Ġ* ĠContext . startActivity ( Intent , ĠBundle )} Ġfor Ġmore Ġdetails . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ throws Ġandroid . content . Activity NotFoundException ĊĠĠ Ġ*/ ĊĊĠ Ġfun ĠstartActivity For Result ( activity : ĠActivity , Ġrequest Code : ĠInt , Ġoptions : ĠBundle ) Ġ{ ĊĠĠĠ Ġactivity . startActivity For Result ( intent , Ġrequest Code , Ġoptions ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠA Ġspecial Ġvariation Ġto Ġlaunch Ġan Ġactivity Ġonly Ġif Ġa Ġnew Ġactivity Ġinstance Ġis Ġneeded Ġto Ġhandle Ġthe Ġgiven ĠIntent . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġactivity ĠAn Ġactivity . ĊĠĠ Ġ* Ġ@ param Ġrequest Code ĠIf Ġ>= Ġ 0 , Ġthis Ġcode Ġwill Ġbe Ġreturned Ġin ĊĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Activity Result () Ġwhen Ġthe Ġactivity Ġexits . ĊĠĠ Ġ*/ ĊĠ Ġfun ĠstartActivity IfNeeded ( activity : ĠActivity , Ġrequest Code : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġactivity . startActivity IfNeeded ( intent , Ġrequest Code ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠSpecial Ġversion Ġof Ġstarting Ġan Ġactivity , Ġfor Ġuse Ġwhen Ġyou Ġare Ġreplacing Ġother Ġactivity Ġcomponents . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġactivity ĠAn Ġactivity . ĊĠĠ Ġ*/ ĊĠ Ġfun Ġstart Next Matching Activity ( activity : ĠActivity ): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġactivity . start Next Matching Activity ( intent ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠCreates Ġa Ġnew Ġbundle Ġand Ġput Ġit Ġinto Ġthe Ġ[ intent ] Ġwith Ġthe Ġgiven Ġkey / value Ġpairs Ġas Ġelements . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġpairs Ġkey / value Ġpairs . ĊĠĠ Ġ*/ ĊĠ Ġ@ Jvm Synt hetic ĊĠ Ġ@ Inline Bundle Dsl ĊĠ Ġfun Ġbundle Of ( var arg Ġpairs : ĠPair < String , ĠAny ?> ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . put Extras ( com . wei wei . extensions . bundler . bundle Of (* pairs )) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠInser ts Ġa Ġnew Ġextra Ġdata Ġwith Ġthe Ġgiven Ġkey / value Ġpairs Ġas Ġelements . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġpair ĠA Ġkey / value Ġpair . Ġ( key Ġto Ġvalue ) ĠA Ġvalue Ġthat Ġis Ġsupported Ġtype Ġof Ġ[ Bundle ]. ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ* Ġput Extra ( key Ġto Ġvalue ) ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ*/ ĊĠ Ġ@ Inline Bundle Dsl ĊĠ Ġfun Ġput Extra ( pair : ĠPair < String , ĠAny ?> ) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġbundle Of ( pair ) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠInser ts Ġa Ġnew Ġextra Ġdata Ġwith Ġthe Ġgiven Ġkey / value Ġpair Ġas Ġan Ġelement . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ param Ġkey ĠA Ġkey ĠString ĊĠĠ Ġ* Ġ@ param Ġvalue ĠA Ġvalue Ġthat Ġis Ġsupported Ġtype Ġof Ġ[ Bundle ]. ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ throws ĠIllegalArgumentException ĠWhen Ġa Ġvalue Ġis Ġnot Ġa Ġsupported Ġtype Ġof Ġ[ Bundle ]. ĊĠĠ Ġ*/ ĊĠ Ġ@ Inline Bundle Dsl ĊĠ Ġfun Ġput Extra ( key : ĠString , Ġvalue : ĠAny ?) Ġ= Ġapply Ġ{ ĊĠĠĠ Ġintent . put Extras ( com . wei wei . extensions . bundler . bundle Of ( key Ġto Ġvalue )) ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠInser ts Ġa Ġkey / value Ġpair Ġas Ġan Ġextra Ġelement . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ* Ġkey Ġeq Ġvalue ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ*/ ĊĠ Ġin fix Ġfun ĠString . eq ( value : ĠAny ?) Ġ= Ġintent . put Extras ( ĊĠĠĠ Ġcom . wei wei . extensions . bundler . bundle Of ( this Ġto Ġvalue ) ĊĠ Ġ) ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠInser ts Ġa Ġkey / value Ġpair Ġas Ġan Ġextra Ġelement . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ* Ġ+ ( key Ġto Ġvalue ) ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ*/ ĊĠ Ġoperator Ġfun ĠPair < String , ĠAny ?> . unary Plus () Ġ= Ġintent . put Extras ( ĊĠĠĠ Ġcom . wei wei . extensions . bundler . bundle Of ( this ) ĊĠ Ġ) ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠRemoves Ġa Ġprevious Ġextra . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ* Ġ- key ĊĠĠ Ġ* Ġ``` ĊĠĠ Ġ**/ ĊĠ Ġoperator Ġfun ĠString . unary Minus () Ġ= Ġintent . remove Extra ( this ) Ċ } Ċ