better dropdown handling