Danke fürs Testen.
Wenn ich das wichtig verstanden habe hat bei dir mein Code im XE4, XE6 und im Tokyo richtig funktioniert.
Wie schauts mit der kompilierten Version aus, kannst du da den Fehler nachstellen?
Wie ich vermutet habe hat das Delphi 2010 da ein Problem und keinem ist es bis jetzt aufgefallen.
Jetzt ist die Frage was machen die neueren Versionen anders?
Meine Vermutung ist ja das beim erstellen des Form2 ein Flag gesetzt wird das Windows mitteilt das dieses Form Touch fähig ist.
Wir jetzt RecreateWnd im zuge des setzen von PopupParent ausgeführt und so wird das Formular neu erstellt ohne dabei dieses Flag zu setzten.
Leider hab ich noch nichts dergleichen gefunden.
Danke für die Unterstützung soweit.