package Ġcom . ark iv an ov . mv ik otlin . time travel . client . desktop Ċ Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . Disposable Effect Ċ import Ġandroidx . compose . runtime . State Ċ import Ġandroidx . compose . runtime . mutable State Of Ċ import Ġandroidx . compose . runtime . remember Ċ import Ġandroidx . compose . ui . unit . Int Size Ċ import Ġcom . bad oo . reak t ive . observable . subscribe Ċ import Ġcom . bad oo . reak t ive . subject . behavior . Behavior Observable Ċ import Ġjava . awt . Dimension Ċ import Ġjava . awt . FileDialog Ċ import Ġjava . awt . Toolkit Ċ import Ġjava . io . File Ċ import Ġjavax . swing . Swing Utilities Ċ Ċ fun Ġ< T > Ġinvoke On A wt Sync ( block : Ġ() Ġ-> ĠT ): ĠT Ġ{ ĊĠĠĠ Ġvar Ġresult : ĠT ? Ġ= Ġnull ĊĠĠĠ ĠSw ing Utilities . invoke And Wait Ġ{ Ġresult Ġ= Ġblock () Ġ} ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġreturn Ġresult Ġas ĠT Ċ } Ċ Ċ fun Ġget Preferred Window Size ( desired Width : ĠInt , Ġdesired Height : ĠInt ): ĠInt Size Ġ{ ĊĠĠĠ Ġval Ġscreen Size : ĠDimension Ġ= ĠToolkit . getDefault Toolkit (). screen Size ĊĠĠĠ Ġval Ġpreferred Width : ĠInt Ġ= Ġ( screen Size . width Ġ* Ġ 0 . 8 f ). toInt () ĊĠĠĠ Ġval Ġpreferred Height : ĠInt Ġ= Ġ( screen Size . height Ġ* Ġ 0 . 8 f ). toInt () ĊĠĠĠ Ġval Ġwidth : ĠInt Ġ= Ġif Ġ( desired Width Ġ< Ġpreferred Width ) Ġdesired Width Ġelse Ġpreferred Width ĊĠĠĠ Ġval Ġheight : ĠInt Ġ= Ġif Ġ( desired Height Ġ< Ġpreferred Height ) Ġdesired Height Ġelse Ġpreferred Height ĊĊĠĠĠ Ġreturn ĠInt Size ( width , Ġheight ) Ċ } Ċ Ċ @ Composable Ċ fun Ġ< T > ĠBehavior Observable < T >. subscribe As State (): ĠState < T > Ġ{ ĊĠĠĠ Ġval Ġstate Ġ= Ġremember ( this ) Ġ{ Ġmutable State Of ( value ) Ġ} ĊĊĠĠĠ ĠDis posable Effect ( this ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdis posable Ġ= Ġsubscribe Ġ{ Ġstate . value Ġ= Ġit Ġ} ĊĠĠĠĠĠĠĠ Ġon Dispose ( dis posable :: dispose ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġstate Ċ } Ċ Ċ val ĠFile Dialog . selected File : ĠFile ? ĊĠĠĠ Ġget () Ġ= Ġif Ġ(( directory Ġ!= Ġnull ) Ġ&& Ġ( file Ġ!= Ġnull )) ĠFile ( directory , Ġfile ) Ġelse Ġnull Ċ