package Ġcodes . um air . dc vide op layer . activities Ċ Ċ import Ġandroid . Manifest Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . recyclerview . widget . Divider Item Decoration Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġcodes . um air . dc vide op layer . R Ċ import Ġcodes . um air . dc vide op layer . adapters . Folder Adapter Ċ import Ġcom . Code Bo y . Media Fac er . Media Fac er Ċ import Ġcom . Code Bo y . Media Fac er . Video Get Ċ import Ġcom . Code Bo y . Media Fac er . media Hold ers . video Folder Content Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ import Ġpub . dev rel . eas yper missions . Easy Permissions ĊĊ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĠĠĠ Ġprivate Ġval Ġm Video Folders : ĠArrayList < video Folder Content > Ġ= ĠArrayList () ĊĠĠĠ Ġprivate Ġval Ġm Folder Adapter Ġ= ĠFolder Adapter () ĊĠĠĠ Ġprivate Ġval Ġm Permissions Ġ= ĠManifest . permission . WRITE _ EXTERNAL _ STORAGE ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Folders " ĊĊĠĠĠĠĠĠĠ Ġswipe View Folders . setOn Refresh Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Folders () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Request Permissions Result ( ĊĠĠĠĠĠĠĠ Ġrequest Code : ĠInt , ĊĠĠĠĠĠĠĠ Ġm Permissions : ĠArray < String ? >, ĊĠĠĠĠĠĠĠ Ġgrant Results : ĠInt Array ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Request Permissions Result ( request Code , Ġm Permissions , Ġgrant Results ) ĊĠĠĠĠĠĠĠ ĠEasy Permissions . on Request Permissions Result ( request Code , Ġm Permissions , Ġgrant Results , Ġthis ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Folders () Ġ{ ĊĠĠĠĠĠĠĠ Ġre cyclerView Folders . adapter Ġ= Ġm Folder Adapter ĊĠĠĠĠĠĠĠ Ġre cyclerView Folders . layout Manager Ġ= ĠLinearLayoutManager ( this ) ĊĊĠĠĠĠĠĠĠ Ġm Video Folders . clear () ĊĠĠĠĠĠĠĠ Ġm Video Folders . addAll ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMedia Fac er . with Video Cont ex ( this ). get Video Folders ( Video Get . external Content Uri ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġm Folder Adapter . submit List ( m Video Folders , Ġthis ) ĊĠĠĠĠĠĠĠ Ġm Folder Adapter . notify DataSet Changed () ĊĠĠĠĠĠĠĠ Ġswipe View Folders . is Refresh ing Ġ= Ġfalse ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġif Ġ( Easy Permissions . has Permissions ( this @ MainActivity , Ġm Permissions )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Folders () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEasy Permissions . request Permissions ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ MainActivity , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" We Ġneed Ġpermission Ġto ĠAccess ĠVideo Ġfiles ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 2 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Permissions ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }