Re: Squeak Browser plugin source and arch

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: Squeak Browser plugin source and arch

Bert Freudenberg-3
Am 02.06.2006 um 02:07 schrieb Brad Fuller:

> Sorry for double posting, I figure that not all squeakland people  
> visit squeak-dev and vice versa.

Cross-posting to vm-dev would make a lot more sense than squeakland.

> I've been looking at the npsqueak source at: http://squeakvm.org/ 
> and have a couple of questions.
> First, I know nothing about how to make a browser plugin, but I'd  
> like to learn.

So you actually just want to write your own plugin, which has nothing  
to do with Squeak?

> Second, I noticed that npsqueak exists only for unix and only for  
> the Netscape browser. I didn't see the code under any other  
> platform, or browser plugin for other browsers. Why is that? How  
> can squeak  execute on other platforms and other browsers (Opera  
> excluded as I heard that it uses the same plugin architecture as  
> Mozilla) with out a plugin?

Can't say for other platforms, I only wrote the unix plugin. All  
browsers on unix adhere to the Netscape plugin specification. So one  
plugin should wok for all, and indeed it does (modulo bugs in either  
the browser or the plugin).

> I guess that's a good place to start my questions. If there is  
> documentation that you can point me to, I'd appreciate it. I see  
> that Bert placed a comment in npunix.c:
>  * At the official Netscape site there's only the PluginSDK30b5 for  
> unix:
>  *
>  * !!! I had to add the missing URLNotify stuff here. If you find  
> an official
>  * !!! version of this file which has it, use it instead.
>  * !!!        April 2000, Bert Freudenberg
>
> which seems to strongly imply that there is little documentation.  
> So, any help is much obliged.

Well, Netscape simply stopped developer support a long time ago. I  
haven't checked if that has gotten better, though. There is  
documentation available at

        http://www.mozilla.org/projects/plugins/

and you might get answers in their forums.

- Bert -

Reply | Threaded
Open this post in threaded view
|

Re: Squeak Browser plugin source and arch

Brad Fuller
Bert Freudenberg wrote:
> Am 02.06.2006 um 02:07 schrieb Brad Fuller:
>> Sorry for double posting, I figure that not all squeakland people
>> visit squeak-dev and vice versa.
> Cross-posting to vm-dev would make a lot more sense than squeakland.
I had a plugin question answered there so it seemed logical, especially
since the plugin comes from the Squeakland download

I get your point though, makes a lot of sense.

>> First, I know nothing about how to make a browser plugin, but I'd
>> like to learn. I've been looking at the npsqueak source at:
>> http://squeakvm.org/ and have a couple of questions.
> So you actually just want to write your own plugin, which has nothing
> to do with Squeak?

I want to learn more about the browser plugins for Squeak. I'd like to
see if streaming is possible. I don't know why squeak would be any
different than other plugins for streaming. I noticed that you return -1
for streaming in npsqueak (I assume NPP_WriteReady() is for streaming).
Any technical reason?

>
>> Second, I noticed that npsqueak exists only for unix and only for the
>> Netscape browser. I didn't see the code under any other platform, or
>> browser plugin for other browsers. Why is that? How can squeak
>> execute on other platforms and other browsers (Opera excluded as I
>> heard that it uses the same plugin architecture as Mozilla) with out
>> a plugin?
>
> Can't say for other platforms, I only wrote the unix plugin. All
> browsers on unix adhere to the Netscape plugin specification. So one
> plugin should wok for all, and indeed it does (modulo bugs in either
> the browser or the plugin).
I'm wondering if the other plugins are proprietary... perhaps people at
Squeakland.com (viewpoints) wrote the plugin? I replied to your msg
there asking this question (don't want these threads to become
complicated ;-) so I just asked that particular question and kept the
technical questions here as you suggest.)

>
>> I guess that's a good place to start my questions. If there is
>> documentation that you can point me to, I'd appreciate it. I see that
>> Bert placed a comment in npunix.c:
>>  * At the official Netscape site there's only the PluginSDK30b5 for
>> unix:
>>  *
>>  * !!! I had to add the missing URLNotify stuff here. If you find an
>> official
>>  * !!! version of this file which has it, use it instead.
>>  * !!!        April 2000, Bert Freudenberg
>>
>> which seems to strongly imply that there is little documentation. So,
>> any help is much obliged.
>
> Well, Netscape simply stopped developer support a long time ago. I
> haven't checked if that has gotten better, though. There is
> documentation available at
>
>     http://www.mozilla.org/projects/plugins/
>
> and you might get answers in their forums.
Thanks I found that last night. Found some docs, and some doesn't exist
as you mentioned.
I'm sure I'll have more questions as I look thru the docs and your code.

Thanks for the reply!

brad
Reply | Threaded
Open this post in threaded view
|

Re: Squeak Browser plugin source and arch

Bert Freudenberg-3
Am 02.06.2006 um 17:51 schrieb Brad Fuller:

> I want to learn more about the browser plugins for Squeak. I'd like to
> see if streaming is possible. I don't know why squeak would be any
> different than other plugins for streaming. I noticed that you  
> return -1
> for streaming in npsqueak (I assume NPP_WriteReady() is for  
> streaming).
> Any technical reason?

No, except that downloading the whole file and giving its handle to  
Squeak is a lot simpler. This way, we reuse the existing file support.

To learn how the plugin works, it might be best to recompile with the  
debug logging enabled (I'm not sure if that's the case in recent  
builds), then set the debug env var, run the browser, and trace the  
log along with the sources. You can ignore npunix.c, it's just the  
glue code from Netscapes SDK. The meat is in npsqueak.c (plugin) and  
sqUnixMozilla.c (vm).

- Bert -