Closed Bug 83393 Opened 23 years ago Closed 23 years ago

gtkEmbed: re-add psm to gtkEmbed build package

Categories

(Core Graveyard :: Embedding: APIs, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: mcafee, Assigned: mcafee)

References

()

Details

(Keywords: topembed)

Attachments

(10 files)

from bug 82141, we had to yank psm from gtkEmbed to get around a crasher problem. We need to go put psm back and make this work.
Keywords: topembed
I have detected several problems with the embedding manifest which prevent TestGTKEmbed (much saner than gtkEmbed) from working. 1. The help module seems to be a default extension nowadays. For some reason, opening a page with a certificate seems to want to open help.js/xul/css etc so you need them in the manifest if help is built. 2. Classic skin changes. A number of classic skin files such as button.css appear to be missing from the embed manifest. PSM can't pose a XUL dialog properly without the skin.
The patch enables PSM for embedding by uncommenting the psm components and updating the embedding jar manifest. Basically the update consists of using the current of list of what goes in skin/classic/global, content/global and a little bit of skin/classic/communicator. All my testing was done with TestGtkEmbed since I know that is reasonably sane. With the new embed.jar, TestGTKEmbed poses warning dialogs and the certificate info and then loads the https (https://www.fortify.net/sslcheck.html) There is still one problem remaining in the chrome which is some language strings for OK, Cancel are not found so some buttons are blank. This is probably some missing files. I will have a go tomorrow at gettting gtkEmbed to work and fixing the missing strings.
tried this patch, TestGtkEmbed seems fine, gtkEmbed doesn't do anything with the fortify URL but doesn't crash.
*** Bug 81884 has been marked as a duplicate of this bug. ***
ah, thanks to bryner for a clue: NSS won't initialize without a profile directory. I comment out the profile initialization line in TestGtkEmbed.cpp and see the same blank white page that gtkEmbed shows with the fortify url.
Blocks: 82141
Attached patch borrowed from TestGtkEmbed app, this initializes a profile in ~/.gtkEmbed/gtkEmbed. The fortify URL now brings up a cert "dialog" (another gtkEmbed-sized window) and then things digress into JS window errors. It looks like psm is loaded and at least trying to do something at least.
The attached perl script should hopefully make it easier to keep the embedding chrome manifest up to date rather than checking in new versions of embed-jar.mn each time. The script reads the list of directories and files from %embed_files and builds the manifest from that. We could probably incorporate it into the makefile, but for the moment it must be run manually. Usage: ./gen_mn.pl -mozpath /usr/src/mozilla > embed-jar.mn
I have checked gen_mn.pl into the trunk and attached diffs to this bug for changes to the makefile to use the script. I have also attached a diff against gtkEmbed which installs a dummy prompt service as well as including the earlier profile patch. The dummy prompt service ensures we don't run into issues associated with posing XUL based prompt messages. I haven't tried gen_mn.pl on the trunk for a while so I will try that now.
7/6 - 7/9 patches get https working for me on the trunk. We still have form focus problems, e.g. you can't login to bank accounts. I know what needs to happen for that, that should be another bug.
r=mcafee
form focus bug is bug 83201
Indentation is whacked in InitProfile (tabs, four then two space, etc.) and InitPromptService (four, then three?!). Please fix. Otherwise, I can rubber stamp this. Blizzard should bless when he resurfaces, but it seems fine to check this in first, then get any sr= comments from him that I missed. Is there a bug on the strange locprovider ownership? Should there be? sr=brendan@mozilla.org with some indentation uniformity (it'll warm blizzard's heart). /be
fix checked into trunk, with indent fixes for main.cpp that brendan requested ;-)
Running make in embedding/config on Windows fails with the following error after the latest checkin. Any ideas? make-jars -v -d ..\..\dist\WIN32_D.OBJ\bin\chrome -f jar -s ..\..\dist\WIN32_D.O BJ\Embed\tmpchrome +++ making chrome D:/mozilla_src/mozilla/embedding/config => ..\..\dist\WIN32_D .OBJ\bin\chrome/embed.jar error: file '..\..\dist\WIN32_D.OBJ\Embed\tmpchrome/help/content/help/help.xul' doesn't exist at ..\..\config\make-jars.pl line 207, <STDIN> line 2. NMAKE : fatal error U1077: 'perl.exe' : return code '0x2' Stop. NMAKE : fatal error U1077: '"D:\Program Files\Microsoft Visual Studio\VC98\bin\N MAKE.EXE"' : return code '0x2' Stop.
Chak is seeing problems with the latest embed-jar.mn on Win32 because the help module is not built on Win32 by default. I believe the easiest way to sort these kind of problems is to get gen_mn.pl turned on and throw away the static embed-jar.mn. My previous attachment cleans the script up somewhat so I will now try and get it working on Win32.
fyi-the 0.9.2 branch patch doesn't include the prompt service files.
Depends on: 90404
TVL: prompt files are on the trunk. Branch patch needs updating by now, we didn't quite get the trunk right to pass all the other architectures (Win32, IRIX). Branch patch + trunk prompt files works for me on a default linux build.
*** Bug 89109 has been marked as a duplicate of this bug. ***
fix checked in on the trunk, marking fixed. 092 branch people are looking at TestGtkEmbed, please reopen this bug and resummarize to a branch bug if needed.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Clean up verification of dated code change bus
Status: RESOLVED → VERIFIED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: