some refactoring with transparent dropdown