IRC Log Viewer » #firebreath » 2012-02-17

IRC Nick Time (GMT-7) Message
TheSHEEEP 02:02 Hey, guys. I've got a "small" problem with building FB and using the examples. I've posted it all on the forums: . Would be cool if someone could help me :)
linearray 03:02 I wonder why it tries to include a Mac specific file on windows
that doesn't look right
TheSHEEEP 03:02 what exactly do you mean?
linearray 03:02 <ClInclude Include="..\..\src\PluginCore\Mac\SystemProxyDetectorMac.cpp">
TheSHEEEP 03:02 Ah, now I see
Indeed, doesn't look right.
linearray 03:02 Does building your own plugins work?
TheSHEEEP 03:02 I tried creating an "empty" project using the python script. It had the same problems, yes.
I also noticed that all cases where the wrong tag was, it is either a X11 or Mac ClInclude
Yep, just deleted the examples and ran "prep2010 examples" again, and in all files where such an error occurs it is when including a Mac or X11 file that has sub-nodes.
linearray 03:02 oh, there's a new ticket about this
FireBreathBot 03:02 FIREBREATH-166: Summary: Firebreath 1.6 will not build in Visual Studio 2010
FIREBREATH-166: Assigned To: richard
FIREBREATH-166: Priority: Major, Status: Open,
TheSHEEEP 03:02 Oh.
linearray 03:02 are you running HEAD or 1.6?
TheSHEEEP 03:02 Yeah, I'll add that to the thread. Anyway, you can fix that pretty easily and it still doesn't work for me. It does build the *.dlls, though.
That one:
Nalu 03:02 Hi, Can anyone please tell how to render an opengl image on browser.
Do i need to install glut?
Thanks in advance
Hi, Can anyone please tell how to render an opengl image on browser. Do i need to install glut? Thanks in advance
EvilTengil 06:02 I've implemented OpenGL rendering from a separate thread. However the plugin crashes in Chrome whenever the Plugin is being occluded by the scrollbox in the browser (that is, the visible region of the plugin is changed!)
I think Chrome is destroying the window handle and creates a new one without telling me about it...
Anyone with experience of this issue?
dougma 06:02 are you monitoring onWindowAttached/onWindowDetached messages?
pingvishal 07:02 Hi, am new to firebreath and was looking around for ways to develop a plugin to access the usb port through the browsers. Is this possible with Fb ?
dougma 07:02 umm... you'll probably need a device driver first.
pingvishal 07:02 am planning to interact with mobile phones when they are connected in mass storage mode. would i still need any device driver apart from what windows already provides ?
dougma 07:02 no, you access it as a storage device as per normal.
Nalu 07:02 Hi, Can anyone please tell how to render an opengl image on browser. Thanks in advance
dougma 07:02 Nalu: maybe EvilTengil can help you.
Nalu: why not use webgl? :)
pingvishal 07:02 Dougma: yeah i thought so. which APIs should i look at within FB ?
dougma 07:02 well, you'll just use regular old c++ to access the filesystem won't you?
there is some degree of sandboxing going on with some browsers... so i think you'll just have to try it and see.
pingvishal 07:02 i was also looking at accessing the USB descriptors, events
dougma 07:02 well i can tell you ie9 runs the plugin in a separate process at low integrity level if that helps.
you may find you can't get the events you need
i'd advise a regular old desktop app. :)
pingvishal 07:02 :) i had thought about that but it'd defeat the purpose.
dougma 07:02 what is the purpose?
pingvishal 07:02 want to try displaying the contents on the phone and a way to add/delete files. more like a webpage where people could visit and do it using the browser.
dougma 07:02 they still have to download and install your plugin
pingvishal 07:02 the idea being some of the content will be available from the web portal
dougma 07:02 you could always bundle an .exe with your plugin
install a service or something to assist your plugin
pingvishal 07:02 thats true .. but usually the trusting a browser plugin is easier than a desktop app
dougma 07:02 really!
i don't trust em
pingvishal 07:02 how can i understand the service-plugin interaction ?
dougma 07:02 how can you understand?
pingvishal 07:02 am new to this and hence if there are any place where i can learn about it, would be grateful.
dougma 07:02 communicating from service to plugin is some form of inter-process-comms. firebreath has nothing to help you there.
but we made be over-thinking.
just try it from the plugin if that's what you want to do.
anyway, i gotta go. good luck.
pingvishal 07:02 ok. let me explore.
EvilTengil 08:02 Nalu: It's not completely trivial to render with OpenGL in the browser. Be prepared for a journey full of crashes if you want to implement it :)
There is some horrible example code for how to set up opengl on windows linked from the docs. However, at least for me it doesn't work in Chrome when the plugin container get's occluded in some way.
taxilian 09:02 dougma: surprisingly most USB devices you can access just fine w/ low integrity mode; mass storage devices may be different, however
FireBreathBot 10:02 JIRA issue issue created by georg
taxilian 10:02 !find JSAPI.h
FireBreathBot 10:02 Could not find any tags matching JSAPI.h
taxilian 10:02 !findfile JSAPI.h
FireBreathBot 10:02 Found 2 matching file(s) in the master branch. First 2 are:
FireBreathBot 11:02 JIRA issue issue commented by georg "Repro:
taxilian 11:02 !findfile JSAPIImpl
FireBreathBot 11:02 Found 2 matching file(s) in the master branch. First 2 are:
linearray 11:02 not quite true
taxilian 11:02 which?
linearray 11:02 that the API is copyable
at least JSAPI derives from noncopyable
taxilian 11:02 yeah, we're discussing it
he's getting an error that looks like it's not
but probably it generates the constructor for the subclass and generates an error before it even gets to the base class
linearray 11:02 some people reported problems with prep2010.cmd
taxilian 11:02 yeah
I'm going to look at it
linearray 11:02 I couldn't find a change that might have caused this
taxilian 11:02 trying to fix jira right now, though =]
linearray 11:02 hehe
taxilian 11:02 actually; they probably need to upgrade cmake
I have seen the error before
linearray 11:02 ohh
taxilian 11:02 could be something new, but that's my guess
FireBreathBot 11:02 JIRA issue issue commented by richard "What version of cmake are you on? Can you try upgrading? I've seen this error before with an old..."
FireBreathBot 11:02 JIRA issue issue assigned by georg
JIRA issue issue updated by georg
JIRA issue issue updated by georg
taxilian 12:02 dougma: your variant patch looks good to me; I'm going to run a refresh test on it for a couple of hours, then probably go ahead and pull it in
ron__ 13:02 hi guys
I want to know if I can build a plugin for chrome that add an extra text box in browser top bar
reichi 13:02 that would be an extension
and not npapi plugin
ron__: you want to read this:
aakash 14:02 For a downloader should I use - or
taxilian 14:02 aakash: it kinda depends on what you need in a downloader
aakash 14:02 mp3 downloader with progress bar
taxilian 14:02 hmm. You could probably do it either way; the main advantage to using the browser APIs (BrowserStreams) is that proxies should be taken care of for you
libcurl is harder to use but much more powerful
also will make your binary larger
aakash 14:02 Trying to get BrowserStreams to work since an hour, onStreamCreated fires but onStreamDataArrived never fires
taxilian 14:02 I'd start with SimpleStreamsHelper and modify that to meet your needs
aakash 14:02 I am extending DefaultBrowserStreamHandler
taxilian 14:02 it's a working example
aakash 14:02 ok, will look into. What I could be missing though?
taxilian 14:02 I honestly don't know
I don't use BrowserStreams much; I wrote SimpleStreamsHelper and it's always worked fine =]
aakash 14:02 ok thanks.
taxilian 14:02 dougma: interestingly enough, there seems to be a fairly major memory leak in FBTestPlugin; I'm not yet sure if it's related to your variant replacement, going to test wtihout it
shenberg 19:02 Hey. I'm getting weird behavior with IE on my plugin
taxilian 19:02 shenberg: what kind of weird behavior?
shenberg 19:02 I think understand the problem now
taxilian 19:02 oh good
shenberg 19:02 I'm doing something like browserPtr->getDOMDocument()->callMethod<FB::JSObjectPtr>("createElement", FB::variant_list_of("div"))
This works just fine in chrome/firefox
but fails on IE9
specifically, invoking createElement fails
taxilian 19:02 hmm. yeah, things like that sometimes don't work well in IE and you have to expand the activex side of the DOM abstraction to add support
shenberg 19:02 My guess would have been that since I'm calling it from my plugin JSAPI c'tor then it's failing
but if it isn't supposed to work
that's good to know
taxilian 19:02 it wouldn't surprise me if it doesn't work
you could add a createelement to the AXDOM::Document object and the DOM::Document abstraction
good luck
shenberg 19:02 Hmm, seems easy enough (this is instead of invoking it using the JSObject and hoping for the best, I assume)
then, I use the element I get back
and do some more invocations on it
am I to expect I'll need to abstract out those too? (specifically, I'm setting the div's style.cssText property
taxilian 19:02 using the activex stuff to call CreateElement it'll return a IHTMLElement
shenberg 19:02 )
Yeah, I read the docs for IHTMLDocument2
taxilian 19:02 and that can be converted to an IDispatchEx with QueryInterface and then wrapped back into a IDispatchAPI
and then you keep using it like normal; however, depending on what you're doing you may want to use the AXDOM::Element type
and add to the abstraction there
anyway, I gotta run. I accept patches, remember ;-)
shenberg 19:02 If I get working code, I'll send a pull request on github
shenberg 20:02 taxilian: the "Element inherits Node" abstraction is breaking down in IE since calling createElement returns an IHTMLElement interface to an object which does not have an IHTMLDOMNode interface until it's added to the document
shenberg 21:02 d'oh, my previous statement just plain wrong. COM is a world of hurt that I'd sort of forgotten
taxilian: Never mind my previous statement - I got the code to work. I might be leaking some COM references, but it all sort of works. I'll clean things up tomorrow and send a pull request
taxilian 22:02 shenberg: excellent. Try to use CComPtr objects to avoid leaking objects
and/or CComQIPtr
oh, he's gone
FireBreathBot: tell shenberg uuse CComPtr and CComQIPtr to avoid leaking