/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 7 - 2 0 1 9 ĠDi ep DT Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . one vn . browser . legacy . action . item . start activity Ċ Ċ import Ġandroid . app . AlertDialog Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . Menu Ċ import Ġandroid . widget . EditText Ċ import Ġandroid . widget . Toast Ċ import Ġcom . one vn . browser . core . utility . extensions . get Bitmap Ċ import Ġcom . one vn . browser . core . utility . log . Error Report Ċ import Ġcom . one vn . browser . legacy . R Ċ import Ġcom . one vn . browser . legacy . utils . Web Utils Ċ import Ġcom . one vn . browser . legacy . utils . app info . App Info Ċ import Ġcom . one vn . browser . legacy . utils . app info . Application List Fragment Ċ import Ġcom . one vn . browser . legacy . utils . app info . Short Cut List Fragment Ċ import Ġcom . one vn . browser . ui . app . Theme Activity Ċ import Ġjava . net . UR ISyntaxException Ċ Ċ class ĠStart Activity Preference Activity Ġ: ĠTheme Activity (), ĠStart Activity Preference Fragment . On ActionListener , ĠApplication List Fragment . On App Select Listener , ĠShort Cut List Fragment . On Short Cut Select Listener Ġ{ ĊĠĠĠ Ġprivate Ġvar ĠmCurrent Intent : ĠIntent ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġm Url Ġ= ĠStart Activity Single Action . REPLACE _ URI ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . fragment _ base ) ĊĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= Ġintent ĊĠĠĠĠĠĠĠ Ġif Ġ( intent Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠmCurrent Intent Ġ= Ġintent . get Parcelable Extra ( Intent . EXTRA _ INT ENT ) ĊĊĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . container , ĠStart Activity Preference Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġmenu . add ( R . string . action _ start _ activity _ edit _ url ). setOn MenuItem ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġedit Text Ġ= ĠEditText ( this @ Start Activity Preference Activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġedit Text . set Single Line ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġedit Text . setText ( m Url ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠAlertDialog . Builder ( this @ Start Activity Preference Activity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle ( R . string . action _ start _ activity _ edit _ url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setView ( edit Text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( android . R . string . ok ) Ġ{ Ġ_, Ġ_ Ġ-> Ġm Url Ġ= Ġedit Text . text . toString () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button ( android . R . string . cancel , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġmenu . add ( R . string . action _ start _ activity _ edit _ intent ). setOn MenuItem ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġedit Text Ġ= ĠEditText ( this @ Start Activity Preference Activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġedit Text . set Single Line ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( m Current Intent Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġedit Text . setText ( m Current Intent !!. to Uri ( 0 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠAlertDialog . Builder ( this @ Start Activity Preference Activity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle ( R . string . action _ start _ activity _ edit _ intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setView ( edit Text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button ( android . R . string . ok ) Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstr Ġ= Ġedit Text . text . toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent . parse Uri ( str , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Result ( RESULT _ OK , Ġintent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠUR ISyntaxException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Report . print And Write Log ( e ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( application Context , Ġe . message , ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button ( android . R . string . cancel , Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . onCreate Options Menu ( menu ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġstart App List Fragment ( type : ĠInt , Ġintent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. addTo Back Stack ("") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . container , ĠApplication List Fragment . newInstance ( type , Ġintent )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen Application List () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtarget Ġ= ĠIntent ( Intent . ACTION _ MAIN ) ĊĠĠĠĠĠĠĠ Ġtarget . add Category ( Intent . CATEGORY _ LA UNCH ER ) ĊĠĠĠĠĠĠĠ Ġstart App List Fragment ( RESULT _ REQUEST _ APP , Ġtarget ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen Short Cut List () Ġ{ ĊĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. addTo Back Stack ("") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . container , ĠShort Cut List Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen Share Page () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġquery Intent Ġ= ĠWeb Utils . create Share Web Intent ( m Url , ĠStart Activity Single Action . REPLACE _ TITLE ) ĊĠĠĠĠĠĠĠ Ġstart App List Fragment ( RESULT _ REQUEST _ SHARE , Ġquery Intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġopen Other () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġquery Intent Ġ= ĠWeb Utils . create Open In Other App Intent ( m Url ) ĊĠĠĠĠĠĠĠ Ġstart App List Fragment ( RESULT _ REQUEST _ OPEN _ OTHER , Ġquery Intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Short Cut Selected ( intent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Result ( RESULT _ OK , Ġintent ) ĊĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon App Selected ( type : ĠInt , Ġinfo : ĠApp Info ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠ Ġintent . set ClassName ( info . packageName , Ġinfo . className ) ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ( type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRESULT _ REQUEST _ SHARE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . action Ġ= ĠIntent . ACTION _ SEND ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . type Ġ= Ġ" text / plain " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( Intent . EXTRA _ TEXT , ĠStart Activity Single Action . REPLACE _ URI ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( Intent . EXTRA _ SUBJECT , ĠStart Activity Single Action . REPLACE _ TITLE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRESULT _ REQUEST _ OPEN _ OTHER Ġ-> ĠWeb Utils . create Open In Other App Intent ( intent , ĠStart Activity Single Action . REPLACE _ URI ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Suppress (" DE PREC ATION ") ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠIntent (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra ( Intent . EXTRA _ SHORT CUT _ INT ENT , Ġintent ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Extra ( Intent . EXTRA _ SHORT CUT _ ICON , Ġinfo . icon . get Bitmap ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġset Result ( RESULT _ OK , Ġresult ) ĊĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠRESULT _ REQUEST _ APP Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠRESULT _ REQUEST _ SHARE Ġ= Ġ 1 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠRESULT _ REQUEST _ OPEN _ OTHER Ġ= Ġ 2 ĊĠĠĠ Ġ} Ċ } Ċ