Как не пытался на реплике поставленной задачи смоделировать подобную ситуацию, не получилось: вызов "не родного" попап скрытой формы всегда на него фокус устанавливает, и менюшка скрывается при его потере, D7
Код:
uses unit1;
procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.Hide;
// Form2.Show;
Form1.PopupMenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
end;