Hello,
I'm trying to integrate a CEF wrapper into OTP, Erlang-based platform/environment (https://www.erlang.org/). Unfortunately with Erlang I don't have any possibility to run any code in the main thread, it always runs in one of many threads created by the Erlang VM (BEAM). I naively thought it shouldn't be a problem as long as I do everything UI-related in this thread, but after spending a lot of time on this I just can't manage to make this work.
I managed to make event dispatching work with manual calls to g_main_context_iteration() with the separate GMainContext created by Chrome in this case for some reason (see https://github.com/chromium/chromium/bl ... #L390-L397 where it explicitly checks for being run on the main thread), but now the problem is that my OnScheduleMessagePumpWork() is not getting called and so nothing happens -- the browser window just remains blank.
Would anybody have any idea about what could be preventing it from being called? I should also mention that in a simple example creating the browser from another thread things work perfectly fine, so perhaps it is not even that which triggers the problem but something else that OTP does, but I have really no idea what could it be.
Thanks in advance for any help!
VZ