/* Ċ Ġ* ĠCopyright Ġ 2 0 1 6 ĠO range Ċ Ġ* Ċ Ġ* Ġ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 . Ċ Ġ*/ Ċ /* ĠO range ĠTrust ĠBadge Ġlibrary Ċ Ġ* Ċ Ġ* ĠModule Ġname : Ġcom . orange . ess entials : ot b Ċ Ġ* ĠVersion : ĠĠĠĠĠ 1 . 0 Ċ Ġ* ĠCreated : ĠĠĠĠĠ 2 0 1 6 - 0 3 - 1 5 Ġby ĠA uro re ĠPen ault , ĠV in cent ĠBo esch , Ġand ĠG iov ann i ĠB att ista ĠAcc et ta Ċ Ġ*/ Ċ package Ġcom . orange . ess entials . ot b . ui Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . provider . Settings Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ import Ġandroid . support . v 7 . widget . Switch Compat Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . TextView Ċ import Ġcom . orange . ess entials . ot b . R Ċ import Ġcom . orange . ess entials . ot b . event . EventType Ċ import Ġcom . orange . ess entials . ot b . manager . Trust Badge Manager Ċ import Ġcom . orange . ess entials . ot b . model . type . App Uses Permission Ċ import Ġcom . orange . ess entials . ot b . model . type . Group Type Ċ import Ġcom . orange . ess entials . ot b . model . type . User Permission Status Ċ import Ġcom . orange . ess entials . ot b . ui . utils . View Helper Ċ Ċ /** Ċ Ġ* Ċ Ġ* Ċ Ġ* ĠFile Ġname : ĠĠ ĠO tb Usage Fragment Ċ Ġ* Ċ Ġ* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 5 ĠO range Ċ Ġ* Ċ Ġ* Ċ Ġ* ĠFragment Ġused Ġto Ġdisplay Ġusage Ġbad ges Ċ Ġ*/ Ċ class ĠO tb AppData Fragment Ġ: ĠFragment () Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġapp Data LinearLayout : ĠLinearLayout ? Ġ= Ġnull ĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscroll View Ġ= Ġinflater . inflate ( R . layout . ot b _ app _ data , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġapp Data LinearLayout Ġ= Ġscroll View . findViewById ( R . id . ot b _ app _ data _ layout ) ĊĠĠĠĠĠĠĠ Ġpopulate View () ĊĠĠĠĠĠĠĠ Ġreturn Ġscroll View ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Toggle Content Description ( name : ĠString , Ġvalue : ĠBoolean ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ"$ name Ġ" Ġ+ Ġif Ġ( value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext !!. getString ( R . string . ot b _ accessibility _ item _ is _ used _ description ) ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext !!. getString ( R . string . ot b _ accessibility _ item _ not _ used _ description ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġ/** ĠManage ĠAction Bar Ġ Ġ*/ ĊĠĠĠĠĠĠĠ Ġval Ġaction Bar Ġ= Ġ( activity Ġas ĠAppCompatActivity ). support ActionBar ĊĠĠĠĠĠĠĠ Ġaction Bar ?. setTitle ( R . string . ot b _ home _ app _ data _ title ) ĊĠĠĠĠĠĠĠ ĠTrust Badge Manager . INSTANCE . event Tag ger ?. tag ( EventType . TR UST BAD GE _ USAGE _ ENTER ) ĊĠĠĠĠĠĠĠ Ġrefresh AppData () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġpopulate View () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġapp Data LinearLayout !! ĊĠĠĠĠĠĠĠ Ġview . removeAll Views () ĊĠĠĠĠĠĠĠ Ġval Ġapp Datas Ġ= ĠTrust Badge Manager . INSTANCE . app Data Elements ĊĠĠĠĠĠĠĠ ĠLog . v ( TAG , Ġ" app Datas Ġelements : Ġ" Ġ+ Ġapp Datas !!. size ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( app Data Ġin Ġapp Datas ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġapp Data View Ġ= ĠView . inflate ( context , ĠR . layout . ot b _ data _ usage _ item , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠView Helper . INSTANCE . build View ( app Data View , Ġapp Data , Ġcontext !! , ĠGroup Type . NOTIFICATION S . equals ( app Data . group Type )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtv Perm Ġ= Ġapp Data View . findViewById < TextView >( R . id . ot b _ data _ usage _ tv _ goto ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Perm . setOnClickListener Ġ{ Ġgoto Permissions () Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . v ( TAG , Ġ" add Ġapp Data Ġview ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . addView ( app Data View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( app Data . is To gg able ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġswitch Compat Ġ= Ġapp Data View . findViewById < Switch Compat >( R . id . ot b _ data _ usage _ item _ sc _ switch ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Compat . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Compat . content Description Ġ= Ġget Toggle Content Description ( app Data . name Key , Ġswitch Compat . isChecked ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( app Data . app Uses Permission Ġ== ĠApp Uses Permission . TRUE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Compat . isEnabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Compat . isChecked Ġ= Ġapp Data . user Permission Status Ġ== ĠUser Permission Status . GRAN TED ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Compat . setOn Checked ChangeListener Ġ{ Ġ_, Ġis Checked Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġswitch Compat . content Description Ġ= Ġget Toggle Content Description ( app Data . name Key , Ġis Checked ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTrust Badge Manager . INSTANCE . event Tag ger ?. tag Element ( EventType . TR UST BAD GE _ ELEMENT _ TO GG LED , Ġapp Data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTrust Badge Manager . INSTANCE . badge Changed ( app Data , Ġis Checked , Ġactivity Ġas ĠAppCompatActivity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġrefresh AppData () Ġ{ ĊĠĠĠĠĠĠĠ ĠTrust Badge Manager . INSTANCE . refresh Trust Badge Permission ( context !! ) ĊĠĠĠĠĠĠĠ Ġpopulate View () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠFR AG _ TAG Ġ= Ġ" O tb AppData Fragment " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠTAG Ġ= Ġ" O tb AppData Fragment " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġprovide Ġaccess Ġto ĠApp Ġpermission Ġscreen Ġ( intent Ġout Ġof Ġthe Ġfragment ) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġgoto Permissions () Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĠCode Ġto Ġaccess Ġto Ġthe Ġdetails Ġsettings Ġof Ġthe Ġpackage Ġname Ġ Ġ*/ ĊĠĠĠĠĠĠĠ Ġval Ġi Ġ= ĠIntent ( Settings . ACTION _ APPLICATION _ DETAILS _ SETTINGS ) ĊĠĠĠĠĠĠĠ Ġi . add Category ( Intent . CATEGORY _ DEFAULT ) ĊĠĠĠĠĠĠĠ Ġi . data Ġ= ĠUri . parse (" package :" Ġ+ ĠTrust Badge Manager . INSTANCE . application PackageName ) ĊĠĠĠĠĠĠĠ ĠTrust Badge Manager . INSTANCE . event Tag ger ?. tag ( EventType . TR UST BAD GE _ GO _ TO _ SETTINGS ) ĊĠĠĠĠĠĠĠ Ġcontext !!. startActivity ( i ) ĊĠĠĠ Ġ} Ċ } Ċ