You need to disable the autoHide flag. The default hide behavior is due to this flag. You can disable it with the following code snippet.
simplePopup.setAutoHideEnabled( false );
You can also disable it through constructor.
You can control the hide based on some condition by overridding the hide method as
simplepopup = new PopupPanel( false)
{
@Override
public void hide( boolean autoClosed )
{
if( condition met )
{
super.hide();
}
}
};