push dialog implementation