revise onChooseDir() function