package Ġde . ka . jam it . t calc . ui . home . category Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġdagger . h ilt . android . Android EntryPoint Ċ import Ġde . ka . jam it . t calc . R Ċ import Ġde . ka . jam it . t calc . base . Base Dialog Fragment Ċ import Ġde . ka . jam it . t calc . databinding . Dialog Category Binding Ċ Ċ /** Ċ Ġ* ĠA Ġdialog Ġfor Ġpicking Ġa Ġcategory . Ċ Ġ* Ċ Ġ* ĠCreated Ġby ĠThomas ĠH of mann Ġon Ġ 1 0 . 0 7 . 2 0 Ċ Ġ**/ Ċ // ĠWork around Ġfor Ġhttps :// github . com / google / d agger / issues / 1 9 0 4 Ċ abstract Ġclass ĠBase Category Dialog Fragment Ġ: ĠBase Dialog Fragment < Dialog Category Binding , ĠCategory Dialog ViewModel >( ĊĠĠĠĠĠĠĠ ĠR . layout . dialog _ category , ĊĠĠĠĠĠĠĠ ĠCategory Dialog ViewModel :: class , ĊĠĠĠĠĠĠĠ ĠDialog Mode . DIALOG , ĊĠĠĠĠĠĠĠ Ġcancell able Ġ= Ġtrue Ċ ) Ċ Ċ @ Android EntryPoint Ċ class ĠCategory Dialog Ġ: ĠBase Category Dialog Fragment () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Handle ( element : ĠAny ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( element Ġis ĠCategory Dialog ViewModel . Choose ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( element . id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle (). apply Ġ{ Ġput Int ( ID _ KEY , Ġelement . id ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss Dialog With Result ( RESULT _ KEY , Ġbundle ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdismiss Allow ing State Loss () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Arguments Received ( bundle : ĠBundle ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= Ġbundle . getInt ( ID _ KEY ) ĊĠĠĠĠĠĠĠ ĠviewModel . update With ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠID _ KEY Ġ= Ġ"_ k _ id " ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠRESULT _ KEY Ġ= Ġ"_ k _ cat _ res " ĊĠĠĠ Ġ} Ċ }