bug fixed, and add button action