package Ġcom . map swith me . maps . editor Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . TextUtils Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . annotation . Call Super Ċ import Ġandroidx . annotation . String Res Ċ import Ġandroidx . appcompat . app . AlertDialog Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . map swith me . maps . M wm Activity Ċ import Ġcom . map swith me . maps . M wm Application Ċ import Ġcom . map swith me . maps . R Ċ import Ġcom . map swith me . maps . base . Base M wm Toolbar Fragment Ċ import Ġcom . map swith me . maps . base . On Back Press Listener Ċ import Ġcom . map swith me . maps . dialog . Dialog Utils . show AlertDialog Ċ import Ġcom . map swith me . maps . editor . data . Language Ċ import Ġcom . map swith me . maps . editor . data . Localized Name Ċ import Ġcom . map swith me . maps . editor . data . Localized Street Ċ import Ġcom . map swith me . maps . intent . Factory . ShowDialog Task Ċ import Ġcom . map swith me . maps . widget . Search Toolbar Controller Ċ import Ġcom . map swith me . maps . widget . Toolbar Controller Ċ import Ġcom . map swith me . util . Connection State Ċ import Ġcom . map swith me . util . Ui Utils Ċ import Ġcom . map swith me . util . Utils Ċ import Ġcom . map swith me . util . statistics . Statistics Ċ import Ġjava . util .* Ċ Ċ class ĠEditor Host Fragment Ġ: ĠBase M wm Toolbar Fragment (), ĠOn Back Press Listener , ĊĠĠĠ ĠView . OnClickListener , ĠLanguage s Fragment . Listener Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġm Is New Object Ġ= Ġfalse ĊĊĠĠĠ Ġinternal Ġenum Ġclass ĠMode Ġ{ ĊĠĠĠĠĠĠĠ ĠMAP _ OBJECT , ĠOPEN ING _ HOUR S , ĠST RE ET , ĠCU IS INE , ĠLANGUAGE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġvar Ġm Mode : ĠMode ? Ġ= Ġnull ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCount Ġof Ġnames Ġwhich Ġshould Ġalways Ġbe Ġshown . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġmandatory Names Count Ġ= Ġ 0 ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUsed Ġin ĠMult il anguage Adapter Ġto Ġshow , Ġselect Ġand Ġremove Ġitems . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġnames : ĠList < Localized Name > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġs Names ĊĊĠĠĠ Ġval Ġnames As Array : ĠArray < Localized Name > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġs Names . to Typed Array () ĊĊĠĠĠ Ġfun Ġset Names ( names : ĠArray < Localized Name > ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġs Names . clear () ĊĠĠĠĠĠĠĠ Ġfor Ġ( name Ġin Ġnames !! ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Name ( name ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSets Ġ. name Ġof Ġan Ġindex Ġitem Ġto Ġname . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠsetName ( name : ĠString , Ġindex : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġs Names [ index ] !!. name Ġ= Ġname ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Name ( name : ĠLocal ized Name ) Ġ{ ĊĠĠĠĠĠĠĠ Ġs Names . add ( name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġfill Names ( need F akes : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnames DataSource Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor . native Get Names DataSource ( need F akes ) ĊĠĠĠĠĠĠĠ Ġset Names ( names DataSource !!. names ) ĊĠĠĠĠĠĠĠ Ġmandatory Names Count Ġ= Ġnames DataSource . mandatory Names Count ĊĠĠĠĠĠĠĠ Ġedit Map Object () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . fragment _ editor _ host , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Call Super ĊĠĠĠ Ġoverride Ġfun Ġon View Created ( ĊĠĠĠĠĠĠĠ Ġview : ĠView , ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġtoolbar Controller . toolbar . findViewById < View >( R . id . save ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setOnClickListener ( this ) ĊĠĠĠĠĠĠĠ Ġtoolbar Controller . toolbar ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Navigation OnClickListener Ġ{ Ġon Back Pressed () Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( arguments Ġ!= Ġnull ) Ġm Is New Object Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarguments !!. getBoolean ( Editor Activity . Companion . EXTRA _ NEW _ OBJECT , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġtoolbar Controller . setTitle ( title ) ĊĠĠĠĠĠĠĠ Ġfill Names ( true Ġ/* Ġadd F akes Ġ*/) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ get : String Res ĊĠĠĠ Ġprivate Ġval Ġtitle : ĠInt ĊĠĠĠĠĠĠĠ Ġprivate Ġget () Ġ= Ġif Ġ( m Is New Object ) ĠR . string . editor _ add _ place _ title Ġelse ĠR . string . editor _ edit _ place _ title ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Toolbar Controller ( root : ĠView ): ĠToolbar Controller Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠSearch Toolbar Controller ( root , Ġactivity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon TextChanged ( query : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchild FragmentManager . find Fragment By Tag ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠC uis ine Fragment :: class . java . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( fragment Ġ!= Ġnull ) Ġ( fragment Ġas ĠC uis ine Fragment ). set Filter ( query ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Back Pressed (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( m Mode ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMode . OPEN ING _ HOUR S , ĠMode . STRE ET , ĠMode . CU IS INE , ĠMode . LANGUAGE Ġ-> Ġedit Map Object () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠUtils . navigate To Parent ( activity ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġedit Map Object ( focus To LastName : ĠBoolean Ġ= Ġfalse Ġ/* Ġfocus To LastName Ġ*/) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Mode Ġ= ĠMode . MAP _ OBJECT ĊĠĠĠĠĠĠĠ Ġ( toolbar Controller Ġas ĠSearch Toolbar Controller ). show Controls ( false ) ĊĠĠĠĠĠĠĠ Ġtoolbar Controller . setTitle ( title ) ĊĠĠĠĠĠĠĠ ĠUi Utils . show ( toolbar Controller . toolbar . findViewById ( R . id . save )) ĊĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠ Ġif Ġ( focus To LastName ) Ġargs . put Int ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Fragment . Companion . LAST _ INDEX _ OF _ NAMES _ ARRAY , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġs Names . size Ġ- Ġ 1 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġeditor Fragment Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinstantiate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity !! , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Fragment :: class . java . name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġchild FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . fragment _ container , Ġeditor Fragment , ĠEditor Fragment :: class . java . name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġedit Time table () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠ Ġargs . putString ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTime table Container Fragment . Companion . EXTRA _ TIME , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor . native Get Opening Hours () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġedit With Fragment ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMode . OPEN ING _ HOUR S , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . editor _ time _ title , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTime table Container Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġedit Street () Ġ{ ĊĠĠĠĠĠĠĠ Ġedit With Fragment ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMode . STRE ET , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . choose _ street , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStreet Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġedit C uis ine () Ġ{ ĊĠĠĠĠĠĠĠ Ġedit With Fragment ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMode . CU IS INE , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . select _ cu is ine , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠC uis ine Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Language () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠ Ġval Ġlanguages Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠArrayList < String >( s Names . size ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( name Ġin Ġs Names ) Ġlanguages . add ( name !!. lang ) ĊĠĠĠĠĠĠĠ Ġargs . putString ArrayList ( Languages Fragment . Companion . EXIST ING _ LOCAL IZED _ NAMES , Ġlanguages ) ĊĠĠĠĠĠĠĠ Ġedit With Fragment ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMode . LANGUAGE , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . choose _ language , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLanguage s Fragment :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġedit With Fragment ( ĊĠĠĠĠĠĠĠ Ġnew Mode : ĠMode , Ġ@ String Res Ġtoolbar Title : ĠInt , ĊĠĠĠĠĠĠĠ Ġargs : ĠBundle ?, ĊĠĠĠĠĠĠĠ Ġfragment Class : ĠClass < out ĠFragment >, ĊĠĠĠĠĠĠĠ Ġshow Search : ĠBoolean ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! set Ed its ()) Ġreturn ĊĠĠĠĠĠĠĠ Ġm Mode Ġ= Ġnew Mode ĊĠĠĠĠĠĠĠ Ġtoolbar Controller . setTitle ( toolbar Title ) ĊĠĠĠĠĠĠĠ Ġ( toolbar Controller Ġas ĠSearch Toolbar Controller ). show Controls ( show Search ) ĊĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinstantiate ( activity !! , Ġfragment Class . name , Ġargs ) ĊĠĠĠĠĠĠĠ Ġchild FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . fragment _ container , Ġfragment , Ġfragment Class . name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġedit Category () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! m Is New Object ) Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġhost : ĠActivity ? Ġ= Ġactivity ĊĠĠĠĠĠĠĠ Ġhost !!. finish () ĊĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( host , ĠFeature Category Activity :: class . java )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġset Ed its (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ( child FragmentManager . find Fragment By Tag ( Editor Fragment :: class . java . name ) Ġas ĠEditor Fragment ?) !!. set Ed its () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonClick ( v : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( v . id Ġ== ĠR . id . save ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( m Mode ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMode . OPEN ING _ HOUR S Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtime tables Ġ= Ġ( child FragmentManager . find Fragment By Tag ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTime table Container Fragment :: class . java . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġas ĠTime table Container Fragment ?) !!. timetable ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Opening Hours . native Is Time table String Valid ( time tables )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor . native Set Opening Hours ( time tables ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Map Object () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ Ġ// ĠTODO Ġ( yun ik kk ) Ġcorrect Ġtranslation ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow M ist ake Dialog ( R . string . editor _ correct _ mist ake ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMode . STRE ET Ġ-> Ġset Street ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( child FragmentManager . find Fragment By Tag ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠStreet Fragment :: class . java . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġas ĠStreet Fragment ?) !!. street ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMode . CU IS INE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcu is ines Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( child FragmentManager . find Fragment By Tag ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠC uis ine Fragment :: class . java . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġas ĠC uis ine Fragment ?) !!. cu is ines ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor . native Set Selected C uis ines ( cu is ines ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Map Object () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMode . LANGUAGE Ġ-> Ġedit Map Object () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMode . MAP _ OBJECT Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! set Ed its ()) Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSave Ġobject Ġedits ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( M wm Application . prefs ()?. contains ( NO OB _ ALERT _ SHO WN ) Ġ!= Ġtrue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow N oob Dialog () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave Note () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave Map Object Ed its () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsave Map Object Ed its () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( Editor . native Save Edited Feature ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStatistics . INSTANCE . track Editor Success ( m Is New Object ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( O sm OAuth . is Authorized Ġ|| Ġ! Connection State . isConnected ) ĠUtils . navigate To Parent ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparent : ĠActivity ? Ġ= Ġactivity ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( parent , ĠM wm Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . add Flags ( Intent . FLAG _ ACTIVITY _ NO _ ANIM ATION ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠM wm Activity . EXTRA _ TASK , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠShow Dialog Task ( Auth Dialog Fragment :: class . java . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparent !!. startActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( parent Ġis ĠM wm Activity ) Ġparent . custom On Navigate Up () Ġelse Ġparent . finish () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStatistics . INSTANCE . track Editor Error ( m Is New Object ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow AlertDialog ( activity !! , ĠR . string . downloader _ no _ space _ title ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsave Note () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtag Ġ= ĠEditor Fragment :: class . java . name ĊĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchild FragmentManager . find Fragment By Tag ( tag ) Ġas ĠEditor Fragment ? ĊĠĠĠĠĠĠĠ Ġval Ġnote Ġ= Ġfragment !!. description ĊĠĠĠĠĠĠĠ Ġif Ġ(! TextUtils . isEmpty ( note )) ĠEditor . native Create Note ( note ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow M ist ake Dialog (@ String Res Ġres Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ ĠAlertDialog . Builder ( activity !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setMessage ( res Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( android . R . string . ok , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow N oob Dialog () Ġ{ ĊĠĠĠĠĠĠĠ ĠAlertDialog . Builder ( activity !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle ( R . string . editor _ share _ to _ all _ dialog _ title ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. setMessage ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetString ( R . string . editor _ share _ to _ all _ dialog _ message _ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ+ Ġ" Ġ" Ġ+ ĠgetString ( R . string . editor _ share _ to _ all _ dialog _ message _ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( android . R . string . ok ) Ġ{ Ġdlg , Ġwhich Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠM wm Application . prefs ()?. edit () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . put Boolean ( NO OB _ ALERT _ SHO WN , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ? . apply () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave Note () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave Map Object Ed its () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button ( android . R . string . cancel , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Street ( street : ĠLocal ized Street ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠEditor . native Set Street ( street ) ĊĠĠĠĠĠĠĠ Ġedit Map Object () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadding New Object (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm Is New Object ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Language Selected ( lang : ĠLanguage ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġname : ĠString ? Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġif Ġ( lang . code Ġ== ĠLanguage . Companion . DEFAULT _ LANG _ CODE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfill Names ( false Ġ/* Ġadd F akes Ġ*/) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= ĠEditor . native GetDefault Name () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor . native Enable Names Advanced Mode () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġadd Name ( Editor . native Make Localized Name ( lang . code , Ġname )) ĊĠĠĠĠĠĠĠ Ġedit Map Object ( true Ġ/* Ġfocus To LastName Ġ*/) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠA Ġlist Ġof Ġlocalized Ġnames Ġadded Ġby Ġa Ġuser Ġand Ġthose Ġthat Ġwere Ġin Ġmetadata . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġs Names : ĠMutable List < Localized Name > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠArrayList () ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠNO OB _ ALERT _ SHO WN Ġ= Ġ" Alert _ for _ n oob _ was _ shown " ĊĠĠĠ Ġ} Ċ }