This sendRequest and onRequest seems a bit unwieldy, is there any
decent way to debug this? I tried to debug in chrome-extension:// but
of course my manifest doesn't have permissions for that protocol so it
gets to executeScript and stops. Tried adding chrome-extension://*/*
to my manifest but that protocol isn't allowed to be added.

Console.log doesn't seem to actually log stuff when you're inside a
browser action popup, and all I get is unhelpful error messages like:
"Uncaught SyntaxError: Unexpected end of input" which I understand is
an issue with my syntax and I've screwed it up somewhere, but its a
frustrating mess  just to /try/ to get a browseraction popup to see a
password!

Any help with this would be appreciated, I don't want to go and dump
code here and wait for it to be fixed, but pointers/tips would be
appreciated definitiley:

console.log('Gonna set up the listener');
                                chrome.extension.onRequest.addListener(
                                        function(request,sender,sendResponse) {
                                                alert('We got a response of 
'+request.Passwd)
                                                pass=request.Passwd;
                                                sendResponse({});
                                });
                                console.log('Gonna set up the tab query');
                                chrome.tabs.getSelected(null,
                                        function(tab) {
                                                        
document.getElementById('Domain').value=tab.url;
                                                        console.log('Setting up 
the query code');
                                                        var codestr=
                                                        'var forms,i,form,n;'+
                                                        'forms = 
document.forms;'+
                                                                'for(n=0; 
n<forms.length; ++n) {'+
                                                                        'form = 
forms[n];for (i=0; i<form.length; ++i) {'+
                                                                                
'if (form[i].type.toLowerCase() == \'password\' && '+
                                                                                
        'form[i].value.length>1) {'+
                                                                                
                'console.log(\'Pass is\'+form[i].value);'
                                                                                
                'chrome.extension.sendRequest({Passwd:form[i].value});'
                                                                                
'}'+
                                                                        '}'+
                                                                '}';
                                                                
console.log('Executing query code');
                                                        
chrome.tabs.executeScript(tab.id,{code:codestr},function(){
                                                                
console.log('Got callback');
                                                                if(pass && 
pass!='') {
                                                                        
console.log('Pass is not empty');
                                                                        
document.getElementById('Passwd').value=pass;
                                                                        
SGPLocal();
                                                                        
console.log('Done');
                                                                }
                                                        });
                                        });


On Nov 24, 11:37 pm, Aaron Boodman <a...@google.com> wrote:
> Keith, we don't have the feature to get a result from executeScript()
> yet, but you can workaround by having the script you execute send a
> message back to the extension. For details, see:
>
> http://code.google.com/chrome/extensions/messaging.html
>
> - a
>
>
>
> On Tue, Nov 24, 2009 at 3:34 PM, Nick Baum <nickb...@chromium.org> wrote:
> > +chromium-extensions
>
> > On Tue, Nov 24, 2009 at 3:28 PM, Keith Cirkel <keitha...@gmail.com> wrote:
>
> >> It wasn't for me at least... which is why I came to here.
> >> On a similar note to my first problem, how I can I get a variable from the
> >> executed script to the callback function? What I want to do is something
> >> like execudeScript(tab.id,{code:'var i=10;'},function(i){console.log(i));
> >> and it be 10. Is that possible?
>
> >> On Tue, Nov 24, 2009 at 11:23 PM, Nick Baum <nickb...@google.com> wrote:
>
> >>> Is there any way we can make these errors point to the actual file & line
> >>> where the error occurred?
> >>> chrome/ExtensionProcessBindings:54 isn't very helpful...
> >>> -Nick
>
> >>> On Tue, Nov 24, 2009 at 2:17 PM, Erik Kay <erik...@chromium.org> wrote:
>
> >>>> (apologies for resend)
> >>>> Your call to executeScript should use tab.id (an integer), not tab (an
> >>>> object).
> >>>> Erik
>
> >>>> On Tue, Nov 24, 2009 at 12:03 PM, Keithamus <keitha...@gmail.com> wrote:
>
> >>>>> As the title suggests, I am trying to find a way to fill all of the
> >>>>> password boxes on a page, while in a browser action. From what I can
> >>>>> see the best way to do this is using chrome.tabs.executeScript();
>
> >>>>> I'll show you my code so far:
>
> >>>>> var script =
> >>>>>                                        var script = function() {
> >>>>>                                                var forms,i,form,n;
> >>>>>                                                f = document.forms;
> >>>>>                                                for(n=0; n<forms.length;
> >>>>> ++n) {
> >>>>>                                                        form = forms[n];
> >>>>>                                                        for (i=0;
> >>>>> i<form.length; ++i) {
> >>>>>                                                                if
> >>>>> (form[i].type.toLowerCase() == 'password') {
>
> >>>>>  form[i].value=Passwd;
> >>>>>                                                                }
> >>>>>                                                        }
> >>>>>                                                }
> >>>>>                                        }
>
> >>>>>  chrome.tabs.getSelected(null,function(tab) {
>
> >>>>>  chrome.tabs.executeScript(tab,{code:script,allFrames:true})
> >>>>>                                        });
>
> >>>>> When I run this I get the following:
>
> >>>>> Uncaught Error: Invalid value for argument 0. Expected 'integer' but
> >>>>> got 'object'    chrome/ExtensionProcessBindings:54
>
> >>>>> Which is infuriating as it tells me nothing.
>
> >>>>> Am I just noobing this, or am I on the right path? If people could
> >>>>> point me in the right direction that'd be great. Cheers
>
> >>>>> --
>
> >>>>> You received this message because you are subscribed to the Google
> >>>>> Groups "Chromium-extensions" group.
> >>>>> To post to this group, send email to
> >>>>> chromium-extensi...@googlegroups.com.
> >>>>> To unsubscribe from this group, send email to
> >>>>> chromium-extensions+unsubscr...@googlegroups.com.
> >>>>> For more options, visit this group at
> >>>>>http://groups.google.com/group/chromium-extensions?hl=en.
>
> >>>> --
>
> >>>> You received this message because you are subscribed to the Google
> >>>> Groups "Chromium-extensions" group.
> >>>> To post to this group, send email to
> >>>> chromium-extensi...@googlegroups.com.
> >>>> To unsubscribe from this group, send email to
> >>>> chromium-extensions+unsubscr...@googlegroups.com.
> >>>> For more options, visit this group at
> >>>>http://groups.google.com/group/chromium-extensions?hl=en.
>
> > --
>
> > You received this message because you are subscribed to the Google Groups
> > "Chromium-extensions" group.
> > To post to this group, send email to chromium-extensi...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > chromium-extensions+unsubscr...@googlegroups.com.
> > For more options, visit this group at
> >http://groups.google.com/group/chromium-extensions?hl=en.

--

You received this message because you are subscribed to the Google Groups 
"Chromium-extensions" group.
To post to this group, send email to chromium-extensi...@googlegroups.com.
To unsubscribe from this group, send email to 
chromium-extensions+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/chromium-extensions?hl=en.


Reply via email to