package Ġorg . dee j dev . s cop el ib Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġorg . dee j dev . s cop el ib . internal . format Scope Name Ċ import Ġorg . dee j dev . s cop el ib . internal . is D ro pping Ċ import Ġorg . dee j dev . s cop el ib . internal . unique InstanceId Ċ import Ġorg . dee j dev . s cop el ib . internal . used Scope Name Ċ import Ġtoo th pick . k tp . K TP Ċ Ċ class ĠScope Blueprint Manager Callbacks ( ĊĠĠĠ Ġprivate Ġval Ġscope Blueprint Manager : ĠScope Blueprint Manager Ċ ) Ġ: ĠFragment Manager . Fragment Lifecycle Callbacks () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Fragment Pre Created ( fm : ĠFragment Manager , Ġf : ĠFragment , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġcheck ( f . attached Scope Blueprint Ġ== Ġnull Ġ|| Ġf . attached Scope Blueprint ?. instanceId Ġ== Ġf . unique InstanceId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"` Scope Blueprint . instanceId ` Ġis Ġnot Ġin Ġsync Ġwith Ġ` Fragment . unique InstanceId `" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// ĠIf Ġthe Ġfragment Ġdecl ares Ġa Ġscope Ġto Ġopen , Ġmake Ġsure Ġthe Ġrecord Ġis Ġstored Ġin Ġthe Ġmanager ĊĠĠĠĠĠĠĠ Ġf . attached Scope Blueprint ?. let ( scope Blueprint Manager :: overwrite ) ĊĠĠĠĠĠĠĠ Ġ// ĠIf Ġthe Ġfragment Ġspecifies Ġa Ġscope Ġname Ġto Ġuse , Ġinject ĊĠĠĠĠĠĠĠ Ġf . used Scope Name ?. let Ġ{ Ġused Scope Name Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscope Blueprint Manager . material ize () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcheck ( K TP . is Scope Open ( used Scope Name )) Ġ{ Ġ" Required Ġscope Ġ`${ format Scope Name ( used Scope Name )} ` Ġis Ġnot Ġopen " Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠK TP . open Scope ( used Scope Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. inject ( f ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Fragment Destroyed ( fm : ĠFragment Manager , Ġf : ĠFragment ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( f . is D ro pping ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠThe Ġfragment Ġis Ġnot Ġgoing Ġto Ġbe Ġrestored , Ġclose Ġthe Ġscope Ġit Ġdecl ares ĊĠĠĠĠĠĠĠĠĠĠĠ Ġf . attached Scope Blueprint ?. let ( scope Blueprint Manager :: remove And Close ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ