1. use widget instead of dialog for the recoder. 2. disable close operation. 3. add obsever for recoder.