package Ġorg . opp ia . app . topic . practice Ċ Ċ import Ġandroid . view . View Ċ import Ġandroidx . databinding . Observable Field Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġorg . opp ia . app . fragment . Fragment Scope Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ġ[ ViewModel ] Ġfor Ġshowing Ġskills Ġin Ġpractice Ġfragment . Ġ*/ Ċ @ Fragment Scope Ċ class ĠTopic Pract ice ViewModel Ġ@ Inject Ġconstructor ( ĊĠ Ġprivate Ġval Ġtopic Pract ice Fragment Presenter : ĠTopic Pract ice Fragment Presenter Ċ ) Ġ: ĠViewModel () Ġ{ ĊĊĠ Ġvar Ġis Submit Button Active Ġ= ĠObservable Field < Boolean >( false ) ĊĊĠ Ġfun Ġnotify Selected Skill List ( selected Skill List : ĠArrayList < String >) Ġ{ ĊĠĠĠ Ġis Submit Button Active . set ( selected Skill List . isNotEmpty ()) ĊĠ Ġ} ĊĊĠ Ġfun Ġstart Button Clicked ( v : ĠView ) Ġ{ ĊĠĠĠ Ġtopic Pract ice Fragment Presenter . onStart Button Clicked () ĊĠ Ġ} Ċ } Ċ