compositor: add and implement a dropdown surface protocol