|IRC Nick||Time (GMT-7)||Message|
|linearray||03:07||taxilian_away: did you do ALL of that yesterday?|
|NoAntzWk||03:07||I'm sorry.... yesterday I left live's chat too suddenly. Taxilian, the fix that you commented to me yesterday about FF onload event, it's the issue FIREBREATH-62. Thanks for your answers linearray and taxilian.|
|FireBreathBot||03:07||FIREBREATH-62: Summary: FireBreath hangs, crashes, and otherwise doesn't work well sometimes in ff4
FIREBREATH-62: Assigned To: richard
FIREBREATH-62: Priority: Major, Status: Closed, http://jira.firebreath.org/browse/FIREBREATH-62
how/why was the bot answering the issue summary?
I don't know ArthurTent... it seems that it detects the jira code tag.
|ArthurTent||03:07||just a test...
|linearray||03:07||there is a timer|
|linearray||03:07||min_age = 60 * 5|
|ArthurTent||03:07||/set min_age = 42*1|
|linearray||03:07||taxilian_away: why are you limited to 5 minutes per video? shareware screencaster? :)|
|someone-noone||04:07||1) If i use "printf" function, where can i see the output?|
|someone-noone||04:07||yes, i mean, should it displayed somewhere in browser?|
if you need to log a lot, use log4cplus: http://www.firebreath.org/display/documentation/Logging
|someone-noone||04:07||another problem: my debugging (xcode4 + firefox) doesn't work. I add printf() function into createPlugin() and put breakpoint there. Then i'm making 1)"Attach to process"-> firefox-bin; 2) Debug->Continue; 3) refreshing the page with plugin but xcode doesn't stop on breakpoint...
tnx a lot about logging
|linearray||04:07||what firefox version?|
|linearray||04:07||doesn't that run plugins out-of-process?|
|someone-noone||04:07||It creates "Firefox plugin process" for each plugin if you meant that
Also i disabled "Load symbols lazily"
|linearray||04:07||yes, I think you would need to attach to the correct plugin process for your breakpoint to hit|
|someone-noone||04:07||tnx, i will try that|
|linearray||04:07||or you turn off out-of-process plugins: http://www.firebreath.org/display/documentation/Debugging+Plugins|
|someone-noone||04:07||i need to reconnect and try that :D brb
Everything works now! Tnx a lot!
|gargle||04:07||Hi all :)|
|gargle||04:07||perhaps you could answer to my question ...
Do you know the list of functions removed in firefox 5 compare to Firefox 4
|linearray||04:07||why do you ask
|gargle||04:07||in fact, i write a plugin which run under firefox 4 but not under Firefox 5 ...
run on Firefox 3.6 too
|gargle||04:07||on Firefox 5, just some functions crash, not all
|linearray||04:07||like error messages
http://www.mozilla.com/en-US/firefox/5.0/releasenotes/buglist.html this is the complete list of changes
|gargle||04:07||Firefox tell the plugin have crashed, and in the console, it's written : "error calling method on NPObject!"|
|gargle||04:07||not really easy ... i don't know how
(i'm under MAC isung xcode)
just did the same 1 hour ago, it works :D
|gargle||04:07||nice :) thanks a lot, i will try|
|someone-noone||04:07||I've created a new project and trying to rewrite BasicMediaPlayer plugin step by step for understanding how it works. I've copied drawInCGLContext implementation and got linkage error. Seems to be it couldn't find OpenGL libs. I've added to Mac/projectDef.cmake find_library(OPENGL_FRAMEWORK OpenGL) line but it didn't help. What am i doing wrong?|
|linearray||05:07||do you also target_link_libraries against it?|
|linearray||05:07||take a closer look at firebreath-dev/examples/BasicMediaPlayer/Mac/projectDef.cmake|
|someone-noone||05:07||at first sight i found text near target_link_libraries identical to original project. Only after third look i found the difference. You were right, thx again! But now i got very strange which i can't understand: ld: "absolute addressing (perhaps -mdynamic-no-pic) used in std::bad_alloc::bad_alloc()from Factory.o not allowed in slidable image. Use '-read_only_relocs suppress' to enable text relocs "
should i use -read_only_relocs_suppress?
|linearray||05:07||not the slightest idea
but if BasicMediaPlugin works, then you know that the answer will always be in there :)
|someone-noone||05:07||yeap... but i can't understand where is the problem and what kind is it :D|
|gargle||05:07||sorry, back. can't help you because i don't use mediaPlugin|
|someone-noone||05:07||it seems that i'm wrong using xcode
when i make changes to *.cmake files and trying to build it asks me if it should reload project from disk and i answer "yes"
should i always run prepmac.sh before this?
without prepmac your changes to cmake files will have no effect
|someone-noone||05:07||it seems that i need to recreate project. Too many mistakes i've done :D|
|gargle||05:07||you have update the firebreath version ?|
|someone-noone||05:07||i have the latest|
|someone-noone||06:07||finally it works :D|
|gargle||06:07||prepmac solve your ptoblem ?|
|someone-noone||06:07||yes... actually, i used it before and it didn't help...but i made mistake: i didn't run prepmac when made changes at first time. And probably it broke my project. And there was some things that i didn't understand from first time also thay may cause to this problem too. So i've just recreated project with new "knowledge" and everything works fine :D|
oops, wrong window :)
|someone-noone||06:07||don't fool us. We known that you wanted to do this here :D nice pic
Am i right in this suggestion: Core animation invalidating is better suiting(faster for CPU) for rendering video frames then simple Core animation ?
|taxilian||08:07||someone-noone: except on Safari where ICA is not supported, you want to use ICA instead of CA
however if you build it with ICA in mind you shouldn't need to change anything for CA to work
|arriu||08:07||does Firebreath have support for MouseEntered and MouseExited events? I cannot find them so I am assuming it does not.|
|taxilian||08:07||linearray: I am limited to 5 min per video because I'm using Jing Pro, which limits you to 5 min / video
arriu: depends on the platform
|taxilian||08:07||mac / cocoa yes; not sure about others
don't think so
however if it's a standard windows event it is easy to add
|taxilian||08:07||and send me a patch|
|linearray||08:07||wait, even the pro version limits you to 5 minutes?
that's what the website says
|taxilian||08:07||yeah... I was kinda shocked at that too
and a little miffed
I don't know of any other inexpensive ones that work well, though
there are advantages to doing it 5 min at a time, though
but yeah, I did those all yesterday
more or less one after another
I should have used a better mic as well; they are too quiet
but ahh, well
|linearray||08:07||according to this http://nunojob.wordpress.com/2008/01/02/screencast-app-for-mac-os-x-leopard/ , this is the best http://www.shinywhitebox.com/ishowu-v1/|
|taxilian||08:07||worth looking at when I'm doing the cast from my mac, anyway
whcih for this series I can do
well,I'm going to go get dressed and showered and such. be back in an hour or so
|someone-noone||08:07||VLC can do screencast
File->Open device->Header-> Choose display
|linearray||08:07||yeah i just tried that
doesnt work so well, i'm afraid
|someone-noone||09:07||Question is not related to this channel, but maybe some1 can help me. I'm trying to add 3d party libs to firebreath project on osx as described in manual (by adding target_link_libraries and include_directories) after that i'm running prepmac and trying to build project. And i'm getting "architecture mismatch warning(i386)". My libs are built on x86_64 architecture, they're 100% working - i'm using them in other project in
Even if i change arch to i386 in xcode warnings do not dissapear and i got linkage errors.
|taxilian||09:07||are they only built on x86_64, though?
it could be that it's saying that there aren't any libs there for i386
ld: warning: in /libs/libavutil.50.25.0.dylib, file was built for unsupported file format which is not the architecture being linked (i386)
so i need to build libs for i386 too?
|taxilian||09:07||if you want the plugin to work on all browsers
alternately, if you only care about ff4+ and safari and only care about machines that can run 64 bit, you could just change it to 64 bit only
|someone-noone||09:07||but why universal x86_64 arch is not supported?
afaik, it should be good both for all types of processors and os x versions
|taxilian||09:07||that's not a universal arch
universal means that it compiles both x86_64 *and* i386 into the same "fat" binary
x86_64 is simply 64 bit
|someone-noone||09:07||okay, i understand. Thank you. I thought that x86_64 is universal.... my fault. Going to make fat binaries|
|taxilian||09:07||good plan =]|
|someone-noone||09:07||What does extra enter key mean?|
|taxilian||09:07||he means that your message was very very long for a single line
and included about a paragraph instead of a sentence or two as is more common
he's giving you a hard time, is what it means =]
|someone-noone||09:07||okay :) i will try to form my questions in short sentences in future|
|linearray||09:07||I'm just joking because it happened to you for the 100. time :)|
|someone-noone||09:07||i see :) I just want to ask questions that will annoy another users as less as possible.
So i thought if questions will be in message, it will annoy less then in several
now i see that it doesn't
|taxilian||09:07||heh. no worries; middle ground is often the best|
|linearray||09:07||yeah, don't worry, there's no price tag on irc messages|
|taxilian||09:07||besides, we're usually fairly hard to annoy in here; primarily annoyed by incompetence and stupidity (not ignorance — there is a difference!) and people that expect us to do all the work for them|
|linearray||09:07||if there were, i'd be broke by now|
|someone-noone||09:07||i understand you. And thank you for understanding me|
|FireBreathBot||10:07||JIRA issue http://jira.firebreath.org/browse/FIREBREATH-110 issue commented by richard "Interesting; that is going to require some looking into."|
|gargle||10:07||do you look the issue 94 in the bug tracker ?|
|FireBreathBot||10:07||FIREBREATH-94: Summary: return variant based on wstring
FIREBREATH-94: Assigned To: richard
FIREBREATH-94: Priority: Major, Status: Open, http://jira.firebreath.org/browse/FIREBREATH-94
do you have an idea where the problem come from ?
|taxilian||10:07||gargle: I haven't had a chance yet; have you tried it on windows?
it's possible that somehow our UTF8 conversion stuff has gotten broken
|gargle||10:07||no, on mac only|
|taxilian||10:07||hmm. I'll try to get to this soon; I've just been swamped|
|gargle||10:07||mmm, don"t uderstand, i write all the test code
ok, but don"t worry, I don't want to force you ;)
|taxilian||10:07||sorry :-/ that one is likely not going to be simple to troubleshoot
it sounds like the conversion functions to convert from wchar_t to utf8 char may not be functioning correctly
you could step through the conversion by manually converting it with FB::wstring_to_utf8
and see what the result is
|gargle||10:07||ok, i will try
another thing, do you have plugin problem with the Firefox 5 ? (Mac) the plugin is well detected, some function work but other not ... all worked fine on 3.6 firefox version ...
|taxilian||10:07||I have not had any issues so far
but you are not the only one to report issues; I do not know what may be causing them
|gargle||10:07||it occurs when functions return std::string, but i don"t know if it's the cause ...
functions which return int are ok
(and function which return FB::variant crash too)
nothing actually returns FB::variant; FB::variant gets converted to an NPVariant before being returned to the browser
|gargle||10:07||ok, but i try FB::variant, std::wstring and std::string --> fail
int --> ok
|taxilian||10:07||FB::variant doesn't factor into that
because if you return an int it is converted ot a FB::variant
there is no difference between having a FB::variant return value and having a std::string return value if you return a string to the FB::variant
|taxilian||10:07||so if you return an int from the function that has a FB::variant return type it should work fine|
|gargle||10:07||no, i return only int, no variant|
|taxilian||10:07||dude… there is no "no variant"
everything you return is a variant
that's what I'm trying to tell you
if you have the function so it can return FB::variant and then you return 5 it will work
there is absolutely no difference between returning 5 and returning FB::variant(5)
|someone-noone||10:07||just another stupid question: is there any tool on mac that shows file's arch ? "file" doesn't seem to work|
|taxilian||10:07||file should work|
|gargle||10:07||the error message using firebug is : "Error calling method on NPObject"|
|linearray||10:07||someone-noone: you can also look into 'otool'|
|someone-noone||10:07||it just tell me that file is library and nothing about arch.
|taxilian||10:07||that's because ff4 and later have a bug that the exception message doesn't get passed
you have to attach a debugger to it to find out what actually happened
someone-noone: what is the exact line it output?
libvorbisfile.a: current ar archive random library
|taxilian||10:07||interesting; I guess i've never tried it on a .a|
|someone-noone||10:07||otool -h libvorbisfile.a
cputype = 16777223
how can i decode this info ? :D
|taxilian||10:07||try lipo -info
or the obnoxious version:
.lmgt mac os find architecture of file
|FireBreathBot||10:07||Let me google that for you: http://goo.gl/0ZqHa|
|someone-noone||10:07||thx! lipo works!
And do not think that i'm not using search before asking questions
Just i used another query that didn't give me answer on it
|someone-noone||10:07||i respect your time
but anyway thx
I do that partially just to be annoying, mostly just so you know how I found it
sometimes searching for specific types of things takes some practice, and seeing examples of what produced the useful result can be helpful
|someone-noone||10:07||okay :) <3 you
yes...agreed with you... i just thought you(or another user of this channel) know answer, so it will not take your time
|taxilian||10:07||oh, no problem at all|
|someone-noone||10:07||now i'm going to solve my real life problems. So i will not be here for several days.
I will miss on you and linearray <3
|taxilian||10:07||lol. try not to have too much fun|
|someone-noone||10:07||hope i didn't annoy you. If not, i will come and ask more stupid questions :D|
|taxilian||10:07||lol. not at all
can't help it, but the way you put it sounds like your troubleshooting involves kidnapping and gunfights ;)
|someone-noone||11:07||and sorry for my english. I'm re-reading my messages that make me blushing (not sure if it's right word. I used google translate :D). I will promice that i will improve my skills :D|
|taxilian||11:07||lol. no worries; it's at least as good as my Russian|
|someone-noone||11:07||no gunfights, just need to help my gf. But if to compare it to gunfights, i can say that this similar things :D
this is similar things &
|taxilian||11:07||lol. well, good luck|
|linearray||11:07||boost is totally crazy
I should make it a habit not doing anything before checking whether boost already has it implemented
|taxilian||11:07||linearray: that's actually a very good diea
|Sajty||11:07||I've got the keyboard working on linux, but I get graphical glitches in the game, what isn't there normally
is firefox using the videomemory?
|taxilian||11:07||you got graphics working too? opengl?|
|Sajty||11:07||SDL input + Ogre
it would not surprise me in the least if the browser is using video memory
I would love to see an example of how you did that
I couldn't get opengl working =]
|Sajty||11:07||I will make pull request today|
|Sajty||11:07||basically I inject the mouse button event into SDL with a fake mask value
Damn, I have 1GB video memory, Isn't that enough for both? :S
|taxilian||11:07||one would think. on windows the way you avoid that is by using a seperate thread
not sure on linux
|Sajty||11:07||I use separate thread and a separated .so for the game|
|taxilian||11:07||if somehow your opengl contexts are clashing that would cause video glitches, though|
also it crashes with this all the time
|Sajty||12:07||interesting...when I enable dom.ipc.plugins.enabled, its not even starting. Is the AttachWindow called from main thread?|
|taxilian||14:07||linearray: http://www.firebreath.org/display/documentation/FireBreath+development+video+tutorials at the bottom there are two files for ActiveX now
about 20 minutes worth
created with Camtasia
|Sajty||14:07||nice videos :D|
|taxilian||15:07||fixing the first one
the opacity of the camera is wrong
|ronuchit||15:07||is richard here|
|taxilian||15:07||yes, I am|
|ronuchit||15:07||hi, i'm having a lot of trouble understanding how to utilize a plugin to print a new image file type to the browser window
it's a file similar to jpeg
so in mypluginapi.cpp, i created a new method that loads the characters of the file into a memory buffer
and i'm not sure how to then print the contents of that buffer to the browser window
|taxilian||15:07||first of all, there is no reason you'd need to ask me specifically that question
there are several people in this room who could help you with that
secondly, what platform/
|taxilian||15:07||have you read my blog post on drawing on windows?|
the thing is i'm not sure how to get the pointer to the pluginwindow
|taxilian||15:07||go read it again, then
because it's there
I'll give you a hint, though: it's not in the API
|ronuchit||15:07||this is something i tried to do:
shared_ptr<PelicanImagingPlugin> strongPlugin = m_plugin->lock();
window = strongPlugin->GetWindow();
yeah, so i tried those 4 lines of code
|taxilian||15:07||that might work; depends on whether or not the window has been attached yet or not|
|ronuchit||15:07||but compiler doesn't recognize shared_ptr|
|taxilian||15:07||shared_ptr is a boost::shared_ptr
so you need the namespace unless you specified it already
|ronuchit||15:07||am i supposed to include a file?
let me try that
|taxilian||15:07||however, how much have you changed since you ran fbgen?
answer my question
|ronuchit||15:07||what do you mean?
i haven't changed any files except this mypluginapi.cpp
go read your files again
because you're obviously not really looking at the code that is there
there is already a getPlugin() method on that object
that returns the plugin
and if you had really read http://colonelpanic.net/2010/11/firebreath-tips-drawing-on-windows/ you wouldn't need to ask me where to get the PluginWindow, because it tells you in the first section
or if you had opened the myplugin.cpp and myplugin.h files you would see that the pluginwindow is passed to several functions - event handlers - in that file
and all of this would be relatively clear
so I'm not sure where you got confused; it seems clear to me, but if it isn't please help me fix it
|ronuchit||15:07||^ yes i opened those files, but i thought since those functions are only called once each, they wouldn't be particularly useful for what i'm doing|
|taxilian||15:07||they are critical to what you're doing
you can't do any drawing at all until after AttachedEvent is called
if you try to call anything before that, you will crash because the window isn't there
you can't do any drawing after DetachedEvent is called
and doing drawing inside your API class doesn't make any sense at all
though you technically can do it
but if you go look at your API class it already has a getPlugin call that shows you the datatype to use
sorry, I'm not trying to be rude; I'm probably sounding harsher than I intend to
|ronuchit||15:07||so getPlugin returns a pointer to myplugin....and with that pointer I can call the functions of myplugin.cpp that are already going to be called when the plugin object is created?
i don't see the point of that
|taxilian||15:07||use good object oriented design; put things in the place where they originate. Drawing code could go in it's own object if you wanted, or in the plugin object… but the JSAPI object? That's silly
but as to "the point of that", it does exactly what you were trying to do in the code you pasted me; that's why I pointed you at it.
you access the functions of mypluginapi and then when needed it calls into myplugin
|ronuchit||15:07||"when needed it calls into myplugin" is that automatically done?|
|taxilian||15:07||no; that's what you do
but if you're checking things related to the pluginwindow none of that should work or be hooked up until after AttachedEvent
because otherwise there *is* not pluginwindow
which is why it doesn't make sense for the api to call the winodw directly
rather, have the plugin know about the window and the api talks to the plugin as needed
|ronuchit||15:07||would you mind explaining in more detail AttachedEvent and how to call it? i read your docs but i'm still pretty confused on that
|taxilian||16:07||you don't ever call AttachedEvent
it is called by the browser
it is an event that your plugin handles that lets you know that there is now a window available
|ronuchit||16:07||what would cause the browser to call it
|taxilian||16:07||the window getting set
AttachedEvent is called when the window is given to the plugin
DetachedEvent is called when the window is about to go away
|ronuchit||16:07||ah i see
so are these automatically called or would i have to set the window myself
|taxilian||16:07||they are automatically called|
|ronuchit||16:07||ok, so you're saying that I should make sure attachedevent has been called before beginning my drawing|
|Sajty||16:07||Damn, SDL is getting wrong Display, when I call XFlush before initializing SDL. If I dont call Xflush, I get BadWindow error when IPC is enabled. if IPC is disabled, everything works.
I think there is some timing problem.
|ronuchit||16:07||how to check status of attachedevent?|
|taxilian||16:07||ronuchit: attachedevent is designed to be where you set up your drawing
|ronuchit||16:07||well this is weird
var plugin = document.getElementById("ronPlugin"); plugin.load("test.ron");
|taxilian||16:07||most likely your plugin isn't loading properly|
|ronuchit||16:07||it says "load" is not a method