Peculiar issue with TAdvToolbarForm and MSHTML


I have just issued an update that now extensively uses a ribbon toolbar.

I have had several reports of a problem with a sub-form that is shown modally and includes a ribbon and an MSHTML based HTML editor. For the users experiencing the issue, the HTML editor no longer functions and the form acts as it is not the frontmost window. In fact, clicking Alt will display the shortcuts on the advanced toolbar of the main form below.

It appears to be some kind of clash between the MSHTML object and TAdvToolbar, but I am unable to reproduce the problem on our system to investigate.

I would appreciate any suggestions for what I might to narrow down of address the issue.



I can reproduce the issue on a test machine now. I can confirm that the MSHTML editor works fine if the form class is TForm, but fails if the class is TAdvToolbarForm.

Can you think of anything in TAdvToolbarForm that could cause it to redirect messages to the main form?

I am open to any ideas of what to test or workarounds to try.

I am also content to leave the form class as TForm if it is possible to disable the duplicate title bars.



If it helps it is this line in TAdvToolBarForm.CreateParams that breaks the compatibility:

Params.Style := Params.Style and not WS_CAPTION or WS_POPUP or WS_SYSMENU;

Specifically if I remove WS_POPUP then it works fine (but of course the dialog then looks ugly).