add popover support and data api