r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[Plugin-2] Browser Plugins

Pekr
10-May-2006
[643]
... still we need imo ability to use networking/security model of 
browser, for those who need it (networking via browser). The question 
is with security - should plug-in allow default rebol security? That 
is the question ....
JoshM
10-May-2006
[644x4]
Proxy settings: I think the simplest thing to do here is to modify 
whatever REBOL code is detecting the proxy settings to import the 
automatic proxy configuration script. REBOL is far more suited to 
parsing text files and interpreting information than C code. As a 
side note, we're not importing any settings via the plugin itself, 
we're just letting REBOL do whatever it does normally.
Browser networking: I could be completely out of my mind, but I'm 
pretty sure that the browser sets up and tears down connections with 
each HTTP request. In other words, there's no "open connection" that 
we can just tap into -- the browser is initiating new requests for 
each page. To move to an architecture like that for plugin networking 
calls doesn't make much sense to me.......maybe I'm mis-understanding....
Pekr: if Mozilla implements eval, then yes.
Mozilla: I'm looking at npruntime now. Looks interesting.
Pekr
10-May-2006
[648]
JoshM: eval is ECMA script (java script) facility, so mozilla should 
have it. In fact, the idea came from the old plug-in group, where 
Micha posted some code which was supposed to work, should I find 
it?
JoshM
10-May-2006
[649x3]
Mozilla: I think the problem with hosting the Mozilla control in 
IE with a wrapper is two-fold:

 (1) one more wrapper layer slows things down (a problem for high-performance 
 apps, e.g. graphics-intensive)

 (2) according to that page, there's no scripting support. that's 
 a major bummer because we need at least do-browser, not to mention 
 the possibility of DOM access.
Pekr: sure. thanks.
Mozilla scripting: As a side note, right now we're implementing scripting 
via xpcon. I didn't know about this new npruntime model, so we may 
switch to that for the next version of the plugin.
Pekr
10-May-2006
[652]
ok, I thought that the wrapper allows that, but there is aparently 
some limitation .... well, at least, having ns plug-in seems to work 
for the rest of the world, getting npruntime support on-board would 
be nice addition too ...
JoshM
10-May-2006
[653x3]
Mozilla: This opens up a good discussion. What I really like about 
npruntime is the native access to the DOM. On IE, COM gives us that 
too. The problem/question is -- maybe you guys have ideas -- how 
to expose those C++ reference counted objects to REBOL clients?
to REBOL code, I should say
Only Carl might know the answer to that question, but at least you 
can see the problem :)
Cyphre
10-May-2006
[656]
Josh, thanks for explanation about the delayed events. What a pity 
you cannot improve this also in Rebol2.x version as this problem 
sheds bad light upon Rebol/View apps (which uses drag'n'drop and 
simmilar features).
JoshM
10-May-2006
[657x2]
Yes....we're looking into that. I'm sure there's a way.
There's always a way :)
Cyphre
10-May-2006
[659x2]
Henrik: event throtling: maybe you could use the event time filtering/compression 
made by Gabriele or Romano for that purpose? Or write your own.
Josh: so you basically need to replace WndProc handler with a plugin 
specific one right?
JoshM
10-May-2006
[661x2]
Well....the problem is that the plugin has to handle its own window 
events because of the COM architecture. And REBOL has to handle its 
own events for other reasons. Soo.....maybe instead of an invisible 
proxy window, we can make REBOL's window a real window that sits 
on top of the plugin window, then it would get its events directly.
That's what I'm thinking, anyway. This is still all prototype-stage.
Cyphre
10-May-2006
[663]
Yep, understood. That's probably why the current plugin also cannot 
detect 'activate and 'deactivate events when you are focusing/unfousing 
the browser window. Do you think this could be also improved? It 
is useful for application to know when user switched to other window 
than the one with running plugin so it could manage the /View GUI 
appropriately (focusing/unfocusing fields, areas etc.)
JoshM
10-May-2006
[664]
Yes...now the question is, does deactivate mean switching outside 
of the browser? or does deactivate meaning switching outside the 
plugin, i.e. to a HTML text box on the page?
Cyphre
10-May-2006
[665]
I think 'deactivate should mean that the plugin window is loosing 
the 'event focus' ie no mouse/keyboard events are detected. So I 
think it should yield the event in both cases.
JoshM
10-May-2006
[666x2]
agreed.
I'm surprised you're not getting this event already, because the 
plugin is passing WM_KILLFOCUS/WM_SETFOCUS to REBOL. i'll have to 
investigate that.
Cyphre
10-May-2006
[668]
In some browser you can focus/unfocus the plugin object using JS 
too so this should be also catched.(I hope this is the same event 
as when you click outside the plugin win)
JoshM
10-May-2006
[669]
we'll want to make that a test case when we implement this.
Cyphre
10-May-2006
[670]
I haven't checked it in the lates plugin version, but it didn't work 
in the odler one...I'll make simple test script so you can play with 
it.
JoshM
10-May-2006
[671x9]
thanks
Announcement: REBOL Technologies is pleased to release the beta-6 
version of REBOL/Plugin for Internet Explorer, which is based on 
REBOL/View 1.3.2!
For information about the plugin, and to install or upgrade to the 
1.3.2 plugin, please go to the following URL: http://www.rebol.com/web-plugin.html
This release is only an update to 1.3.2 -- no new features have been 
added.
Also, we have included information about the alpha version of REBOL/Plugin 
for Mozilla-based browsers. As we have mentioned before, this is 
a very early-stage release that contains numerous problems. Please 
do not use it on production machines.
We would love your feedback on both the IE and Mozilla releases. 
Please post specific feature requests and bugs in the corresponding 
checklists here on the Plugin world. And feel free to discuss everything 
here :)
Sorry, I should clarify: Please post in the "Plugin" checks here 
in the REBOL3 world.
It's been a long day. :)
Make that "checklists" Ahh. I need to get off the computer.
Volker
10-May-2006
[680x3]
networking: i would onlyuse browser forthe same things. if i do a 
"read http://*"in rebol, that is connect/read/disconnect too? If 
something need performance i would use own implementations. Although, 
IIRC when i check cgi-headers, i see usually "keep-alive" from the 
browser. But no expert there.
proxy-parsing: IIRC when i once looked, proxy-settings can be javascript 
which returns the right proxy.
ANd when i am awake again, i check out these plugins .)
Henrik
10-May-2006
[683]
cyphre, I already wrote my own event filtering, but had a bit of 
hope that it would be possible to do internally for R3. I just personally 
think it's a bit too high level a place to solve the problem.
ScottT
11-May-2006
[684]
wrt own window on top to do the window messages, etc -- I'm all for 
slamming itself on top of the browser, and not going through it to 
embed view.   or make it a "windowed" control, which is how IE does 
SELECT elements.  The complexity there is having it crop to be part 
of the page.  I think wndows media control is like that, where you 
can pick a windowed version, which performs better (probably from 
similar things that you are running into.  MSAgent runs in the browser, 
and is allowed ro roam anywhere on the screen in an irregularly shaped 
winoow.  It also starts a server process which handles all calls 
to the interactions with applications like IE and Office that take 
advantage of that aspect.  It's all asynchronous/multithreaded, and 
shuts down automatically when there are no more client controls to 
serve.


The DOM provides screen position information, but the downside is 
that with embedded controls like Adobe SVG viewer and Flash is that 
they will respond correctly to transparency (showing html page background 
through transparent parts of control  -- never got REBOL plugin to 
do that, which has something to do with wmode="transparent"  or something 
similar
Pekr
11-May-2006
[685x5]
Anamonitor demo shows some strange white border at the bottom ...
and under my WindowsXP, the plug-in is obtrusive - while it is installed,I 
get IE message each time, asking me if I want to allow activeX control 
- it happens on main plug-in demo page
imo we should pretty soon decide on the issue of embedding method. 
I don't agree with putting window on top, if it will not allow for 
plugin to be part of tabbing mechanism in browser, simply focusable/unfocusable. 
It would be also nice to get multiple instances per session even 
for 1.3.2 - are you sure it is threading related problem?
And definitely - interactin part - we need that config access plus 
progress bar - without progress bar, it has strange feeling, as you 
can't know, if something is happening or not, which leads you to 
reloading the page ...
RIM does not run here ... in fact, imo if something breaks, then 
no other demo does run ... reload of page does not help - we have 
got some strange problem here ... anyone else observing it?
ScottT
11-May-2006
[690]
same here with excess security dialogs.  windows 2000
Pekr
11-May-2006
[691x2]
short report - proxy still not working under IE .....
couldn't I send some args, where would I put set-net? :-)