/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġandroidx . compose . ui . platform Ċ Ċ import Ġandroidx . compose . runtime . static Ambient Of Ċ Ċ val ĠDesktop Platform Ambient Ġ= Ġstatic Ambient Of (:: identify Current ) Ċ Ċ /** Ċ Ġ* ĠIdent ify ĠOS Ġon Ġwhich Ġthe Ġapplication Ġis Ġcurrently Ġrunning . Ċ Ġ* Ċ Ġ* ĠIf Ġit Ġis Ġneeded Ġto Ġknow Ġthe Ġcurrent Ġplatform Ġin Ġ@ Composable Ġfunction , Ċ Ġ* Ġuse Ġ[ Desktop Platform Ambient ] Ġinstead Ġof Ġthis Ġfunction . Ċ Ġ* Ċ Ġ* Ġidentify Current () Ġshould Ġbe Ġused Ġprefer able Ġonly Ġin Ġinitialization Ġcode . Ċ Ġ*/ Ċ private Ġfun Ġidentify Current (): ĠDesktop Platform Ġ{ ĊĠĠĠ Ġval Ġname Ġ= ĠSystem . getProperty (" os . name ") ĊĠĠĠ Ġreturn Ġwhen Ġ{ ĊĠĠĠĠĠĠĠ Ġname . startsWith (" Linux ") Ġ-> ĠDesktop Platform . Linux ĊĠĠĠĠĠĠĠ Ġname . startsWith (" Win ") Ġ-> ĠDesktop Platform . Windows ĊĠĠĠĠĠĠĠ Ġname Ġ== Ġ" Mac ĠOS ĠX " Ġ-> ĠDesktop Platform . MacOS ĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠError (" Unsupported ĠOS Ġ$ name ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ enum Ġclass ĠDesktop Platform Ġ{ ĊĠĠĠ ĠLinux , ĊĠĠĠ ĠWindows , ĊĠĠĠ ĠMacOS Ċ }