added get_visual_selection method