package Ġde . j ens k ling en berg . she asy . ui . settings Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġde . j ens k ling en berg . she asy . App Ċ import Ġde . j ens k ling en berg . she asy . R Ċ import Ġde . j ens k ling en berg . she asy . data . use case . Check Permission UseCase Ċ import Ġde . j ens k ling en berg . she asy . network . She asy Pref DataSource Ċ import Ġde . j ens k ling en berg . she asy . ui . common .* Ċ import Ġde . j ens k ling en berg . she asy . utils . Network Utils Ċ import Ġio . reactivex . dis pos ables . Composite Disposable Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠSettings Presenter ( val Ġview : ĠSettings Contract . View ) Ġ: ĠSettings Contract . Presenter Ġ{ ĊĊĊĠĠĠ Ġoverride Ġval Ġcomposite Disposable : ĠComposite Disposable Ġ= ĠComposite Disposable () ĊĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġcontext : ĠContext ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġshe asy Pref DataSource : ĠShe asy Pref DataSource ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġcheck Permission UseCase : ĠCheck Permission UseCase ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar Ġapplication : ĠApplication ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinitialize D agger () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinitialize D agger () Ġ= ĠApp . app Component . inject ( this ) ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġlist Ġ= ĠlistOf < Base DataSource Item < *> >( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric List Header Source Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Server " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric ListItem ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" IP ĠAddress ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNetwork Utils . get IP ( context ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ info _ outline _ grey _ 7 0 0 _ 2 4 dp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). to Source Item (), ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric ListItem ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getString ( R . string . http _ port ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshe asy Pref DataSource . http Port , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ info _ outline _ grey _ 7 0 0 _ 2 4 dp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). to Source Item () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ, ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric List Header Source Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Connections " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĠGeneric Toggle Item Source Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric Toggle Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getString ( R . string . accept All Connections ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" If Ġactive , Ġall Ġincoming Ġrequests Ġare Ġaccepted Ġautomatic ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ info _ outline _ grey _ 7 0 0 _ 2 4 dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshe asy Pref DataSource . accept All Connections ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ Ġvalue Ġ-> Ġshe asy Pref DataSource . accept All Connections Ġ= Ġvalue Ġ}), ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric List Header Source Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Folders " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric ListItem ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getString ( R . string . app Folder ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshe asy Pref DataSource . app Folder , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ info _ outline _ grey _ 7 0 0 _ 2 4 dp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). to Source Item (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric List Header Source Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Permissions " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGeneric Toggle Item ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getString ( R . string . read Notifications ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" If Ġactive , Ġyou Ġcan Ġreceive Ġdevice Ġnotifications Ġin Ġthe Ġbrowser Ġinterface ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ info _ outline _ grey _ 7 0 0 _ 2 4 dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck Permission UseCase . check Notification Permission () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ Ġvalue Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck Permission UseCase . request Notification Permission () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. to Source Item () ĊĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġview . setData ( list ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstart Service ( intent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġapplication . start Service ( intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstop Service ( intent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġapplication . stop Service ( intent ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġcomposite Disposable . dispose () ĊĠĠĠ Ġ} Ċ }