package Ġcom . in structure . parent app . fragments Ċ Ċ /* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 6 Ġ- Ġpresent Ġ ĠIn structure , ĠInc . Ċ Ġ* Ċ Ġ* ĠĠĠĠ ĠThis Ġprogram Ġis Ġfree Ġsoftware : Ġyou Ġcan Ġredistribute Ġit Ġand / or Ġmodify Ċ Ġ* ĠĠĠĠ Ġit Ġunder Ġthe Ġterms Ġof Ġthe ĠGNU ĠGeneral ĠPublic ĠLicense Ġas Ġpublished Ġby Ċ Ġ* ĠĠĠĠ Ġthe ĠFree ĠSoftware ĠFoundation , Ġversion Ġ 3 Ġof Ġthe ĠLicense . Ċ Ġ* Ċ Ġ* ĠĠĠĠ ĠThis Ġprogram Ġis Ġdistributed Ġin Ġthe Ġhope Ġthat Ġit Ġwill Ġbe Ġuseful , Ċ Ġ* ĠĠĠĠ Ġbut ĠWITHOUT ĠANY ĠWARRANTY ; Ġwithout Ġeven Ġthe Ġimplied Ġwarranty Ġof Ċ Ġ* ĠĠĠĠ ĠMERCHANTABILITY Ġor ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE . Ġ ĠSee Ġthe Ċ Ġ* ĠĠĠĠ ĠGNU ĠGeneral ĠPublic ĠLicense Ġfor Ġmore Ġdetails . Ċ Ġ* Ċ Ġ* ĠĠĠĠ ĠYou Ġshould Ġhave Ġreceived Ġa Ġcopy Ġof Ġthe ĠGNU ĠGeneral ĠPublic ĠLicense Ċ Ġ* ĠĠĠĠ Ġalong Ġwith Ġthis Ġprogram . Ġ ĠIf Ġnot , Ġsee Ġ< http :// www . gnu . org / licenses />. Ċ Ġ* Ċ Ġ*/ Ċ Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . webkit . WebView Ċ Ċ import Ġcom . in structure . canvas api 2 . models . Account Notification Ċ import Ġcom . in structure . canvas api 2 . models . User Ċ import Ġcom . in structure . p anda utils . utils . Const Ċ import Ġcom . in structure . p anda utils . utils . Parcelable Arg Ċ import Ġcom . in structure . p anda utils . views . Canvas WebView Ċ import Ġcom . in structure . parent app . R Ċ import Ġcom . in structure . parent app . util . Route Matcher Ċ import Ġkotlinx . android . synt hetic . main . fragment _ account _ notification .* Ċ Ċ class ĠAccount Notification Fragment Ġ: ĠParent Fragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġaccount Notification : ĠAccount Notification Ġby ĠParcel able Arg ( key Ġ= ĠConst . ACCOUNT _ NOTIFICATION ) ĊĠĠĠ Ġprivate Ġvar Ġstudent : ĠUser Ġby ĠParcel able Arg ( key Ġ= ĠConst . ST UD ENT ) ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġaccount Notification WebView . on Pause () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġaccount Notification WebView . on Resume () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġroot Layout : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= ĠR . layout . fragment _ account _ notification ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( root Layout , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġsetup Dialog Toolbar ( view ) ĊĠĠĠĠĠĠĠ Ġsetup Views () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġsetup Dialog Toolbar ( root View : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . setup Dialog Toolbar ( root View ) ĊĊĠĠĠĠĠĠĠ Ġtoolbar Title . text Ġ= Ġaccount Notification . subject ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Views () Ġ{ ĊĠĠĠĠĠĠĠ Ġaccount Notification WebView . add Video Client ( activity ) ĊĊĠĠĠĠĠĠĠ Ġaccount Notification WebView . canvas Embedded WebView Callback Ġ= Ġobject Ġ: ĠCanvas WebView . Canvas Embedded WebView Callback Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġlaunch Internal WebView Fragment ( url : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// create Ġand Ġadd Ġthe ĠInternal Web view Fragment Ġto Ġdeal Ġwith Ġthe Ġlink Ġthey Ġclicked ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinternal Web view Fragment Ġ= ĠInternal WebView Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinternal Web view Fragment . arguments Ġ= ĠInternal WebView Fragment . create Bundle ( url , Ġ"", Ġnull , Ġstudent ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġft Ġ= Ġrequire FragmentManager (). beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġft . set Custom Animations ( R . anim . slide _ from _ bottom , Ġandroid . R . anim . fade _ out , ĠR . anim . none , ĠR . anim . slide _ to _ bottom ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġft . add ( R . id . fullscreen , Ġinternal Web view Fragment , Ġinternal Web view Fragment . java Class . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġft . addTo Back Stack ( internal Web view Fragment . java Class . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġft . commit Allow ing State Loss () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġshould Launch Internal WebView Fragment ( url : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġaccount Notification WebView . canvas WebView Client Callback Ġ= Ġobject Ġ: ĠCanvas WebView . Canvas WebView Client Callback Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġopen Media From WebView ( mime : ĠString , Ġurl : ĠString , Ġfilename : ĠString ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Started Callback ( web View : ĠWebView , Ġurl : ĠString ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Finished Callback ( web View : ĠWebView , Ġurl : ĠString ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcan Route Intern ally Delegate ( url : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġuri Ġ= ĠUri . parse ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRoute Matcher . can Route Intern ally ( null , Ġurl , Ġstudent , Ġuri . host , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġroute Intern ally Callback ( url : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġuri Ġ= ĠUri . parse ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRoute Matcher . can Route Intern ally ( activity , Ġurl , Ġstudent , Ġuri . host , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġaccount Notification WebView . load Html ( account Notification . message , Ġaccount Notification . subject ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( notification : ĠAccount Notification , Ġstudent : ĠUser ): ĠAccount Notification Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . put Parcelable ( Const . ACCOUNT _ NOTIFICATION , Ġnotification ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġargs . put Parcelable ( Const . ST UD ENT , Ġstudent ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĠAccount Notification Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . arguments Ġ= Ġargs ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ