package Ġcom . in z . z . note _ book . view . dialog Ċ Ċ import Ġandroid . graphics . Point Ċ import Ġandroid . text . Editable Ċ import Ġandroid . text . Text Watcher Ċ import Ġandroid . view . KeyEvent Ċ import Ġandroid . view . View Ċ import Ġandroid . view . input method . Editor Info Ċ import Ġandroidx . fragment . app . Dialog Fragment Ċ import Ġcom . in z . z . base . view . Abs Base Dialog Fragment Ċ import Ġcom . in z . z . note _ book . R Ċ import Ġcom . qm uite am . qm ui . util . QM UI Keyboard Helper Ċ import Ġkotlinx . android . synt hetic . main . dialog _ search .* Ċ Ċ /** Ċ Ġ* Ġæ Ĳ ľ ç´ł çķĮéĿ¢ Ċ Ġ* Ġ@ author ĠZ h eng lj Ċ Ġ* Ġ@ version Ġ 1 . 0 . 0 Ċ Ġ* ĠCreate Ġby Ġin z Ġin Ġ 2 0 2 0 / 0 9 / 1 5 Ġ 1 0 : 4 0 . Ċ Ġ*/ Ċ abstract Ġclass ĠSearch Dialog Ġ: ĠAbs Base Dialog Fragment (), ĠText Watcher Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġsearch Dialog Listener : ĠSearch Dialog Listener ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġinit Window () Ġ{ ĊĠĠĠĠĠĠĠ Ġset Style ( Dialog Fragment . STYLE _ NO _ FRAME , ĠR . style . Note Book App Theme _ Dialog ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . dialog _ search ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit View () Ġ{ ĊĠĠĠĠĠĠĠ Ġdialog _ search _ top _ left _ iv . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss Allow ing State Loss () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġdialog _ search _ top _ search _ et . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . add TextChanged Listener ( this @ Search Dialog ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . setOn Editor ActionListener Ġ{ Ġv , Ġaction Id , Ġevent Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( action Id Ġ== ĠEditor Info . IME _ ACTION _ SEARCH ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsearch Ġ= Ġthis . text ?. toString () Ġ?: Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsearch Dialog Listener ?. on Search Click ( search , Ġv ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss Allow ing State Loss () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ setOn Editor ActionListener Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Data () Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbefore TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġcount : ĠInt , Ġafter : ĠInt ) Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġbefore : ĠInt , Ġcount : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsearch Dialog Listener ?. on Search Content Change ( s ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġafter TextChanged ( s : ĠEdit able ?) Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĠĠĠĠĠĠĠ Ġdialog ?. window ?. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsize Ġ= ĠPoint () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . window Manager . default Display . get Real Size ( size ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlp Ġ= Ġthis . attributes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlp . height Ġ= Ġsize . y ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlp . width Ġ= Ġsize . x ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . attributes Ġ= Ġlp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . setBackground Drawable Resource ( android . R . color . transparent ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ ĠQ M UI Keyboard Helper . show Keyboard ( dialog _ search _ top _ search _ et , Ġtrue ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// //////////////////////////////////////////////////////////////////////// / ĊĠĠĠ Ġ// ĠOPEN ĊĠĠĠ Ġ// //////////////////////////////////////////////////////////////////////// / ĊĊĠĠĠ Ġinterface ĠSearch Dialog Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġon Search Click ( search : ĠString , Ġv : ĠView ?) ĊĊĠĠĠĠĠĠĠ Ġfun Ġon Search Content Change ( search : ĠCharSequence ?) ĊĠĠĠ Ġ} Ċ Ċ }