package Ġdesktop Ċ Ċ import Ġkotlinx . coroutines . Global Scope Ċ import Ġkotlinx . coroutines . launch Ċ import Ġstop Server Ċ import Ġt orn ad of x . App Ċ import Ġt orn ad of x . View Ċ import Ġt orn ad of x . webview Ċ Ċ /* Ċ Ġ* ĠInitial Ġdimensions Ġof Ġthe Ġ' application ' Ġwindow Ġwe Ġspawn Ġto Ġcontain Ġthe Ġweb view . Ċ Ġ*/ Ċ private Ġconst Ġval ĠP REF _ WIDTH Ġ= Ġ 1 2 0 0 . 0 Ċ private Ġconst Ġval ĠP REF _ HEIGHT Ġ= Ġ 1 0 0 0 . 0 Ċ Ċ /** Ċ Ġ* ĠInstead Ġof Ġmaintaining Ġcode Ġfor Ġthree Ġseparate Ġdesktop Ġapplications Ġ( OSX , ĠLinux , ĠWindows ), Ġwe Ġtake Ġthe Ġexisting Ċ Ġ* ĠKotlin JS Ġfront Ġend , Ġand Ġuse Ġthe ĠT ornado FX Ġlibrary Ġ`( https :// t orn ad of x . io /) ` Ġto Ġwrap Ġit Ġin Ġa ĠChromium Ġpowered Ġweb view . Ċ Ġ* ĠThis Ġch romium Ġapp Ġthen Ġcommunic ates Ġwith Ġa Ġlocally Ġhosted Ġinstance Ġof Ġthe ĠK tor Ġbackend , Ġgiving Ġthe Ġ' ill usion ' Ġof Ġa Ċ Ġ* Ġlocal Ġdesktop Ġapplication . Ċ Ġ* Ċ Ġ* ĠTo Ġuse ĠT ornado FX , Ġour Ġdesktop . Cli App Ġmust Ġextend Ġthe ĠApp Ġclass Ġin ĠT ornado Fx . Ċ Ġ*/ Ċ class ĠCli App Ġ: ĠApp ( Application View :: class ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠOn Ġclose , Ġwe Ġneed Ġto Ġshutdown Ġthe ĠK tor Ġbackend Ġserver Ġas Ġwell . ĠWe Ġdo Ġthis Ġby Ġoverriding Ġthe Ġstop Ġmethod , Ġthen ĊĠĠĠĠ Ġ* Ġcalling Ġthe Ġ` stop Server ()` Ġwe Ġdefined . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġstop () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . stop () ĊĠĠĠĠĠĠĠ Ġstop Server () ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠOur Ġmain Ġdesktop . Application View Ġclass Ġcreates Ġa ĠwebView Ġobject Ġand Ġloads Ġthe Ġaddress Ġof Ġthe Ġserver . Ċ Ġ*/ Ċ class ĠApplication View Ġ: ĠView () Ġ{ ĊĠĠĠ Ġoverride Ġval Ġroot Ġ= Ġweb view () ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( root ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Pref Size ( PRE F _ WIDTH , ĠP REF _ HEIGHT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠTODO Ġfix Ġthis Ġso Ġit 's Ġnot Ġhardcoded ĊĠĠĠĠĠĠĠĠĠĠĠ Ġengine . load (" http :// localhost : 8 0 8 1 /") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠMethod Ġto Ġlaunch Ġdesktop Ġapplication Ġwithin Ġit 's Ġown Ġcoroutine . Ċ Ġ*/ Ċ fun Ġlaunch Local App () Ġ{ ĊĠĠĠ ĠGlobal Scope . launch Ġ{ ĊĠĠĠĠĠĠĠ Ġt orn ad of x . launch < Cli App >() ĊĠĠĠ Ġ} Ċ }