/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 2 1 Ġ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 Ġcom . android . tools . idea . layout inspector . metrics . statistics Ċ Ċ import Ġcom . android . tools . idea . layout inspector . model . Compose View Node Ċ import Ġcom . android . tools . idea . layout inspector . model . View Node Ċ import Ġcom . google . wire less . android . sdk . stats . Dynamic Layout Inspector Compose Ċ Ċ /** Ċ Ġ* ĠAcc umulator Ġof Ġlive Ġmode Ġstatistics Ġfor Ġcompose Ġrelated Ġevents Ċ Ġ*/ Ċ class ĠCompose Statistics Ġ{ ĊĠ Ġ/** ĊĠĠ Ġ* ĠTrue Ġif Ġthe Ġreflection Ġlibrary Ġwas Ġavailable Ġfor Ġa Ġcompose Ġapplication ĊĠĠ Ġ*/ ĊĠ Ġvar Ġreflection Library Available Ġ= Ġtrue ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠHow Ġmany Ġclicks Ġon Ġa ĠCompose Node Ġfrom Ġthe Ġimage Ġdid Ġthe Ġuser Ġperform ĊĠĠ Ġ*/ ĊĠ Ġprivate Ġvar Ġimage Click s Ġ= Ġ 0 ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠHow Ġmany Ġclicks Ġon Ġa ĠCompose Node Ġfrom Ġthe Ġcomponent Ġtree Ġdid Ġthe Ġuser Ġperform ĊĠĠ Ġ*/ ĊĠ Ġprivate Ġvar Ġcomponent Tree Click s Ġ= Ġ 0 ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠHow Ġmany Ġclicks Ġon Ġa Ġgoto Ġsource Ġlink Ġfrom Ġa Ġproperty Ġvalue ĊĠĠ Ġ*/ ĊĠ Ġprivate Ġvar Ġgo To Source From PropertyValue Click s Ġ= Ġ 0 ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠStart Ġa Ġnew Ġsession Ġby Ġreset ting Ġall Ġcounters . ĊĠĠ Ġ*/ ĊĠ Ġfun Ġstart () Ġ{ ĊĠĠĠ Ġreflection Library Available Ġ= Ġtrue ĊĠĠĠ Ġimage Click s Ġ= Ġ 0 ĊĠĠĠ Ġcomponent Tree Click s Ġ= Ġ 0 ĊĠĠĠ Ġgo To Source From PropertyValue Click s Ġ= Ġ 0 ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠSave Ġthe Ġsession Ġdata Ġrecorded Ġsince Ġ[ start ]. ĊĠĠ Ġ*/ ĊĠ Ġfun Ġsave ( data : ĠDynamic Layout Inspector Compose . Builder ) Ġ{ ĊĠĠĠ Ġdata . kotlin Reflection Available Ġ= Ġreflection Library Available ĊĠĠĠ Ġdata . image Click s Ġ= Ġimage Click s ĊĠĠĠ Ġdata . component Tree Click s Ġ= Ġcomponent Tree Click s ĊĠĠĠ Ġdata . goTo Source From PropertyValue Click s Ġ= Ġgo To Source From PropertyValue Click s ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLog Ġthat Ġa Ġcomponent Ġwas Ġselected Ġfrom Ġthe Ġimage . ĊĠĠ Ġ*/ ĊĠ Ġfun Ġselection Made From Image ( view : ĠView Node ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġis ĠCompose View Node ) Ġ{ ĊĠĠĠĠĠ Ġimage Click s ++ ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLog Ġthat Ġa Ġcomponent Ġwas Ġselected Ġfrom Ġthe Ġcomponent Ġtree . ĊĠĠ Ġ*/ ĊĠ Ġfun Ġselection Made From Component Tree ( view : ĠView Node ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġis ĠCompose View Node ) Ġ{ ĊĠĠĠĠĠ Ġcomponent Tree Click s ++ ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠLog Ġthat Ġa Ġproperty Ġvalue Ġlink Ġwas Ġused Ġto Ġnavigate Ġto Ġsource Ġfor Ġa Ġcompose Ġnode . ĊĠĠ Ġ*/ ĊĠ Ġfun Ġgoto Source From PropertyValue ( view : ĠView Node ?) Ġ{ ĊĠĠĠ Ġif Ġ( view Ġis ĠCompose View Node ) Ġ{ ĊĠĠĠĠĠ Ġgo To Source From PropertyValue Click s ++ ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ