IRC Log Viewer » #firebreath » 2011-01-10

IRC Nick Time (GMT-7) Message
NoAntzWk 02:01 Hi Richard!
I added more info about InvokeAsync() issue in firebreath-dev (https://groups.google.com/d/msg/firebreath-dev/Ms1V6MVtEfw/I6DCscyTfywJ)
wolfmanfx 07:01 it is possible to capture WM_ERASEBKGND to prevent flickering during brwoser scrolling?
nirvdrum 07:01 You may be able to do it with a system hook.
But I haven't actually tried.
taxilian 08:01 NoAntzWk: yeah, I saw your emails; I'm really confused. Nobody else seems to be having those issues
on the InvokeAsync problem, I mean
the streams I'm not certain
wolfmanfx 09:01 @taxilian i switched now to a own process and it renders ^^ but now GetWindowLongPtr(m_HWND, GWL_WNDPROC); returns zero and i can not intercept the main loop of this window so do you know anything about that? Or anybody else?
taxilian 09:01 hmm. I don't
wolfmanfx 10:01 ah GetLastError says 5 (ERROR_ACCESS_DENIED)
taxilian 10:01 hmm; possibly because your process is low integrety
wolfmanfx 10:01 always this security stuff ^^
taxilian 10:01 wait; are you on IE or firefox?
wolfmanfx 10:01 ff
taxilian 10:01 okay, it's not that, then
I don't know what it is :-/
wolfmanfx 10:01 i am reading a bit and its not allowed throgh process boundiers
taxilian 10:01 ahh. maybe you'll have to somehow save it in the plugin, then restore it before the plugin closes; use some sort of inter-process communication to coordinate it
wolfmanfx 10:01 yeah sure for communication i will use boost::interprocess lib but to retrieve the wnd_proc i have to use GWLP_WNDPROC
taxilian 10:01 right; so you save the WINPROC in your plugin, then you tell the other process to set it's own
then when you shut down you tell the other process to clear its WINPROC and you restore the original
wolfmanfx 10:01 yep
this thing worked with boost thread yesterday
but today i am spawing a process
taxilian 10:01 right
should still be doable, just need to do it slightly differently
wolfmanfx 10:01 what i am trying now is to use the hWnd (which i got form FireBreath) as a parent window so i do not run into any security issues
taxilian 10:01 that's not a bad thought
wolfmanfx 10:01 ..because everyboday on msdn is writing that this is bad thing to playing with other process wnd_procs
taxilian 11:01 yeah, that's probably a good plan
wolfmanfx 12:01 so got it working :)
taxilian 12:01 excelent!
wolfmanfx 12:01 taking the window now as parent
taxilian 12:01 write up a howto somewhere so we can post it on the wiki =]
wolfmanfx 12:01 but before i have to cleanup my code
anyway i think i have todo a self contained example with openGL
thats Firebreath lacking at the moment
taxilian 12:01 that would be fantastic
wolfmanfx 12:01 also it seems that ff and ie are calling the destructors but chrome and safari do not
taxilian 12:01 hmm
that's weird
wolfmanfx 12:01 so the process keeps alive
i mean the destructor is not called
in safari/chrome
taxilian 12:01 I'll have to look into that
wolfmanfx 12:01 the only problem is that i cannot use the brwoserstream
i have to write ipc with shared memory
thats an example on its own
wolfmanfx 12:01 but it seems that onWindowDetached
will be called
taxilian 12:01 yes, it should be called when the window is destroyed
wolfmanfx 12:01 could there be a situation where the window gets destroyed but the plugin should be still alive?
i mean i did not observed such behavoir
sabotaged|wk 15:01 is there a way to register for events in javascript earlier than body onload?
it seems that i'm firing events before this. hmm but i guess then the html page might not be fully constructed or whatever?
taxilian 16:01 sabotaged|wk: you can get events as soon as the plugin loads
that may or may not be before body's onload
FB_GitHubBot 21:01 FireBreath: master Richard Bateman * 11b8554 (1 files in 1 dirs): Fixed compiler warnings on mac/linux - http://bit.ly/hwsWuT