package Ġcom . e bo lo . k richt ext editor . views Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view .* Ċ import Ġandroid . webkit . Web Chrome Client Ċ import Ġandroid . webkit . WebView Client Ċ import Ġandroid . widget .* Ċ import Ġandroidx . annotation . Style Res Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . bitbucket . event bus . EventBus Ċ import Ġcom . e bo lo . k richt ext editor . R Ċ import Ġcom . e bo lo . k richt ext editor . Rich Editor Ċ import Ġcom . e bo lo . k richt ext editor . ui . action ImageView Style Ċ import Ġcom . e bo lo . k richt ext editor . ui . widgets . Color Palette View Ċ import Ġcom . e bo lo . k richt ext editor . ui . widgets . Editor Button Ċ import Ġcom . e bo lo . k richt ext editor . ui . widgets . Editor Toolbar Ċ import Ġcom . e bo lo . k richt ext editor . ui . widgets . Text Editor WebView Ċ import Ġcom . e bo lo . k richt ext editor . utils . rgb To Hex Ċ import Ġcom . github . sal om on br ys . kot son . fromJson Ċ import Ġcom . google . android . material . dialog . Material AlertDialog Builder Ċ import Ġcom . google . android . material . sn ackbar . Snackbar Ċ import Ġcom . google . android . material . text field . TextInput EditText Ċ import Ġcom . google . gson . Gson Ċ import Ġorg . jetbrains . ank o .* Ċ import Ġorg . jetbrains . ank o . custom . ank o View Ċ import Ġorg . jetbrains . ank o . sdk 2 7 . coroutines . onClick Ċ import Ġru . wh ale m are . sheet menu . Sheet Menu Ċ Ċ class ĠK Rich Editor View Ġ: ĠFrame Layout Ġ{ ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġattrs : ĠAttributeSet ) Ġ: Ġsuper ( context , Ġattrs ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext ) Ġ: Ġsuper ( context ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġevent Bus Ġby Ġlazy Ġ{ ĠEvent Bus . getInstance () Ġ} ĊĠĠĠ Ġprivate Ġval Ġmenu Format Buttons Ġ= Ġmutable Map Of < Int , ĠImageView >() ĊĠĠĠ Ġprivate Ġval Ġmenu Format Heading Blocks Ġ= Ġmutable Map Of < Int , ĠView >() ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠfontSize TextView : ĠTextView ĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠtextColor Palette : ĠColor Palette View ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġhighlight Color Palette : ĠColor Palette View ĊĊĠĠĠ Ġval Ġeditor Ġ= ĠRich Editor () ĊĊĠĠĠ Ġprivate Ġval ĠwebView : ĠText Editor WebView Ġby Ġlazy Ġ{ ĠfindViewById ( R . id . web _ view ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġtoolbar : ĠLinearLayout Ġby Ġlazy Ġ{ ĠfindViewById ( R . id . toolbar ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġmenu Button : ĠImageView Ġby Ġlazy Ġ{ ĠfindViewById ( R . id . menu _ button ) Ġ} ĊĠĠĠ Ġprivate Ġval Ġtools Container : ĠLinearLayout Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById ( R . id . tools _ container ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġeditor Menu ScrollView : ĠScroll View Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById ( R . id . editor _ menu _ scroll _ view ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġeditor Menu Container : ĠFrame Layout Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById ( R . id . editor _ menu _ container ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġeditor Toolbar : ĠEditor Toolbar ĊĊĠĠĠ Ġ// ĠCustom izable Ġsettings ĊĠĠĠ Ġprivate Ġvar Ġplace Holder Ġ= Ġ" Start Ġwriting ..." ĊĠĠĠ Ġprivate Ġvar Ġimage Button Action : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġshow Toolbar Ġ= Ġtrue ĊĠĠĠ Ġprivate Ġvar Ġshow Menu Button Ġ= Ġtrue ĊĠĠĠ Ġprivate Ġvar ĠreadOnly Ġ= Ġfalse ĊĊĠĠĠ Ġ// ĠDefault Ġbuttons Ġlayout ĊĠĠĠ Ġprivate Ġvar Ġbuttons Layout Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠEditor Button . UN DO , ĊĠĠĠĠĠĠĠ ĠEditor Button . RE DO , ĊĠĠĠĠĠĠĠ ĠEditor Button . IMAGE , ĊĠĠĠĠĠĠĠ ĠEditor Button . LINK , ĊĠĠĠĠĠĠĠ ĠEditor Button . BOLD , ĊĠĠĠĠĠĠĠ ĠEditor Button . ITAL IC , ĊĠĠĠĠĠĠĠ ĠEditor Button . UNDER LINE , ĊĠĠĠĠĠĠĠ ĠEditor Button . SUB SCRIPT , ĊĠĠĠĠĠĠĠ ĠEditor Button . SUPER SCRIPT , ĊĠĠĠĠĠĠĠ ĠEditor Button . STR IK ETH ROUGH , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ LEFT , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ CENTER , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ RIGHT , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ FULL , ĊĠĠĠĠĠĠĠ ĠEditor Button . ORDER ED , ĊĠĠĠĠĠĠĠ ĠEditor Button . UN ORDER ED , ĊĠĠĠĠĠĠĠ ĠEditor Button . CHECK , ĊĠĠĠĠĠĠĠ ĠEditor Button . NORMAL , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 1 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 2 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 3 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 4 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 5 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 6 , ĊĠĠĠĠĠĠĠ ĠEditor Button . IND ENT , ĊĠĠĠĠĠĠĠ ĠEditor Button . OUT D ENT , ĊĠĠĠĠĠĠĠ ĠEditor Button . BLOCK _ QUOTE , ĊĠĠĠĠĠĠĠ ĠEditor Button . BLOCK _ CODE , ĊĠĠĠĠĠĠĠ ĠEditor Button . CODE _ VIEW ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġvar Ġbutton Activated Color : ĠInt Ġ= ĠContext Compat . getColor ( context , ĠR . color . color Accent ) ĊĠĠĠ Ġprivate Ġvar Ġbutton De activated Color : ĠInt Ġ= ĠContext Compat . getColor ( context , ĠR . color . tint Color ) ĊĊĠĠĠ Ġprivate Ġvar Ġon Initialized : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull ĊĊĠĠĠ Ġ@ Style Res ĊĠĠĠ Ġprivate Ġvar Ġdialog Style Ġ= ĊĠĠĠĠĠĠĠ Ġcom . google . android . material . R . style . Theme Overlay _ Material Components _ Material AlertDialog ĊĊĠĠĠ Ġfun Ġinit View ( options : ĠOptions Ġ= ĠOptions . DEFAULT ) Ġ{ ĊĠĠĠĠĠĠĠ Ġon Initialized Ġ= Ġoptions . on Initialized ĊĠĠĠĠĠĠĠ Ġplace Holder Ġ= Ġoptions . place Holder ĊĠĠĠĠĠĠĠ Ġimage Button Action Ġ= Ġoptions . image Button Action ĊĠĠĠĠĠĠĠ Ġbuttons Layout Ġ= Ġoptions . buttons Layout ĊĠĠĠĠĠĠĠ Ġbutton Activated Color Ġ= Ġoptions . button Activated Color ĊĠĠĠĠĠĠĠ Ġbutton De activated Color Ġ= Ġoptions . button De activated Color ĊĠĠĠĠĠĠĠ Ġshow Toolbar Ġ= Ġoptions . show Toolbar ĊĠĠĠĠĠĠĠ ĠreadOnly Ġ= Ġoptions . readOnly ĊĠĠĠĠĠĠĠ Ġdialog Style Ġ= Ġoptions . dialog Style ĊĠĠĠĠĠĠĠ Ġshow Menu Button Ġ= Ġoptions . show Menu Button ĊĊĠĠĠĠĠĠĠ Ġinf late ( context , ĠR . layout . view _ kr ich _ editor , Ġthis ) ĊĠĠĠĠĠĠĠ Ġsetup WebView () ĊĊĠĠĠĠĠĠĠ Ġif Ġ(! show Toolbar Ġ|| ĠreadOnly ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoolbar . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( show Toolbar ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor Toolbar Ġ= ĠEditor Toolbar ( editor , Ġbuttons Layout ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Editor Button . LINK Ġin Ġbuttons Layout ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlink Button Action Ġ= Ġ{ Ġon Menu Button Clicked ( Editor Button . LINK ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Editor Button . IMAGE Ġin Ġbuttons Layout ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Button Action Ġ= Ġ{ Ġon Menu Button Clicked ( Editor Button . IMAGE ) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbutton Activated Color Ġ= Ġthis @ KR ich Editor View . button Activated Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbutton De activated Color Ġ= Ġthis @ KR ich Editor View . button De activated Color ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor Toolbar . create Toolbar ( tools Container ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġeditor Menu ScrollView . verticalLayout Ġ{ Ġ// TODO Ġmigrate Ġto ĠXML Ġlayout ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Resource Ġ= ĠR . color . gray _ 1 0 0 ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠFirst Ġbox : Ġfont Ġsize , Ġalignment , Ġbasic Ġtext Ġformat ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Resource Ġ= ĠR . color . white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 1 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġweight Sum Ġ= Ġ 1 0 f ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠFont Ġsize Ġbox ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . btn _ white _ round _ rectangle ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView ( R . string . font _ size ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize TextView Ġ= ĠtextView (" normal ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 8 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor Resource Ġ= ĠR . color . light _ blue _ 5 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// val Ġmenu Ġ= ĠPopup Menu ( ui . ctx , Ġthis @ textView ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSheet Menu (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Id Ġ= ĠR . string . font _ sizes _ title ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Ġ= ĠR . menu . font _ sizes _ menu ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġshow Icons Ġ= Ġfalse Ġ// Ġtrue , Ġby Ġdefault ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclick Ġ= ĠMenuItem . On MenuItem ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Menu Button Clicked ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . SIZE , Ġwhen Ġ( it . itemId ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . font _ size _ small Ġ-> Ġ" small " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . font _ size _ large Ġ-> Ġ" large " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . font _ size _ huge Ġ-> Ġ" huge " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. show ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params Ġ{ Ġtop Margin Ġ= Ġdip ( 8 ) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġdip ( 0 ), Ġheight Ġ= Ġdip ( 1 0 0 )) Ġ{ Ġweight Ġ= Ġ 3 f Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠJust ify ( alignment ) Ġbuttons Layout ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( 1 6 , Ġdip ( 6 ), Ġ 1 6 , Ġdip ( 6 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġjustify Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Editor Button . Companion . ActionType Ġtype : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġneighbor : ĠBoolean Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= Ġmenu Format Buttons . put ( type , ĠimageView ( drawable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . btn _ white _ material ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ Ġon Menu Button Clicked ( type ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( neighbor ) Ġmargin Start Ġ= Ġdip ( 1 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. apply Ġ{ Ġaction ImageView Style () Ġ}) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjustify Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ LEFT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ format _ align _ left ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjustify Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ CENTER , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ format _ align _ center , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjustify Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ RIGHT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ format _ align _ right , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjustify Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ FULL , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ format _ align _ justify , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġdip ( 4 6 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠBasic Ġformats : Ġbold , Ġitalic , Ġunderline , Ġstrike ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( dip ( 1 6 ), Ġdip ( 6 ), Ġdip ( 1 6 ), Ġdip ( 6 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġformat Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Editor Button . Companion . ActionType Ġtype : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable : ĠInt ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= Ġmenu Format Buttons . put ( type , ĠimageView ( drawable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . btn _ white _ material ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ Ġon Menu Button Clicked ( type ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. l params Ġ{ Ġweight Ġ= Ġ 1 f Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġaction ImageView Style () Ġ}) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformat Button ( Editor Button . BOLD , ĠR . drawable . ic _ format _ bold ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformat Button ( Editor Button . ITAL IC , ĠR . drawable . ic _ format _ italic ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformat Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . UNDER LINE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ format _ under lined ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformat Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . STR IK ETH ROUGH , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . drawable . ic _ format _ strikethrough ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġdip ( 4 6 )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġdip ( 0 ), Ġheight Ġ= Ġdip ( 1 0 0 )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmargin Start Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġweight Ġ= Ġ 7 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSecond Ġbox : Ġtext Ġcolor Ġand Ġhighlight ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Resource Ġ= ĠR . color . white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 1 6 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView ( R . string . font _ color ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextColor Palette Ġ= Ġan ko View (:: Color Palette View , Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Color Change Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Menu Button Clicked ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . FORE _ COLOR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . selected Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView ( R . string . font _ highlight _ color ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 1 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhighlight Color Palette Ġ= Ġan ko View (:: Color Palette View , Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Color Change Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Menu Button Clicked ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . BACK _ COLOR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . selected Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġwrap Content , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġweight Ġ= Ġ 1 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠThird Ġbox : Ġhead ings ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhorizontal ScrollView Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 1 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Resource Ġ= ĠR . color . white ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Editor Button . Companion . ActionType Ġtype : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpreview Text : ĠPair < String , ĠFloat >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġneighbor : ĠBoolean Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= Ġmenu Format Heading Blocks . put ( type , Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( 0 , Ġ 0 , Ġ 0 , Ġdip ( 8 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ Ġon Menu Button Clicked ( type ) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView ( preview Text . first ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Lines Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġpreview Text . second ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġwrap Content , Ġheight Ġ= Ġdip ( 3 2 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Ġ= Ġ 0 xe 0 e 0 e 0 . opaque ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġdip ( 0 . 5 f )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbottom Margin Ġ= Ġdip ( 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView ( text ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġdip ( 8 0 ), Ġheight Ġ= Ġmatch Parent ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( neighbor ) Ġmargin Start Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . NORMAL , Ġpreview Text Ġ= Ġ" Aa Bb Cc Dd " Ġto Ġ 1 0 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . font _ style _ normal ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 1 , Ġpreview Text Ġ= Ġ" Aa Bb " Ġto Ġ 1 8 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . font _ style _ heading _ 1 , Ġneighbor Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 2 , Ġpreview Text Ġ= Ġ" Aa Bb C " Ġto Ġ 1 4 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . font _ style _ heading _ 2 , Ġneighbor Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 3 , Ġpreview Text Ġ= Ġ" Aa Bb Cc D " Ġto Ġ 1 2 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . font _ style _ heading _ 3 , Ġneighbor Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 4 , Ġpreview Text Ġ= Ġ" Aa Bb Cc Dd " Ġto Ġ 1 2 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . heading _ 4 , Ġneighbor Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 5 , Ġpreview Text Ġ= Ġ" Aa Bb Cc Dd " Ġto Ġ 1 2 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . heading _ 5 , Ġneighbor Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheading Block ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 6 , Ġpreview Text Ġ= Ġ" Aa Bb Cc Dd " Ġto Ġ 1 2 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= ĠR . string . heading _ 6 , Ġneighbor Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params Ġ{ Ġtop Margin Ġ= Ġdip ( 8 ) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠInner Ġfunction : Ġ Ġadditional Format Box ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠDescription : ĠĠĠĠ ĠCreate Ġa Ġbox Ġwith Ġ 4 Ġbuttons Layout Ġdivided Ġinto Ġtwo ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsmaller Ġones . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠParam Ġpattern : ĠĠ Ġa Ġpair Ġmapping ĠAction Type ĠInt Ġto ĠDrawable ĠRes ĠId ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġitem 1 Ġfirst Ġbutton ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġitem 2 Ġsecond Ġbutton ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġitem 3 Ġthird Ġbutton ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġitem 4 Ġfourth Ġbutton ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġadditional Format Box ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 1 : ĠPair < Int , ĠInt >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 2 : ĠPair < Int , ĠInt >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 3 : ĠPair < Int , ĠInt >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 4 : ĠPair < Int , ĠInt > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Resource Ġ= ĠR . color . white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 1 6 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġinner Box ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 1 : ĠPair < Int , ĠInt >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 2 : ĠPair < Int , ĠInt >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Second : ĠBoolean Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( 0 , Ġdip ( 8 ), Ġ 0 , Ġdip ( 8 )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġformat Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem : ĠPair < Int , ĠInt >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Second : ĠBoolean Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Format Buttons . put ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem . first , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageView ( item . second ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . btn _ white _ material ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 1 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ Ġon Menu Button Clicked ( item . first ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. l params Ġ{ Ġif Ġ( is Second ) Ġmargin Start Ġ= Ġdip ( 3 2 ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġaction ImageView Style () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformat Button ( item 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformat Button ( item 2 , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġwrap Content , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġweight Ġ= Ġ 1 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is Second ) Ġmargin Start Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinner Box ( item 1 , Ġitem 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinner Box ( item 3 , Ġitem 4 , Ġtrue ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadditional Format Box ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 1 Ġ= ĠEditor Button . SUB SCRIPT Ġto ĠR . drawable . ic _ format _ sub script , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 2 Ġ= ĠEditor Button . SUPER SCRIPT Ġto ĠR . drawable . ic _ format _ sup erscript , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 3 Ġ= ĠEditor Button . BLOCK _ QUOTE Ġto ĠR . drawable . ic _ format _ quote , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 4 Ġ= ĠEditor Button . BLOCK _ CODE Ġto ĠR . drawable . ic _ code _ block ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadditional Format Box ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 1 Ġ= ĠEditor Button . IND ENT Ġto ĠR . drawable . ic _ format _ indent _ increase , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 2 Ġ= ĠEditor Button . OUT D ENT Ġto ĠR . drawable . ic _ format _ indent _ decrease , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 3 Ġ= ĠEditor Button . UN ORDER ED Ġto ĠR . drawable . ic _ format _ list _ bul leted , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem 4 Ġ= ĠEditor Button . ORDER ED Ġto ĠR . drawable . ic _ format _ list _ number ed ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSix th Ġbox : Ġinsert Ġbuttons Layout Ġ- Ġimage , Ġlink , Ġtable , Ġcode ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvertical Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠbackgroundColor Resource Ġ= ĠR . color . white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 1 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Baseline Aligned Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView ( R . string . font _ insert ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlinear Layout Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 8 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġinsert Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Editor Button . Companion . ActionType Ġtype : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable : ĠInt ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthe med ImageView ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style . Action ImageView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . id Ġ= Ġid ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Resource Ġ= ĠR . drawable . btn _ white _ material ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpadding Ġ= Ġdip ( 8 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Ġ{ Ġon Menu Button Clicked ( type ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params Ġ{ Ġweight Ġ= Ġ 1 f Ġ}. apply Ġ{ Ġaction ImageView Style () Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinsert Button ( Editor Button . CHECK , ĠR . drawable . ic _ format _ list _ check ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinsert Button ( Editor Button . IMAGE , ĠR . drawable . ic _ insert _ photo ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Format Buttons [ Editor Button . LINK ] Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinsert Button ( Editor Button . LINK , ĠR . drawable . ic _ insert _ link ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinsert Button ( Editor Button . CODE _ VIEW , ĠR . drawable . ic _ code _ review ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Margin Ġ= Ġdip ( 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. l params ( width Ġ= Ġmatch Parent , Ġheight Ġ= Ġwrap Content ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ(! show Menu Button ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Button . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsetup Listeners ( context ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress Lint (" Set JavaScript Enabled ") ĊĠĠĠ Ġprivate Ġfun Ġsetup WebView () Ġ{ ĊĠĠĠĠĠĠĠ ĠwebView . init WebView Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . web View Client Ġ= ĠWebView Client () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . web Chrome Client Ġ= ĠWeb Chrome Client () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . settings . java Script Enabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . settings . dom Storage Enabled Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Focus able Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Focus able In Touch Mode Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm WebView Ġ= Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplace Holder Ġ= Ġthis @ KR ich Editor View . place Holder ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Initialized Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ KR ich Editor View . on Initialized ?. invoke () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( readOnly ) Ġeditor . disable () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . add Javascript Interface ( editor , Ġ" KR ich Editor ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . load Url (" file :/// android _ asset / rich Editor . html ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠFunction : ĠĠĠ Ġon Menu Button Clicked ĊĠĠĠĠ Ġ* ĠDescription : ĠDeclare Ġsets Ġof Ġactions Ġof Ġformatting Ġbuttons Layout ĊĠĠĠĠ Ġ* Ġ@ param Ġtype Ġtype Ġof Ġaction Ġdefined Ġin ĠEditor Button Ġclass ĊĠĠĠĠ Ġ* Ġ@ param Ġparam Ġparam Ġof Ġaction Ġif Ġnecessary ĊĠĠĠĠ Ġ* Ġ@ see ĠEditor Button ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġon Menu Button Clicked ( ĊĠĠĠĠĠĠĠ Ġ@ Editor Button . Companion . ActionType Ġtype : ĠInt , ĊĠĠĠĠĠĠĠ Ġparam : ĠString ? Ġ= Ġnull ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . SIZE Ġ-> Ġeditor . command ( Editor Button . SIZE , Ġparam !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . FORE _ COLOR Ġ-> Ġeditor . command ( Editor Button . FORE _ COLOR , Ġparam !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . BACK _ COLOR Ġ-> Ġeditor . command ( Editor Button . BACK _ COLOR , Ġparam !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . IMAGE Ġ-> Ġwhen Ġ( image Button Action ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġ-> ĠToast ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. makeText ( context , Ġ" Image Ġhandler Ġnot Ġimplemented !", ĠToast . LENGTH _ LONG ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġimage Button Action ?. invoke () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . LINK Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . getSelection Ġ{ Ġvalue Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselection Ġ= ĠGson (). fromJson < Map < String , ĠInt >>( value ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selection [" length "] !! Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! editor . select ing Link ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSetup Ġdialog Ġview ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinfl ated View Ġ= ĠLayoutInflater . from ( context ). inflate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . layout . address _ input _ dialog , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparent Ġas ĠViewGroup ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġaddress Input : ĠText Input EditText ? Ġ= Ġinfl ated View . findViewById ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . address _ input ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMaterial AlertDialog Builder ( context , Ġdialog Style ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . setView ( in fl ated View ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . set Positive Button ( R . string . ok ) Ġ{ Ġ_, Ġ_ Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġurl Value Ġ= Ġaddress Input ?. text . toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( url Value . startsWith (" http :// ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ|| Ġurl Value . startsWith (" https :// ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhide Menu () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . command ( Editor Button . LINK , Ġurl Value ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . link _ missing _ protocol , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . LENGTH _ LONG ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . set Negative Button ( R . string . cancel ) Ġ{ Ġ_, Ġ_ Ġ-> Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . command ( Editor Button . LINK , Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . make ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroot View , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . link _ empty _ warning , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSn ackbar . LENGTH _ LONG ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġeditor . command ( type ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠPre paration ĊĠĠĠ Ġprivate Ġfun Ġhide Menu () Ġ{ ĊĠĠĠĠĠĠĠ Ġmenu Button . setColor Filter ( button De activated Color ) ĊĠĠĠĠĠĠĠ Ġeditor Menu Container . visibility Ġ= ĠView . GONE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġshow Menu () Ġ{ ĊĠĠĠĠĠĠĠ Ġmenu Button . setColor Filter ( button Activated Color ) ĊĠĠĠĠĠĠĠ Ġeditor Menu Container . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġeditor . refresh Style () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Listeners ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( show Toolbar ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSetup Ġui Ġhandlers Ġfor Ġeditor Ġmenu ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Bus . on (" style ", Ġ" style _${ Editor Button . SIZE }") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . run On Ui Thread Ġ{ ĠfontSize TextView . text Ġ= Ġ( it Ġas ĠString ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Bus . on (" style ", Ġ" style _${ Editor Button . FORE _ COLOR }") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Color Ġ= Ġrgb To Hex ( it Ġas ĠString ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selected Color Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . run On Ui Thread Ġ{ ĠtextColor Palette . selected Color Ġ= Ġselected Color Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Bus . on (" style ", Ġ" style _${ Editor Button . BACK _ COLOR }") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġselected Color Ġ= Ġrgb To Hex ( it Ġas ĠString ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( selected Color Ġ!= Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . run On Ui Thread Ġ{ Ġhighlight Color Palette . selected Color Ġ= Ġselected Color Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . NORMAL , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 2 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 4 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 5 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . H 6 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). forEach Ġ{ Ġstyle Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Bus . on (" style ", Ġ" style _$ style ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġit Ġas ĠBoolean ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . run On Ui Thread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Format Heading Blocks [ style ]?. background Resource Ġ= Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ-> ĠR . drawable . round _ rectangle _ blue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠR . drawable . round _ rectangle _ white ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . BOLD , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . ITAL IC , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . UNDER LINE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . STR IK ETH ROUGH , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ CENTER , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ FULL , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ LEFT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ RIGHT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . SUB SCRIPT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . SUPER SCRIPT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . CODE _ VIEW , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . BLOCK _ CODE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . BLOCK _ QUOTE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor Button . LINK ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). forEach Ġ{ Ġstyle Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Bus . on (" style ", Ġ" style _$ style ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġit Ġas ĠBoolean ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . run On Ui Thread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Format Buttons [ style ]?. setColor Filter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ-> Ġbutton Activated Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġbutton De activated Color ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor Toolbar . setup Listeners ( context ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġmenu Button . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( editor Menu Container . visibility ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠView . VISIBLE Ġ-> Ġhide Menu () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġshow Menu () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġ// ĠElse Ġdo Ġnothing Ġas Ġthis Ġis Ġnot Ġnecessary ĊĊĠĠĠ Ġfun Ġremove Listeners () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( show Toolbar ) Ġevent Bus . unsubscribe (" style ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠClass Ġserve Ġas Ġa Ġcontainer Ġof Ġoptions Ġto Ġbe Ġtransmitted Ġto Ġthe Ġeditor Ġto Ġset Ġit Ġup Ċ Ġ*/ Ċ class ĠOptions Ġ{ ĊĠĠĠ Ġvar Ġplace Holder : ĠString Ġ= Ġ" Start Ġwriting ..." ĊĠĠĠ Ġvar Ġimage Button Action : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull ĊĠĠĠ Ġvar Ġbuttons Layout Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠEditor Button . UN DO , ĊĠĠĠĠĠĠĠ ĠEditor Button . RE DO , ĊĠĠĠĠĠĠĠ ĠEditor Button . IMAGE , ĊĠĠĠĠĠĠĠ ĠEditor Button . LINK , ĊĠĠĠĠĠĠĠ ĠEditor Button . BOLD , ĊĠĠĠĠĠĠĠ ĠEditor Button . ITAL IC , ĊĠĠĠĠĠĠĠ ĠEditor Button . UNDER LINE , ĊĠĠĠĠĠĠĠ ĠEditor Button . SUB SCRIPT , ĊĠĠĠĠĠĠĠ ĠEditor Button . SUPER SCRIPT , ĊĠĠĠĠĠĠĠ ĠEditor Button . STR IK ETH ROUGH , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ LEFT , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ CENTER , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ RIGHT , ĊĠĠĠĠĠĠĠ ĠEditor Button . JUST IFY _ FULL , ĊĠĠĠĠĠĠĠ ĠEditor Button . ORDER ED , ĊĠĠĠĠĠĠĠ ĠEditor Button . UN ORDER ED , ĊĠĠĠĠĠĠĠ ĠEditor Button . NORMAL , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 1 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 2 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 3 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 4 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 5 , ĊĠĠĠĠĠĠĠ ĠEditor Button . H 6 , ĊĠĠĠĠĠĠĠ ĠEditor Button . IND ENT , ĊĠĠĠĠĠĠĠ ĠEditor Button . OUT D ENT , ĊĠĠĠĠĠĠĠ ĠEditor Button . BLOCK _ QUOTE , ĊĠĠĠĠĠĠĠ ĠEditor Button . BLOCK _ CODE , ĊĠĠĠĠĠĠĠ ĠEditor Button . CODE _ VIEW ĊĠĠĠ Ġ) ĊĠĠĠ Ġvar Ġbutton Activated Color : ĠInt Ġ= ĠColor . CY AN ĊĠĠĠ Ġvar Ġbutton De activated Color : ĠInt Ġ= ĠColor . GRAY ĊĠĠĠ Ġvar Ġon Initialized : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull ĊĠĠĠ Ġvar Ġshow Toolbar Ġ= Ġtrue ĊĠĠĠ Ġvar Ġshow Menu Button Ġ= Ġtrue ĊĠĠĠ Ġvar ĠreadOnly Ġ= Ġfalse ĊĊĠĠĠ Ġ@ Style Res ĊĠĠĠ Ġvar Ġdialog Style Ġ= ĊĠĠĠĠĠĠĠ Ġcom . google . android . material . R . style . Theme Overlay _ Material Components _ Material AlertDialog ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod Ġto Ġsetup Ġthe Ġplaceholder Ġtext Ġfor Ġthe Ġweb Ġview Ġtext Ġarea ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġplace Holder ( text : ĠString ) Ġ= Ġthis . apply Ġ{ Ġplace Holder Ġ= Ġtext Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġthe Ġcall Ġback Ġto Ġbe Ġexecuted Ġwhen Ġthe Ġimage Ġbutton Ġis Ġclicked ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġon Image Button Clicked ( action : ĠRunnable ) Ġ= Ġthis . apply Ġ{ Ġimage Button Action Ġ= Ġ{ Ġaction . run () Ġ} Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġthe Ġcustom Ġlayout Ġfor Ġthe Ġbuttons Ġtoolbar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġbutton Layout ( layout : ĠList < Int >) Ġ= Ġthis . apply Ġ{ Ġbuttons Layout Ġ= Ġlayout Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġthe Ġcolor Ġof Ġthe Ġactivated Ġbuttons Ġin Ġthe Ġtoolbar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġbutton Activated Color Resource ( res : ĠInt ) Ġ= Ġthis . apply Ġ{ Ġbutton Activated Color Ġ= Ġres Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġthe Ġcolor Ġof Ġthe Ġde - ct iv ated Ġbuttons Ġin Ġthe Ġtoolbar ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġbutton De activated Color Resource ( res : ĠInt ) Ġ= Ġthis . apply Ġ{ Ġbutton De activated Color Ġ= Ġres Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġthe Ġcallback Ġto Ġbe Ġexecuted Ġon Ġeditor Ġinitialized ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġon Initialized ( action : ĠRunnable ) Ġ= Ġthis . apply Ġ{ Ġon Initialized Ġ= Ġ{ Ġaction . run () Ġ} Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġwhether Ġthe Ġtoolbar Ġmust Ġbe Ġhidden Ġor Ġnot ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġshow Toolbar ( show : ĠBoolean ) Ġ= Ġthis . apply Ġ{ Ġshow Toolbar Ġ= Ġshow Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDefine Ġwhether Ġthe Ġtext Ġview Ġis Ġdisabled Ġor Ġnot Ġ( read Ġonly ) ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠreadOnly ( disable : ĠBoolean ) Ġ= Ġthis . apply Ġ{ ĠreadOnly Ġ= Ġdisable Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Field ĊĠĠĠĠĠĠĠ Ġval ĠDEFAULT Ġ= ĠOptions () ĊĠĠĠ Ġ} Ċ }