SWT Browser has implemented LocationProvider and registered when
initialing XULRunner in JVM, when I tried with SWT.Browser in
debugging, I can see xulrunner
queries for "UChrm" in getFile() and "ChromeML" in getFiles().
In my testing,
A) Hack SWT java code to return "/home/tester/.mozilla/eclipse/chrome"
when getFile() asking for "UChrm".
Result: Nothing happens when I try to visit my Chrome URI.
B) Hacking SWT java code to return an array of Chrome locations when
getFiles() asking for "ChromeML"
"/usr/lib/xulrunner-1.8.0.1/chrome"
"/home/tester/.mozilla/eclipse/chrome"
Result: This time, I can successfully load registered Chrome URIs.
So my question is:
How can we make it work with "UChrm"? Does UChrm suppose to specify
an user Chrome directory?
Because Eclipse SWT.Browser automatically returns "/home/
tester/.mozilla/eclipse/chrome" when asking for "UChrm", bu if I use
"ChromeML", I must hack the SWT open source code.
"ChromeML" is the list of folders where general chrome manifests are
know to exist and should be the folder tag you need to use. You should
be able to add your own directory service provider that handles
"ChromeML" and returns your additional folders.