- // Doing "Notify" here ensures that our OnDismiss() is called and so we
- // also Destroy() ourselves. We could use Dismiss() and call Destroy()
- // explicitly from here as well.
- DismissAndNotify();
+ if ( !m_delayShow )
+ {
+ // Doing "Notify" here ensures that our OnDismiss() is called and so we
+ // also Destroy() ourselves. We could use Dismiss() and call Destroy()
+ // explicitly from here as well.
+ DismissAndNotify();
+
+ return;
+ }
+
+ m_delayShow = false;
+
+ if ( m_timeout )
+ m_timer.Start(m_timeout, true);
+
+ DoShow();