Recent

Author Topic: Intercept popup (target=_blank) in CEF3 (Chromium)  (Read 2391 times)

SymbolicFrank

  • Hero Member
  • *****
  • Posts: 1313
Intercept popup (target=_blank) in CEF3 (Chromium)
« on: October 27, 2015, 04:55:37 pm »
I have made a simple tabbed browser with CEF3, which works well, except that popups open in their own window.

When a link is clicked with "target=_blank", the OnBeforePopup event fires. So far, so good. I create a new TTabSheet and a new TChromium. Then I set the parent of that new Chromium to the TTabSheet, and I get a SIGSEGV.

Code: [Select]
  Result := TTabSheet.Create(MyPages);
  Result.Parent := MyPages;

  ...
 
  ch := TChromium.Create(Result);
  ch.Parent := Result;    <--- SIGSEGV

After googling and reading what I could find on the Chromium Embedded Framework Forum, it seems that it might be that the popup has already been created, and that I have to attach the ICefBrowser in it to another TChromium. But everything I tried to make that happen resulted in SIGSEGV's as well.

So, I was wondering if someone knows how I can assign the parent without it crashing, or knows of a better solution?

 

TinyPortal © 2005-2018