Add
public void SetAsChild(IntPtr parentHandle)
{
var self = (cef_window_info_t_windows*)_self;
self->parent_window = parentHandle;
self->style = (uint)(WindowStyles.WS_CHILD
| WindowStyles.WS_CLIPCHILDREN
| WindowStyles.WS_CLIPSIBLINGS
| WindowStyles.WS_TABSTOP
| WindowStyles.WS_VISIBLE)
;
}
this method to CefWindowInfo.cs, and use it instead of Parent property. You window becomes overlapped 'due to no styles set. And then use it like:
windowInfo.SetAsChild(customPopUp.Handle);
Later you need setup parent correctly, 'cause in your's situation you will get, that window invisible, due to parenthesis issues. I.e. you probably want pass CefWebBrowserPopUp control's handle instead of forms handle (but in general form, also is ok, but you need move CefWebBrowserPopUp login to PopupForm2.
I attach this changes.
See attached sample