|IRC Nick||Time (GMT-7)||Message|
Q: I correctly understand that FF has one plugin instance for all tabs, but IE not?
|star__||07:09||I am create in main plugin object static boost::mutex mutex; field, and try to lock in plugin API, but in IE in some case (i don't undertand in which) mutex not locked if i open several tabs.
Can someone describe plugin lifecycle in IE?
|JuanDaugherty||08:09||you mean in more detail than on firebreath,org?
btw, the class reference there, wonder how often it's synced with current sources?
anyway star__ , taxilian or someone will have to say, but my impression is that's an issue somewhat beyond the scope of fb
which is concern with things from the browser-plugin i/f in a browser independent way and looking from that interface into the plugin
|star__||08:09||No, i want to say, that my quastion is: why in FF, Chrome a i can say that i have more than one tab that uses my plugin, but in ie no?
From http://firebreath.org/display/documentation/Plugin+Lifecycle : "Global and static variables may never be reset and are shared among all plugin instances"
Its correct for all IE tabs, tha all static variables from "Plugin Object" will be the same?
|taxilian||08:09||star__: yes, all IE tabs your static variables will be the same
star__: but the mutex won't do you any good; they aren't running on different threads
it's all on the same thread
JuanDaugherty: assuming the script is still working, the class reference is synced nightly
|JuanDaugherty||08:09||the thing with regsvr trapping went away when I made an architectural change in my plugin|
|star__||08:09||IE9, W7, i create breakpoint in void vnPTZ::StaticInitialize(), and it called twice when i create 2 tabs and load page with plugin.
|JuanDaugherty||08:09||if I'm going to subclass the pluginwindow, is the WindowAttached event the right time to do so?|
|taxilian||08:09||when you say subclass the window; you're talking about the HWND?
or changing which PluginWindow object is used?
actually both I think
|taxilian||08:09||dont' subclass the HWND
make your own
subclassing the HWND will cuase a lot of weird issues
if you want to provide your own PluginWindow class you don't need to subclass the HWND because the base PluginWindowWin class that you'll extend will do it for you
and you do that by overriding the factory method in your Factory.cpp
look at FactoryBase (in PluginCore) for details
|JuanDaugherty||08:09||will do, and doing this now. BTW, based on my experience, I don't recommend people use VS2010 Express with starting out with FB|
|taxilian||08:09||honestly I don't recommend using vs2010 express at all|
|JuanDaugherty||08:09||I think it will probably build an already developed plugin though|
|taxilian||08:09||or vs express at all. but it's a lot free-er than the other alternatives, so I understand why they do =]|
|JuanDaugherty||08:09||well I never had problems with it before now
but I'm not limited to C++, do a lot of other stuff
|taxilian||08:09||getting firebreath to work on vs express is a real hack|
|star__||08:09||@taxilian: i understand, they aren't running on different threads. But i create thread, and i need that it will be only one for all tabs.|
|JuanDaugherty||08:09||so you don't get "frustrated" but if you're not reaonably sensible to irritation you can't deal with something like that|
|taxilian||08:09||star__: so you set it up in StaticInitialize, you take it down in StaticDeinitialize
and they will all be the same process
|star__||08:09||the same process for all tabs?|
|taxilian||08:09||one plugin, one process
doesn't matter what tabs or windows, as long as it is the same instance of IE
and I don't think IE supports multiple instances anymore
so all windows are the same instance
|star__||08:09||but ie9 call StaticInitialize almost for all tabs|
|taxilian||08:09||then that is a first; I've never seen that happen before
it's possible they changed the way they handle activex in a recent update, I suppose
|star__||09:09||IE9 creates 3 diffrents processes
4th reused already opened processes
|taxilian||09:09||previously IE9 has always shared a process for a given activex control|
|JuanDaugherty||09:09||has anyone used a FB AX plugin in non-browser contexts?
guess conceptuall similar on mac as far as binding a handler for a mime type
in that case "anyone" didn't refer to this channel
|star__||10:09||JuanDaugherty: we use our lib with many interfaces as browser plugin with FB, as descktop app wit qt, as java application|
|JuanDaugherty||10:09||star__, got it|
|jmort253||16:09||Anyone know if it's normal for Firebreath XCode projects to take forever to build?
I'm experimenting with the PIMPL method of wrapping C++ classes for use by Objective C code, and even the slightest change takes minutes to rebuild.
I realize there's a lot of complexity to wrap up the NPAPI plugins, so if that's just how it is then so be it :) :)
|derick_skibotn||18:09||How do I build a plugin with WebViewMac?|
|taxilian||21:09||FireBreathBot: tell jmort253 xcode has weird issues sometimes with multiple processes; there is a way to set it to only use one or two processes and that usually speeds things up|