package Ġv yan . al way son widget . fragments Ċ Ċ import Ġandroid . app . admin . Device Policy Manager Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . res . Color State List Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . provider . Settings Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . google . android . material . floating action button . Floating ActionButton Ċ import Ġv yan . al way son widget . R Ċ Ċ class ĠAlways On Toggle Fragment Ġ: ĠFragment () Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtoggle Btn View : ĠFloating ActionButton ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġindicator Txt View : ĠTextView ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . fragment _ st ay _ aw ake _ toggle , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġindicator Txt View Ġ= Ġview . findViewById ( R . id . fragment _ st ay _ aw ake _ toggle _ indicator _ text ) ĊĠĠĠĠĠĠĠ Ġtoggle Btn View Ġ= Ġview . findViewById ( R . id . fragment _ st ay _ aw ake _ toggle _ fab _ main _ toggle ) ĊĠĠĠĠĠĠĠ Ġtoggle Btn View . setOnClickListener Ġ{ Ġtoggle St ay Aw ake Setting () Ġ} ĊĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĊĠĠĠĠĠĠĠ Ġ// ĠInitialization Ġof Ġthe Ġtoggle Ġstate ĊĠĠĠĠĠĠĠ Ġval Ġis St ay Aw ake Setting Enabled Ġ= ĠSettings . Global . getString ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Context (). content Resolver , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSettings . Global . ST AY _ ON _ WH ILE _ PLU GG ED _ IN ĊĠĠĠĠĠĠĠ Ġ) Ġ== Ġ" 1 " ĊĊĠĠĠĠĠĠĠ Ġupdate St ay Aw ake Toggle View ( is St ay Aw ake Setting Enabled ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġtoggle St ay Aw ake Setting () Ġ{ ĊĠĠĠĠĠĠĠ Ġsynchronized ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġis Enabled Ġ= Ġ! toggle Btn View . is Activated ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate St ay Aw ake Toggle View ( isEnabled ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate St ay Aw ake Toggle View ( is Setting Enabled : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( is Setting Enabled ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Btn View . image Tint List Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor State List . valueOf ( resources . getColor ( R . color . color Enabled , Ġnull )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġindicator Txt View . text Ġ= Ġresources . getString ( R . string . st ay _ aw ake _ is _ enabled ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Btn View . image Tint List Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor State List . valueOf ( resources . getColor ( R . color . color Disabled , Ġnull )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġindicator Txt View . text Ġ= Ġresources . getString ( R . string . st ay _ aw ake _ is _ disabled ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊ Ċ // ĠĠĠĠĠĠĠ Ġapp Device Policy Manager . setMaximum TimeTo Lock () Ċ // ĠĠĠĠĠĠĠ ĠSettings . Global . put Int ( Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġrequire Context (). content Resolver , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠSettings . Global . ST AY _ ON _ WH ILE _ PLU GG ED _ IN , Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is Setting Enabled ) ĠB attery Manager . B ATTER Y _ PLU GG ED _ USB Ġelse Ġ 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠgetInstance () Ġ= ĠAlways On Toggle Fragment () ĊĠĠĠ Ġ} Ċ }