IRC Log Viewer » #firebreath » 2011-06-08

IRC Nick Time (GMT-7) Message
_pq_ 02:06 G'morning
FuzzYspo0N 04:06 ahoy
FireBreathBot 04:06 FuzzYspo0N: 03:23Z <taxilian> tell FuzzYspo0N you have to enable logging for it to end up anywhere; do a search of http://logs.firebreath.org/ for log4cplus. nobody has taken the time to document it on the wiki yet
FuzzYspo0N 04:06 Ah, cool.
taxilian 09:06 morning, ya'll
FuzzYspo0N 09:06 hey
neilg_ 10:06 Hey
After speaking with a southerner I guess y'all just means one person. A group of people is "all y'all". I... have no idea why.
But it amuses me! :)
taxilian 10:06 this is actually true
but that was too much to type
linearray 10:06 ok, so I took off a couple of days to freshen up my C++ skills
now I'm wondering: shouldn't FB::FactoryBasePtr getFactoryInstance() in FactoryBase.h be pure virtual? :)
!findfile FactoryBase.h
FireBreathBot 10:06 Found 1 matching file(s) in the master branch. First 1 are:
src/PluginCore/FactoryBase.h http://goo.gl/SKAie
taxilian 10:06 linearray: you can't have virtual functions, only virtual methods
in other words, it should be pure virtual, except that it isn't part of a class
linearray 10:06 I'm amazingly blind
taxilian 10:06 =]
it's a pattern we use in a few places; we provide the prototype, but the implementation must be provided by the plugin
but I appreciate you taking the time to look over some of the code
and try to find ways to improve it
it's good to have more eyes on the code
too much of FireBreath nobody but me really understands
linearray 11:06 I'm still caught up a bit in the java habits
taxilian 11:06 that is not an uncommon problem
FuzzYspo0N 11:06 eugh, my connection is being unbelievably bad today :/
taxilian 11:06 :-/
FuzzYspo0N 11:06 taxilian, hey. Did you see the screenshot i posted? And thanks for the log info
taxilian 11:06 I did! looks cool
FuzzYspo0N 11:06 heh well :P its just a triangle. But i did manage to get my entire engine running minus render (headless) in the plugin
im rebuilding now with a new version of the window manager in the engine that lets it bind to the window in the plugin instead
hoping it works without hassle :d
taxilian 11:06 I just figure that once you have drawing you're on the righ ttrack
so that's a good sign
really, windows plugins w/ opengl aren't that bad
FuzzYspo0N 11:06 yea, thats the basis for the openGL example/ wiki
taxilian 11:06 it's on Mac and Linux, or if you need windowless, that you get tricky
FuzzYspo0N 11:06 yea. Im well familiar with mac and linux window programming so im hoping i can get something easily enough
taxilian 11:06 heh. mac is significantly different from if you were doing window programming
just FYI
linux… well, I really don't know enough to know, to be honest
FuzzYspo0N 12:06 well i meant iv written a lot of mac stuff :P
on all levels
taxilian 12:06 good
FuzzYspo0N 12:06 so im hoping it will be challenging but not too hard.
cocoa is actually pretty easy overall
taxilian 12:06 the hard part isn't cooca
the hard part is the drawing models
I'd target CoreAnimation first; with CoreAnimation you can create a CAOpenGLLayer (or something like that) and put it in the CALayer
and then you just have to call Invalidate to tell it when to draw
FuzzYspo0N 12:06 yea
taxilian 12:06 after you have drawn
it would be good to have a fallback to CoreGraphics when CA sin't available, though; if you wanted to do that you'll have to draw offscreen and blit
to the CGContext
FuzzYspo0N 12:06 yea i see
when would that not be available?
taxilian 12:06 FF3.x
FuzzYspo0N 12:06 ah, right i forget about the browsers hah. i was thinking safari
taxilian 12:06 Safari's CA support is fantastic
FuzzYspo0N 12:06 yea i was just thinking its pretty awesome and easy hehe
taxilian 12:06 Chrome/Firefox are adequate, but you need to use ICA, which means you need to tell it when to invalidate
FuzzYspo0N 12:06 their sdk even has some examples i think
taxilian 12:06 There is actually an example in FireBreath
FF4 is taking over the FF market, of course, but FF 3.6 is still somewhere around 10%
linearray 12:06 just read this yesterday http://arstechnica.com/web/news/2011/06/may-browser-market-share-microsoft-and-mozillas-continuing-chrome-conundrum.ars
FuzzYspo0N 12:06 i dont think ill worry about that.
linearray 12:06 funny charts
taxilian 12:06 if any of this were to make it into a FireBreath OpenGL abstraction what I'd really like would be to support CG and CA on Mac, Windowed and Windowless on Windows (prolly have to do offscreen/blit for windowless/Win also), and not sure on Linux
linearray: I'm actually impressed that IE6 is as low as it is
linearray 12:06 at least it's not increasing ;)
taxilian 12:06 heh
yes
linearray 12:06 chrome's updating mechanism is undoubtedly the best
taxilian 12:06 heh. despite that many people hate it because it's background :-P
linearray 12:06 well, it's opt-out instead of opt-in
considering that most users don't know what they are doing... ;)
taxilian 12:06 so any of you guys running ipv6 today?
http://test-ipv6.com/
sabotaged|wk 12:06 haha i heard about that
taxilian 12:06 I want you all to know that firebreath.org is running on ipv6
rather is available via ipv6
sabotaged|wk 12:06 one of our devs is going to run our software in IPV6 mode today, to receive IPV6 SIP calls. and post it on the ipv6 facebook group, i think
so anyone can call him :P
FuzzYspo0N 12:06 woot, my rendering manager works
so lets see if it outputs correctly
taxilian 12:06 it astounds me how few ISPs are setting up IPv6
it's really not that hard
sabotaged|wk 12:06 since chrome auto update was mentioned, that reminds me: has anyone seen the issue where upon installation or upgrade of a windows plugin, chrome seems to automatically internally call navigator.plugins.refresh(true)?
because pages with plugins seem to refresh
taxilian 12:06 hmm. that's weird
I haven't seen that
I haven't done much with installers in the last version or two of Chrome, though
FuzzYspo0N 12:06 is there a way to tell chrome to not ask to suspend the plugin while debugging
taxilian 12:06 not that I know of
but if you find one let me know =]
FuzzYspo0N 12:06 cool
weirdly, im not getting any results from glGetString
its always returning null
taxilian 12:06 are you doing everything on a seperate thread?
FuzzYspo0N 12:06 yep
taxilian 12:06 did you try swearing at it?
FuzzYspo0N 12:06 i mean, its rendering lol
its just getString, the rest seems ok
oh wait
fail :)
i just realised the threads are different
i forgot i didnt copy it back into the main thread
taxilian 12:06 hmm. perhaps it is time to update firebreath-boost
just discovered that parts of the version currently there don't work with clang/XCode 4.2
linearray 12:06 hm, I wonder if that helps
taxilian 12:06 the indexing issue? doubtful
but we'll find out, I suppose
can't do it right now, but will try to update it this week
linearray 12:06 I mean, the version history doesn't say anything xcode specific
taxilian 12:06 yeah
linearray 12:06 and they are also not testing with xcode :)
taxilian 12:06 hehe
FuzzYspo0N 12:06 hmm, so taxilian, if the browser just stays suspended when my plugin in running and rendering - any ideas?
taxilian 12:06 that sounds like you're blocking the main thread
my suggestion woudl be to not do that
FuzzYspo0N 13:06 i do sleep though.
hmm
taxilian 13:06 wait, you're sleeping on the main thread??
FuzzYspo0N 13:06 no, lol
in my thread
taxilian 13:06 if the browser is unresponsive it generally means that you're either taking all CPU time or you did something wrong and are blocking on the main thread
FuzzYspo0N 13:06 boost::thread( &lab2d_attach, pwnd->getHWND() );
taxilian 13:06 any mutexes?
FuzzYspo0N 13:06 internally yea
but, does it join that thread
taxilian 13:06 not normally, AFAIK
FuzzYspo0N 13:06 yea, thats the strange thing
I dont return, obviously thats not a good idea.
ahaha. man
i should look closer
i called attach first, and then the thread.
mhilmi 13:06 hey taxilian, where/how should I specify external DLL files that are a requirement for a project? not all that familiar with cmake ..
taxilian 13:06 external DLLs themselves are a deployment issue, not a build issue
are you using delayed loading or direct dependency?
mhilmi 13:06 we want to use delayed loading because we have a handful of DLLs but not all maybe used
taxilian 13:06 okay; are you doing that manually or are you wanting VS to do it for you?
i.e. are you calling LoadLibrary or just expecting the compile r to handle the issue for you?
actually, really all your questions can probably be answered by !wiki Using Libraries
!wiki Using Libraries
FireBreathBot 13:06 8 results found. Note: Results limited to 8
"Using Libraries": http://goo.gl/cUVa6
"Using FireBreath": http://goo.gl/IHwid
"Useful resources": http://goo.gl/sNLLj
"FireBreath Users": http://goo.gl/erPde
"Ideas": http://goo.gl/7QuAp
"Building on Mac OS X": http://goo.gl/iQ1mh
"Event models and drawing models": http://goo.gl/TKO2l
"FireBreath Examples": http://goo.gl/63UJ8
mhilmi 13:06 Okay , I'll check that out first actually
chminx 14:06 Hello
is there anyone with Android experience here ?
I just wrote my own plugin using the examples hat come with the Android source code and, to my suprise, they work
taxilian 14:06 would be interesting to see if anyone can get FireBreath to build for Android
chminx 14:06 I just can't figure out why and I hate not understanding what's happening :) ...... I was wandering if anyone knows how exactly does webkit interact with the plugin
at the moment ~I just have s aimple NPAPI plugin for ANdroid
the thing isthat it has to be done in NDK which does not have much of a c/c++ support
only limited librieries are available
taxilian 14:06 ahh
chminx 14:06 so I had to strip of a lot of things from my own plugin in order to make it work on ANdorid
taxilian 14:06 well, NPAPI is a C api
so makes sense
no need for c++
chminx 14:06 no, but my plugin was mostly in c++ :)
taxilian 14:06 yep
I wish you luck =]
chminx 14:06 haven't looked into Firebreath that much , to be honest.. is it just c ?
taxilian 14:06 no, it's C++
so probably wouldn't work
chminx 14:06 oh, right :))))
no, probably not as is
taxilian 14:06 we'd pretty much lose all advantages that FireBreath gives you if we tried to do it in C
chminx 14:06 well, once I understand how ANdorid does it, I'll come back to shar ethe knowledge, if that helps
atthe moment it's not making much sence... :(
it works, but I don't undesrtand what is the mechanism behind it
so I can't do anything intelligent with it
taxilian 14:06 well, do you understand how a NPAPI plugin works on windows?
or any other desktop app?
chminx 14:06 the thing istha everything on Android is java code and you implement native c in a separate environemtn and tie it up with your application using something called JNI
well, I sort of understand how it works on windows, thanks to you :)
I managed to develop my own NPAPI
taxilian 14:06 hmm. it may be using the old java bindings
yeah, I dunno. let me know when you figure it out
chminx 14:06 :) will do
anyone here with ANdorid experience.. I reallly need someone who knows what browsers do on Android
I'm sorry, that was a question :)
is there anyone who hangs around here that has some knowledge of Android Webkit interworkings ?
taxilian 14:06 not that I'm aware of
chminx 14:06 shame... never mind, it was worth a try
I'll just have to start digging in the ANdorid source code
thank you :) bye
mhilmi 15:06 Hey taxilian, I found the curl library on your git-repo - what's the motivation behind it.. we were actually going to integrate curl in our project, looks like you already did the hard work...
again.. lol
taxilian 15:06 the motivation behind it? I'm using it in one of my projects
it's used by the HTTPService class
library, I should say
there is a HttpRequest object in that lib that uses libcurl and openssl
FuzzYspo0N 16:06 taxilian, http://i.min.us/idmbC2.png
taxilian 16:06 cool =]
FuzzYspo0N 16:06 :)
FuzzYspo0N 17:06 taxilian, any idea why the chrome works but FF wont?
taxilian 17:06 not with that kind of a bug report, no
if you were to give me some more details I might be able to speculate
FuzzYspo0N 17:06 hmm, well, chrome works 100% as expected.firefox loads, and then is straight black
taxilian 17:06 have you tried setting breakpoints? You can make it easier to debug by doing about:config and turning off ipc
FuzzYspo0N 17:06 i havent debugged or anything, i just tried the url ,doesnt render
taxilian 17:06 probably something minorish
FuzzYspo0N 17:06 wondering if its something common
taxilian 17:06 actually… black?
that implies that opengl is running
FuzzYspo0N 17:06 yep, weird cos its not the clear color
oh wait
haha.
god damn.
thats like the 10'th reaally dumb thing today.
taxilian 17:06 figured it out?
FuzzYspo0N 17:06 yea.
My engine runs on an init script. Chrome starts the DLL inside the chrome user app data folder
so i copied a test game into that folder
taxilian 17:06 lol
FuzzYspo0N 17:06 C:\Users\fuzzy\AppData\Local\Google\Chrome\Application\12.0.742.91
now where does FF start
i guess i have some questions about deployment now that its working
taxilian 17:06 look on the wiki at tips and tricks
tells you how to get the path and filename of the plugin .dll
FuzzYspo0N 17:06 yea thats ok
i have the paths :)
I just meant the content say, that needs to be alongside the plugin
the only installation is regsvr32 , it can reside anywhere
taxilian 17:06 if you're smart, you'll install it to the user profile dir somewhere
that way you don't need admin access to install