Compare commits

..

2342 Commits

Author SHA1 Message Date
(no author)
539ff28988 This commit was manufactured by cvs2svn to create tag 'release_dec5'.
git-svn-id: svn://10.0.0.236/tags/release_dec5@55406 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 06:32:13 +00:00
svn%xmlterm.org
a87bed1342 Initial import of XMLterm extension; not part of default SeaMonkey build
git-svn-id: svn://10.0.0.236/trunk@55405 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 06:32:12 +00:00
sspitzer%netscape.com
357ff16580 new changes from rgoodger@ihug.co.nz. r=sspitzer
this makes it so the create profile wizard uses the generic wizard js
(mozilla/xpfe/global/resources/content/wizard*, mozilla/xpfe/global/resources/content/widgetStateManager.js)


git-svn-id: svn://10.0.0.236/trunk@55404 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 05:53:02 +00:00
rhp%netscape.com
f5f37cbce1 Deleting dead files
git-svn-id: svn://10.0.0.236/trunk@55403 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 05:02:33 +00:00
rhp%netscape.com
6168011fe2 Cleaning up dead files
git-svn-id: svn://10.0.0.236/trunk@55402 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 05:02:18 +00:00
rhp%netscape.com
cb1db91e06 Cleaning up dead files.
git-svn-id: svn://10.0.0.236/trunk@55401 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 05:01:42 +00:00
mcafee%netscape.com
8bebec4c4c Remove trailing slash off of URL.
git-svn-id: svn://10.0.0.236/trunk@55400 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 05:00:25 +00:00
mcafee%netscape.com
e3a62ebe86 Backing BloatTest off to 60 seconds to allow for slower startup :(
git-svn-id: svn://10.0.0.236/trunk@55399 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:56:35 +00:00
rhp%netscape.com
cf83b01b5f Landing new txt - HTML scanning functionality - Bug 19251 - r: rhp (contributed by Ben Bucksch)
git-svn-id: svn://10.0.0.236/trunk@55398 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:55:54 +00:00
Jerry.Kirk%Nexwarecorp.com
272cee0c80 Fixed InvalidateRegion, brought it uptodate with GTK version.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@55397 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:54:59 +00:00
Jerry.Kirk%Nexwarecorp.com
58fdf4bb36 Fixed ::Union by copying the tile list before MergeAdd
r=kedl


git-svn-id: svn://10.0.0.236/trunk@55396 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:53:52 +00:00
rhp%netscape.com
9fface217d Landing new txt to HTML scanning functionality - Bug #: 19251 - r: rhp (contributed by Ben Bucksch)
git-svn-id: svn://10.0.0.236/trunk@55395 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:53:29 +00:00
waterson%netscape.com
509d1e72ed Patches from Franz.Sirl-kernel@lauterbach.com. Get xptcall limping along on PPC/Linux.
git-svn-id: svn://10.0.0.236/trunk@55394 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:48:02 +00:00
rginda%netscape.com
6130dcc35b * README-jsDriver.html
Minor wording changes.

* jsDriver.pl
  Display negative list in output, fix display of test list as part of output (which was broken by the multiple test-list change)
  Added hours field in tastcase duration output (man that sparc20 is slow.)


git-svn-id: svn://10.0.0.236/trunk@55393 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 04:29:18 +00:00
cls%seawood.org
25848ab739 Another attempt to fix bug #18966. Added $(INCLUDES) to AS and fixed irix6.5 detection.
git-svn-id: svn://10.0.0.236/trunk@55392 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 03:28:31 +00:00
danm%netscape.com
78aaa53a28 actually use the 'visible' parameter in NewWebShell. makes new windows from links not be invisible.
git-svn-id: svn://10.0.0.236/trunk@55391 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 01:44:21 +00:00
danm%netscape.com
78f2d4bf20 removing (early) Show() of new, explicitly sized windows (is redundant now, or should be...)
git-svn-id: svn://10.0.0.236/trunk@55390 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 01:42:11 +00:00
danm%netscape.com
947c3cd8c1 adjusting chrome for new _blank windows
git-svn-id: svn://10.0.0.236/trunk@55389 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 01:40:51 +00:00
mcafee%netscape.com
f5e27dc7bc Bloat test debug printfs, removing obsolete NSPR_LOG_MODULES env.
git-svn-id: svn://10.0.0.236/trunk@55388 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 00:47:33 +00:00
leaf%mozilla.org
d362b39624 xcopy gets all interactive when you specify a non-directory destination, and this is hanging the windows build automation. xcopy->copy takes care of this. r=tague
git-svn-id: svn://10.0.0.236/trunk@55387 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 00:13:30 +00:00
waterson%netscape.com
586fad3e08 Make prefs skinnable.
git-svn-id: svn://10.0.0.236/trunk@55386 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 23:57:46 +00:00
waterson%netscape.com
87a9a9877c Bug 20470. Add weak reference from 'controllers' object back to command dispatcher. Miscellaneous cleanup. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55385 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 23:04:22 +00:00
rods%netscape.com
a7d3631f72 now trims white space and makes sure the text is two spaces if empty
r=kmcclusk b=none


git-svn-id: svn://10.0.0.236/trunk@55384 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:48:37 +00:00
rods%netscape.com
1fa69507a8 was adding in the wrong border and padding for fixed width
r=self b 18448


git-svn-id: svn://10.0.0.236/trunk@55383 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:47:04 +00:00
rods%netscape.com
7a55d88518 removed the substraction of the border and padding for fixed width
r=kmcclusk b 18448


git-svn-id: svn://10.0.0.236/trunk@55382 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:45:58 +00:00
rods%netscape.com
dc5c34441e Added block mgr flag to combo and list frame and their internal SelectArea frame
r=(at troy's suggestion), bug 19382


git-svn-id: svn://10.0.0.236/trunk@55381 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:43:26 +00:00
rods%netscape.com
52cc20d7d0 Added a "flags" varaible for combobox creation
r=self, bug 19382


git-svn-id: svn://10.0.0.236/trunk@55380 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:43:19 +00:00
rods%netscape.com
c4e4448cdb Added a "flags" variable for combobox creation
also fixed a a small problem with border padding being added in for fixed size comboboxes
r=self,  bug 19382


git-svn-id: svn://10.0.0.236/trunk@55379 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:43:18 +00:00
sgehani%netscape.com
90081b7cbd Turn on XPInstall cleanup before start on the Mac. (Checkin for dveditz.)
git-svn-id: svn://10.0.0.236/trunk@55378 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:33:51 +00:00
hyatt%netscape.com
189360dda0 Making menu titles really crop.
git-svn-id: svn://10.0.0.236/trunk@55377 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 20:17:10 +00:00
waterson%netscape.com
c21a371d52 Support skins. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55376 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 18:58:31 +00:00
locka%iol.ie
5d4910785f Fixed broken declaration of GetTitle(). Hopefully this is the last of this problem.
git-svn-id: svn://10.0.0.236/trunk@55375 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 18:31:35 +00:00
rhp%netscape.com
f29c9f241f Adding new file - NOT PART OF THE BUILD
git-svn-id: svn://10.0.0.236/trunk@55374 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 16:56:04 +00:00
rjc%netscape.com
1929e1adb0 Small bookmark icon style fix.
git-svn-id: svn://10.0.0.236/trunk@55373 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 12:15:30 +00:00
rjc%netscape.com
d9fa32f51f Try and get icons from RDF graph before falling back to CSS styles. (This allows branding of icons for anonymous search nodes, for example.)
git-svn-id: svn://10.0.0.236/trunk@55372 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 12:11:02 +00:00
rjc%netscape.com
11b56eb688 Fix related links & previous search icons
git-svn-id: svn://10.0.0.236/trunk@55371 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 11:36:21 +00:00
cls%seawood.org
b86bdbfe72 Not sure if this should go under bug #20529 or #19330, who's patch I apparently stole. :) Anyways, rumor has it that OpenBSD has /dev/random too.
git-svn-id: svn://10.0.0.236/trunk@55370 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 11:01:32 +00:00
waterson%netscape.com
efef32ce6e Support skins. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55369 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:48:41 +00:00
hyatt%netscape.com
85fa6d507e Making editor skin-compliant.
git-svn-id: svn://10.0.0.236/trunk@55368 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:43:20 +00:00
waterson%netscape.com
f056c26c3c Make wallet editor skinnable. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55367 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:34:31 +00:00
hyatt%netscape.com
92e15f8c3b XPInstall is a mess. At least making sure it has the global skin until something better can be done.
git-svn-id: svn://10.0.0.236/trunk@55366 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:31:37 +00:00
hyatt%netscape.com
6663542fca Treecells can now have src set on them for images.
git-svn-id: svn://10.0.0.236/trunk@55365 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:21:25 +00:00
rgoodger%ihug.co.nz
904e8dfba3 importing global skin into package skin file, bug 19562
git-svn-id: svn://10.0.0.236/trunk@55364 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:15:17 +00:00
rgoodger%ihug.co.nz
69cfc3a581 imported package skin (profile.css) into these files. (bug 19562)
git-svn-id: svn://10.0.0.236/trunk@55363 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:14:48 +00:00
hyatt%netscape.com
ff1e9211fe Making messengercompose compliant.
git-svn-id: svn://10.0.0.236/trunk@55362 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:10:47 +00:00
waterson%netscape.com
da7cd80889 Move import outside of comment.
git-svn-id: svn://10.0.0.236/trunk@55361 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:07:11 +00:00
waterson%netscape.com
13ceb41576 Remove related-panel.css.
git-svn-id: svn://10.0.0.236/trunk@55360 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:04:02 +00:00
hyatt%netscape.com
ff46654732 Bringing address book into compliance with master skin file rules.
git-svn-id: svn://10.0.0.236/trunk@55359 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 09:00:10 +00:00
cls%seawood.org
7685824c32 Defining RTLD_NOW if not defined by system. Bug #20529
git-svn-id: svn://10.0.0.236/trunk@55358 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:53:00 +00:00
hyatt%netscape.com
d5295d7b10 Making the directory component compliant with master skin file rules. r=goodger
git-svn-id: svn://10.0.0.236/trunk@55357 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:52:26 +00:00
hyatt%netscape.com
5d86e14eda Making history compliant with master skin file rules.
git-svn-id: svn://10.0.0.236/trunk@55356 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:45:01 +00:00
hyatt%netscape.com
f556dc2114 Package compliance for messenger.
git-svn-id: svn://10.0.0.236/trunk@55355 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:28:56 +00:00
hyatt%netscape.com
5cbe773170 Bringing messenger into compliance with master skin file rules.
git-svn-id: svn://10.0.0.236/trunk@55354 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:27:37 +00:00
hyatt%netscape.com
bb7b3ba135 Related links master skin file compliance.
git-svn-id: svn://10.0.0.236/trunk@55353 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:17:15 +00:00
hyatt%netscape.com
be773295ae Making the related package compliant with the master skin file rules.
git-svn-id: svn://10.0.0.236/trunk@55352 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:10:26 +00:00
hyatt%netscape.com
db00ef793b Making sidebar package compliant with skin master file rules.
git-svn-id: svn://10.0.0.236/trunk@55351 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 08:09:21 +00:00
cls%seawood.org
7ae9896327 Added empty throw() on operator new so that gcc 2.95+ doesn't complain about returning NULL.
git-svn-id: svn://10.0.0.236/trunk@55350 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 07:29:35 +00:00
waterson%netscape.com
820584eef4 Bug 20786. Use function object, rather than function, as the thing which is executed, ensuring that the correct bindings are used when the function is shared across several contexts. This checkin is really brendan@mozilla.org; I'm just landing the code.
git-svn-id: svn://10.0.0.236/trunk@55349 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 07:29:25 +00:00
cls%seawood.org
ec38667076 I've been told that NetBSD has /dev/random as well. At worst, it should return 0 rather than fail with that undefined error anyways.
git-svn-id: svn://10.0.0.236/trunk@55348 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 07:26:46 +00:00
cls%seawood.org
ff063a65a9 Added THREAD_FLAG to OS_CFLAGS.
git-svn-id: svn://10.0.0.236/trunk@55347 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:49:44 +00:00
cls%seawood.org
f26e7d057e Add "-p1" to aix's DSO_LDOPTS. Make aix use DSO_LDOPTS when making shared libs.
git-svn-id: svn://10.0.0.236/trunk@55346 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:24:12 +00:00
hyatt%netscape.com
cfa29e85b7 Bring related links package into compliance with master skin file rules.
git-svn-id: svn://10.0.0.236/trunk@55345 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:17:25 +00:00
cls%seawood.org
3634b4908f Instead of testing if /dev/zero is a file, just check if it is readable. Bug #16942 r=granrose (Where are the automated configure checkins?)
git-svn-id: svn://10.0.0.236/trunk@55344 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:16:51 +00:00
hyatt%netscape.com
9e4be4cdca Fix Mac bustage.
git-svn-id: svn://10.0.0.236/trunk@55343 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:10:35 +00:00
sdagley%netscape.com
e3a0197217 Fix build bustage. hyatt removed contentframe.xul from the tree but didn't update the MANIFEST. Bad hyatt.
git-svn-id: svn://10.0.0.236/trunk@55342 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:03:23 +00:00
hyatt%netscape.com
81e58c6c55 Bringing bookmarks into compliance with master skin file rules.
git-svn-id: svn://10.0.0.236/trunk@55341 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 06:01:51 +00:00
hyatt%netscape.com
4f92e21cc4 Bringing navigator package into compliance regarding master skin files.
git-svn-id: svn://10.0.0.236/trunk@55340 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 05:18:53 +00:00
sspitzer%netscape.com
d3ad1a51a2 fix warnings, also use #ifdef NOISY instead of if (gNoisy).
why generate code you aren't going to execute?


git-svn-id: svn://10.0.0.236/trunk@55339 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 05:15:24 +00:00
hyatt%netscape.com
7eefbb611d Shifting scrollbar rules around so that they are loaded always and not just
a part of the global skin.


git-svn-id: svn://10.0.0.236/trunk@55338 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 05:14:48 +00:00
hyatt%netscape.com
e2ffa1474b Making sure the "navigator" package picks up the global skin properly.
git-svn-id: svn://10.0.0.236/trunk@55337 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 05:14:24 +00:00
hyatt%netscape.com
7e1bb9e358 No longer loading the global skin implicitly.
git-svn-id: svn://10.0.0.236/trunk@55336 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 05:13:55 +00:00
hyatt%netscape.com
3d70eed61d Removing build warnings.
git-svn-id: svn://10.0.0.236/trunk@55335 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 04:57:13 +00:00
rginda%netscape.com
ec40cdfc6a Backing out.
git-svn-id: svn://10.0.0.236/trunk@55334 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 04:34:15 +00:00
cls%seawood.org
822df69500 Instead of testing if /dev/zero is a file, just check if it is readable. Bug #16942 r=granrose
git-svn-id: svn://10.0.0.236/trunk@55333 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 03:50:53 +00:00
rginda%netscape.com
9d18559818 -- CHATZILLA CHANGES ONLY --
* events.js, utils.js
Clean up "Function does not always return a value" errors.

* ircbot.js
Got rid of literal tabs
Assorted anti-bit-rot changes


git-svn-id: svn://10.0.0.236/trunk@55332 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 03:47:18 +00:00
rginda%netscape.com
f775b525e1 Checking in JS Component changes for shaver
"<shaverAway> slamm reviewed, I made the diff, it's a tested fix"
I built and ran here as well.


git-svn-id: svn://10.0.0.236/trunk@55331 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 03:36:59 +00:00
tbogard%aol.net
9622913ee0 Fixed the JS console in viewer.
git-svn-id: svn://10.0.0.236/trunk@55330 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 03:02:55 +00:00
syd%netscape.com
565b4458eb Move structure in Windows implementation over to mac and gtk. r=pavlov. All
#if 0 for now. r=Pavlov


git-svn-id: svn://10.0.0.236/trunk@55329 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 02:48:27 +00:00
hyatt%netscape.com
d7908baef5 Fix Linux bustage.
git-svn-id: svn://10.0.0.236/trunk@55328 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 02:24:02 +00:00
rginda%netscape.com
a2d6c52697 * runtests2.pl was renamed to jsDriver.pl
jsDriver.pl now supports multiple lists to be specified in the -l argument,
and directory names as well.  Directory names can also be used in list files.
'Negative' lists are supported as well.  They consist of a list of tests to skip, and are of the same format as the regular lists.

* README-jsDriver.html
  man-like html page describing how to use jsDriver.pl


git-svn-id: svn://10.0.0.236/trunk@55327 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 02:15:22 +00:00
erik%netscape.com
61709561e8 Grabbing the next ID. Does not affect build.
git-svn-id: svn://10.0.0.236/trunk@55326 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 02:14:46 +00:00
hyatt%netscape.com
3443fbb03c Fix Mac bustage.
git-svn-id: svn://10.0.0.236/trunk@55325 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 01:47:15 +00:00
jfrancis%netscape.com
c211707ae9 fix for bug 19130 - hitting escape during ime entry can leave editor without a caret. r=kin
git-svn-id: svn://10.0.0.236/trunk@55324 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 00:29:34 +00:00
blizzard%redhat.com
c031503852 clean up DestroyNativeChildren() so that it doesn't use an external
hash of children and uses the list of children of the nsIWidget.  clean up some of the ambiguities of the focus window reference counting.  make sure that
the mEventCallback isn't set to null until after the OnDestroy() signal is
sent.  make sure that the OnDestroy() method is called when a
delete_event happens on a native widget ( not that we have any of those left, really ).


git-svn-id: svn://10.0.0.236/trunk@55323 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-05 00:19:04 +00:00
cls%seawood.org
4b448ed210 Revert my previous change to use CFLAGS & CXXFLAGS when linking.
git-svn-id: svn://10.0.0.236/trunk@55322 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:52:55 +00:00
hyatt%netscape.com
7e24c61109 Implementing a generalized recycler and arena for all layout frames. Hoping to improve
bug #9489.  Should also definitely fix bug #15916. r=troy


git-svn-id: svn://10.0.0.236/trunk@55321 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:49:50 +00:00
cls%seawood.org
42c76a9aa9 Make the autoconf build use the same defines under Linux as the non-autoconf NSPR build.
git-svn-id: svn://10.0.0.236/trunk@55320 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:49:35 +00:00
joki%netscape.com
09db2943e9 Fix for bug 20663, mem leak in event listeners. r:beard
git-svn-id: svn://10.0.0.236/trunk@55319 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:40:05 +00:00
drapeau%eng.sun.com
f9c8c503ca Fix for minor bug that prevents the module "geturl.cpp" from compiling
with Sun's Workshop compiler.  The error reported by Workshop:
  "nsURLFetcher.h", line 92: Error: Declaration terminated incorrectly.

This is due to a line with only a semicolon on it, looks to be a typo
(extra semicolon).


git-svn-id: svn://10.0.0.236/trunk@55318 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:36:01 +00:00
ssu%netscape.com
15474bfb1f fixes bug #17630. this is not part of tinderbox.
r=sgehani


git-svn-id: svn://10.0.0.236/trunk@55317 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:23:53 +00:00
ssu%netscape.com
f795458a79 fixes bug #17630. allows the control of at most 3 lines of text on the
blue setup background to be displayed.

Affects only windows platforms.

r=sgehani@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55314 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 23:21:26 +00:00
sspitzer%netscape.com
d53721b599 fix warning.
git-svn-id: svn://10.0.0.236/trunk@55313 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 21:37:38 +00:00
sspitzer%netscape.com
f02bbaedf2 fix build warnings by using /* */ style comments instead of //
git-svn-id: svn://10.0.0.236/trunk@55312 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 21:06:49 +00:00
valeski%netscape.com
0d8a2640a3 r=mcafee. 20677 assistance. we now have a scriptable input stream for js
git-svn-id: svn://10.0.0.236/trunk@55311 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 20:31:38 +00:00
valeski%netscape.com
48af9701f2 added files: mozilla/xpcom/io/nsIScriptableInputStream.idl
git-svn-id: svn://10.0.0.236/trunk@55310 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 20:31:09 +00:00
valeski%netscape.com
968ecae850 added files: mozilla/xpcom/io/nsScriptableInputStream.cpp
git-svn-id: svn://10.0.0.236/trunk@55309 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 20:30:13 +00:00
valeski%netscape.com
e875c61670 r=mcafee. 20677 assistance. We now have a scriptable input stream implementation and interface for js. Hurray!
git-svn-id: svn://10.0.0.236/trunk@55308 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 20:29:42 +00:00
cata%netscape.com
8c0c6fbd74 Cleanup time: remove unused interface from build.
git-svn-id: svn://10.0.0.236/trunk@55307 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:59:28 +00:00
sspitzer%netscape.com
14a73bf9f8 remove CanBeRenamed and CanCreateChildren. In most cases, these weren't
implemented or they were just stubs.  I added CanRename and CanCreateSubfolder
(which follow the naming convention, so we'll keep them) without knowing these were there.  I move over the additional logic for special folders (like INBOX, TRASH, etc) in CanBeRenamed to CanRename, and put the logic in one place, in nsMsgFolder::CanRename(), instead of in multiple places.  thanks to alecf for pointing out that CanBeRenamed and CanCreateChildren were already there.


git-svn-id: svn://10.0.0.236/trunk@55306 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:56:06 +00:00
cata%netscape.com
a0c246098c Cleanup time: remove files not in build anymore.
git-svn-id: svn://10.0.0.236/trunk@55305 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:55:52 +00:00
sspitzer%netscape.com
b65b77f70c fix copy and paste errors: CanRename -> CanFileMessages.
It worked, because for nntp servers, both of those are always false.
fix the rename rules so that folders with no children that can't be
renamed are show, but disabled.  remove the oncommand="" for menu items
that are generated as disabled.


git-svn-id: svn://10.0.0.236/trunk@55304 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:52:03 +00:00
cata%netscape.com
979d516b73 Cleanup time: remove unused classes from build.
git-svn-id: svn://10.0.0.236/trunk@55303 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:51:56 +00:00
cata%netscape.com
d0d5a225b0 removed files: mozilla/intl/uconv/src/nsUnicodeDecodeUtil.cpp
git-svn-id: svn://10.0.0.236/trunk@55302 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:50:46 +00:00
cata%netscape.com
96447b4c8f Cleanup time: remove files not in build anymore.
git-svn-id: svn://10.0.0.236/trunk@55301 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:41:50 +00:00
cata%netscape.com
1e339b4e2b Cleanup time: remove unused interface from build.
git-svn-id: svn://10.0.0.236/trunk@55300 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:37:29 +00:00
cata%netscape.com
4d2a6f1b34 Cleanup time: remove files not in build anymore.
git-svn-id: svn://10.0.0.236/trunk@55299 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 19:30:22 +00:00
sspitzer%netscape.com
76418ad5cd prevent news servers with no newsgroups from showing up in the "new folder" dialog folder picker
git-svn-id: svn://10.0.0.236/trunk@55298 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 18:40:24 +00:00
sspitzer%netscape.com
3037a5639d since we only do news subscribe (and not imap subscribe)
and we aren't supporting news categories yet,
we can comment out this rule, since only news servers
should appear in the subscribe dialog.


git-svn-id: svn://10.0.0.236/trunk@55297 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 18:33:14 +00:00
sspitzer%netscape.com
c2e9a22340 fix for #20798. on preflight the folder picker with valid folders.
also, rename SetTitleButton -> SetFolderPicker.  remove dump statements.


git-svn-id: svn://10.0.0.236/trunk@55296 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 18:29:05 +00:00
pierre%netscape.com
6190edd8d7 20747 "[PP] The Font FACE attribute is case-sensitive". FontNameKey now computes the hash-value on lower-case strings. Also added a few out-commented lines in GetScreenResolution that may be useful later for #18136 "Fixing the font size mess".
git-svn-id: svn://10.0.0.236/trunk@55295 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 13:52:15 +00:00
syd%netscape.com
6d45fb32c0 Fix build bustage.
git-svn-id: svn://10.0.0.236/trunk@55294 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 13:27:45 +00:00
rjc%netscape.com
65533e576e Check in an updated Netscape Open Directory dataset.
git-svn-id: svn://10.0.0.236/trunk@55293 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 12:46:29 +00:00
syd%netscape.com
45612f1413 Convert nsISound to use URIs. On windows (Linux to follow) nsSound uses necko to read the URI data
into a buffer, and then sends it to win32 PlaySound to play asynchronously. r=nisheeth r=hyatt.


git-svn-id: svn://10.0.0.236/trunk@55292 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 12:36:10 +00:00
rjc%netscape.com
292b7e59ef Prune out relative URLs that point back to the search server.
git-svn-id: svn://10.0.0.236/trunk@55291 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 12:23:56 +00:00
rjc%netscape.com
e289f4bdbb Implement support for "skiplocal". Also, if resultItemStart isn't specified, try defaulting to "HREF=" and skip past that when looking for the item end.
git-svn-id: svn://10.0.0.236/trunk@55290 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 11:40:53 +00:00
rjc%netscape.com
de66758325 Update LookSmart dataset.
git-svn-id: svn://10.0.0.236/trunk@55289 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 11:39:23 +00:00
rjc%netscape.com
5520183969 Update HotBot dataset... better results.
git-svn-id: svn://10.0.0.236/trunk@55288 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 10:55:41 +00:00
rjc%netscape.com
7efeed2ec5 Testing indicates that we should never trim the resultItemEndStr.
git-svn-id: svn://10.0.0.236/trunk@55287 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 10:55:00 +00:00
warren%netscape.com
fb5ba5251b Fix for linux bustage. Added arguments to NewChannel
git-svn-id: svn://10.0.0.236/trunk@55286 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 10:47:51 +00:00
warren%netscape.com
c7d8a4a439 Added buffer size parameters to NewChannel. Allows for optimization of amount of image data consumed. Bug #20408
git-svn-id: svn://10.0.0.236/trunk@55285 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 10:01:32 +00:00
rjc%netscape.com
a2b15af9ef Found new AOL search dataset, so remove the old one.
git-svn-id: svn://10.0.0.236/trunk@55284 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 09:51:05 +00:00
rjc%netscape.com
9175f05517 Found new AOL search dataset, so let's use it instead of the old one.
git-svn-id: svn://10.0.0.236/trunk@55283 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 09:50:05 +00:00
warren%netscape.com
dfb4125a91 Fixed missing interface in QI
git-svn-id: svn://10.0.0.236/trunk@55282 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 09:48:25 +00:00
rjc%netscape.com
c3f1556235 Better quote support; now handle both single and double quotes.
git-svn-id: svn://10.0.0.236/trunk@55281 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 09:47:40 +00:00
rjc%netscape.com
909b55effa Changes/fixes for AOL search site.
git-svn-id: svn://10.0.0.236/trunk@55280 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 08:22:23 +00:00
waterson%netscape.com
cfccd460a5 Bug 18392. Use XUL document cache for retrieving master document.
git-svn-id: svn://10.0.0.236/trunk@55279 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 07:45:57 +00:00
waterson%netscape.com
40b96f684e Remove NS_ENSURE macros from my little empire. r=caesar
git-svn-id: svn://10.0.0.236/trunk@55278 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 07:41:07 +00:00
waldemar%netscape.com
23207ef36f Clean grammars on allegro to save memory
git-svn-id: svn://10.0.0.236/trunk@55277 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 05:04:08 +00:00
waldemar%netscape.com
77c4947349 Added canonical LR(1) grammars and grammar cleaning
git-svn-id: svn://10.0.0.236/trunk@55276 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 05:03:20 +00:00
waldemar%netscape.com
2ced75f311 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@55275 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 05:01:34 +00:00
waldemar%netscape.com
394c83b71d File Removed.
git-svn-id: svn://10.0.0.236/trunk@55274 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 05:01:06 +00:00
mcafee%netscape.com
86daa4e348 Adding temporary per cmanske's last fix, fixes linux bustage.
git-svn-id: svn://10.0.0.236/trunk@55273 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 03:32:33 +00:00
cmanske%netscape.com
c5f151e490 Fixing build bustage
git-svn-id: svn://10.0.0.236/trunk@55272 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 03:21:12 +00:00
alecf%netscape.com
2d679461dc clean up the addressbook IDL
- use interCaps
- don't use out parameters when they're not needed
- fix JS to match (C++ signatures have not changed)
patch contributed by the always generous Sammy Ford <fuzed@swbell.net>
Thanks!
r=alecf


git-svn-id: svn://10.0.0.236/trunk@55271 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 03:11:36 +00:00
alecf%netscape.com
6f390f3338 move SetParent call to earlier in the subfolder creation process so that the folder has a parent much earlier. This allows us to benefit from the lazy URI parsing I just checked in.
r=sspitzer
just some cleanup work after the previous checkins to fix #20706


git-svn-id: svn://10.0.0.236/trunk@55270 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 03:08:03 +00:00
alecf%netscape.com
5de0d41de9 don't acknowledge that we've loaded accounts until after we've garaunteed that the mail.accountmanager.accounts pref exists. This allows us to call LoadAccounts() before the prefs get loaded, without getting stuck in a state where we have no accounts.
r=putterman
helps fix #20607 for bienvenu


git-svn-id: svn://10.0.0.236/trunk@55269 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 03:02:47 +00:00
alecf%netscape.com
c39011af4c lazily parse the URI so that we never loose the server information before the account manager can load the prefs.
helps to fix #20607 for bienvenu
r=sspitzer, design discussed w/sspitzer and putterman


git-svn-id: svn://10.0.0.236/trunk@55268 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 03:00:22 +00:00
rjc%netscape.com
b41374aee6 Use "_blank" instead of "_BLANK". Review: danm (again)
git-svn-id: svn://10.0.0.236/trunk@55267 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:26:40 +00:00
rjc%netscape.com
c9aecf9327 Use "_BLANK" instead of "_NEW". Review: danm
git-svn-id: svn://10.0.0.236/trunk@55266 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:24:17 +00:00
joki%netscape.com
46824fda78 Fix bug 14836, keep disabled control from responding to events. r:pollmann@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55265 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:22:21 +00:00
pierre%netscape.com
d3cd2afa84 20449 "[Mac] scrolling of fixed positioned elements is broken". Fixed ScrollBits() to take into account the visible region when computing the source rect (and thus the dest rect) and the updateRgn.
git-svn-id: svn://10.0.0.236/trunk@55264 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:17:45 +00:00
pierre%netscape.com
9d454dc56b 20260 "html.css: <sup> and <sub>.elements need explict line-height". Fix from Ian Hickson <py8ieh=bugzilla@bath.ac.uk>.
git-svn-id: svn://10.0.0.236/trunk@55263 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:05:18 +00:00
akkana%netscape.com
7538581ccc Editor README from Daniel Howard <dhoward@numeritech.com>
git-svn-id: svn://10.0.0.236/trunk@55262 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:04:30 +00:00
rjc%netscape.com
55bc378ad7 Add support for search categories.
git-svn-id: svn://10.0.0.236/trunk@55261 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 02:00:24 +00:00
cmanske%netscape.com
9ee1970a3d Finished fix for 13695 (r=danm), basic table editing (bug 6256): cpp r=mjudge, related UI work r=brade
git-svn-id: svn://10.0.0.236/trunk@55260 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:46:23 +00:00
waterson%netscape.com
499a48d730 Bug 20714. Sever link to prototype after faulting in as heavyweight.
git-svn-id: svn://10.0.0.236/trunk@55259 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:45:30 +00:00
sspitzer%netscape.com
d8d4af67e3 use the new folder picker cascading menus in the "copies and folders" panel of the
account setup dialog.  remove cruft in am-copies.*.
fixes #19400.  r=alecf


git-svn-id: svn://10.0.0.236/trunk@55258 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:43:12 +00:00
sspitzer%netscape.com
f471f3544d fix for #20198. always append the profile name to the native path the user
specifies.   this prevents the users from accidently removing more than they
expect when they delete the profile.
fix by racham, r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@55257 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:39:16 +00:00
cmanske%netscape.com
384c4df814 XUL changes for messengercompose to keep in line with UI changes made to editor. r=brade
git-svn-id: svn://10.0.0.236/trunk@55256 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:35:30 +00:00
vidur%netscape.com
14c162f6df Added nsIJSEventListener and nsICSSLoaderObserver
git-svn-id: svn://10.0.0.236/trunk@55255 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:30:27 +00:00
vidur%netscape.com
450067e8ae Changed IID to remove conflict in IIDs.h
git-svn-id: svn://10.0.0.236/trunk@55254 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:29:54 +00:00
vidur%netscape.com
a68ed6e2a5 For bug 17325. Changed signature of css loader methods. R=nisheeth.
git-svn-id: svn://10.0.0.236/trunk@55253 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:29:18 +00:00
vidur%netscape.com
4662ada89f For bug 17325. Added timer-based notifications that can be enabled on a pref. R=nisheeth.
git-svn-id: svn://10.0.0.236/trunk@55252 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:27:46 +00:00
vidur%netscape.com
6eb67e93bd For bug 17325: Added nsICSSLoaderObserver as a way to see when style sheets complete loading. r=pierre.
git-svn-id: svn://10.0.0.236/trunk@55251 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:27:14 +00:00
wtc%netscape.com
26d3075a56 Define HAVE_LOCALTIME_R_POINTER for all new releases (V4.0, V5.0, etc.)
git-svn-id: svn://10.0.0.236/trunk@55250 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:25:33 +00:00
wtc%netscape.com
91481fd052 Print error codes if PR_Connect() fails.
git-svn-id: svn://10.0.0.236/trunk@55249 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:22:01 +00:00
wtc%netscape.com
be4026f658 Bugzilla bug #18500: fixed a bug in _PR_MapOptionName.
git-svn-id: svn://10.0.0.236/trunk@55248 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:20:28 +00:00
dougt%netscape.com
fe5547695c adding some error codes which I will need.
git-svn-id: svn://10.0.0.236/trunk@55247 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:18:48 +00:00
dougt%netscape.com
94ecbedb06 renamed from the hated nsISomethingImpl.
git-svn-id: svn://10.0.0.236/trunk@55246 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:13:44 +00:00
dbragg%netscape.com
fef8da8a31 Changed the tree cell value label in the .xul file and added the .setAttribute property in the .js file to fix bug #20639. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@55245 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:10:57 +00:00
wtc%netscape.com
2f147d0a55 Removed unnecessary header includes. In _PR_MD_GetRandomNoise, changed
"size >= 0" to "size > 0" ('size' is an unsigned type so "size >= 0" would
be always true).


git-svn-id: svn://10.0.0.236/trunk@55244 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:09:09 +00:00
larryh%netscape.com
7e9fc11c82 BugZilla: 19247. makefiles for neutrino platform
git-svn-id: svn://10.0.0.236/trunk@55243 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:09:03 +00:00
wtc%netscape.com
2bf770f3af Bugzilla bug #20770: Solaris 8 has getipnodebyname().
git-svn-id: svn://10.0.0.236/trunk@55242 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:05:04 +00:00
dougt%netscape.com
9381ffc62d Replaced by:
nsLocalFile.h
nsLocalFileUnix.cpp
nsLocalFileUnix.h
nsLocalFileWin.cpp
nsLocalFileWin.h


git-svn-id: svn://10.0.0.236/trunk@55241 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 01:02:45 +00:00
rhp%netscape.com
fa071fe1e3 Fix for vCard crasher display on Mac - bug #: 20564 - r: sspitzer
git-svn-id: svn://10.0.0.236/trunk@55240 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:59:43 +00:00
bryner%uiuc.edu
8b15b44315 More delete --> NS_RELEASE fixes. r=morse.
git-svn-id: svn://10.0.0.236/trunk@55239 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:57:44 +00:00
hangas%netscape.com
1411808b50 Fixes to bustage of the select addresses dialog. Regression 20730 (select addresses dialog broken because of change to treecell), also fixed select addresses dialog bugs 20717, 20720, 19604. r=ducarroz
git-svn-id: svn://10.0.0.236/trunk@55238 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:53:53 +00:00
beard%netscape.com
d194832bb2 removed NativeClosure.java.
git-svn-id: svn://10.0.0.236/trunk@55237 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:32:16 +00:00
despotdaemon%netscape.com
e5a3102969 Pseudo-automatic update of changes made by endico@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@55236 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:31:54 +00:00
norris%netscape.com
6631edc16e Fix instanceof.
git-svn-id: svn://10.0.0.236/trunk@55235 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:21:41 +00:00
robinf%netscape.com
bcd916e231 added bold to gruoup titles; ui positioning tweaks
git-svn-id: svn://10.0.0.236/trunk@55234 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:17:58 +00:00
robinf%netscape.com
090ff0afcb added bold text to group titles; positioning tweaks
git-svn-id: svn://10.0.0.236/trunk@55233 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:06:59 +00:00
robinf%netscape.com
99b65a3bf8 adding bold text to gruoup titles; positioning tweaks
git-svn-id: svn://10.0.0.236/trunk@55232 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-04 00:01:11 +00:00
norris%netscape.com
82eaf33e41 clean up tests
git-svn-id: svn://10.0.0.236/trunk@55231 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:54:36 +00:00
robinf%netscape.com
b9c1422ef5 added bold to group text; positioning tweaks
git-svn-id: svn://10.0.0.236/trunk@55230 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:52:49 +00:00
varada%netscape.com
33c22ccfd8 cleaning up ib.cpp
git-svn-id: svn://10.0.0.236/trunk@55229 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:48:23 +00:00
norris%netscape.com
e050a38db8 eval() called indirectly should throw an EvalError
git-svn-id: svn://10.0.0.236/trunk@55228 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:44:58 +00:00
ramiro%fateware.com
471748a3e5 Take out some debuggin printf noise dumbness left in there by me last nite.
git-svn-id: svn://10.0.0.236/trunk@55227 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:44:47 +00:00
robinf%netscape.com
40c2625df9 added group bold text; positioning tweaks
git-svn-id: svn://10.0.0.236/trunk@55226 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:41:43 +00:00
robinf%netscape.com
02d091a35c added bold to group titles; tweaked element positioning
git-svn-id: svn://10.0.0.236/trunk@55225 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:34:07 +00:00
norris%netscape.com
dd16ebd747 Fix ecma_2/Exceptions/exception-006.js
git-svn-id: svn://10.0.0.236/trunk@55224 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:32:46 +00:00
robinf%netscape.com
a9f2e413bb UI tweaks to positioning of elements and group boxes; added bold to group titles
git-svn-id: svn://10.0.0.236/trunk@55223 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:26:20 +00:00
norris%netscape.com
3b147ba16a Remove spurious quote
git-svn-id: svn://10.0.0.236/trunk@55222 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:17:43 +00:00
norris%netscape.com
8a8f67d122 VAR --> var
git-svn-id: svn://10.0.0.236/trunk@55221 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:16:23 +00:00
petitta%netscape.com
c8140b55cb updated folder hiearchy
git-svn-id: svn://10.0.0.236/trunk@55220 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 23:10:50 +00:00
waldemar%netscape.com
8d2a10ff82 Implemented line-grammar and added utility functions for analyzing grammar state table
git-svn-id: svn://10.0.0.236/trunk@55219 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:53:21 +00:00
waldemar%netscape.com
a38c51c58b Implemented variant-constraints
git-svn-id: svn://10.0.0.236/trunk@55218 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:52:18 +00:00
waldemar%netscape.com
d8ce56167f Implemented line-grammar
git-svn-id: svn://10.0.0.236/trunk@55217 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:51:27 +00:00
waldemar%netscape.com
ba77f32bb0 Implemented variant-constraints. Added all-state-transitions.
git-svn-id: svn://10.0.0.236/trunk@55216 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:50:45 +00:00
waldemar%netscape.com
74631d734b Changed comments
git-svn-id: svn://10.0.0.236/trunk@55215 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:49:36 +00:00
waldemar%netscape.com
79877efe0c First Checked In.
git-svn-id: svn://10.0.0.236/trunk@55214 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:49:10 +00:00
waldemar%netscape.com
732ca99228 Added :sort-key to sorted-hash-table-keys
git-svn-id: svn://10.0.0.236/trunk@55213 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:48:52 +00:00
waterson%netscape.com
c8a6b35854 Fix latent bug exposed by recent script global changes; need to check owner, not rv.
git-svn-id: svn://10.0.0.236/trunk@55212 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 22:04:47 +00:00
norris%netscape.com
3b2f68d99a Fix regressions.
git-svn-id: svn://10.0.0.236/trunk@55211 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 21:50:42 +00:00
tbogard%aol.net
10cc7b70fe Fixing the mail bustage. Was accidently using the internal object instead of the one passed in.
git-svn-id: svn://10.0.0.236/trunk@55210 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 21:41:35 +00:00
robinf%netscape.com
2019e907c8 UI tweaks to text and placement of elements for improved readabiliity
git-svn-id: svn://10.0.0.236/trunk@55209 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 21:23:16 +00:00
tbogard%aol.net
d0dea7b899 Fixed the merge.
git-svn-id: svn://10.0.0.236/trunk@55208 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 21:13:50 +00:00
tbogard%aol.net
4d37e2b9e3 Flipped the if. Was not continuing on success.
git-svn-id: svn://10.0.0.236/trunk@55207 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 21:11:30 +00:00
waterson%netscape.com
c876431511 Use more mundane macros to fix backwards logic.
git-svn-id: svn://10.0.0.236/trunk@55206 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 21:08:56 +00:00
robinf%netscape.com
668dd78cd3 spacing tweaks to text and group box elements per Gemma's UI comments
git-svn-id: svn://10.0.0.236/trunk@55205 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 20:24:49 +00:00
robinf%netscape.com
8d97c39c31 minor text changes
git-svn-id: svn://10.0.0.236/trunk@55204 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:49:26 +00:00
tbogard%aol.net
559fbb1110 Fixed a bug where the first time to try and get the location object was failing.
git-svn-id: svn://10.0.0.236/trunk@55203 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:41:22 +00:00
terry%mozilla.org
733ffbea94 Oops; previous patch caused extra percent-signs to appear in installations running older versions of MySQL.
git-svn-id: svn://10.0.0.236/trunk@55202 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:30:49 +00:00
tbogard%aol.net
9eb1037eba include of nsIScriptGlobalObject.h is now in nsXULDocument.h.
git-svn-id: svn://10.0.0.236/trunk@55201 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:29:23 +00:00
terry%mozilla.org
a222be8f31 Fixed bug 20126 -- use more international-friendly (and Y2K happier) date formats.
git-svn-id: svn://10.0.0.236/trunk@55200 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:28:18 +00:00
tbogard%aol.net
b03d03932e Moved the include over. This should fix wensleydale.
git-svn-id: svn://10.0.0.236/trunk@55199 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:26:23 +00:00
tbogard%aol.net
2a3aa9fcb8 Fixes to get rid of relying on webShell implementing nsIScriptContextOwner. It now implements nsIScriptGlobalObjectOwner or can do a GetInterface to nsIScriptGlobalObject.
git-svn-id: svn://10.0.0.236/trunk@55198 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 19:02:31 +00:00
brade%netscape.com
1f3dc8394a localization of keybindings r=akkana
git-svn-id: svn://10.0.0.236/trunk@55197 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 15:56:22 +00:00
dcone%netscape.com
8d7b1630df Fixed and invalidate in showwindow. r=sfraser,rods.
Bug=18971 (pdt+)


git-svn-id: svn://10.0.0.236/trunk@55196 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 15:55:37 +00:00
brade%netscape.com
94635420f7 remove unused functions; r=sfraser
git-svn-id: svn://10.0.0.236/trunk@55195 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 15:18:38 +00:00
brade%netscape.com
3762ebc594 move most of opening files to JS (from C++); r=sfraser
git-svn-id: svn://10.0.0.236/trunk@55194 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 14:20:05 +00:00
dveditz%netscape.com
05b901315c bug 12816 init XPInstall before any components are loaded so they can be replaced
git-svn-id: svn://10.0.0.236/trunk@55193 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 13:39:18 +00:00
dveditz%netscape.com
d398de2dfa Bug 12816, move XPInstall initialization closer to the front so we can
clean up after an install *before* the wrong components are loaded.


git-svn-id: svn://10.0.0.236/trunk@55192 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 13:37:23 +00:00
tbogard%aol.net
4698adc719 Add nsXPIDLString.h include.
git-svn-id: svn://10.0.0.236/trunk@55191 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 12:10:31 +00:00
tbogard%aol.net
b92a506230 Hoping this will help wensleydale.
git-svn-id: svn://10.0.0.236/trunk@55190 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 12:09:10 +00:00
tbogard%aol.net
14bb6fa0ab Fixed a couple of problems with FindChildWithName.
git-svn-id: svn://10.0.0.236/trunk@55189 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 11:22:54 +00:00
tbogard%aol.net
7645dfa57c WebShell now implements the nsIDocShellTreeItem and nsIDocShellTreeNode interfaces.
git-svn-id: svn://10.0.0.236/trunk@55188 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:57:59 +00:00
tbogard%aol.net
c2b90e3bbb Fixed logic problem with GetRootTreeItem.
git-svn-id: svn://10.0.0.236/trunk@55187 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:57:11 +00:00
tbogard%aol.net
2632a072f5 Re-ordered a couple of methods to be under the right interface section.
git-svn-id: svn://10.0.0.236/trunk@55186 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:35:43 +00:00
cls%seawood.org
15809aa999 Disable unneeded arch specific portions of Makefile
git-svn-id: svn://10.0.0.236/trunk@55185 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:33:06 +00:00
cls%seawood.org
811cb761f4 Added use of OS_* & LDFLAGS variables to autoconf build.
git-svn-id: svn://10.0.0.236/trunk@55184 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:32:18 +00:00
tbogard%aol.net
3549f77d57 Added the concept of the treeItem and node. This breaks up nsIDocShell a little bit.
git-svn-id: svn://10.0.0.236/trunk@55183 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:29:08 +00:00
cls%seawood.org
f6e0d56961 OpenBSD appears to need the -pthread flag when using pthreads.
git-svn-id: svn://10.0.0.236/trunk@55182 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:05:36 +00:00
tbogard%aol.net
b2fedc2225 added files: mozilla/docshell/base/nsIDocShellTreeItem.idl, mozilla/docshell/base/nsIDocShellTreeNode.idl
git-svn-id: svn://10.0.0.236/trunk@55181 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:04:09 +00:00
tbogard%aol.net
bdf7b78cd4 Adding nsIDocShellTreeItem.idl to be compiled.
git-svn-id: svn://10.0.0.236/trunk@55180 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:02:00 +00:00
tbogard%aol.net
ab67ca9638 Adding two new interfaces to deal with the docshell tree.
git-svn-id: svn://10.0.0.236/trunk@55179 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 10:00:23 +00:00
sspitzer%netscape.com
a54d7af00a fix warning.
git-svn-id: svn://10.0.0.236/trunk@55178 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 09:53:26 +00:00
tbogard%aol.net
52713ced88 1.) WebShell no longer implements nsIScriptContextOwner.
2.)  WebShell now implements the new nsIScriptGlobalObjectOwner.
3.)  WebShell supports GetInterface to nsIScriptGlobalObject.
4.)  Documents no longer carry around a reference to nsIScriptContextOwner.  Instead they hold on to a nsIScriptGlobalObject.  nsIDocument::GetScriptContextOwner has now become nsIDocument::GetScriptGlobalObject().  Same change to the set methods.


git-svn-id: svn://10.0.0.236/trunk@55177 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 09:36:54 +00:00
waterson%netscape.com
5fb4c78072 Use 'addEventListener' instead of timer hack.
git-svn-id: svn://10.0.0.236/trunk@55176 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 09:30:27 +00:00
tbogard%aol.net
067920c238 1.) WebShell no longer implements nsIScriptContextOwner.
2.)  WebShell now implements the new nsIScriptGlobalObjectOwner.
3.)  WebShell supports GetInterface to nsIScriptGlobalObject.
4.)  Documents no longer carry around a reference to nsIScriptContextOwner.  Instead they hold on to a nsIScriptGlobalObject.  nsIDocument::GetScriptContextOwner has now become nsIDocument::GetScriptGlobalObject().  Same change to the set methods.


git-svn-id: svn://10.0.0.236/trunk@55175 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 09:24:22 +00:00
sspitzer%netscape.com
8a9940ec3c add newline to the end of file
git-svn-id: svn://10.0.0.236/trunk@55174 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 08:24:50 +00:00
rgoodger%ihug.co.nz
1aa351257b DTD file for Editor Advanced Edit dialog. Forgot to check this in earlier - Fixes 20606
git-svn-id: svn://10.0.0.236/trunk@55173 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 08:12:24 +00:00
sspitzer%netscape.com
20ef5057f7 fix for #17402, stationary -> stationery.
r=alecf

major fixes for the new folder / rename folder / subscribe dialogs.
we no longer use an html select for the folder picker.
now we use cascading menu popups, like the copy and move menus.
this fixes a lot of bugs, and allows pre-flighting to finally work.

our folder data source has some new properies:
CanFileMessages, CanSubscribe, CanRename, and CanCreateSubfolders
we use these to determine what cascading menu to build, what to disable, etc.

also, nsMessenger::NewFolder() and nsMessenger::RenameFolder() were changes to
take a nsIRDFResource instead of a nsIDOMXULElement.  Before we were
passing through to the back end the selected xul element, now we pass
the resource in.

other cool side effects:
in the copy & move menus, you don't get the choice to file or copy to a server, on folders
in the rename dialog, you can't pick a server, on a folder
in the new folder dialog, you can't pick the imap inbox. (* more needs to be done here.)

bugs fixed: #14773, #14254, #20599, #20646
r=alecf

a couple bullet proofing fixes to prevent some crashes reported on fullcircle
r=bienvenu


git-svn-id: svn://10.0.0.236/trunk@55172 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 08:10:09 +00:00
cls%seawood.org
f23f7ad15d Use the builtin AC_LANG_ functions rather than overriding CC & CFLAGS when testing for non-C language feature. Partial fix for bug #20254
git-svn-id: svn://10.0.0.236/trunk@55171 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 07:24:18 +00:00
ramiro%fateware.com
119acf2584 Update the paint flashing and event debuggin code. The problem was that it
was leaking an nsIPref thing for "efficiency" reasons (actually, the truth
is I was just lazy when I wrote the code, but dont tell my mom)  The fix was
to register pref changed callbacks to avoid having to keep an nsIPref alive
and thus avoiding some memory leaks which were adding noise to the leak logs.
r=pavlov.


git-svn-id: svn://10.0.0.236/trunk@55170 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 07:23:22 +00:00
cls%seawood.org
b6598f67f9 Use the builtin AC_LANG_ functions rather than overriding CC & CFLAGS when testing for non-C language features. Partial fix for bug #20254
git-svn-id: svn://10.0.0.236/trunk@55169 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 07:20:14 +00:00
valeski%netscape.com
eab29136c1 r=sdagley. 20669. we were sending a cookie header for *every* url request; empty for urls that didn't have a cookie associated with them. Now we only set cookies when we have one to set
git-svn-id: svn://10.0.0.236/trunk@55168 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 07:01:23 +00:00
bryner%uiuc.edu
cb3b6882b4 Make sure to use NS_RELEASE for XPCOM objects. This fixes some leaks of nsFileSpecImpl. r=morse.
git-svn-id: svn://10.0.0.236/trunk@55167 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 06:46:07 +00:00
bienvenu%netscape.com
1dd0421880 fix crash creating top level imap folder r=rhp, 20349
git-svn-id: svn://10.0.0.236/trunk@55166 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 06:31:08 +00:00
rginda%netscape.com
48e25b8c33 -- CHATZILLA CHANGES ONLY --
* test3-handlers.js
  Map function keys to available views

* test3-readprefs.js
  Removed debugging output.

* test3-static.js
  Wiring for fn key->view mapping
  Tweak smiley regexp to require spaces on each side.
  Ignore view change if new view == current view
  Apply munger rules on TOPIC messages in addition to PRIVMSG and ACTIONs


git-svn-id: svn://10.0.0.236/trunk@55165 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 06:24:29 +00:00
brendan%mozilla.org
2c11b83b75 Mac doesn't have ctype.h, or something.
git-svn-id: svn://10.0.0.236/trunk@55164 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 06:11:54 +00:00
jefft%netscape.com
7ad0076bfb fixed bug 12929 & bug 20415 - imap rename/delete/move folder should reset the connection to authenticated state; imap empty trash didn't delete subfolders; r=bienvenu
git-svn-id: svn://10.0.0.236/trunk@55163 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 05:59:57 +00:00
alecf%netscape.com
2fb0f2979c add a bunch of IDLDoc comments for component testing
no reviewer because these are just comments


git-svn-id: svn://10.0.0.236/trunk@55162 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 04:46:49 +00:00
brendan%mozilla.org
b6473d8bd0 Use .get() for comptr==rawptr comparisons, for weak-minded compilers.
git-svn-id: svn://10.0.0.236/trunk@55161 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 04:45:36 +00:00
bryner%uiuc.edu
91ce25064d Remove two more unused defines, UNIX_EMBED and X_PLUGINS. r=cls.
git-svn-id: svn://10.0.0.236/trunk@55160 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 04:29:53 +00:00
rhp%netscape.com
9fa5c74f98 Fix for emoticon bug - Bug #20644 - r: alecf
git-svn-id: svn://10.0.0.236/trunk@55159 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 04:07:53 +00:00
alecf%netscape.com
22f407a483 remove an unused header (no reviewer) - speeds up dependancy builds
git-svn-id: svn://10.0.0.236/trunk@55158 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 03:46:47 +00:00
brendan%mozilla.org
4ccbd4b644 - Doc-comments for nsIScriptContext methods I added or modified.
- Rename nsIScriptContext::CompileFunction to CompileEventHandler, and add BindCompiledEventHandler, to reflect function name restrictions and help brutal sharing.
- Add adjunct-interface nsIScriptEventHandlerOwner to nsIScriptObjectOwner.h; this interface is queried for by nsEventListenerManger.cpp to test and fill the XUL prototype event handler "cache".
- PR_LOG JS warnings, and look in javascript.options.{strict,werror} for those options.  
- Implement nsIScriptEventHandlerOwner in nsXULElement, keeping pointers to pre-compiled event handlers in nsXULPrototypeAttribute.
 
(bug 13218, r=waterson@netscape.com,vidur@netscape.com)


git-svn-id: svn://10.0.0.236/trunk@55157 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 03:40:30 +00:00
fur%netscape.com
ac87ce19c4 Fix build bustage on Linux
git-svn-id: svn://10.0.0.236/trunk@55156 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 02:59:37 +00:00
rogerl%netscape.com
a0cd849978 Switch to ECMA error.
git-svn-id: svn://10.0.0.236/trunk@55155 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 02:58:29 +00:00
warren%netscape.com
dac168d0d6 Fix for downloaded jar files. Now they appear to work, except we aren't checking the cache to see if they already exist. r=gayatrib
git-svn-id: svn://10.0.0.236/trunk@55154 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 02:22:48 +00:00
rjc%netscape.com
7b4ca31732 Fix bug # 17385: calling ServiceManager::GetService() can fail for windows that aren't local due to security, so wrap the call inside of a "try" block.
git-svn-id: svn://10.0.0.236/trunk@55153 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 02:22:16 +00:00
warren%netscape.com
17121af6a9 Added missing addref. r=gayatrib
git-svn-id: svn://10.0.0.236/trunk@55152 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 02:22:02 +00:00
edburns%acm.org
34adf9eb4a r=marklin%eng.sun.com
a=edburns
bug=20659

Make BrowserControl vend a Canvas instead of
BrowserControlCanvas vending a BrowserControl.

This change has nothing to do with mozilla.  It's pure java.


git-svn-id: svn://10.0.0.236/trunk@55151 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:55:31 +00:00
fur%netscape.com
5dabafa40b More infrastructure work in support of bug #8305 (Implement
cache).  Added several nsHTTPResponse methods dealing with
header parsing and manipulation of date-containing header fields.
(None of these methods are yet invoked.)


git-svn-id: svn://10.0.0.236/trunk@55150 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:51:07 +00:00
fur%netscape.com
902d510731 Quash warning
git-svn-id: svn://10.0.0.236/trunk@55149 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:45:22 +00:00
fur%netscape.com
02494ac189 Added missing HTTP header atoms
git-svn-id: svn://10.0.0.236/trunk@55148 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:44:38 +00:00
robinf%netscape.com
2e324573c8 Fixing bug 17739
git-svn-id: svn://10.0.0.236/trunk@55147 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:21:47 +00:00
danm%netscape.com
930e16ca97 fix inGoAway event to dispatch the corresponding nsGUIEvent directly to the top-level window. fixes bug 20538. pinkerton suggested the change.
git-svn-id: svn://10.0.0.236/trunk@55146 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:14:57 +00:00
pnunn%netscape.com
e5aab9a82f bug#15585. cleanup. pn.
git-svn-id: svn://10.0.0.236/trunk@55145 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:07:49 +00:00
mcafee%netscape.com
37d2a5badf Debug printfs
git-svn-id: svn://10.0.0.236/trunk@55144 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:01:25 +00:00
pnunn%netscape.com
b36dd24985 bug#15585. changes so logging macros don't generate warngings. pn.
git-svn-id: svn://10.0.0.236/trunk@55143 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 01:01:16 +00:00
pnunn%netscape.com
30c6a5b9b5 bug#15585. changes so logging macros don't generate warnings. pn.
git-svn-id: svn://10.0.0.236/trunk@55142 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:54:25 +00:00
pnunn%netscape.com
1de1f8b535 bug#15585. changes so logging macros don't generate warngings. pn.
git-svn-id: svn://10.0.0.236/trunk@55141 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:53:11 +00:00
dougt%netscape.com
9b457ca9da Fix for 20652.
git-svn-id: svn://10.0.0.236/trunk@55140 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:50:42 +00:00
briano%netscape.com
aa6b90d40e Automated update
git-svn-id: svn://10.0.0.236/trunk@55139 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:45:42 +00:00
dougt%netscape.com
2f8584c230 updating to new interface and design.
git-svn-id: svn://10.0.0.236/trunk@55138 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:44:01 +00:00
rickg%netscape.com
96e330f279 inadvertently left debug #ifdefs in
git-svn-id: svn://10.0.0.236/trunk@55137 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:43:36 +00:00
dougt%netscape.com
6771abf254 removing nsFileUtils.
git-svn-id: svn://10.0.0.236/trunk@55136 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:43:35 +00:00
wtc%netscape.com
5c27504038 Checked in patch for OpenVMS contributed by Colin Blake.
git-svn-id: svn://10.0.0.236/trunk@55135 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:42:18 +00:00
wtc%netscape.com
cb7c76b9e0 Bugzilla bug #17040: compile with -ansi -D__POSIX_SOURCE -D_BSD_SOURCE
-D_SVID_SOURCE on all CPU architectures.


git-svn-id: svn://10.0.0.236/trunk@55134 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:39:54 +00:00
dougt%netscape.com
88fc92f608 Removing Dir enumerator as it will be part of nsIFile
removing nsFileUtils.
Changing the name of nsIFile children to directoryEntries
removing nsIFile trucate.
Rewrote large parts of nsIFileImplWin to use native APIs.

not part of build


git-svn-id: svn://10.0.0.236/trunk@55133 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:39:31 +00:00
rickg%netscape.com
d3a9108ad8 fixed bug 20229; r=beard. Special thanks to patrick for his persistence with leaks.
git-svn-id: svn://10.0.0.236/trunk@55132 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:33:17 +00:00
petitta%netscape.com
a836e61b39 Changed Delivery location
git-svn-id: svn://10.0.0.236/trunk@55131 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:31:09 +00:00
rickg%netscape.com
6d81d0e4d1 fixed PDT+19121; r=kmcclusk
git-svn-id: svn://10.0.0.236/trunk@55130 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:30:29 +00:00
drapeau%eng.sun.com
1cd55fd548 Fix for bug 18899 ('Make "--enable-oji" as part of the default Mozilla
Build').  Modified files that conditionally compiled in support for
OJI, replacing with code that looks for OJI as an XPCOM service, and
failing gracefully if the OJI XPCOM service is not found.  The four
files modified by this fix are the only active ones; other modules
that conditionally compile in support for OJI appear to be dead code.

r=drapeau@eng.sun.com.  Fix contributed by Jayashri Visvanathan
(visvan@eng.sun.com).


git-svn-id: svn://10.0.0.236/trunk@55129 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:26:09 +00:00
petitta%netscape.com
eea1811f0c Changed Delivery location
git-svn-id: svn://10.0.0.236/trunk@55128 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:25:43 +00:00
petitta%netscape.com
ed0b376456 Build Mods
git-svn-id: svn://10.0.0.236/trunk@55127 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:19:37 +00:00
alecf%netscape.com
c0636b0f0d more cleanup from stuff sitting in my tree: remove xp_core.h dependancy from mime by switching to new nsString routines
r=rhp


git-svn-id: svn://10.0.0.236/trunk@55126 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:12:49 +00:00
ssu%netscape.com
0fcdeec97a fixing bug #20623. commercial installer is no longer 4mb. This is not part of tinderbox. would affect only windows platforms.
git-svn-id: svn://10.0.0.236/trunk@55125 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:12:27 +00:00
ducarroz%netscape.com
aac970f94c Fix for bug 20554. As tree cells are now boxes, We need to set/get the value attribute instead of creating a text node under it. R=putterman
git-svn-id: svn://10.0.0.236/trunk@55124 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:12:23 +00:00
rogerl%netscape.com
9abcd79da8 Don't let Undefined prototype be assigned to new objects, revert to Object
instead. Also, detect Undefined prototype in hasInstance and bail.


git-svn-id: svn://10.0.0.236/trunk@55123 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:10:36 +00:00
alecf%netscape.com
498dc1681d fix unicode support for prettyName, #20405
retrieve name from prefs using CopyUnicharPref()
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@55122 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:10:00 +00:00
briano%netscape.com
547e07303b QNX-specific build fix. This should solve the stupid memory model segment size too small thing.
git-svn-id: svn://10.0.0.236/trunk@55121 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:07:18 +00:00
kmcclusk%netscape.com
d3a24645a8 Added NS_RELEASE's to fix leaking of nsIImage's. bug=19114; r=karnaze@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55120 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:06:32 +00:00
norris%netscape.com
12f1c79c88 Fix the following bug:
Subject:
            Rhino request URGENT
       Date:
            Thu, 02 Dec 1999 15:58:40 -0500
      From:
            slobo@espialgroup.com
        To:
            Norris Boyd <norris@netscape.com>
 References:
            1 , 2




Hello Norris

In Rhino, the following script gives the error : "function does not always return a value" during the parsing phase. The script
runs perfectly fine in Netscape 4.61. It is an urgent requirement. Many thanks in advance.

Steven

///////////////////////////////////////////////////////SCRIPT  BEGIN  ///////////////////////////////////////////////
function test (a) {
  this.arg = a;
  if (a>20)
        return;
  return this;
}

//print = alert;

function joe() {
a = new test (20);
print (a.arg);


a = new test (25);
print (a.arg);
}

joe();
///////////////////////////////////////////////////////SCRIPT   END  ///////////////////////////////////////////////


git-svn-id: svn://10.0.0.236/trunk@55119 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-03 00:04:46 +00:00
norris%netscape.com
809eeca85a Fix bug 18636 java script security problem when accessing my.netscape.com/
r=mstoltz


git-svn-id: svn://10.0.0.236/trunk@55118 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:56:25 +00:00
pavlov%netscape.com
2c278231ec if an alpha pixmap is there destroy it and not only in the case where we have alpha bits
git-svn-id: svn://10.0.0.236/trunk@55117 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:56:12 +00:00
dmose%mozilla.org
94ee06fc74 special cased DUPLICATE in the make_options() sanity-checking code
git-svn-id: svn://10.0.0.236/trunk@55116 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:56:07 +00:00
tonyr%fbdesigns.com
15a90341d6 Updated to use new nsIMsgAccountManager interfaces
git-svn-id: svn://10.0.0.236/trunk@55115 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:53:30 +00:00
waterson%netscape.com
e313aaa0ab Bug 20309. Use nsCAutoString. Kudos to buhr@stat.wisc.edu
git-svn-id: svn://10.0.0.236/trunk@55114 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:53:25 +00:00
alecf%netscape.com
1d51b653fc don't load about:blank unless we have to
(no bug, but it makes ctrl-selecting messages faster)
r=scottip


git-svn-id: svn://10.0.0.236/trunk@55113 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:49:12 +00:00
mscott%netscape.com
82c4ad3f35 Fix a webshell leak! improper nsCOMPtr useage in DestroyChildren was causing us to leak
all child webshells!!! uhuh...that couldn't have been good


git-svn-id: svn://10.0.0.236/trunk@55112 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:46:00 +00:00
ftang%netscape.com
6080853d5d add Mac implmenetation of nsIFontEnumerator r=erik
git-svn-id: svn://10.0.0.236/trunk@55111 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:27:16 +00:00
ftang%netscape.com
94f0737506 Add <U+ > for Unicode fallback instead of ?
git-svn-id: svn://10.0.0.236/trunk@55110 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:26:42 +00:00
ftang%netscape.com
94d1e2f590 add nsIFontEnumerator.h
git-svn-id: svn://10.0.0.236/trunk@55109 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:26:06 +00:00
dmose%mozilla.org
f272eeb07a a bug fix or two and a whole bunch of sanity-checking of form submissions stuff
git-svn-id: svn://10.0.0.236/trunk@55108 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:21:42 +00:00
idk%eng.sun.com
89d1c55bef 20208
Add exception trowing in case
peer object is not existing. (Stream closed, not created, etc)


git-svn-id: svn://10.0.0.236/trunk@55107 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:20:29 +00:00
pinkerton%netscape.com
2f528b1160 Fix for bug 18409. clipboard/d&d now converts incoming text to DOM linebreaks. r=saari
git-svn-id: svn://10.0.0.236/trunk@55106 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:18:23 +00:00
pinkerton%netscape.com
2f60faf19d Removed a bunch of duplicated code. r=saari
git-svn-id: svn://10.0.0.236/trunk@55105 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:17:31 +00:00
putterman%netscape.com
59b63e045b Fix 20556 and change printf to dump in js.
git-svn-id: svn://10.0.0.236/trunk@55104 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:14:42 +00:00
rpotts%netscape.com
9145120320 bug #13157 (r=valeski). Added support for HTTP/0.9 server responses. This fixes a whole class of bugs where CGI scripts were displaying blank pages because we just ignored the response :-(
git-svn-id: svn://10.0.0.236/trunk@55103 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 23:09:15 +00:00
locka%iol.ie
e3e325da15 Added CommandStateChangeConstants
git-svn-id: svn://10.0.0.236/trunk@55102 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:49:27 +00:00
fur%netscape.com
9520efcc7a Fix 20594: C++ comments in C files
git-svn-id: svn://10.0.0.236/trunk@55101 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:41:02 +00:00
akkana%netscape.com
87d7b8f23c Forgot to add the idl file to the makefile
git-svn-id: svn://10.0.0.236/trunk@55100 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:36:34 +00:00
sspitzer%netscape.com
37115d48b0 fix pref xul and window size to look nicer. now the pref window is bigger and now the size is set in pref.xul. fixes #20244 among other bugs
git-svn-id: svn://10.0.0.236/trunk@55099 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:34:19 +00:00
sfraser%netscape.com
7fb638c5fe Add nsISelectionController.idl for akkana
git-svn-id: svn://10.0.0.236/trunk@55098 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:31:27 +00:00
sfraser%netscape.com
ad4471e3c6 Add nsISelectionController.idl for akkana.
git-svn-id: svn://10.0.0.236/trunk@55097 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:31:17 +00:00
pavlov%netscape.com
84657b4391 reuse pixmaps when image bits are changed instead of destroying them and recreating them every time r=blizzard
git-svn-id: svn://10.0.0.236/trunk@55096 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:25:20 +00:00
sdagley%netscape.com
94f75c64f9 Checking in fix for bug #20558 for sfraser. Calling pr_UnlockedFindLibrary() with a NULL fragment name not a good idea. sfraser and I both though he'd fixed this before but apparently the change was lost.
git-svn-id: svn://10.0.0.236/trunk@55095 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:25:17 +00:00
locka%iol.ie
10eaaa0963 Made ActiveX plugin buildable
git-svn-id: svn://10.0.0.236/trunk@55094 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:17:18 +00:00
rods%netscape.com
c75ec68d38 changed select:-moz-dropdown-list back to collapse from hidden, this works better in more cases
r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@55093 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:09:35 +00:00
blizzard%redhat.com
693cc4f3c0 Clean up Destroy() and focus handling. fix bug #19302
git-svn-id: svn://10.0.0.236/trunk@55092 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:09:25 +00:00
rods%netscape.com
9f71844e59 clips inside the border instead of inside the border and padding
r=kmcclusk bug 20301


git-svn-id: svn://10.0.0.236/trunk@55091 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:07:43 +00:00
rods%netscape.com
6f46990bc8 changing generated and psuedo content frames to inherit
r=kmcclusk bug 20301


git-svn-id: svn://10.0.0.236/trunk@55090 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:06:53 +00:00
valeski%netscape.com
8d420bdb8c r=mcafee. 20464. we were crashing when data: urls were accessed. Now we're safe; for the time being that is :)
git-svn-id: svn://10.0.0.236/trunk@55089 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 22:02:30 +00:00
rods%netscape.com
06dcead5d1 bad or of flags, r=dcone, bug 13745
git-svn-id: svn://10.0.0.236/trunk@55088 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:54:39 +00:00
akkana%netscape.com
b7c2823d4c 18033: hook up the motion commands to real commands now that the stubs are in place. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@55087 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:53:02 +00:00
erik%netscape.com
ed399a586a bug 17856; added 2 more font charset names to the table so that we can use
those Taiwanese fonts too; r=ftang


git-svn-id: svn://10.0.0.236/trunk@55086 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:49:27 +00:00
akkana%netscape.com
52b17eda5e 18033: Editor changes to use the new nsISelectionController interface.
Triggered from key events.  Untested since the nsISelectionController
  implementation isn't in yet (bug 18046), but key events do call
  the stub routines.  r=mjudge


git-svn-id: svn://10.0.0.236/trunk@55085 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:47:30 +00:00
dougt%netscape.com
fd347bcedd Fix tabs.
added enumerator.


git-svn-id: svn://10.0.0.236/trunk@55084 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:45:50 +00:00
akkana%netscape.com
f6184abf8e 18046: IDL implementation of nsISelectionController from sford4@netscape.net,
and the infrastructure to hook it up.
  This also changes the spelling from nsISelectionControler. r=mjudge


git-svn-id: svn://10.0.0.236/trunk@55083 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:45:21 +00:00
ducarroz%netscape.com
d86937364e Fixbuild bustage. It was generating a lib instead of a share lib and several others setting was wrong.
git-svn-id: svn://10.0.0.236/trunk@55082 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:17:03 +00:00
petitta%netscape.com
6dbeca04a0 This file used to fill in empty folders so ZIP will pick up the folder hiearchy
git-svn-id: svn://10.0.0.236/trunk@55081 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:02:54 +00:00
petitta%netscape.com
96222301bc Found a better place for this file. in cck\build" DeleteThisFile
git-svn-id: svn://10.0.0.236/trunk@55080 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 21:00:59 +00:00
petitta%netscape.com
1dad7c3d4a used to fill in empty folders that wont normally get picked up by zip
git-svn-id: svn://10.0.0.236/trunk@55079 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 20:57:11 +00:00
saari%netscape.com
de3e84d435 Adding new event state manager API GetFocusedEventTarget which returns the current frame in focus
regardless of the ESM instance you call it from. Editor guys need this for bug 20225


git-svn-id: svn://10.0.0.236/trunk@55078 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 20:55:17 +00:00
norris%netscape.com
67b2b41af0 remove invalid test
git-svn-id: svn://10.0.0.236/trunk@55077 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 20:04:48 +00:00
norris%netscape.com
34b0e9dc86 EvaluatorExceptions should set an exit error code.
git-svn-id: svn://10.0.0.236/trunk@55075 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 19:12:34 +00:00
norris%netscape.com
d129821369 Pass a scope to ScriptRuntime.call so we can throw EcmaErrors if need be.
git-svn-id: svn://10.0.0.236/trunk@55074 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 18:17:22 +00:00
despotdaemon%netscape.com
188545d820 Pseudo-automatic update of changes made by shaver@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@55073 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 16:24:51 +00:00
morse%netscape.com
3471a1b69c fix bug 20164, cookie viewer crashed on long cookies, r=andreas.otte
git-svn-id: svn://10.0.0.236/trunk@55072 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 14:23:28 +00:00
brade%netscape.com
b6cccbf28a handle state where controls aren't displayed (Fewer) and we need to store values until the controls are restored (More) or dialog is dismissed. (Bug #20279; r=sfraser@netscape.com)
git-svn-id: svn://10.0.0.236/trunk@55071 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 13:25:41 +00:00
tbogard%aol.net
c494d95016 Added new interface nsIDocShellTreeNode that will replace nsIDocShellContainer.
git-svn-id: svn://10.0.0.236/trunk@55070 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 11:54:40 +00:00
rgoodger%ihug.co.nz
38954dc714 Editor Advanced Edit dialog, revised CSS, r=cmanske
git-svn-id: svn://10.0.0.236/trunk@55069 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:28:52 +00:00
rgoodger%ihug.co.nz
c608419e2e Upgraded Editor Advanced Edit XUL/JS. r=cmanske
git-svn-id: svn://10.0.0.236/trunk@55068 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:22:31 +00:00
rickg%netscape.com
0a160eb0a8 various bug fixes (PDT+ and other); removed warnings. r=syd
git-svn-id: svn://10.0.0.236/trunk@55067 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:14:42 +00:00
rickg%netscape.com
e99aad53d3 fixed off-by-1 error in compare, and added ReplaceSubstring(). r=syd
git-svn-id: svn://10.0.0.236/trunk@55066 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:14:38 +00:00
tbogard%aol.net
d85ad8e6a8 Implemented the nsIBaseWindow::FocusAvailable. Hooked up the old nsIWebShellContainer::FocusAvailable to go through the new one.
git-svn-id: svn://10.0.0.236/trunk@55065 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:11:38 +00:00
rjc%netscape.com
b73d858405 Optimization: 99% of trees which use the containment and/or ignore attributes put those attributes on the root node,
so check there first before trying to recurse from the current node all the way up to the root node.


git-svn-id: svn://10.0.0.236/trunk@55064 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:07:44 +00:00
tbogard%aol.net
ce40600633 Was acidentally incrementing the counter before requesting the element.
git-svn-id: svn://10.0.0.236/trunk@55063 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:05:17 +00:00
rjc%netscape.com
54464ea7ea Commit out annoyance assert.
git-svn-id: svn://10.0.0.236/trunk@55062 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 10:01:58 +00:00
tbogard%aol.net
557ca2808d Stubbed out the implementation of FocusAvailable in webshell as part of the nsIBaseWindow interface.
git-svn-id: svn://10.0.0.236/trunk@55061 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:43:07 +00:00
tbogard%aol.net
116c31c15c Implemented the new FocusAvailable in docshell as part of the nsIBaseWindow interface.
git-svn-id: svn://10.0.0.236/trunk@55060 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:42:11 +00:00
tbogard%aol.net
8b5a6209f3 Added the FocusAvailable() method to nsIBaseWindow.idl.
git-svn-id: svn://10.0.0.236/trunk@55059 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:41:21 +00:00
mscott%netscape.com
e699b3af5a fix leak of document bind info when uri loading is turned on.
git-svn-id: svn://10.0.0.236/trunk@55058 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:37:36 +00:00
pierre%netscape.com
c7a56395b0 20042 "crash on www.netscape.com". Back out my change from v1.30 to fix a crash on InfoWorld which was caused by invalid html code and can no longer be reproduced with their current presentation.
git-svn-id: svn://10.0.0.236/trunk@55057 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:19:16 +00:00
mscott%netscape.com
9752ae7af4 oh the horror! We were leaking all channel listeners that ran through the http channel. Fixed the
leak by using a nsCOMPtr.


git-svn-id: svn://10.0.0.236/trunk@55056 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:11:51 +00:00
tbogard%aol.net
b37e05608c Removed nsIMarkupDocumentViewer.h as it is now copied from the docshell directory as part of the parsing of nsIMarkupDocumentViewer.idl.
git-svn-id: svn://10.0.0.236/trunk@55055 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:11:40 +00:00
tbogard%aol.net
bfe63e8f6e Stop copying the nsIMarkupDocumentViewer.h from this directory into the public directory. Rely on the IDL file in the docshell directory to copy it out.
git-svn-id: svn://10.0.0.236/trunk@55054 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 09:10:32 +00:00
cata%netscape.com
997f81d5d1 Evolution of the CharsetConverterManager in order to pair the new Charset Menu. r=erik
git-svn-id: svn://10.0.0.236/trunk@55053 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 08:05:59 +00:00
mscott%netscape.com
ab7173d18c *cringe* Bug #14928 --> throw the switch for uri loading! With this turned on, all urls which are run through
the webshell will now be run through the uri loader which knows how to dispatch urls based on content.

If any problems do arise, I'm ready to turn it back off again at a moment's notice.


git-svn-id: svn://10.0.0.236/trunk@55052 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:54:47 +00:00
dougt%netscape.com
9f59512919 Removing init() methods as warren suggested. These now live in the new
nsILocalFile interface.


git-svn-id: svn://10.0.0.236/trunk@55051 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:49:57 +00:00
dougt%netscape.com
b7a4eda34c First cut.
These are the local file init methods for a nsIFile.

not hooked up to the build


git-svn-id: svn://10.0.0.236/trunk@55050 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:45:12 +00:00
alecf%netscape.com
699c20459c missed another test
git-svn-id: svn://10.0.0.236/trunk@55049 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:37:23 +00:00
alecf%netscape.com
e8515e9237 oops, missed this one too
stupid tests.


git-svn-id: svn://10.0.0.236/trunk@55048 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:36:52 +00:00
alecf%netscape.com
89b340951c oops, forgot to check this file in with my last checkin
git-svn-id: svn://10.0.0.236/trunk@55047 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:25:39 +00:00
mscott%netscape.com
efb225519d Pass nsURILoadCommand's instead of char * around for the command associated with the url.
git-svn-id: svn://10.0.0.236/trunk@55046 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:09:06 +00:00
mscott%netscape.com
36a060eb5a api synch with uri loader --> use nsURILoaderCommand
r=travis


git-svn-id: svn://10.0.0.236/trunk@55045 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:01:11 +00:00
mscott%netscape.com
5b95d440f1 api synch with uri loader to use nsIURILoaderCommand.
fill out the canHandleContent method to include
all the primary and secondary content types we want the
browser window to handle.
r=travis


git-svn-id: svn://10.0.0.236/trunk@55044 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:00:54 +00:00
mscott%netscape.com
35be4c55b9 api synch with uri loader to use nsIURILoaderCommand.
fill out the canHandleContent method to include
all the primary and secondary content types we want the
mail window to handle
r=travis


git-svn-id: svn://10.0.0.236/trunk@55043 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:00:34 +00:00
mscott%netscape.com
ead0de0810 openuri now takes a nsURILoaderCommand
remove protocol scheme check before using the uri loader. this
means that all urls will run through the uriloader regardless of
 type when it gets turned on.
webshell:
doContent and canHandleContent now take a nsURILoaderCommand
modify the handle link click event method to pass in
in the nsIURILoader::viewUserClick command to the uri loader
r=travis


git-svn-id: svn://10.0.0.236/trunk@55042 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 07:00:17 +00:00
mscott%netscape.com
9a83fb8aac add enumerated type for uri load command. This will allow us
// to distinguish between incoming urls that are a result of user
						// clicks vs. normal views, view source and requires new window
nsIURIContentListener.idl--> doContent and canHandleContent now take a nsIURILoadCommand enum
nsURILoader.cpp --> changes to account for load command enum.
AsyncRead pass in the window context as the url context
(waterson will need this for his chrome cache work)
if we can't find a content handler for the content then go
back to the original window that loaded the url and force
them to handle the content...this is a HACK to force us to run
through the old code path for handling unknown content types
until the new version is online.
r=travis


git-svn-id: svn://10.0.0.236/trunk@55041 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:59:39 +00:00
alecf%netscape.com
40067e21e4 mail architecture cleanup (no bug - emptying my tree before next week's closure)
- get rid of GetAccountManager call (it's now a service)
- move hacks GetCurrentIdentity and GetCurrentServer into the account manager for now
- eliminate these calls from nsMsgMailSession
- update all call sites (C++ and JS)
r=mscott


git-svn-id: svn://10.0.0.236/trunk@55040 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:59:28 +00:00
cata%netscape.com
1c91ab1e0f Character Set Menu XUL - accomodating the changes in the RDF data source.
git-svn-id: svn://10.0.0.236/trunk@55039 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:43:18 +00:00
cata%netscape.com
77b7b8d32d The Character Set menu - rewrite of the RDF data source code. r=erik
git-svn-id: svn://10.0.0.236/trunk@55038 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:42:01 +00:00
alecf%netscape.com
bb74234246 add sendlater to unix build (test only, no review)
git-svn-id: svn://10.0.0.236/trunk@55037 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:32:36 +00:00
alecf%netscape.com
d49511cab5 update to use accountmanager as a service (test only, no review)
git-svn-id: svn://10.0.0.236/trunk@55036 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:31:47 +00:00
alecf%netscape.com
1a4ba72643 add geturl and sendpage tests to unix build (test only, no review)
git-svn-id: svn://10.0.0.236/trunk@55035 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:29:27 +00:00
alecf%netscape.com
f534603937 update this test (test only, no review)
use accountmanager as a service now


git-svn-id: svn://10.0.0.236/trunk@55034 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:28:42 +00:00
alecf%netscape.com
c96f2a9ee0 fix makefile so this test builds on unix
git-svn-id: svn://10.0.0.236/trunk@55033 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:27:00 +00:00
alecf%netscape.com
471d32441c add compose2 to the unix build (test only, no review)
git-svn-id: svn://10.0.0.236/trunk@55032 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:25:06 +00:00
alecf%netscape.com
d5dbfe7527 port this to unix so I stop breaking the tree
test only, no review necessary


git-svn-id: svn://10.0.0.236/trunk@55031 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:24:07 +00:00
tbogard%aol.net
1e0bcf01b1 Adding nsIScriptGlobalObjectOwner.idl to the manifest.
git-svn-id: svn://10.0.0.236/trunk@55030 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:18:32 +00:00
tbogard%aol.net
30980f7406 added files: mozilla/dom/public/nsIScriptGlobalObjectOwner.idl
git-svn-id: svn://10.0.0.236/trunk@55029 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:17:29 +00:00
tbogard%aol.net
eff33c6a8e Connecting nsIScriptGlobalObjectOwner.idl to be compiled. Not yet used anywhere.
git-svn-id: svn://10.0.0.236/trunk@55028 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:16:08 +00:00
tbogard%aol.net
aedfffde10 Adding new interface for people who can supply an nsIScriptGlobalObject. Not yet connected to the build.
git-svn-id: svn://10.0.0.236/trunk@55027 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 06:14:49 +00:00
rgoodger%ihug.co.nz
0d0d59430f cookieviewer UI polish, r=morse
git-svn-id: svn://10.0.0.236/trunk@55026 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 05:46:24 +00:00
mcafee%netscape.com
0d1f1c16df Wrap tests directory in ENABLE_TESTS. patch submitted by jim_nance@yahoo.com, r=mcafee
git-svn-id: svn://10.0.0.236/trunk@55025 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 05:43:08 +00:00
norris%netscape.com
1f0d69f6d9 Fix crash seen by waterson.
r=waterson


git-svn-id: svn://10.0.0.236/trunk@55024 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 05:41:17 +00:00
sfraser%netscape.com
7d7ac5b8ec Additional fix to the linebreakers when munging nsStrings. r=pinkerton.
git-svn-id: svn://10.0.0.236/trunk@55023 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 05:33:50 +00:00
pavlov%netscape.com
94867bd9d6 make scrolling suck less r=brendan
git-svn-id: svn://10.0.0.236/trunk@55022 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 05:16:13 +00:00
beard%netscape.com
067dc9aa6f bug #20504: fix crash when printing. r=joki
git-svn-id: svn://10.0.0.236/trunk@55021 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 05:13:56 +00:00
sfraser%netscape.com
8af29b1bde Fix the fragment name in both targets to be unique. Again. r=pinkerton.
git-svn-id: svn://10.0.0.236/trunk@55020 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 04:53:47 +00:00
rgoodger%ihug.co.nz
b98ae1c63e more cosmetic changes to cookieviewer, r=morse
git-svn-id: svn://10.0.0.236/trunk@55019 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 04:51:58 +00:00
sfraser%netscape.com
d1d215cecb Fix the fragment name in both targets to be unique. r=pinkerton.
git-svn-id: svn://10.0.0.236/trunk@55018 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 04:51:11 +00:00
tbogard%aol.net
738906d4eb Added attribute for setting and getting the nsIDocShellTreeOwner.
git-svn-id: svn://10.0.0.236/trunk@55017 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 04:34:09 +00:00
fur%netscape.com
4df51cacc5 Laying the foundation for the incorporation of caching, by
reorganizing/splitting protocol handler methods, though not yet adding any
new functionality:

    Allow for multiple instances of nsHTTPResponse to be associated
    with the same connection, i.e. so that response headers from the
    cache and response headers from the server can coexist
    simultaneously.  To wit:

        Moved content-length, charset and content-type information
        from nsHTTPChannel into nsHTTPResponse

        Split into separate functions the accumulation of a single line of
        HTTP header data (from the input stream) and the parsing of
        that line.  This permits cached response headers and server
        response headers to be parsed from separate data sources, the
        latter arriving from a nsIBufferInputStream and the former
        retrieved from the cache as a string.

        Moved the newly-created header-parsing methods to
        nsHTTPResponse from nsHTTPResponseListener

    Fixed some bugs in the interaction between AsyncOpen and
    AsyncRead.  It was possible for an OnHeadersAvailable event to be
    triggered *after* the associated OnDataAvailable, rather than the
    other way around.  It was also possible, in a rare case, for
    mOpenObserver->OnStopRequest() to be called without ever having
    called mOpenObserver->OnStartRequest().  I think my changes made
    the logic a bit more foolproof.

    Removed ancient ifdef NSPIPE2


git-svn-id: svn://10.0.0.236/trunk@55016 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:53:28 +00:00
pinkerton%netscape.com
029e0cffcd using new linebreak helper class to convert mac cr's to linefeeds expected by the dom. fixes 18409 for macOS. r=sfraser.
git-svn-id: svn://10.0.0.236/trunk@55015 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:40:29 +00:00
pinkerton%netscape.com
2d93e7b4bb added nsLinebreakHelper class so clipboard and d&d can easily convert linefeeds from native to DOM. bug 18409, r=sfraser
git-svn-id: svn://10.0.0.236/trunk@55014 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:39:41 +00:00
briano%netscape.com
b5f11bcccb Fix for QNX-specific build bustage. QNX doesn't provide a prototype for random().
git-svn-id: svn://10.0.0.236/trunk@55013 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:35:52 +00:00
briano%netscape.com
cbd2a79d4f Fix for QNX-specific build bustage. QNX doesn't provide a prototype for truncate().
git-svn-id: svn://10.0.0.236/trunk@55012 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:17:04 +00:00
sfraser%netscape.com
d809f93363 Fix for another part of for 19954 -- convert textarea data to LF termination before saving frame state. r=pollman
git-svn-id: svn://10.0.0.236/trunk@55011 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:12:51 +00:00
alecf%netscape.com
6e662dbdaa fix for #20405 - change Organization, Identity Name and FullName to be unicode, using new unicode prefs
r=rhp


git-svn-id: svn://10.0.0.236/trunk@55010 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:11:52 +00:00
sfraser%netscape.com
24d4124fee Fix for 19954 -- convert form values to CRLF linebreaks when submitting forms. r=pollman
git-svn-id: svn://10.0.0.236/trunk@55009 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:11:38 +00:00
waldemar%netscape.com
5697c39c4b NOT IN BUILD. Added strdup to make Mac standalone js engine work again
git-svn-id: svn://10.0.0.236/trunk@55008 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:05:14 +00:00
waldemar%netscape.com
9056e8e1e9 Fix to bug 17263: toPrecision when called with no arguments. r=shaver
git-svn-id: svn://10.0.0.236/trunk@55007 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 03:04:31 +00:00
rhp%netscape.com
06e446d68a Fix for mac display problem - Bug #: 18866 - r: alecf
git-svn-id: svn://10.0.0.236/trunk@55006 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:58:06 +00:00
warren%netscape.com
2baf3e9d35 Fixed bug where file transport would spin if it failed in the nsIFileSystem::Open method. Affected jar protocol.
git-svn-id: svn://10.0.0.236/trunk@55005 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:50:48 +00:00
waterson%netscape.com
3db2b20a4c Bug 9489. Remove cliprect push/pop to decrease paint time on titledbuttons. The cliprect was not doing anything useful, and was costing about 36% of titledbutton paint time. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55004 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:50:29 +00:00
warren%netscape.com
fed44b6639 Prefixed error/warning messages with something bold and assertive! (And somewhat distinguishable from other output.)
git-svn-id: svn://10.0.0.236/trunk@55003 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:37:54 +00:00
bryner%uiuc.edu
20b31fbdb0 Removing unused UNIX_LDAP define from the build. r=cls.
git-svn-id: svn://10.0.0.236/trunk@55002 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:34:39 +00:00
erik%netscape.com
d1024dbfb0 bug 15496; cannot see Japanese text when entering it after focussing text
field for the first time; fixed by initializing Y coordinate to better
value; r=ftang


git-svn-id: svn://10.0.0.236/trunk@55001 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:27:00 +00:00
ssu%netscape.com
1bfb241814 changed requested access permissions for accessing the Windows registry from a general access value of KEY_ALL_ACCESS to a more specific access that does not necessarily require admin previlidges. r=sgehani@netscape.com. This affects only windows.
git-svn-id: svn://10.0.0.236/trunk@55000 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:22:35 +00:00
ducarroz%netscape.com
4d5404d6d7 Fix for bug 20219. Use spring instead of flex to separate a label from its text field. R=sspitzer
git-svn-id: svn://10.0.0.236/trunk@54999 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:17:50 +00:00
ssu%netscape.com
77889ffe9d fixing problem with not checking for empty string of command line path passed into setup. If an empty string was passed in (meaning nothing was passed in), it would used to still try to contatenate a filename to this empty string. bad. r=sgehani@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54998 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 02:14:51 +00:00
rhp%netscape.com
20852fa4c9 Fixing project file for release build.
git-svn-id: svn://10.0.0.236/trunk@54997 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:45:13 +00:00
cmanske%netscape.com
4c959afc07 Added immediate saving of sidebar show/hide and width states. r=slamm
git-svn-id: svn://10.0.0.236/trunk@54996 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:36:40 +00:00
rogerl%netscape.com
7af4dd377e Added missing null scope parameter.
git-svn-id: svn://10.0.0.236/trunk@54995 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:33:22 +00:00
morse%netscape.com
3de7046bc3 fix bug 20539, cookie & signon viewer display blank lines, r=davidm
git-svn-id: svn://10.0.0.236/trunk@54994 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:32:33 +00:00
tbogard%aol.net
029d334c68 Removed now defunct interfaces.
git-svn-id: svn://10.0.0.236/trunk@54993 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:30:41 +00:00
slamm%netscape.com
1d3728d0fb Use the correct URL for the tinderbox panel.
git-svn-id: svn://10.0.0.236/trunk@54992 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:29:33 +00:00
warren%netscape.com
336ce525d7 Fixed bug accessing jar entry.
git-svn-id: svn://10.0.0.236/trunk@54991 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:27:48 +00:00
valeski%netscape.com
04e0bce867 r=waterson. 19939. sym links in ftp dir listings now look different and spin when accessed.
git-svn-id: svn://10.0.0.236/trunk@54990 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:21:05 +00:00
dougt%netscape.com
c0e28dfae6 Changes to the nsIFile.idl which were discussed between shaver, brendan,
sdagley and I.  not part of the build.


git-svn-id: svn://10.0.0.236/trunk@54989 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:19:10 +00:00
alecf%netscape.com
5eb28b95bc add new unicode-friendly pref accessors
(prefs will be stored in UTF8)
preparation for #20405, r=nhotta


git-svn-id: svn://10.0.0.236/trunk@54988 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:18:24 +00:00
rogerl%netscape.com
206f778c8d Passing scope down into parser/IRFactory/NodeTransformer so that syntax
errors can be packaged as ECMA Error objects.


git-svn-id: svn://10.0.0.236/trunk@54985 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:16:02 +00:00
cmanske%netscape.com
c56a65dcc6 Added immediate saving of sidebar show/hide persist state. r=slamm
git-svn-id: svn://10.0.0.236/trunk@54984 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:15:49 +00:00
ducarroz%netscape.com
576198eef1 original data was corrupted. I hoppe this time it will work. R=cmanske
git-svn-id: svn://10.0.0.236/trunk@54983 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:12:30 +00:00
ducarroz%netscape.com
7274e83c2a Fix column width problem in MsgCompose addressing widget. This is related to bug 20506. R=sspitzer.
git-svn-id: svn://10.0.0.236/trunk@54982 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:11:16 +00:00
bienvenu%netscape.com
5fbd725988 turn back on throbber now that paint problems are fixed
git-svn-id: svn://10.0.0.236/trunk@54981 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:07:38 +00:00
evaughan%netscape.com
14bd190690 1) Added sanity checks to box to case memory bugs
2) Fixed the floating point roundoff that was causing boxes to lay themselves out off by 1 pixel
3) Simplified box data structure

-r Hyatt


git-svn-id: svn://10.0.0.236/trunk@54980 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:07:27 +00:00
bienvenu%netscape.com
750ce4d6ee fix assert creating uri's for imap sub-folders, r=mscott
git-svn-id: svn://10.0.0.236/trunk@54979 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:06:50 +00:00
bienvenu%netscape.com
063b52d390 fix pop move msg filters to truncate inbox r=mscott, #18030
git-svn-id: svn://10.0.0.236/trunk@54978 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:05:31 +00:00
troy%netscape.com
3123910725 b=20367, r=jinjin@pacbell.net. Changed ResizeReflow() so that if we skip
reflowing the table cell (that's an optimization we do) we make sure and
position any child views


git-svn-id: svn://10.0.0.236/trunk@54977 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:02:53 +00:00
pavlov%netscape.com
b5be3ce7d4 building with --enable-x11-shm actually uses xshm now and works r=shaver
git-svn-id: svn://10.0.0.236/trunk@54976 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:01:13 +00:00
sspitzer%netscape.com
c04a9db3f1 I just crashed because we were dereferencing null.
so here some bulletproofing to prevent the crash.
I haven't been able to reproduce it, so I don't have a bug for this.


git-svn-id: svn://10.0.0.236/trunk@54975 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 01:00:24 +00:00
tbogard%aol.net
a98d9b0127 Removed nsIDocShellEdit.idl and nsIDocShellFile.idl.
git-svn-id: svn://10.0.0.236/trunk@54974 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:59:28 +00:00
tbogard%aol.net
a6025a81a4 Removed
git-svn-id: svn://10.0.0.236/trunk@54973 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:58:49 +00:00
warren%netscape.com
871543dac7 Fix from Jud where we were dropping error code. r=warren
git-svn-id: svn://10.0.0.236/trunk@54972 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:58:43 +00:00
pavlov%netscape.com
aea7bfee72 intersect expose rects with the width and height of the window and unqueue draws and reset update area on scrolls r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54971 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:51:13 +00:00
sfraser%netscape.com
72bb0cfa68 Fix linkage errors with nsLinebreakConverter.r=kin
git-svn-id: svn://10.0.0.236/trunk@54970 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:31:45 +00:00
cmanske%netscape.com
dba0c50104 Removing unused images
git-svn-id: svn://10.0.0.236/trunk@54969 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:28:31 +00:00
varada%netscape.com
b42d8b03c8 changing the checkboxes for readme and license to being not checked by default
git-svn-id: svn://10.0.0.236/trunk@54967 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:17:17 +00:00
ducarroz%netscape.com
ca5cf8bbf4 Fix build bustage. Casting missing!
git-svn-id: svn://10.0.0.236/trunk@54965 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-02 00:04:26 +00:00
rhp%netscape.com
846ba4a2c0 Adding smime wrapper- R: ducarroz
git-svn-id: svn://10.0.0.236/trunk@54964 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 23:22:25 +00:00
rhp%netscape.com
7d1ad2c74b Correcting project file.
git-svn-id: svn://10.0.0.236/trunk@54963 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 23:17:58 +00:00
rogerl%netscape.com
63d2572917 Bug #19980 - insist on curly-brace after catch block rather than just
accepting it - forces error that allows catch block to span lines for
interactive input.


git-svn-id: svn://10.0.0.236/trunk@54962 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 23:12:58 +00:00
varada%netscape.com
82cc1b2bfd fix for bold font
git-svn-id: svn://10.0.0.236/trunk@54961 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 23:09:55 +00:00
erik%netscape.com
e680c6133b backing out part of previous change due to size and boldness issues on
some displays; r=none


git-svn-id: svn://10.0.0.236/trunk@54960 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 23:06:50 +00:00
sfraser%netscape.com
fc3e089fe6 Part of fix for bug 16813 -- line termination problems with forms. r=pollman, rickg.
git-svn-id: svn://10.0.0.236/trunk@54959 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 23:05:58 +00:00
beard%netscape.com
d2b4f7de3c bug #17574: fixed ResizeView() to generate an update for the bounding box of old and new bounds of the view, instead of the entire parent view (duh!). this can be optimized further by doing separate updates if old and new aren't overlapping. r=kin
git-svn-id: svn://10.0.0.236/trunk@54958 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:58:24 +00:00
ducarroz%netscape.com
fb746fd393 Fix for bug 16340. Add button Insert Object in MsgCompose Format Toolbar. R=cmanske
git-svn-id: svn://10.0.0.236/trunk@54957 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:54:48 +00:00
ducarroz%netscape.com
6579122dbf Fix for bug 16340. Add button Insert Object in MsgCompose Format Toolbar. R=cmanske
git-svn-id: svn://10.0.0.236/trunk@54956 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:49:15 +00:00
mcafee%netscape.com
b7c344e758 Fix for divide-by-zero case when encountering a zer-height rect. (20071) r=evaughan
git-svn-id: svn://10.0.0.236/trunk@54955 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:48:06 +00:00
waterson%netscape.com
1ca4076923 Make 'kGrowArrayBy' const. Thanks, Heikki.
git-svn-id: svn://10.0.0.236/trunk@54954 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:44:42 +00:00
akkana%netscape.com
37e650b1bc Fix the last output test that didn't pass.
Now TestOutSinks can be run as an automated test, by anyone, to find
regressions, instead of me having to go through each one by hand.


git-svn-id: svn://10.0.0.236/trunk@54953 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:41:22 +00:00
sspitzer%netscape.com
ebabdd99a7 ignore generated test app.
git-svn-id: svn://10.0.0.236/trunk@54952 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:39:22 +00:00
danm%netscape.com
22cd501286 hooking up 'close' xul event handler. bug 13695. r:hyatt@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54951 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:38:06 +00:00
danm%netscape.com
9bfb5a41b9 adding 'close' xul event handler. part of bug 13695. r:hyatt@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54950 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:35:33 +00:00
ducarroz%netscape.com
60cd3e0147 Part of fix for bug 17771. Add class nsIMsgRecipientArray. R=jefft
git-svn-id: svn://10.0.0.236/trunk@54949 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:34:49 +00:00
ducarroz%netscape.com
d56a580bdd Fix for bug 17771. Add a split addresses function in nsIMsgCompFields to let the UI use backend code to split correctly email addresses. R=jefft
git-svn-id: svn://10.0.0.236/trunk@54948 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:34:45 +00:00
ducarroz%netscape.com
ef106149f7 Fix for bug 17771 and bug 18676. We need to quote name and address part when we reformat email addresses. R=jefft
git-svn-id: svn://10.0.0.236/trunk@54947 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:34:33 +00:00
ducarroz%netscape.com
2e3365386e Rename shadow variable. R=jefft
git-svn-id: svn://10.0.0.236/trunk@54946 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:33:55 +00:00
buster%netscape.com
b42d830267 fixed 20170
r=karnaze


git-svn-id: svn://10.0.0.236/trunk@54945 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:28:51 +00:00
sfraser%netscape.com
6e1e05e1dd Add string versions of the line terminatin macros. r=pinkerton
git-svn-id: svn://10.0.0.236/trunk@54944 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:26:58 +00:00
buster%netscape.com
fba427b093 trivial code cleanup, just removed webshell includes from files where they are not used.
git-svn-id: svn://10.0.0.236/trunk@54943 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:25:01 +00:00
sfraser%netscape.com
2f3dfb5dfd Adding nsLinebreakConverter.cpp, which was reviewed by pinkerton.
git-svn-id: svn://10.0.0.236/trunk@54942 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:24:31 +00:00
sfraser%netscape.com
2cdd793b5e Adding nsLinebreakConverter to the build.
git-svn-id: svn://10.0.0.236/trunk@54941 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:23:58 +00:00
norris%netscape.com
1ffa0ae294 Fix
20257 unable to edit existing images in editor due to JS error
	19933 JavaScript "window.location" core dumps in CAPS
Back out previous changes for enforcing security on listeners and go with a
simple restriction of access to the method for adding listeners.
r=mstoltz


git-svn-id: svn://10.0.0.236/trunk@54940 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:23:22 +00:00
sfraser%netscape.com
8bafd8a0da Export nsLinebreakConverter.h
git-svn-id: svn://10.0.0.236/trunk@54939 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:22:21 +00:00
sfraser%netscape.com
a6db22e556 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54938 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:21:30 +00:00
cmanske%netscape.com
145c2179d6 Fixed bugs 18529, 20289; lots of progress on table editing (bug 6256). Other UI fixes: New color picker UI, added more missing menu items such as align, increase/decrease indent; moved 'Choose File' button to overlay to share by Image, Link, etc. dialogs. r=sfraser,akkana
git-svn-id: svn://10.0.0.236/trunk@54937 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:20:50 +00:00
cmanske%netscape.com
a973331419 Changed Message Composer UI for new color picker UI. r=sfraser
git-svn-id: svn://10.0.0.236/trunk@54936 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:19:56 +00:00
sspitzer%netscape.com
7a77b2df6c fix for #20506. this makes the addressing text area big as wide as possible, which is what we want.
git-svn-id: svn://10.0.0.236/trunk@54935 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:14:09 +00:00
ftang%netscape.com
9fea4ab9f9 1. remove unnecessary IME_FROM_CHAR code. 2. make mCurrentKeyboardLayout global 3. add gKeyboardLayout 4. use ToAsciiEx instead of ToAscii. 5. fix bug 6053 18986. r=erik
git-svn-id: svn://10.0.0.236/trunk@54934 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:10:13 +00:00
akkana%netscape.com
4cd9cfb812 20253, 20246: Fix extra ; after entity output. Clean up the code which
inserts the "html" text for an open html tag.  Changes from rickg to
remove large amounts of obsolete code from nsXIFDTD. r=rickg


git-svn-id: svn://10.0.0.236/trunk@54933 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:09:21 +00:00
alecf%netscape.com
3e9c78e028 fix for #20492 - move sender column header into value= attribute instead of floating as a #text node
git-svn-id: svn://10.0.0.236/trunk@54932 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:05:22 +00:00
rods%netscape.com
51c05dec82 changing "select:-moz-dropdown-list" to be hidden instead of collapse,
this works much better.
bug 19416 r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@54931 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:04:10 +00:00
pinkerton%netscape.com
455cf1869c correctly remove event listeners when frame goes away. fixes bug 19542, r=rjc
git-svn-id: svn://10.0.0.236/trunk@54930 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:02:33 +00:00
pinkerton%netscape.com
74d036322a beginnings of adding nsBlender support to mac build (r=pavlov).
git-svn-id: svn://10.0.0.236/trunk@54929 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 22:01:27 +00:00
toshok%hungry.com
8b853a2a1e fix another XXX
git-svn-id: svn://10.0.0.236/trunk@54928 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 21:26:42 +00:00
varada%netscape.com
b2170207ad general cleanup
git-svn-id: svn://10.0.0.236/trunk@54927 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 21:23:07 +00:00
varada%netscape.com
3df7004da4 changing final message after build
git-svn-id: svn://10.0.0.236/trunk@54926 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 21:22:27 +00:00
varada%netscape.com
dbee1395e4 check for bug #18457 - included an if statement to take care of cancel
git-svn-id: svn://10.0.0.236/trunk@54925 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 21:20:12 +00:00
toshok%hungry.com
611f0cf65e actually free libPath after verifying that PR_GetLibraryPath really does copy the return value.
git-svn-id: svn://10.0.0.236/trunk@54924 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 21:16:25 +00:00
hyatt%netscape.com
644ab39a24 Fixing the invisible tree problem #18577.
git-svn-id: svn://10.0.0.236/trunk@54923 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 20:11:01 +00:00
hyatt%netscape.com
8c25a43ace Fix for bug #18577 (which someone said was holding the tree closed). r=danm
git-svn-id: svn://10.0.0.236/trunk@54922 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 19:54:15 +00:00
robinf%netscape.com
6b22cfbbac fixing bug 9095; also added comment text to button1_offset descr.
git-svn-id: svn://10.0.0.236/trunk@54921 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 19:32:41 +00:00
robinf%netscape.com
20c2e81d68 Fixing bug 9095. Also fixed button1 command line so that this rshell.ini doesn't display an error on launch.
git-svn-id: svn://10.0.0.236/trunk@54920 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 19:20:55 +00:00
norris%netscape.com
9d79d50820 Fix js1_3/regress/in-001.js
git-svn-id: svn://10.0.0.236/trunk@54919 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 18:43:12 +00:00
norris%netscape.com
a4006c50ef Fix test ecma_2/Exceptions/string-001.js
git-svn-id: svn://10.0.0.236/trunk@54918 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 18:05:49 +00:00
erik%netscape.com
1199dbe633 adding local .cvsignore file; r=none
git-svn-id: svn://10.0.0.236/trunk@54917 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 18:03:52 +00:00
shaver%netscape.com
ff0abe5e37 fix windows filename case damage, r=brade,sdagley
git-svn-id: svn://10.0.0.236/trunk@54916 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 16:11:07 +00:00
rods%netscape.com
38dab45950 removing all lower case version of this file
git-svn-id: svn://10.0.0.236/trunk@54915 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 16:10:00 +00:00
dveditz%netscape.com
667a10ed0f Fix install wizard overwriting existing version
git-svn-id: svn://10.0.0.236/trunk@54914 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 16:02:19 +00:00
rods%netscape.com
6d9b82c696 bug 2253
git-svn-id: svn://10.0.0.236/trunk@54913 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 15:54:59 +00:00
buster%netscape.com
08f62964bd warning cleanup, plus found an uninitialized int variable that I initialized to 0.
git-svn-id: svn://10.0.0.236/trunk@54912 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 15:29:52 +00:00
buster%netscape.com
2c1a1037c6 warning cleanup
git-svn-id: svn://10.0.0.236/trunk@54911 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 15:15:44 +00:00
buster%netscape.com
32d3b7338e bug 2253. added controller to html text input
r = kmcclusk


git-svn-id: svn://10.0.0.236/trunk@54910 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 15:12:49 +00:00
buster%netscape.com
a5b61285a7 bug 2253. added controller to html text input
r = kmcclusk, norris


git-svn-id: svn://10.0.0.236/trunk@54909 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 15:11:33 +00:00
dcone%netscape.com
02ccab744b Took out the clip for backgrounds.. not needed r=rods. bug=16685
git-svn-id: svn://10.0.0.236/trunk@54908 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 14:45:59 +00:00
jfrancis%netscape.com
145139b012 * fix for PDT+ 16481: need rules for deleting in tables
* fix for 19395: protect against zero length text inserts
r = floppy moose


git-svn-id: svn://10.0.0.236/trunk@54907 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 14:32:55 +00:00
rjc%netscape.com
66f4f249bf Fix local find results to show columns. (Thanks, David.)
git-svn-id: svn://10.0.0.236/trunk@54906 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 12:23:39 +00:00
hyatt%netscape.com
4259485ebf Patching search so that column headers show up in upper tree. r=rjc
git-svn-id: svn://10.0.0.236/trunk@54905 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 12:09:01 +00:00
hyatt%netscape.com
051dde06ae More stubbed themes UI.
git-svn-id: svn://10.0.0.236/trunk@54904 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 12:04:14 +00:00
colin%theblakes.com
751f006ee2 Print support for OpenVMS. r=dcone
git-svn-id: svn://10.0.0.236/trunk@54903 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 11:58:21 +00:00
hyatt%netscape.com
5e3cd5ebb5 Cleaning up bad skin stuff in the search component.
git-svn-id: svn://10.0.0.236/trunk@54902 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 11:53:48 +00:00
cls%seawood.org
5804a0d54a Fixed problem with solaris builds setting MDCPUCFG instead of MDCPUCFG_H
Removed -mt from CFLAGS.


git-svn-id: svn://10.0.0.236/trunk@54901 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 11:25:52 +00:00
rjc%netscape.com
86ff876887 Fix silly warning.
git-svn-id: svn://10.0.0.236/trunk@54900 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 11:25:27 +00:00
hyatt%netscape.com
df5187a91f Fixing a bad style rule involving twisties.
git-svn-id: svn://10.0.0.236/trunk@54899 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 11:24:40 +00:00
hyatt%netscape.com
148bbbc893 Prevent tree widget row groups from being added to the undisplayed content
map twice.


git-svn-id: svn://10.0.0.236/trunk@54898 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 11:13:06 +00:00
hyatt%netscape.com
f2ac4044c8 Changing tree views to use display: none instead of visibility: collapse for closed nodes.
git-svn-id: svn://10.0.0.236/trunk@54897 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 10:56:17 +00:00
hyatt%netscape.com
43096baf33 Changes to make prefs work with new trees.
git-svn-id: svn://10.0.0.236/trunk@54896 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 10:55:44 +00:00
hyatt%netscape.com
9c0315ea57 Making a change to trees so that their inner frame is a box instead of a block. This
makes trees faster and bypasses numerous block bugs that occur when tables or trees
are used with boxes.  Also fixes bug #20354 (which is not a regression after all).


git-svn-id: svn://10.0.0.236/trunk@54895 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 10:37:20 +00:00
toshok%hungry.com
33f1b79836 remove debug specific switches from the help message in non-debug builds.
git-svn-id: svn://10.0.0.236/trunk@54894 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 09:53:08 +00:00
toshok%hungry.com
b6eaa766b6 fill out Options::printHelp
git-svn-id: svn://10.0.0.236/trunk@54893 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 09:48:13 +00:00
rjc%netscape.com
b41126c325 Add chrome .cpp and IDL files to Mac projects for hyatt.
git-svn-id: svn://10.0.0.236/trunk@54892 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 09:42:31 +00:00
saari%netscape.com
74ae6fc2f8 Fix for bug 18983, multiple carets showing up. R: shaver, a long time ago. I've since verified personally on linux and other platforms.
git-svn-id: svn://10.0.0.236/trunk@54891 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 09:09:46 +00:00
saari%netscape.com
fe665bdefe Making the mac focus event flow the same as windows. This is a Good Thing.
git-svn-id: svn://10.0.0.236/trunk@54890 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 09:07:52 +00:00
hyatt%netscape.com
493237dbd1 Actually setting the fields in the chrome entry enumeration now. r=me
git-svn-id: svn://10.0.0.236/trunk@54889 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 08:55:35 +00:00
hyatt%netscape.com
8211edd675 More skins work. r=travis
git-svn-id: svn://10.0.0.236/trunk@54888 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 08:44:43 +00:00
hyatt%netscape.com
afea6d35ec Calming Wensleydale down. r=me
git-svn-id: svn://10.0.0.236/trunk@54887 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 08:24:12 +00:00
hyatt%netscape.com
dc9ecb6a41 Adjusting some names of variables. r=travis
git-svn-id: svn://10.0.0.236/trunk@54886 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 08:17:42 +00:00
rjc%netscape.com
c9b4e1517b Fix bug # 18540: select the current search tab.
git-svn-id: svn://10.0.0.236/trunk@54885 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 08:03:39 +00:00
hyatt%netscape.com
7ae6e6d444 Support for enumeration of skins, packages, and locales nearing completion. r=mini-me
git-svn-id: svn://10.0.0.236/trunk@54884 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 07:59:35 +00:00
rgoodger%ihug.co.nz
f484decf70 updated WizardManager class. (not currently used in builds)
git-svn-id: svn://10.0.0.236/trunk@54883 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 07:39:32 +00:00
rgoodger%ihug.co.nz
5e071ed04d updated wizardHandlerSet for wizardmanager (not currently used in builds)
git-svn-id: svn://10.0.0.236/trunk@54882 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 07:39:03 +00:00
rgoodger%ihug.co.nz
ca3f0133ef updated WidgetStateManager class (not currently used in builds)
git-svn-id: svn://10.0.0.236/trunk@54881 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 07:38:15 +00:00
cls%seawood.org
d1fc8c8465 Removing --disable-editor (and MOZ_EDITOR) from the build as the editor module now handles all of the text fields for Mozilla and using this option will result in a "non-working" browser (text fields are not editable). Bug #20369 (The autogen script appears not to be working again.)
git-svn-id: svn://10.0.0.236/trunk@54880 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 07:25:51 +00:00
waterson%netscape.com
ae475cb650 Fix code-path leak by using nsCOMPtr.
git-svn-id: svn://10.0.0.236/trunk@54879 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 07:04:00 +00:00
syd%netscape.com
41d67eae8d Throughout mozilla, we call gtk_rgb_get_visual() and In gdk_window_new(), called
by superwin, the visual is being obtained by calling gdk_visual_get_system().
This was causing match errors when gdk_rgb picked a visual having a depth that
was different from the server default visual. r=pavlov, fixes bugs 20153 and
19263.


git-svn-id: svn://10.0.0.236/trunk@54878 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:39:36 +00:00
rginda%netscape.com
908f796b86 Testcase produced no output is no longer a failure.
git-svn-id: svn://10.0.0.236/trunk@54877 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:29:27 +00:00
mscott%netscape.com
595dfca752 stub implementation of AsyncOpen.
git-svn-id: svn://10.0.0.236/trunk@54876 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:17:49 +00:00
rhp%netscape.com
1fc5121607 Adding new files for mac...NOT PART OF THE BUILD YET
git-svn-id: svn://10.0.0.236/trunk@54875 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:12:10 +00:00
sfraser%netscape.com
50952e0fee Include stdio.h with system paths, not user paths. No bug, r=mozbot.
git-svn-id: svn://10.0.0.236/trunk@54874 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:12:01 +00:00
cls%seawood.org
e119369082 Removing --disable-editor (and MOZ_EDITOR) from the build as the editor module now handles all of the text fields for Mozilla and using this option will result in a "non-working" browser (text fields are not editable). Bug #20369
git-svn-id: svn://10.0.0.236/trunk@54873 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:08:25 +00:00
rginda%netscape.com
96ab5555eb Added new ecma_3 suite. along with 'new style' (hopefully simpler) shell.js, and
a new test (which fails already!)


git-svn-id: svn://10.0.0.236/trunk@54872 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 06:07:28 +00:00
warren%netscape.com
b047cad313 Made WarnIfFalse not call abort. Made abort be continuable on Windows. r=travis
git-svn-id: svn://10.0.0.236/trunk@54871 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 05:51:45 +00:00
waterson%netscape.com
e85a4b93d4 xpconnect is a component now on Linux/PPC, albeit a broken one...
git-svn-id: svn://10.0.0.236/trunk@54870 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 05:20:16 +00:00
pierre%netscape.com
1b8f60a970 Backing-out previous change which had the effect of getting rid of the widgets for *all* fixed positioned elements. Removing widgets is a goal at term but it's something that we want to leave to the View Manager folk(s) or at least do in sync with them.
git-svn-id: svn://10.0.0.236/trunk@54869 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 05:10:50 +00:00
waterson%netscape.com
69e6a8f7d3 Check in initial, non-working XPTCall code from Linux-PPC.
git-svn-id: svn://10.0.0.236/trunk@54868 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:56:46 +00:00
troy%netscape.com
4c1a325cf2 Added XXX comment to remind me (and Chris) of a problem that needs to
be revisited


git-svn-id: svn://10.0.0.236/trunk@54867 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:50:26 +00:00
rpotts%netscape.com
ad8a426d0f (r=valeski) Fix for new bloat (leaking HTTPChannels) that was introduced yesterday
git-svn-id: svn://10.0.0.236/trunk@54866 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:32:58 +00:00
brendan%mozilla.org
51687cf23b Fix obscure eval bug and ECMA conformance issue (20256, r=rginda@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@54865 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:30:04 +00:00
troy%netscape.com
b5a2f9d664 Removed dead code
git-svn-id: svn://10.0.0.236/trunk@54864 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:18:20 +00:00
troy%netscape.com
8ed54079fe Correctly this time
git-svn-id: svn://10.0.0.236/trunk@54863 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:13:19 +00:00
troy%netscape.com
62b5734d6a Removed some commented out dead code
git-svn-id: svn://10.0.0.236/trunk@54862 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:12:46 +00:00
troy%netscape.com
b9c53f0450 Removed some old dead code
git-svn-id: svn://10.0.0.236/trunk@54861 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:10:47 +00:00
pierre%netscape.com
ebcb5ad836 18163 "Use of fixed positioning in style sheet corrupts display". Don't create empty widgets for fixed positioned elements in order to avoid problems in the View Manager (GetDrawingSurface) where we end up copying uninitialized bitmaps to the screen. The main reason for fixing the bug here instead of within the View Manager is that we'll get rid of widgets altogether over time.
git-svn-id: svn://10.0.0.236/trunk@54860 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:10:02 +00:00
neeti%netscape.com
3518a79713 bug 15818, fixed one instance of ImageURLImpl being leaked for the icon on linux. r=pnunn
git-svn-id: svn://10.0.0.236/trunk@54859 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 04:02:57 +00:00
tbogard%aol.net
32cafeec0d nsXPBaseWindow now uses nsIBaseWindow interface off webshell instead of nsIWebShell for some simple window stuff.
git-svn-id: svn://10.0.0.236/trunk@54858 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:43:17 +00:00
tbogard%aol.net
fc5ff178f4 nsWebShell now implements nsIDocShellContainer.
git-svn-id: svn://10.0.0.236/trunk@54857 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:41:43 +00:00
tbogard%aol.net
c9619810e9 Changed a ->QueryInterface into a CallQueryInterface. Also cleaned up RemoveChild to return an error when an invalid child is passed in.
git-svn-id: svn://10.0.0.236/trunk@54856 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:37:21 +00:00
waterson%netscape.com
6bdf96a634 Bug 9489. Use nsAutoVoidArray for collecting classes to avoid excessive heap use.
git-svn-id: svn://10.0.0.236/trunk@54855 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:27:25 +00:00
mscott%netscape.com
c9ce94ef8e Add chrome and res urls specs to the list of urls which now work with the uri loader.
Note: you need to enable uri loading under the debug menu for this code to be executed.


git-svn-id: svn://10.0.0.236/trunk@54854 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:21:51 +00:00
sspitzer%netscape.com
ddc473bcbf fix for #14355, r=alecf.
only show nntp servers in "subscribe" dialog and only show mail servers and mail folders in "new folder" dialog


git-svn-id: svn://10.0.0.236/trunk@54853 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:16:14 +00:00
tbogard%aol.net
661a51c2e6 Removed old commented out code for the now defunct nsIDocShellEdit and nsIDocShellFile interfaces. Replaced nsIDocShellContainer::GetEnumerator with nsIDocShellContainer::GetChildAt(). Also provided implementation for that function.
git-svn-id: svn://10.0.0.236/trunk@54852 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:08:58 +00:00
rgoodger%ihug.co.nz
9fbc9294c1 selection fix, keyboard shortcuts, r=morse
git-svn-id: svn://10.0.0.236/trunk@54851 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:08:09 +00:00
sspitzer%netscape.com
117ded3835 simple bullet proofing fix for #20423
git-svn-id: svn://10.0.0.236/trunk@54850 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:08:04 +00:00
tbogard%aol.net
7df87d2580 Removed nsIDocShellFile and nsIDocShellEdit from the include list.
git-svn-id: svn://10.0.0.236/trunk@54849 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:07:02 +00:00
rgoodger%ihug.co.nz
70c81873e0 fixed selection problems, added keyboard stuff. r=morse
git-svn-id: svn://10.0.0.236/trunk@54848 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 03:05:57 +00:00
rogerl%netscape.com
58c25045be Call createFunctionObject on closure created InterpretedFunction objects
so they can be real JS objects like they're supposed to be -with prototypes
and everything.


git-svn-id: svn://10.0.0.236/trunk@54847 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 02:45:58 +00:00
mcafee%netscape.com
6724125aa5 Removing EXPORTS, parent makefile explicitly points at this directory now. r=bryner
git-svn-id: svn://10.0.0.236/trunk@54846 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 02:30:38 +00:00
waterson%netscape.com
d0ed7ceda0 Try to fix build bustage.
git-svn-id: svn://10.0.0.236/trunk@54845 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 02:25:28 +00:00
mcafee%netscape.com
3f178b45e9 missing exports
git-svn-id: svn://10.0.0.236/trunk@54844 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 02:24:01 +00:00
despotdaemon%netscape.com
2e7a23cebf Pseudo-automatic update of changes made by vishy@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@54843 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 02:22:39 +00:00
despotdaemon%netscape.com
89a73d6da4 Pseudo-automatic update of changes made by leaf@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@54842 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 01:47:21 +00:00
drapeau%eng.sun.com
53f0f48043 My bad: orphaned code fix for bug 5369. The rest of this bug fix was
checked in some time ago, but this portion of the fix never made it
it.  r=drapeau@eng.sun.com.  Log error when LiveConnect cannot be
started due to an error in the Java VM.


git-svn-id: svn://10.0.0.236/trunk@54841 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 01:43:16 +00:00
sspitzer%netscape.com
1cc9561b2e bulletproofing to prevent #20410
git-svn-id: svn://10.0.0.236/trunk@54840 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 01:26:08 +00:00
rickg%netscape.com
46b9d23028 added new color for CDATA in viewsource; r=none
git-svn-id: svn://10.0.0.236/trunk@54839 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 01:13:28 +00:00
dbragg%netscape.com
915b573e3f Changed the error reporting so that scripts will not bail out. Also improves robustness. Fixes bug # 20004 r=dveditz
git-svn-id: svn://10.0.0.236/trunk@54838 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:48:38 +00:00
dbragg%netscape.com
47e1c7438c Changed to correct location of .xul file to chrome directory from the res directory. Fixes bug #10241 r=dveditz
git-svn-id: svn://10.0.0.236/trunk@54837 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:47:10 +00:00
drapeau%eng.sun.com
6a5ed67b18 Fix for bug 5427 ("Passing security principals into nsILiveConnect
methods will cause browser to crash"), fix contributed by
jeff.dyer@compilercompany.com, r=drapeau@eng.sun.com.  More
bulletproof way of testing if principals passed in are valid (comments
in the code fix explain in more detail).


git-svn-id: svn://10.0.0.236/trunk@54836 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:46:43 +00:00
dbragg%netscape.com
b3d902ea74 Fixed up progress.xul file fixes bug #10241 r=dveditz
git-svn-id: svn://10.0.0.236/trunk@54835 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:45:44 +00:00
drapeau%eng.sun.com
8f88c967d6 Fix for bug 14666 ("Running this JavaToJavaScript test causes
apprunner to crash."), fix contributed by
jeff.dyer@compilercompany.com, r=drapeau@eng.sun.com. Checks whether
there's a current valid context; if there's no context, don't bother
checking if an exception is pending on that context.


git-svn-id: svn://10.0.0.236/trunk@54834 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:44:08 +00:00
waterson%netscape.com
7d74faa6ec Bug 9489. Add support for nsAutoVoidArray. r=scc,shaver
git-svn-id: svn://10.0.0.236/trunk@54833 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:37:11 +00:00
ftang%netscape.com
07f07a9e71 change debug code.
git-svn-id: svn://10.0.0.236/trunk@54832 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:35:31 +00:00
davidm%netscape.com
b980a7a7e7 14026 [DOGFOOD] Copy/Paste/Cut (etc) disabled within Browser
r = hangas


git-svn-id: svn://10.0.0.236/trunk@54831 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:29:27 +00:00
jband%netscape.com
f864a0ff3d My contribution to bug 5403. Get rid of xpconnect's ServiceReleaser scheme because we can now just call Release on a service just like any other xpcom object. r=mccabe
git-svn-id: svn://10.0.0.236/trunk@54830 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:27:09 +00:00
alecf%netscape.com
fd3d71879a oops, this is a pop3-specific pref. this and the previous checkin r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@54829 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:22:38 +00:00
dp%netscape.com
694b0720be NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54828 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:21:53 +00:00
robinf%netscape.com
70d1511ad8 fixing bug 16779
git-svn-id: svn://10.0.0.236/trunk@54827 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:17:19 +00:00
mscott%netscape.com
7e1229973c add text/xul to the list of content types the browser content listener cares about.
git-svn-id: svn://10.0.0.236/trunk@54826 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:17:08 +00:00
mscott%netscape.com
dae428b1cc uri dispatching nit...if the webshell doesn't have a parent content uri listener then
return an error code instead of NS_OK.


git-svn-id: svn://10.0.0.236/trunk@54825 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:16:25 +00:00
rginda%netscape.com
8e1057b2cd Removing window.event IEism, r=pinkerton, bug=19323
git-svn-id: svn://10.0.0.236/trunk@54824 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:12:02 +00:00
alecf%netscape.com
3586079172 add new preference for automatically downloading mail on biff
git-svn-id: svn://10.0.0.236/trunk@54823 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:10:37 +00:00
slamm%netscape.com
750a1e716e Sandbox the panel content with type='content' on the iframe.
git-svn-id: svn://10.0.0.236/trunk@54822 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:07:48 +00:00
alecf%netscape.com
10355d147e fix for #16885 - remove the "Name" heading from the tree
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@54821 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:06:19 +00:00
alecf%netscape.com
845e776fb1 fix for #17961 - add defaults for some POP settings
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@54820 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:05:34 +00:00
robinf%netscape.com
c904c1ae23 fixingn bug 17877
git-svn-id: svn://10.0.0.236/trunk@54819 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-01 00:00:26 +00:00
mark.lin%eng.sun.com
2f9153f71a Changed all occurances of nsVector to use nsVoidArray in the OJI module.
This fixes part of bug #11666. r=ed.burns@eng.sun.com.

Contact me at mark.lin@eng.sun.com or (408) 517-5365 if there are problems.


git-svn-id: svn://10.0.0.236/trunk@54818 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:58:28 +00:00
norris%netscape.com
eb56ef0b80 anal: fix indentation
git-svn-id: svn://10.0.0.236/trunk@54817 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:54:51 +00:00
wtc%netscape.com
c53f870276 Bugzilla bug #20393: PR_NewPollableEvent should not assume that
PR_CreatePipe and PR_NewTCPSocketPair won't change its arguments
when it fails.


git-svn-id: svn://10.0.0.236/trunk@54816 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:52:34 +00:00
tbogard%aol.net
79db5ee378 Trying to put CallQueryInterface back in. Lets see if Wensleydale likes it better with a .get().
git-svn-id: svn://10.0.0.236/trunk@54815 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:50:01 +00:00
robinf%netscape.com
99fa3b6ce3 Fixing bug 6348
git-svn-id: svn://10.0.0.236/trunk@54814 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:46:32 +00:00
dp%netscape.com
777ccab296 NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54813 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:44:59 +00:00
dp%netscape.com
9b0cfefb70 NS_GET_IID(). Thanks to patch from pp@ludasdesign.com r=dp@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54812 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:36:32 +00:00
pierre%netscape.com
2af3ff840a 12520 "GFX select elements need to be able to turn off text". Fixing previous checkins in nsFrame::DisplaySelection(): mUserSelect is not a bit field.
git-svn-id: svn://10.0.0.236/trunk@54811 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:31:16 +00:00
pavlov%netscape.com
3c27adc72c remove a line i checked in that i didn't mean to check in in my last checkin
git-svn-id: svn://10.0.0.236/trunk@54810 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:29:03 +00:00
wtc%netscape.com
e1645749ce Assert that the WSAStartup call succeeded.
git-svn-id: svn://10.0.0.236/trunk@54809 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:24:28 +00:00
troy%netscape.com
ed6fcf8e88 b=20329. Fixed CleanupFrameReferences() so it isn't O(N!)
git-svn-id: svn://10.0.0.236/trunk@54808 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:23:50 +00:00
erik%netscape.com
15e3a37879 Adding local .cvsignore file; r=none
git-svn-id: svn://10.0.0.236/trunk@54807 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:22:27 +00:00
kin%netscape.com
6cc5706528 Fix for bug #20107 [DOGFOOD] typing in the body causes body to scroll to top
and     bug #19541 [DOGFOOD] Browser jumps to top of page seconds after
                    scrolling down
Modified nsScrollPortFrame::Reflow() to pass NS_FRAME_NO_MOVE_VIEW when
reflowing it's kidFrame.

r=evaughan@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54806 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:18:47 +00:00
wtc%netscape.com
fd9dc6dc71 Bugzilla bug #14260: assert that NSPR's WSAStartup call succeeded.
git-svn-id: svn://10.0.0.236/trunk@54805 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:17:06 +00:00
rhp%netscape.com
dc067d9d88 Cleanup of garbage files
git-svn-id: svn://10.0.0.236/trunk@54804 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:15:59 +00:00
sspitzer%netscape.com
8d4304572e remove my cheesy dump statements.
git-svn-id: svn://10.0.0.236/trunk@54803 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:15:27 +00:00
erik%netscape.com
99c5bbc3af bug 17503; East Asian text is so large on Unix, and raised too high for
the underline, so that it is truncated at the top in text fields -- have
applied a temporary fix based on the locale; r=ftang


git-svn-id: svn://10.0.0.236/trunk@54802 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:11:21 +00:00
sspitzer%netscape.com
f2309b4c2d go back to version 1.7 for rhp.
git-svn-id: svn://10.0.0.236/trunk@54801 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:03:59 +00:00
sspitzer%netscape.com
8912637526 fix warning for pavlov
git-svn-id: svn://10.0.0.236/trunk@54800 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 23:01:10 +00:00
sspitzer%netscape.com
f05a87b350 clean up in preparation for bug #14254. remove unused files. create
new string bundle (messenger.properties) for use by the messenger application
fix widgetglue.js to use the string bundle.  now we get the title of the
new folder / subscribe dialog from the string bundle.
also fix the problem where the new folder / subscribe dialog wouldn't open
if zero, or more than one server / folder were selected.


git-svn-id: svn://10.0.0.236/trunk@54799 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:57:42 +00:00
jdunn%netscape.com
3ea2dc04ba # 18551
r= granrose@netscape.com & rkl@connect.org.uk

On HPUX enable SHLIB_PATH in gcc builds


git-svn-id: svn://10.0.0.236/trunk@54798 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:54:08 +00:00
waterson%netscape.com
452d6d03a6 Bug 16516. Doh! Fix use of NS_RELEASE()-ed pointer that was causing load handlers to not run on brutally shared docs.
git-svn-id: svn://10.0.0.236/trunk@54797 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:47:41 +00:00
sspitzer%netscape.com
228e53e8c6 fix warning. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@54796 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:42:54 +00:00
bienvenu%netscape.com
6ee680af34 fix newline in msg string, same as last check in for this directory, but the right file this time
git-svn-id: svn://10.0.0.236/trunk@54795 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:42:29 +00:00
rhp%netscape.com
3c626fe220 adding these back.
git-svn-id: svn://10.0.0.236/trunk@54794 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:42:09 +00:00
wtc%netscape.com
38302c0c89 Changes for leak detector to get thread objects to be scanned correctly.
Checked in for Patrick Beard <beard@netscape.com>.


git-svn-id: svn://10.0.0.236/trunk@54793 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:37:32 +00:00
rhp%netscape.com
6b12459157 deleting garbage files
git-svn-id: svn://10.0.0.236/trunk@54792 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:37:16 +00:00
cls%seawood.org
35e1ece68f Use CFLAGS & CXXFLAGS when linking executables. Bug #20254
git-svn-id: svn://10.0.0.236/trunk@54791 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:35:34 +00:00
pavlov%netscape.com
7fe2f970fd add comment to scrollbar about a bug and fix for stupid drawing code on unix that goes along with beard's checking for 13131. removes some unneeded duplication of code. r=blizzard,paulmac,beard
git-svn-id: svn://10.0.0.236/trunk@54790 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:33:56 +00:00
rhp%netscape.com
f98271b612 Adding new build files to the tree
git-svn-id: svn://10.0.0.236/trunk@54789 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:31:23 +00:00
rhp%netscape.com
cad997a424 Adding new mac project file
git-svn-id: svn://10.0.0.236/trunk@54788 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:29:57 +00:00
beard%netscape.com
d8e63b5bf9 bug #13131, 18140: now accumulating paint requests into a region for each view that has a widget. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@54787 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:27:56 +00:00
karnaze%netscape.com
86e6b675b0 new regression tests
git-svn-id: svn://10.0.0.236/trunk@54786 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:26:37 +00:00
mscott%netscape.com
1d98ae0543 comment out the msgWindow variable that we were creating
every time this script was loaded. This was happening
every time we loaded a message. It had a side effect
of causing a uri dispatching crash and it had severe performance implications. We shouldn't be creating
a new msg window every time we display a message.
this may have a bad side effect when we support multiple
3-pane windows because we can no longer call SetWindow.


git-svn-id: svn://10.0.0.236/trunk@54785 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:24:44 +00:00
ftang%netscape.com
11dd650525 fix bug 20181. r=ftang a=beard
git-svn-id: svn://10.0.0.236/trunk@54784 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:24:16 +00:00
mscott%netscape.com
b0b3c242cd small optimization for windows and Mac in CreatenewLineFromSocket.
implement AsyncOpen (a fake version) for imap protocol


git-svn-id: svn://10.0.0.236/trunk@54783 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:22:46 +00:00
rhp%netscape.com
35f85e5155 Adding new directory to build
git-svn-id: svn://10.0.0.236/trunk@54782 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:21:37 +00:00
mscott%netscape.com
86572486f8 implement retargeting for SetLoadGroup
r=valeski,rpotts


git-svn-id: svn://10.0.0.236/trunk@54781 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:19:53 +00:00
mscott%netscape.com
d992f3098b implement retargeting for SetLoadGroup
r=valeski


git-svn-id: svn://10.0.0.236/trunk@54780 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:19:35 +00:00
brade%netscape.com
2aae6549e1 ObscureCursor (bug #19593; r=sfraser)
git-svn-id: svn://10.0.0.236/trunk@54779 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:19:04 +00:00
rginda%netscape.com
56df13b9c5 Added liveconnect option to runtests2.pl, there are now so many shells supported that the -e|--engine=<type> option has replaces all the individual engine options, such as -d, -o, and -r.
Updated bugnumber in the function-001(-n)?.js files, and minor simplification in the 10.1.3 testcase.


git-svn-id: svn://10.0.0.236/trunk@54778 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:16:34 +00:00
ftang%netscape.com
fd45ea4f85 fix bug 18398. Make sure the startOffset and textWidth get reset in the while loop
git-svn-id: svn://10.0.0.236/trunk@54777 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:16:12 +00:00
rhp%netscape.com
b487d387e6 Fixes for mime rendering problems - mail send problems - Bug #: 19529 18714 20281 20343 19064 - r: putterman
git-svn-id: svn://10.0.0.236/trunk@54776 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:16:11 +00:00
mscott%netscape.com
c45d366abf fix back and forward buttons when using uri dispatching. When we're about to call into the uri loader,
set the mLoadingDocument flag on the doc loader to true.


git-svn-id: svn://10.0.0.236/trunk@54775 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:15:35 +00:00
valeski%netscape.com
1ff427da29 r=bill law. 18725. The save as dialog now uses OpenInputStream to write files to disk (this pushes all data transfer off the UI thread).
git-svn-id: svn://10.0.0.236/trunk@54774 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:11:44 +00:00
ftang%netscape.com
06c8b34cbd fix bug 12253. clean up some ime code. r=erik
git-svn-id: svn://10.0.0.236/trunk@54773 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:09:28 +00:00
pinkerton%netscape.com
f4bcc3e32f fix for bug #19571, where we assumed text from the drag manager or clipboard was null terminated when placing it into a nsISupportsPrimitive, when it obviously wasn't. r=sfraser.
git-svn-id: svn://10.0.0.236/trunk@54772 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:07:29 +00:00
pinkerton%netscape.com
5723e151a5 added setDataWithLength to nsISupports[W]String r=jband.
git-svn-id: svn://10.0.0.236/trunk@54771 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:06:05 +00:00
ftang%netscape.com
e7bea855b6 change the base font for XIM to a XLFD which can be fulfilled by all the locale. Fix hanIM problem w/ Korean locale. r=erik
git-svn-id: svn://10.0.0.236/trunk@54770 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:05:47 +00:00
ftang%netscape.com
c88f99faeb fix bug 19206. r=erik move two nsAutoString tothe same block where the code reference to it's internal data
git-svn-id: svn://10.0.0.236/trunk@54769 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:03:31 +00:00
pavlov%netscape.com
5657d76924 adding new line to end of file so it quits whining r=beard
git-svn-id: svn://10.0.0.236/trunk@54768 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:01:59 +00:00
bryner%uiuc.edu
6e5ee99738 Making a minor optimization for mousewheel scrolling on trees. r=shaver.
git-svn-id: svn://10.0.0.236/trunk@54767 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:00:28 +00:00
rhp%netscape.com
28f8181317 Fixes for mime rendering problems - mail send problems - Bug #: 19529 18714 20281 20343 19064 - r: putterman
git-svn-id: svn://10.0.0.236/trunk@54766 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 22:00:15 +00:00
jfrancis%netscape.com
c3b10ef137 fix for bug 20205: selection was getting jerked around by whitespace conversion code.
git-svn-id: svn://10.0.0.236/trunk@54765 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 21:58:37 +00:00
akkana%netscape.com
f82ef1e272 20348: Make alt the modifier for Unix, and generally clean up code. r=brade
git-svn-id: svn://10.0.0.236/trunk@54764 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 21:58:00 +00:00
warren%netscape.com
f02e6be746 Put back in util.lib
git-svn-id: svn://10.0.0.236/trunk@54763 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 21:56:24 +00:00
akkana%netscape.com
82db77d4fb Removing my name from a debug printf
git-svn-id: svn://10.0.0.236/trunk@54762 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 21:56:09 +00:00
varada%netscape.com
94f220927b fix for bug #18908 changing title to show configuration information in the show summary dialog
git-svn-id: svn://10.0.0.236/trunk@54761 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 21:14:04 +00:00
robinf%netscape.com
639fbde2f5 Fixing bug 17875.
git-svn-id: svn://10.0.0.236/trunk@54760 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 20:16:00 +00:00
petitta%netscape.com
d862db60a2 Updated make file CD Layout Spec
git-svn-id: svn://10.0.0.236/trunk@54759 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 17:45:01 +00:00
leaf%mozilla.org
9d30a5d38d backing out slamm's changes to use cvsco.pl; builds are breaking, not sure
why but i'd rather debug after the tree is open.


git-svn-id: svn://10.0.0.236/trunk@54758 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 17:29:20 +00:00
leaf%mozilla.org
b464ace435 fixing cvs command path delimiter. windows knows \, but cvs knows /. This
was obviously never tested before checkin.


git-svn-id: svn://10.0.0.236/trunk@54757 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 16:35:01 +00:00
brade%netscape.com
44ddc49826 remove some unused functions from editor shell (r=jfrancis)
git-svn-id: svn://10.0.0.236/trunk@54756 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 15:23:46 +00:00
valeski%netscape.com
82cca0d48b r=rpotts, 17052. FTP now implements nsIProgressEventSink and sits inbetween the transport's notifications and the consumers.
git-svn-id: svn://10.0.0.236/trunk@54755 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 15:07:32 +00:00
jfrancis%netscape.com
ae8be3e7b8 fixing iid of nsIAbsorbingTransaction
git-svn-id: svn://10.0.0.236/trunk@54754 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 14:31:47 +00:00
jfrancis%netscape.com
3752469ca6 iid for nsIAbsorbingTransaction
git-svn-id: svn://10.0.0.236/trunk@54753 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 14:31:18 +00:00
bienvenu%netscape.com
89f1e5dc50 fix escaping of mailbox names, r=,mscott, part of 17681
git-svn-id: svn://10.0.0.236/trunk@54752 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 14:10:20 +00:00
rjc%netscape.com
8b3b8b77f0 Use the correct set of RDF datasources for the bookmarks popup menu on the personal toolbar.
git-svn-id: svn://10.0.0.236/trunk@54751 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 12:59:48 +00:00
rjc%netscape.com
3f51838418 Create static trueStr and falseStr once instead of various "true" and "false" usage.
git-svn-id: svn://10.0.0.236/trunk@54750 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 12:08:54 +00:00
hyatt%netscape.com
8ee08d337c Adding the stubs of a UI for theme switching to prefs.
git-svn-id: svn://10.0.0.236/trunk@54749 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 11:53:17 +00:00
rjc%netscape.com
e421099501 Search now probes for a match icon file (gif, jpg, jpeg, png) for a search dataset instead of using CSS styles to map icons to search engines. So, specify a "src" on a titlebutton which matches the icon file resource... and we end up with "Previous Search Results" nodes that have the correct icon for a given search engine.
Note that doing this required switching back to fully defining titledbutton nodes inside of treecells, as it looks like the "src" attribute on a treecell isn't currently copied onto anonymous titledbutton nodes.


git-svn-id: svn://10.0.0.236/trunk@54748 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 11:52:35 +00:00
rjc%netscape.com
6deb227c9c Search now probes for a match icon file (gif, jpg, jpeg, png) for a search dataset instead of using CSS styles to map icons to search engines.
git-svn-id: svn://10.0.0.236/trunk@54747 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 11:50:38 +00:00
hyatt%netscape.com
ae8e7ba6e1 Adding comments.
git-svn-id: svn://10.0.0.236/trunk@54746 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 11:37:17 +00:00
hyatt%netscape.com
8892310c43 Adding some NS_ERRORs. r=gimpy
git-svn-id: svn://10.0.0.236/trunk@54745 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 11:35:16 +00:00
hyatt%netscape.com
b54ab2026d Working on code to enumerate installed skins, packages, and locales. r=gimpy
git-svn-id: svn://10.0.0.236/trunk@54744 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 11:33:44 +00:00
ssu%netscape.com
97de07e73f enabling ren8dot3 to be part of tinderbox build
git-svn-id: svn://10.0.0.236/trunk@54742 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 09:52:34 +00:00
ssu%netscape.com
7df07124f6 updating core script to use the new folder object instead of strings for paths/folders. r=sgehani@netscape.com. Not part of Tinderbox.
git-svn-id: svn://10.0.0.236/trunk@54741 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 09:50:46 +00:00
hyatt%netscape.com
841f13b627 Adding idl for the chrome entry (used for enumeration of installed skins, packages and locales). r=gimpy
git-svn-id: svn://10.0.0.236/trunk@54740 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 09:37:58 +00:00
ssu%netscape.com
1e556db4a3 initial checkin of perl script to recursively remove directories. Not part of tinderbox.
git-svn-id: svn://10.0.0.236/trunk@54739 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 09:36:53 +00:00
hyatt%netscape.com
38a6405873 More skin goodness. r=gimpy
git-svn-id: svn://10.0.0.236/trunk@54738 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 09:29:43 +00:00
warren%netscape.com
a99e18a526 Toned down warning message for libs phase.
git-svn-id: svn://10.0.0.236/trunk@54737 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 08:09:12 +00:00
warren%netscape.com
783b66f200 Removed neckoutil_s.lib
git-svn-id: svn://10.0.0.236/trunk@54736 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 07:58:20 +00:00
mccabe%netscape.com
4c36ab7089 Reinstating backed-out fix to 18636; move FileLocator registration call from xpfe/bootstrap/nsSetupRegistry to webshell/tests/viewer/nsSetupRegistry, to make sure that the FileLocator service is available to the viewer. This fixes prefs for the viewer, broken before because they couldn't get at FileLocator.
FileLocator is still registered in xpfe, as the first nsSetupRegistry #includes the second.  Hence the previous bustage.

r=neeti.


git-svn-id: svn://10.0.0.236/trunk@54735 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 07:54:18 +00:00
warren%netscape.com
4aa59d97bd Fixed bug GetContentType/GetContentLength.
git-svn-id: svn://10.0.0.236/trunk@54734 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 07:36:14 +00:00
warren%netscape.com
de6431e60d Removed -- old netlib stuff.
git-svn-id: svn://10.0.0.236/trunk@54733 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 06:50:50 +00:00
warren%netscape.com
e5b2451474 Removed neckoutil_s.lib
git-svn-id: svn://10.0.0.236/trunk@54732 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 06:48:30 +00:00
slamm%netscape.com
aa4a12d9d2 Partial fix for bug 20200. Only allow one tree to have selection at a time. Not part of the build.
git-svn-id: svn://10.0.0.236/trunk@54731 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 06:24:53 +00:00
slamm%netscape.com
4451b69a36 Partial fix for bug 20200. Only allow one tree to have selection at a time. Not part of the build.
git-svn-id: svn://10.0.0.236/trunk@54730 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 06:18:58 +00:00
tbogard%aol.net
de88fc736a Errr, this should help baby wensleydale.
git-svn-id: svn://10.0.0.236/trunk@54729 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 06:02:46 +00:00
warren%netscape.com
1d923b140b Workaround for Solaris bustage.
git-svn-id: svn://10.0.0.236/trunk@54728 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 05:58:24 +00:00
warren%netscape.com
2a40d45436 Removed util dir from build.
git-svn-id: svn://10.0.0.236/trunk@54727 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 05:52:41 +00:00
troy%netscape.com
e1ca6b4aeb Fixed compiler warning
git-svn-id: svn://10.0.0.236/trunk@54726 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 05:38:15 +00:00
warren%netscape.com
05d899f92a Added include of nsNetUtil.h to pick up NS_NewSyncStreamListener
git-svn-id: svn://10.0.0.236/trunk@54725 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 05:32:14 +00:00
warren%netscape.com
99c149db53 Removed nsICapabilities.idl -- subsumed by nsIInterfaceRequestor.idl
git-svn-id: svn://10.0.0.236/trunk@54724 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 05:18:39 +00:00
troy%netscape.com
64a7b56d5e b=20286. Changed PlaceFloater() so that it repositions any views after
placing the frame


git-svn-id: svn://10.0.0.236/trunk@54723 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 05:09:08 +00:00
warren%netscape.com
51881fbcea Landing no_neckoutil2_branch. Bug #11159. Removes neckoutil_s.lib from build which helps beos and openvms.
git-svn-id: svn://10.0.0.236/trunk@54722 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:50:42 +00:00
warren%netscape.com
99fb5a522a Changed from no_neckoutil2_branch to remove neckoutil from build. Bug #11159
git-svn-id: svn://10.0.0.236/trunk@54721 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:49:11 +00:00
troy%netscape.com
42c75ca193 Changes parameter to be "const nsRect*" and changed a comment
git-svn-id: svn://10.0.0.236/trunk@54720 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:48:34 +00:00
valeski%netscape.com
432c3ffc1f r=waterson. 16914. FTP was authentication anonymously even though username and pwd info were suppplied in the url. now it isn't
git-svn-id: svn://10.0.0.236/trunk@54719 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:39:29 +00:00
waterson%netscape.com
5b5c83c2d3 Fix RemoveStyleSheet() per pierre's comments.
git-svn-id: svn://10.0.0.236/trunk@54718 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:33:28 +00:00
tbogard%aol.net
ead43e83c0 Put a couple of what were protected member functions of nsWebShell into the public API. This was needed during the period of rebuilding the webshell.
git-svn-id: svn://10.0.0.236/trunk@54717 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:32:42 +00:00
tbogard%aol.net
7b9a93526f nsWebShell now implements nsIDocShell. This is to pave the way for getting converted over to the docshell world. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@54716 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:32:09 +00:00
mccabe%netscape.com
cc0d698984 Shrink 'ifeq ($(XPIDL_MODULE),)'-conditional error code from an if-else to just an if, so that gmake clobber, etc. works even when the error would fire.
r=shaver.


git-svn-id: svn://10.0.0.236/trunk@54715 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:25:19 +00:00
valeski%netscape.com
77c6e839a9 18434. r=rpotts. HTTP now implements OpenInputStream and proxies event sink callbacks between the caller and the transport.
git-svn-id: svn://10.0.0.236/trunk@54714 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:15:27 +00:00
tbogard%aol.net
32bc1cd58a Removing now that the interface definition can be found in the IDL file.
git-svn-id: svn://10.0.0.236/trunk@54713 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:09:16 +00:00
valeski%netscape.com
a37f8ac53e r=waterson. 17647. MIME mapping for file extensions was case sensitive. we now disregard case (this is actually broken, but for 99% of the real world cases we're covered)
git-svn-id: svn://10.0.0.236/trunk@54712 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 04:07:51 +00:00
tbogard%aol.net
f7f16de3f9 Adding new line at the end of the file to get rid of the warning.
git-svn-id: svn://10.0.0.236/trunk@54711 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:50:05 +00:00
slamm%netscape.com
ffb8e62846 Checked in proper MANIFEST file. This can go away now.
git-svn-id: svn://10.0.0.236/trunk@54710 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:06:47 +00:00
slamm%netscape.com
19fcf86495 Add dialogs for adding panels. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54709 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:03:35 +00:00
slamm%netscape.com
26b71f49eb Add directories for sidebar component: public and src. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54708 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:03:31 +00:00
slamm%netscape.com
a871c3927f Turn item selection back on. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54707 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:03:27 +00:00
slamm%netscape.com
6e18c894cf Move click handler from <tree> to <treechildren>. This prevents clicks
on the column headers from launching a browser. Bug 11996. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54706 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:03:23 +00:00
slamm%netscape.com
b687207b79 Remove obsolete JavaScript code for the sidebar. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54705 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:03:20 +00:00
slamm%netscape.com
62f61ae822 Add persistence for state of folder splitter. Remove persistence
for sidebar-splitter (sidebarOverlay.xul handles it.) r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54704 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 03:03:13 +00:00
slamm%netscape.com
7f467f3582 Temp fix for Mac build
git-svn-id: svn://10.0.0.236/trunk@54703 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:53:41 +00:00
slamm%netscape.com
2a455361bb Remove unused flash.dtd entry.
git-svn-id: svn://10.0.0.236/trunk@54702 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:33:31 +00:00
slamm%netscape.com
eb66d55337 Remove unused files.
git-svn-id: svn://10.0.0.236/trunk@54701 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:14:41 +00:00
slamm%netscape.com
8f32faf290 Remove unused flash files
git-svn-id: svn://10.0.0.236/trunk@54700 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:12:04 +00:00
slamm%netscape.com
f7a9eab6cf Remove unused files.
git-svn-id: svn://10.0.0.236/trunk@54699 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:09:03 +00:00
slamm%netscape.com
b48b73e257 Remove unused files.
git-svn-id: svn://10.0.0.236/trunk@54698 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:03:38 +00:00
slamm%netscape.com
50cafea917 Something goofy is up with tinderbox. Going back to 1.72.
git-svn-id: svn://10.0.0.236/trunk@54697 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 02:00:13 +00:00
slamm%netscape.com
27e6bef1c6 Reapply checkout changes, but add extra quotes to date.
git-svn-id: svn://10.0.0.236/trunk@54696 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:40:05 +00:00
slamm%netscape.com
3338188427 Revert to last revision until change can handle pull by date.
git-svn-id: svn://10.0.0.236/trunk@54695 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:30:54 +00:00
slamm%netscape.com
1ca8a0e08d Fix build bustage.
git-svn-id: svn://10.0.0.236/trunk@54694 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:24:41 +00:00
waterson%netscape.com
0d3bd77be1 Use '.' notation rather than '~=' for performance reasons. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54693 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:17:34 +00:00
waterson%netscape.com
a2b3fa347d Don't re-create atom over and over. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54692 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:13:36 +00:00
mscott%netscape.com
68aa9139e4 Fix xp build breakage by defining rv.
I'm not sure how this compiled on someone's machine =)


git-svn-id: svn://10.0.0.236/trunk@54691 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:12:58 +00:00
tbogard%aol.net
a418adda08 link with jsdom.dll so we get the methods to create a new ScriptGlobalObject and context.
git-svn-id: svn://10.0.0.236/trunk@54690 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:08:08 +00:00
rjc%netscape.com
d8e27497af Fix bug # 20238: when bookmarking a URL, if it doesn't have a title specified, fallback to using the URL as the title.
git-svn-id: svn://10.0.0.236/trunk@54689 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:07:20 +00:00
tbogard%aol.net
52d498cd64 nsDocShell now implements nsIScriptContextOwner.
git-svn-id: svn://10.0.0.236/trunk@54688 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:06:59 +00:00
tbogard%aol.net
8ecae333e4 Declare that nsCDocShell implements nsIScriptContextOwner.
git-svn-id: svn://10.0.0.236/trunk@54687 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:05:28 +00:00
slamm%netscape.com
8baaf0d305 Add class="push dialog" to "Close" button to make it look like a button. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54686 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:03:46 +00:00
slamm%netscape.com
ccdc1c4359 Add dropdown icon for personal toolbar. Replace at will.
I am not a graphic designer. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54685 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:03:44 +00:00
slamm%netscape.com
2304d41790 Add sidebar component for js api to sidebar (e.g. addPanel()). r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54684 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:03:39 +00:00
slamm%netscape.com
20d725c6eb Model history after bookmarks. Share the css and js files with bookmarks.
Fix overlaping columns, bug #17975. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54683 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:03:28 +00:00
slamm%netscape.com
ad32793254 Remove old files. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54682 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:03:22 +00:00
slamm%netscape.com
31fbcda1ef Add Sidebar modules. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54681 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:03:02 +00:00
slamm%netscape.com
2e13fc3c86 Add dropdown icon for personal toolbar. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54680 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:58 +00:00
slamm%netscape.com
bac32c1b64 Add MPL. New list of entities to match remote-panels.rdf r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54679 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:53 +00:00
slamm%netscape.com
3c67876ec4 Add rdf observer to detect when the panel list has changed.
Unfortunately, setTimeout does not work in the observer, so it
cannot be used to open the default panel. Still working on a
fix for the open panel getting lost when the panel list changes.
Avoid opening multiple customize dialog.
Change the customize dialog to be non-modal. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54678 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:50 +00:00
slamm%netscape.com
d4cca283a1 Add MPL. Change list to have folders and include new panels. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54677 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:46 +00:00
slamm%netscape.com
2b356bc5bb Fix tinderbox url typo. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54676 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:42 +00:00
slamm%netscape.com
c4ef7d74c7 Add MPL. Remove tinderbox panel. It belongs in remote-panels.rdf. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54675 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:38 +00:00
slamm%netscape.com
ea55eba0d3 Add support for folders in available panels list.
Move click handle from <tree> to <treechildren>.
(To prevent bugs if a tree header is ever added.) r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54674 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:36 +00:00
slamm%netscape.com
a4e37230ea Enable/disable buttons on move up/down (bug #16847).
Add support for folders in available panels list. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54673 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:32 +00:00
slamm%netscape.com
789c670fb3 Add styles for folders in available panels list.
Using bookmark icons for now. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54672 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:29 +00:00
slamm%netscape.com
148d5c122d Add MPL. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54671 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:26 +00:00
slamm%netscape.com
b77e92c492 Add dialogs for adding panels. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54670 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:18 +00:00
slamm%netscape.com
fff03075ad Add dialogs for adding panels.
Remove default-panels.rdf. It has moved to the defaults/profile directory. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54669 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:06 +00:00
slamm%netscape.com
5149fa6a34 Remove flames.gif. It was used by the flash panel which is out. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54668 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 01:02:02 +00:00
slamm%netscape.com
5ad397e2a0 Use single clicks to open folders, but double clicks to launch items.
Bug #14998. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54667 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:56:44 +00:00
slamm%netscape.com
ef3e01b2b4 Add license. Remove "! important" for twisty style rule.
The style rule works without it. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54666 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:56:39 +00:00
slamm%netscape.com
257b47f01c Add bm-panels.js. Reorder to alphabetical order. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54665 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:56:33 +00:00
slamm%netscape.com
4eb3e1a230 Not done. Has "Add panel" test.
Add dropdown icons to toolbar folders. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54664 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:56:30 +00:00
slamm%netscape.com
92fa603842 Make regex for matching module names more general. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54663 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:56:04 +00:00
waterson%netscape.com
7e8ab58db1 Avoid excessive updates by conditioning on attribute that changed. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54662 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:55:59 +00:00
waterson%netscape.com
e04535a449 Add 'indent' atom. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54661 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:55:14 +00:00
waterson%netscape.com
a6f93c39c3 Add focus pseudo-class atoms. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54660 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:54:45 +00:00
waterson%netscape.com
a62fed42a4 Tree scrolling improvements. Avoid string twiddling in CreateAnonymousTreeCellFrames. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54659 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:53:41 +00:00
slamm%netscape.com
3dc781b67c Use loop for xpfe instead of so much cut and paste.
Add sidebar component manifests. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54658 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:52:36 +00:00
sspitzer%netscape.com
d7ee22b271 pass up error values upon failure. we were hitting these failures on
bug #18620, and doing this is correct, and it will help us find similar problems
sooner in the future.


git-svn-id: svn://10.0.0.236/trunk@54657 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:52:32 +00:00
slamm%netscape.com
33e8d9307c Use config/cvsco.pl to checkout.
Catches conflicts and logs output to a file. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54656 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:52:20 +00:00
slamm%netscape.com
ece1d17e57 Change dump() calls to debug() calls. That makes it easier to turn
them all off at once.
Fix context menus. They were adding multiple items (bug #14765).
They also needed to select the item under the mouse. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54655 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:49:19 +00:00
slamm%netscape.com
d675a717da Add sidebar component makefiles. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54654 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:49:09 +00:00
slamm%netscape.com
0fa703a361 Add dialogs for adding panels.
Remove default-panels.rdf. It has moved to the defaults/profile directory. r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54653 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:48:38 +00:00
slamm%netscape.com
6f6977005c Rewrite script to check for cvs conflicts and log output to a file. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54652 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:48:33 +00:00
rginda%netscape.com
e9cb2134b8 Defined __LITTLE_ENDIAN in fdlibm on x86 linux, fixes various Math object issues, r=rogerl@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54651 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:43:03 +00:00
mccabe%netscape.com
fed797cf9d Additional Date object APIS courtesy 'Chris' Houck. r=mccabe.
git-svn-id: svn://10.0.0.236/trunk@54650 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:42:07 +00:00
dougt%netscape.com
0bce1684c5 fix for 18078. r=mstoltz,warren
(looks like it is #ifdef'ed out)


git-svn-id: svn://10.0.0.236/trunk@54649 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:33:45 +00:00
dougt%netscape.com
0c53e29d87 fix for 18078. r=mstoltz,warren
git-svn-id: svn://10.0.0.236/trunk@54648 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:32:43 +00:00
sspitzer%netscape.com
1eeb92635a remove comment line to prevent build bustage.
git-svn-id: svn://10.0.0.236/trunk@54647 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:32:37 +00:00
tbogard%aol.net
28e0d36873 Would help if I removed nsIScriptContextOwner.h instead of nsIScriptObjectOwner.h
git-svn-id: svn://10.0.0.236/trunk@54646 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:28:40 +00:00
pinkerton%netscape.com
ff77d6d7c3 added debug ifdefs around printfs to reduce output during drags.
git-svn-id: svn://10.0.0.236/trunk@54645 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:24:06 +00:00
locka%iol.ie
9a3ce86ab9 Removed "const" on the aResult parameter on CWebShellContainer override of nsIBrowserWindow::GetTitle
git-svn-id: svn://10.0.0.236/trunk@54644 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:21:29 +00:00
locka%iol.ie
c2ccf084e3 Added CommandStateChangeConstants
git-svn-id: svn://10.0.0.236/trunk@54643 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:19:53 +00:00
nisheeth%netscape.com
9c5972cc6e Fix for bug 20194. r=beard. Thank to Patrick Beard for finding this leak in CaptureFrameStateFor().
git-svn-id: svn://10.0.0.236/trunk@54642 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:17:40 +00:00
pinkerton%netscape.com
81c4e5477a changes for docshell idl project to get built. required adding a new idl export in prefs.
git-svn-id: svn://10.0.0.236/trunk@54641 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:16:48 +00:00
dougt%netscape.com
60f0d61f7e fix for 18078. r=mstoltz,warren
git-svn-id: svn://10.0.0.236/trunk@54640 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:16:09 +00:00
pinkerton%netscape.com
0a4e786ad8 exporting nsBaseWindow.idl for travis.
git-svn-id: svn://10.0.0.236/trunk@54639 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:15:10 +00:00
dougt%netscape.com
69329e38fe Fix for 18078. R=mstoltz,warren
git-svn-id: svn://10.0.0.236/trunk@54638 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:14:55 +00:00
pinkerton%netscape.com
54aadbcdf0 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54637 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:12:08 +00:00
pinkerton%netscape.com
f277a4033c removing obsolete d&d code and changing from CID's to progID's in d&d code. r=akkana.
git-svn-id: svn://10.0.0.236/trunk@54636 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:10:55 +00:00
mscott%netscape.com
acd1ca8191 modify SetLoadGroup to work with retargeting.
r=rpotts


git-svn-id: svn://10.0.0.236/trunk@54635 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:10:37 +00:00
mscott%netscape.com
80b21e9dce uri dispatching nit....retarget the load group if we are opening a channel which has a load group
different from our own.

THIS CODE IS NOT executed unless uri dispatching is turned on.


git-svn-id: svn://10.0.0.236/trunk@54634 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:10:17 +00:00
mscott%netscape.com
c3a13e7ff6 small uri dispatching nit...I needed to add nsIURIContentListener to the GetInterface method on nsIWebShell.
git-svn-id: svn://10.0.0.236/trunk@54633 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:09:00 +00:00
sspitzer%netscape.com
75090d7b62 fix build bustage for travis. a=mscott
git-svn-id: svn://10.0.0.236/trunk@54632 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-30 00:07:03 +00:00
selmer%netscape.com
8c416d926e Include rowIndex test
git-svn-id: svn://10.0.0.236/trunk@54631 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 23:59:28 +00:00
selmer%netscape.com
992d99ef43 New test for moving rows via rowIndex assignment in javascript
git-svn-id: svn://10.0.0.236/trunk@54630 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 23:58:37 +00:00
tbogard%aol.net
69d46f87ef wensleydale rides the short bus. Lets see if it can understand a basic QueryInterface since CallQueryInterface seems to be too much for it's little brain to handle.
git-svn-id: svn://10.0.0.236/trunk@54629 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 23:25:25 +00:00
tbogard%aol.net
631e2d2034 Connected nsIScriptContextOwner.idl to the build and removed the copy of the header file.
git-svn-id: svn://10.0.0.236/trunk@54628 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 23:05:19 +00:00
tbogard%aol.net
2a4abf0dab added files: mozilla/dom/public/nsIScriptContextOwner.idl
git-svn-id: svn://10.0.0.236/trunk@54627 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 23:04:23 +00:00
valeski%netscape.com
8271d7284a r=travis. 20135. we were clipping the rightmost digit of the seconds field in a refresh header attribute (thus losing a factor of 10 in refresh timer timeout).
git-svn-id: svn://10.0.0.236/trunk@54626 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 23:02:14 +00:00
tbogard%aol.net
153abf8b4d Added docshell makefiles to the build. Thanks to andreas.otte@primus-online.de for reminding me of this.
git-svn-id: svn://10.0.0.236/trunk@54625 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:58:57 +00:00
tbogard%aol.net
da35c506dd Added nsIScriptContextOwner.idl to the list of IDL files to build. Removed nsIScriptContextOwner.h from the list of export header files.
git-svn-id: svn://10.0.0.236/trunk@54624 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:51:42 +00:00
waterson%netscape.com
c439c8fcbb Fix incorrect use of dont_QueryInterface() in PreHandleEvent() that was leaking.
git-svn-id: svn://10.0.0.236/trunk@54623 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:47:39 +00:00
tbogard%aol.net
c58b2d99ca Added nsIScriptContextOwner.idl to the list of IDL files to build. Removed nsIScriptContextOwner.h from the list of export header files. r=vidur.
git-svn-id: svn://10.0.0.236/trunk@54622 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:44:28 +00:00
pnunn%netscape.com
5c492dc32c fix for bug#19394. pnunn. (a PDT bug). review:neeti@netscape.com
Added code for ImageRequest in error condition (abort).
Note that testcase only seems to trigger abort condition on
wintel.


git-svn-id: svn://10.0.0.236/trunk@54621 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:43:45 +00:00
tbogard%aol.net
df23f6d81e Changed the UUID back to the one that nsIScriptContextOwner had in the .h file.
git-svn-id: svn://10.0.0.236/trunk@54620 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:42:07 +00:00
pinkerton%netscape.com
a613ecae8f eat drag gesture events for now. r=saari
git-svn-id: svn://10.0.0.236/trunk@54619 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:35:35 +00:00
syd%netscape.com
79648966e4 Generate Postscript translate for top margin. r=dcone
git-svn-id: svn://10.0.0.236/trunk@54618 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:33:58 +00:00
akkana%netscape.com
6bd223eae3 19515: fix a XIF DTD problem where text nodes with names corresponding
to XIF node names didn't make it into the output.  Fix from rick, r=me.
Also, a temp fix to the html output sink to get around bug 20246,
and a couple of test case tweaks.


git-svn-id: svn://10.0.0.236/trunk@54617 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:33:32 +00:00
tbogard%aol.net
ba7d99eef0 First cut at putting nsIScriptContextOwner interface into idl. (Not connected to the build yet.)
git-svn-id: svn://10.0.0.236/trunk@54616 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:32:58 +00:00
rginda%netscape.com
edb94a5acb Changes to make list selection page work correctly on windows platform.
git-svn-id: svn://10.0.0.236/trunk@54615 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:31:45 +00:00
sspitzer%netscape.com
d713f527bb fixed by ducarroz. r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@54614 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:28:40 +00:00
tbogard%aol.net
002add50a8 Adding DocShell to the build. r= pavlov
git-svn-id: svn://10.0.0.236/trunk@54613 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:22:20 +00:00
tbogard%aol.net
2cf33bd3b4 Adding docshell to the build.
git-svn-id: svn://10.0.0.236/trunk@54612 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:21:36 +00:00
putterman%netscape.com
7ad2f68067 Fixes 13073. reviewed by hyatt.
git-svn-id: svn://10.0.0.236/trunk@54611 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:17:12 +00:00
valeski%netscape.com
35e7f3daaa comment changes for javadoc
git-svn-id: svn://10.0.0.236/trunk@54610 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:17:11 +00:00
valeski%netscape.com
4e2f156283 r=warren. the return val from the progress sink was getting in the way of the socket transport state machine, now it's just being ingonored.
git-svn-id: svn://10.0.0.236/trunk@54609 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:16:21 +00:00
hyatt%netscape.com
3f8b94159a Adding RemoveStyleSheet to nsIDocument (needed for skins). r=waterson
git-svn-id: svn://10.0.0.236/trunk@54608 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:15:07 +00:00
valeski%netscape.com
cbd0bdfa96 r=vidur. 18889. PNG images weren't being registered (x-png that is) for viewing by layout, now they are
git-svn-id: svn://10.0.0.236/trunk@54607 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:14:32 +00:00
tbogard%aol.net
62ff5ce10b A couple of changes to get building on Unix. Thanks to andreas.otte@primus-online.de for the patch.
git-svn-id: svn://10.0.0.236/trunk@54606 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:12:28 +00:00
rogerl%netscape.com
7711fb73be r=norris
Moved 'ok' to MatchState. Re-wrote matchGreedyKid to reduce stack
usage and allow succesful completion to propagate out. #9141


git-svn-id: svn://10.0.0.236/trunk@54605 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:06:22 +00:00
dp%netscape.com
fbcff1c752 Delinking nsCookieHTTPNotify and cookie internal apis. Now the
nsCookieHTTPNotify calls the cookie api using the cookieservice. This
gets us to removing the nsCookieHTTPNotify off the cookie dll into
apprunner which would cause a delayed on demand load of the cookie
dll. r=neeti@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54604 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:02:20 +00:00
warren%netscape.com
7de4c964c0 Removed date/time because win95 behaves differently.
git-svn-id: svn://10.0.0.236/trunk@54603 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:02:07 +00:00
tbogard%aol.net
4628d34d47 Changes to get DocShell building again with URILoader changes.
git-svn-id: svn://10.0.0.236/trunk@54602 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 22:00:35 +00:00
hangas%netscape.com
47f3cd4d99 Fix for 18018, mail prefs messed up. r=davidm
git-svn-id: svn://10.0.0.236/trunk@54601 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:38:32 +00:00
Jerry.Kirk%Nexwarecorp.com
67a7e9e385 Added debug code to try and track down extra draws..
r=kedl


git-svn-id: svn://10.0.0.236/trunk@54600 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:37:43 +00:00
Jerry.Kirk%Nexwarecorp.com
f14c309400 mWidth and mHeight were getting set to 0 instead of -1 which broke menus
r=kedl


git-svn-id: svn://10.0.0.236/trunk@54599 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:37:02 +00:00
pavlov%netscape.com
fc583283d5 build some files r=travis
git-svn-id: svn://10.0.0.236/trunk@54598 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:34:42 +00:00
fur%netscape.com
0d4ce41cf5 Disable the temporary assertion for embedded NUL characters in nsString::Append(),
so that clients of nsString can make use of the changes that rickg added which
allow embedded NULs.  r: rickg


git-svn-id: svn://10.0.0.236/trunk@54597 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:32:53 +00:00
blizzard%redhat.com
31ec3a3962 code to prevent creating a window that is a child of an nsIWidget that has already been destroyed
git-svn-id: svn://10.0.0.236/trunk@54596 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:28:57 +00:00
waterson%netscape.com
f67cc3b96f Ooops. Fix 'component:' URI to have one slash, not two.
git-svn-id: svn://10.0.0.236/trunk@54595 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:28:46 +00:00
sspitzer%netscape.com
868de24bb5 ignore generated files
git-svn-id: svn://10.0.0.236/trunk@54594 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:20:30 +00:00
dbragg%netscape.com
5442b2e9b9 Part of fixes for bug 17506. r=dougt
git-svn-id: svn://10.0.0.236/trunk@54593 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:19:06 +00:00
akkana%netscape.com
9da43ace6b 18714: make InsertAsQuotation methods leave the insert point after, and outside, the node that was inserted. r=rhp
git-svn-id: svn://10.0.0.236/trunk@54592 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:15:57 +00:00
brendan%mozilla.org
eee1a99532 Use nsAutoString for local strings (r=vidur@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@54591 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:15:42 +00:00
danm%netscape.com
5d1fa83609 updated to match nsIWebShell interface change for travis@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54590 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:15:32 +00:00
dbragg%netscape.com
3cb5aae609 New confirm dialog for xpinstall. Fixes bug #17506. r=dougt
git-svn-id: svn://10.0.0.236/trunk@54589 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:14:49 +00:00
rods%netscape.com
5a29159da7 changes to make the XP wheel tracker code work for windows.
Code is from bryner@uiuc.edu, reviewed by self. I don't think there was a bug
but there should have been.


git-svn-id: svn://10.0.0.236/trunk@54588 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:14:43 +00:00
dbragg%netscape.com
27dabbd961 added the content directory. This should have been done a long time ago. Also fixes bug 17506. r=dougt
git-svn-id: svn://10.0.0.236/trunk@54587 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:13:14 +00:00
dbragg%netscape.com
9e4e33053f New confirmation dialog for xpinstall. Fixes bug #17506. r=dougt
git-svn-id: svn://10.0.0.236/trunk@54586 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:11:26 +00:00
tbogard%aol.net
390f55af09 Changed GetDocumentLoaderObserver to return a ** instead of a *&. This is in sync with the nsIDocShell::GetDocumentLoaderObserver. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@54585 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:09:47 +00:00
dp%netscape.com
30a9e22992 - Removed IID defines
- Using GenericModule


git-svn-id: svn://10.0.0.236/trunk@54584 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:07:48 +00:00
mscott%netscape.com
2060747c79 Fix warning.
git-svn-id: svn://10.0.0.236/trunk@54583 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:06:49 +00:00
mscott%netscape.com
7e5647a068 fix case sensitivity of include file
git-svn-id: svn://10.0.0.236/trunk@54582 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:03:41 +00:00
dp%netscape.com
69dd443d63 NS_RELEASE if there isn't a global service manager
git-svn-id: svn://10.0.0.236/trunk@54581 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:02:51 +00:00
nhotta%netscape.com
ff45bfaf14 Change to pass empty string instead of null for setlocale, increased a local buffer size to hold larger locale name, bug 18338, r=tao.
git-svn-id: svn://10.0.0.236/trunk@54580 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:01:54 +00:00
mscott%netscape.com
4628698254 temporary tweak to doc loader to use private uri loader
with post data stream support if we are trying to load
a url that has a post data stream.
r=travis


git-svn-id: svn://10.0.0.236/trunk@54579 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:01:15 +00:00
mscott%netscape.com
b6e7fb0d50 changes to support private post stream data interface.
changes to support aWindowContext parameter and to remove
the content listener and progress sink as arguments. Instead,
use an interface requestor on the window context to get these.
I was also able to take out the capabilities class as well.
r=travis


git-svn-id: svn://10.0.0.236/trunk@54578 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:00:52 +00:00
mscott%netscape.com
c8e236c42b add private interface for opening a url with post data
removed content listener and progress sink interfaces from
OpenURI and friends. Instead, pass in a nsISupports window
context. We can use the requestor interface to ask the
window context for the content listener and progress sink.
This reduced the number of arguments to OpenURI by one.
And eventually we'll query the window context for a
docshell / webshell interface which we could pass around.
r=travis


git-svn-id: svn://10.0.0.236/trunk@54577 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 21:00:14 +00:00
bienvenu%netscape.com
00e9964d93 remove newline, fix 19128 spurious n in error msg
git-svn-id: svn://10.0.0.236/trunk@54576 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 20:57:29 +00:00
waterson%netscape.com
ca6783642d Bug 20147. Make sure to correctly scope 'parent' when creating script objects. XUL document's parent is the window; XUL element's parent is the document. r=brendan
git-svn-id: svn://10.0.0.236/trunk@54575 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 20:53:40 +00:00
brendan%mozilla.org
81777e8de7 Fix refcnt underflow bug, defend against null myObj (r=vidur@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@54574 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 20:44:36 +00:00
sspitzer%netscape.com
57bcc5d977 remove workaround for #14312, it is no longer needed.
git-svn-id: svn://10.0.0.236/trunk@54573 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 20:41:23 +00:00
sspitzer%netscape.com
ccdb1964d1 fix warnings
git-svn-id: svn://10.0.0.236/trunk@54572 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 20:40:39 +00:00
bryner%uiuc.edu
441b7717d1 Minor changes to fix building on Linux with --enable-oji. r=shaver.
git-svn-id: svn://10.0.0.236/trunk@54571 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 20:27:00 +00:00
larryh%netscape.com
1ca16c0791 BugZilla: 19247. Add support for VMS, QNX, NTO
git-svn-id: svn://10.0.0.236/trunk@54570 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 19:42:11 +00:00
tbogard%aol.net
3255f4c635 Updated the UNIX makefiles to be in sync with the Windows ones. (Not Part of the build).
git-svn-id: svn://10.0.0.236/trunk@54569 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 18:42:33 +00:00
tbogard%aol.net
1f92049a42 Changes to reflect the fact that the nsIDocShell API now has a GetPresShell. Used NS_STATIC_CAST on a comparison to 'this'. (Not Part of build).
git-svn-id: svn://10.0.0.236/trunk@54568 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 18:41:59 +00:00
tbogard%aol.net
71e137989b Added a readonly attribute to get the PresShell. (Not Part of the build)
git-svn-id: svn://10.0.0.236/trunk@54567 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 18:40:06 +00:00
shaver%netscape.com
df20a09801 track nsIFile changes (not part of build)
git-svn-id: svn://10.0.0.236/trunk@54564 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 15:17:57 +00:00
shaver%netscape.com
2c78142979 - Portions of nsIFile and nsIDirectoryEnumerator implementations for Unix.
- Various missing-newline-at-end-of-file fixes from Andrew Taylor
  <Andrew.Taylor@cal.montage.ca>.
- Fixed case in nsIDirectoryEnumerator.idl
- Added |normalize()|, |truncate()| and |target|, |isSpecial()| to nsIFile.idl
- Changed |isExists()| to |exists()|, |fileName| to |leafName|, |isEqual()| to
  |equals| and added |in boolean recur| to |isContainedIn()|.
- Corrected widespread misspelling of |NS_ERROR_FILE_UNRECOGNIZED_PATH|.
- Partially updated Windows code to track changes.
Partially addresses 17948, r=dougt


git-svn-id: svn://10.0.0.236/trunk@54563 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 14:55:03 +00:00
andreas.otte%primus-online.de
5d2117bae7 Adding res-protocol makefiles r=warren
git-svn-id: svn://10.0.0.236/trunk@54562 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 10:10:21 +00:00
jfrancis%netscape.com
ed38a43f75 * ported the html editor work for the "caret doesn't move when i hit return" bug (16715) back to the plaintext editor.
* fixed a paste/rules interaction problem (19367)
* introduced an init time pass over html documents to populate empty list items and table cells with special breaks so that the user can click in them and actually get a caret
* fixed some warnings
r = floppy moose


git-svn-id: svn://10.0.0.236/trunk@54561 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 08:28:46 +00:00
tbogard%aol.net
a4caa04804 Implemented GetPositionAndSize.... Fixed some calls to DOMHandleEvent.
git-svn-id: svn://10.0.0.236/trunk@54560 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 07:47:20 +00:00
blizzard%redhat.com
1630fa09b2 make sure that windows are destroyed when the Destroy() method is called. fix for bug #18801. r=syd
git-svn-id: svn://10.0.0.236/trunk@54559 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 07:44:22 +00:00
idk%eng.sun.com
2a95e241e9 20114
added null checking


git-svn-id: svn://10.0.0.236/trunk@54558 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 07:26:37 +00:00
hyatt%netscape.com
dfb64c2671 More skin work. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@54557 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 06:51:24 +00:00
cls%seawood.org
caf7536557 Removed unneeded -e argument to grep.
Changed print-depth-path.sh to check for Makefile instead of Makefile.in for objdir builds.


git-svn-id: svn://10.0.0.236/trunk@54556 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 06:15:04 +00:00
tbogard%aol.net
a75802872d nsXULDocument now uses the nsIBaseWindow interface for windowing stuff on webshell instead of nsIWebShell. This paves the way for the new docshell object to move in.
git-svn-id: svn://10.0.0.236/trunk@54555 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 06:04:15 +00:00
tbogard%aol.net
392a39500b Flipped the default of the Windows Warning box that can come up. It now requires an environment variable be set to come up.
git-svn-id: svn://10.0.0.236/trunk@54554 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 05:50:22 +00:00
cls%seawood.org
ecf79b0ac2 Oops, added '-o $@' to necessary MKSHLIB definitions.
git-svn-id: svn://10.0.0.236/trunk@54553 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 05:27:26 +00:00
cls%seawood.org
4ef5544fff Added preliminary autoconf support for solaris. Untested.
git-svn-id: svn://10.0.0.236/trunk@54552 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 04:46:11 +00:00
rhp%netscape.com
49000dbf99 Changes to build this on Unix
git-svn-id: svn://10.0.0.236/trunk@54551 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 03:58:20 +00:00
rginda%netscape.com
a839a57ff8 -- CHATZILLA CHANGES ONLY --
* Makefile.in, makefile.win
Install new files: munger.js, test3-readprefs.js, and face-*.gif (9 files)

* irc.js
Update regexps to 1.5 syntax.

* test3-commands.js
Wire whois command.

* test3-handlers.js
readPrefs() on startup.
Show checkmark on debug message menu.
Clear inputbox after a /command.
Send eval output to currentobject, instead of *client*
Fix for /join #channelname joining ##channelname.
Whois command implementation.
Factor _addToUserList out of onJoin so it can be used from onNick as well.
Whois reply display code.

* test3-output-*.css
New styles for munger tags.
Assorted style changes.

* test3-static.js
Change linuxnet->moznet.
Munger hookup.
newInlineText creates spans instead of anchors.
notifyActivity blinks indicator if it is already lit.
s/parity/mark

* test3.css
Assorted ui style changes: tbuttons in groove, color changes, etc.

* test3.xul
Include new js file.
Put statusbar in a toolbox.


git-svn-id: svn://10.0.0.236/trunk@54550 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 03:57:45 +00:00
rhp%netscape.com
d4c8f42880 Change for new code that is not part of the build!
git-svn-id: svn://10.0.0.236/trunk@54549 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 03:51:31 +00:00
rhp%netscape.com
b4694ec541 Just adding files to the tree. NOT PART OF THE BUILD YET!
git-svn-id: svn://10.0.0.236/trunk@54548 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 03:37:47 +00:00
blizzard%redhat.com
83d6fa9563 [MLK] make sure to destroy the region before creating a new one
git-svn-id: svn://10.0.0.236/trunk@54547 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 03:08:49 +00:00
cls%seawood.org
633d5407a8 Fixed tabbing problems with emacs caused by the mode header.
Added preliminary autoconf support for aix, dgux, freebsd and hpux.  All untested.


git-svn-id: svn://10.0.0.236/trunk@54546 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 02:15:22 +00:00
rbs%maths.uq.edu.au
15cf3ce767 Removed a default arg. See where bug 19398 where axel@pike.org reported that a default arg is both in .h and .cpp, and Suns CC seems unhappy about this.
git-svn-id: svn://10.0.0.236/trunk@54543 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 02:03:26 +00:00
edwin%woudt.nl
b8e47d1355 Added support for combobox and image
git-svn-id: svn://10.0.0.236/trunk@54542 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 00:44:34 +00:00
edwin%woudt.nl
c6505dafa7 Adding PageUI to the build
git-svn-id: svn://10.0.0.236/trunk@54541 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-29 00:43:54 +00:00
brendan%mozilla.org
aac42b0e3f Destroy rt->stateChange condvar (also trim deadwood; 20168, r=beard@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@54540 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 19:56:52 +00:00
tor%cs.brown.edu
e6626c027b Incorporate MATH_ML code from gfx/src/gtk into the xlib version.
Also changes MAX to PR_MAX. r=blizzard


git-svn-id: svn://10.0.0.236/trunk@54539 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 19:14:23 +00:00
tor%cs.brown.edu
2ba35ab26e Fix timers with interval greater than a second. r=blizzard
git-svn-id: svn://10.0.0.236/trunk@54538 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 19:12:10 +00:00
beard%netscape.com
134197fc4f bug #19474, r=ftang. fixes major memory leak of nsCharsetAlias2 object, which is (12) bytes but references a total of {52708} bytes.
git-svn-id: svn://10.0.0.236/trunk@54537 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 17:20:11 +00:00
locka%iol.ie
7b22bed0bb no message
git-svn-id: svn://10.0.0.236/trunk@54536 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 16:39:50 +00:00
locka%iol.ie
8cf85733f6 Removed FPKLUDGE hack for Delphi
git-svn-id: svn://10.0.0.236/trunk@54535 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 16:31:21 +00:00
duncan%be.com
5941ff2111 Fix memory allocation checking bug 9828.
Fix DrawLine and DrawString rendering bugs (contributed by
Yannick Koehler <koehler@mythrium.com>).
r=syd


git-svn-id: svn://10.0.0.236/trunk@54534 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 10:53:47 +00:00
brendan%mozilla.org
96b0c7d20d Whitespace/comment police.
git-svn-id: svn://10.0.0.236/trunk@54533 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 10:32:13 +00:00
brendan%mozilla.org
b09e389810 Whitespace police!
git-svn-id: svn://10.0.0.236/trunk@54532 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 10:26:53 +00:00
brendan%mozilla.org
49a807da2d Fix decompiler to search function clone prototypes for args and vars (20160, r=rginda@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@54531 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 09:46:33 +00:00
brendan%mozilla.org
b27b31a03e Clean up whitespace/returns/braces, plus Ben's update to GetFields.
git-svn-id: svn://10.0.0.236/trunk@54530 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 06:37:13 +00:00
warren%netscape.com
0b48abec61 Forced Windows nslocale.dll to pull in NSGetFactory.
git-svn-id: svn://10.0.0.236/trunk@54529 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 05:40:40 +00:00
warren%netscape.com
cdfb005941 Forced Windows gkgfxwin to pull in NSGetFactory.
git-svn-id: svn://10.0.0.236/trunk@54528 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 05:39:46 +00:00
warren%netscape.com
6ac95efaf8 Checked in work-around for the fact that SeaMonkeyAll doesn't pull modules/makefile.win
git-svn-id: svn://10.0.0.236/trunk@54525 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 03:47:01 +00:00
warren%netscape.com
eb9a891946 Eliminated the libs build pass.
git-svn-id: svn://10.0.0.236/trunk@54523 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 03:05:01 +00:00
warren%netscape.com
6c48936998 Added new version that's used with new no-libs-pass make on Windows.
git-svn-id: svn://10.0.0.236/trunk@54522 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 02:48:59 +00:00
tbogard%aol.net
bbe91002db Added do_GetInterface to the dlldeps so it is properly exported from the DLL.
git-svn-id: svn://10.0.0.236/trunk@54521 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 02:17:24 +00:00
tbogard%aol.net
908b6a0310 Turned on the do_GetInterface implementation by removing the #ifdef 0.
git-svn-id: svn://10.0.0.236/trunk@54520 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 02:16:22 +00:00
tbogard%aol.net
ed82f49d52 Added nsIInterfaceRequestor.cpp to the build.
git-svn-id: svn://10.0.0.236/trunk@54519 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 02:15:11 +00:00
toshok%hungry.com
9114c4a449 x86Win32ExceptionHandler.h => x86ExceptionHandler.h
git-svn-id: svn://10.0.0.236/trunk@54517 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-28 00:10:16 +00:00
toshok%hungry.com
8156facb79 move all x86 specific stuff into a CPU_ARCH guarded section, and if NETBSD_ELF is defined, don't build with GLOBALS_NEED_UNDERSCORE
git-svn-id: svn://10.0.0.236/trunk@54516 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 23:48:29 +00:00
toshok%hungry.com
b8be56336e x86Win32ExceptionHandler.h => x86ExceptionHandler.h
git-svn-id: svn://10.0.0.236/trunk@54515 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 23:38:58 +00:00
toshok%hungry.com
7a0f207379 for egcs-1.1.1 (gcc 2.91) don't include the terminate() function. there may be previous revisions that don't need this function, but this is the version i have - we can always change the check later.
git-svn-id: svn://10.0.0.236/trunk@54514 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 23:17:20 +00:00
toshok%hungry.com
e3c482bdae don't worry about the compile time warnings wrt this function definition, and add support for platforms that have an underscore prepended to the symbol name.
git-svn-id: svn://10.0.0.236/trunk@54513 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 23:05:49 +00:00
blizzard%redhat.com
235ae9db7b make the grab a little more idiot proof
git-svn-id: svn://10.0.0.236/trunk@54512 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 20:08:18 +00:00
shaver%netscape.com
9d0148c5b0 Fix for 18505 (rename nsDeque::Peek to nsDeque::PeekFront) from Sammy Ford
<fuzed@swbell.net>.


git-svn-id: svn://10.0.0.236/trunk@54511 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 17:47:05 +00:00
toshok%hungry.com
e1f91d9c45 switch from nspr21 to nspr3
git-svn-id: svn://10.0.0.236/trunk@54510 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:39:22 +00:00
toshok%hungry.com
d0bc8065c7 NetBSD needs underscores (at least in a.out mode. i need to try out elf.)
git-svn-id: svn://10.0.0.236/trunk@54509 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:36:10 +00:00
toshok%hungry.com
6e05c5b1a4 add handling for platforms that need underscores in front of global symbols.
git-svn-id: svn://10.0.0.236/trunk@54508 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:35:31 +00:00
toshok%hungry.com
167ae86d9e NetBSD uses the same stuff for ThreadContexts as FreeBSD
git-svn-id: svn://10.0.0.236/trunk@54507 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:30:58 +00:00
toshok%hungry.com
237c1f5bba include x86UnixishThread.h for LINUX, FREEBSD, and NETBSD
git-svn-id: svn://10.0.0.236/trunk@54506 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:29:00 +00:00
toshok%hungry.com
4c79e2e9f5 switch to using the md/Asm.h macros (GLOBAL_ENTRY and END_ENTRY)
git-svn-id: svn://10.0.0.236/trunk@54505 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:28:16 +00:00
toshok%hungry.com
40dccc102d add NetBSD.mk
git-svn-id: svn://10.0.0.236/trunk@54504 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:26:55 +00:00
toshok%hungry.com
e931c5925c stop listing OS's that exclude the prototypes and list the only one for which we include them. this file should be renamed to x86ExceptionHandler.h
git-svn-id: svn://10.0.0.236/trunk@54503 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:24:57 +00:00
toshok%hungry.com
f802362180 use END_ENTRY instead of a naked .size pseudo op
git-svn-id: svn://10.0.0.236/trunk@54502 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:23:06 +00:00
toshok%hungry.com
4a12193f5e use GLOBAL_ENTRY/SYMBOL_NAME so symbol names are prepended with '_'
git-svn-id: svn://10.0.0.236/trunk@54501 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:22:33 +00:00
toshok%hungry.com
544b6c33ab merge the freebsd/linux thread files into one, and use it for netbsd too
git-svn-id: svn://10.0.0.236/trunk@54500 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 10:21:49 +00:00
tor%cs.brown.edu
f4d16e3240 Build bustage fix for gcc 2.7 & vc5 - include class interface
before playing with nsCOMPtr. r=travis@aol.net,a=dmose@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@54499 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 05:05:14 +00:00
tbogard%aol.net
c4157fe996 Changed NS_ASSERTION to NS_ENSURE on an interface boundary check. Done mainly to get VC depend to rebuild this file so tinderbox will go green.
git-svn-id: svn://10.0.0.236/trunk@54498 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 03:36:35 +00:00
tbogard%aol.net
d90a54c043 nsGfxTextControlFrame now uses the nsIBaseWindow interface off the WebShell object to do positioning stuff instead of nsIWebShell interface. Also changed some regular XPCOM pointers to be nsCOMPtrs.
git-svn-id: svn://10.0.0.236/trunk@54497 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 03:23:43 +00:00
tbogard%aol.net
b37b8cb748 nsHTMLDocument now uses the nsIBaseWindow interface off the WebShell object to do positioning stuff instead of nsIWebShell interface.
git-svn-id: svn://10.0.0.236/trunk@54496 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 03:11:10 +00:00
tbogard%aol.net
50834581e0 nsFrameFrame now uses the nsIBaseWindow interface off the WebShell object to do positioning stuff instead of nsIWebShell interface. Also changed the call to GetTitle to properly free the returned pointer as an internal const pointer is no longer returned.
git-svn-id: svn://10.0.0.236/trunk@54495 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 03:06:59 +00:00
tbogard%aol.net
e6540f80cb Added getPositionAndSize() to nsIBaseWindow.
git-svn-id: svn://10.0.0.236/trunk@54494 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:49:57 +00:00
tbogard%aol.net
2e6c4d782b GlobalWindow now uses the nsIBaseWindow interface off the WebShell object to do positioning stuff instead of nsIWebShell interface. Also changed the call to GetTitle to properly free the returned pointer as an internal const pointer is no longer returned.
git-svn-id: svn://10.0.0.236/trunk@54493 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:35:54 +00:00
tbogard%aol.net
214a0167f0 Free pointer returned by GetTitle since it no longer returns a const pointer to the internal string storage.
git-svn-id: svn://10.0.0.236/trunk@54492 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:29:17 +00:00
tbogard%aol.net
bf4ceb4a12 Removed const from GetTitle to get in sync with API.
git-svn-id: svn://10.0.0.236/trunk@54491 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:24:43 +00:00
tbogard%aol.net
7d4f2d6a7c Removed const from GetTitle to get in sync with removal from API.
git-svn-id: svn://10.0.0.236/trunk@54490 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:22:42 +00:00
tbogard%aol.net
4cf924be09 Removed the const from GetTitle to reflect the fact that the implementation should return an allocated string.
git-svn-id: svn://10.0.0.236/trunk@54489 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:21:43 +00:00
sspitzer%netscape.com
34e586d5b9 fix 974 warnings by declaring a virtual destructor
git-svn-id: svn://10.0.0.236/trunk@54488 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:17:23 +00:00
tbogard%aol.net
e8adbc0279 nsWebShell now implements nsIBaseWindow. Part of the steps to getting call sites calling the new interfaces rather than nsIWebShell.
git-svn-id: svn://10.0.0.236/trunk@54487 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:14:40 +00:00
tbogard%aol.net
54fb5586c4 Removed the const to reflect the fact that the implementation will return an allocated string, not a pointer to the internal string.
git-svn-id: svn://10.0.0.236/trunk@54486 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-27 02:08:42 +00:00
jefft%netscape.com
6142074c52 fixed bug 20063 -- Linux Save Message As Template not working with correct line endings; r=mscott
git-svn-id: svn://10.0.0.236/trunk@54485 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-26 22:37:03 +00:00
shaver%netscape.com
df01636bd9 Repair missing newlines at end of files, and remove lines of the form
#endif foo
both of which upset HPUX's compiler quite a bit.
Patch from Andrew Taylor <Andrew.Taylor@cal.montage.ca>.


git-svn-id: svn://10.0.0.236/trunk@54484 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-26 05:33:35 +00:00
jfrancis%netscape.com
42b5777e9f Fix for bug #18859: [DOGFOOD] URL bar messed up
Replaced all calls to SelectAllText() with calls to
nsIEditor::SelectAll().
r=jfrancis@netscape.com

(kin is the author of these changes - being checked in by reviewer)


git-svn-id: svn://10.0.0.236/trunk@54483 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-26 03:11:12 +00:00
syd%netscape.com
e46614e6c8 Remove tasksExtension.xul. r=rginda
git-svn-id: svn://10.0.0.236/trunk@54482 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 10:41:35 +00:00
rbs%maths.uq.edu.au
77f37dc003 Catch up with recentchanges in layout
git-svn-id: svn://10.0.0.236/trunk@54479 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 07:07:06 +00:00
norris%netscape.com
0c64d08ae7 Back out last change; didn't mean to check it in.
git-svn-id: svn://10.0.0.236/trunk@54478 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 05:30:22 +00:00
norris%netscape.com
2429ef124a Fix 18553 [DOGFOOD] addEventListener allows sniffing keystrokes
Add checks to nsScriptSecurityManager::CheckCanListenTo that take
a principal and ensure that the currently executing script code
either is from the same origin as that principal or has the
UniversalBrowserRead privilege enabled. (chrome code has all
privileges enabled by default.) It's okay for the principal passed in
to be null. That just signifies a privileged window/document that only
can be listened to with privileges.

I added GetPrincipal/SetPrincipal methods to nsIEventListenerManager.
nsDocument::GetNewListenerManager sets a principal on the listener
manager when it creates one. Obviously there are other places that
create listener managers, but scripts seem to go through this one.

Another change is to save some memory usage. Currently I allocate an
array of PolicyType that is NS_DOM_PROP_MAX elements long.
Unfortunately, compilers appear to allocate four bytes for each
PolicyType, so the array takes around 2400 bytes. I've added changes
to use two bit vectors that should consume about 1/16 that space.

r=joki

There are also changes that push nsnull onto the JSContext stack when
entering a nested event loop.

r=jband


git-svn-id: svn://10.0.0.236/trunk@54477 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 05:28:18 +00:00
akkana%netscape.com
143a1ccfd5 Clean up editor key bindings -- saari says they don't need disabled=false. r=jfrancis
git-svn-id: svn://10.0.0.236/trunk@54476 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 04:13:03 +00:00
akkana%netscape.com
4059b56e74 18033: Add editor API for delete methods, and hook up an initial
set of emacs key bindings for Unix.  r=jfrancis


git-svn-id: svn://10.0.0.236/trunk@54475 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 04:11:51 +00:00
brendan%mozilla.org
ca2032e66d Eliminate Closure per ECMA ed. 3, fix brutal sharing of lambdas (20076, r=rogerl,shaver).
git-svn-id: svn://10.0.0.236/trunk@54474 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 03:25:30 +00:00
kvisco%ziplink.net
30da73de36 Added preliminary DocumentHandler.h
Added changes from Bob Miller (kbob@oblix.com) which fix some
memory leaks.


git-svn-id: svn://10.0.0.236/trunk@54473 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 03:03:07 +00:00
mccabe%netscape.com
5248ab48c8 Doh. Didn't check other consequences of double-registration; it busted on the doubly-declared static CID.
Backing out until I can give it more attention after Turkey Day.


git-svn-id: svn://10.0.0.236/trunk@54472 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 02:27:14 +00:00
beard%netscape.com
02e1cdf7e8 bug #13331, implemented nsWindow::InvalidateRegion(). r=mcafee
git-svn-id: svn://10.0.0.236/trunk@54471 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 02:06:16 +00:00
jfrancis%netscape.com
ba25bda682 cool! i cant believe it's not butter! (how did the mac ever compile this?)
fixing bizarre cut/paste error.


git-svn-id: svn://10.0.0.236/trunk@54470 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 01:34:42 +00:00
shaver%netscape.com
fa23ac7310 use explicit |.get()| for Unix compilers, a=leaf
git-svn-id: svn://10.0.0.236/trunk@54469 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 01:02:52 +00:00
jfrancis%netscape.com
bd6345ff1b fixing bad comptr usage (also not caught by mac compiler)
git-svn-id: svn://10.0.0.236/trunk@54468 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:39:55 +00:00
akhil.arora%sun.com
9ba365f134 19583 r=akhil.arora@sun.com fix=Igor Nekrestyanov <nis@sparc.spb.su>
A top-level make now builds everything, including linux


git-svn-id: svn://10.0.0.236/trunk@54467 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:39:38 +00:00
jfrancis%netscape.com
efe6e42352 fixing bad const in interface (not caught by mac compiler)
git-svn-id: svn://10.0.0.236/trunk@54466 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:36:34 +00:00
shaver%netscape.com
8d21d11638 readme from Daniel Howard
git-svn-id: svn://10.0.0.236/trunk@54465 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:29:45 +00:00
mccabe%netscape.com
a6cd3f67c3 Fix to 18638. Register nsFileLocator (and APPSHELL_DLL, a hacked dependency) in viewer b/c prefs depends on it, and we can't turn security checks in viewer off for XPConnect testing without prefs.
The nsFileLocator registration call now occurs twice; once in xpfe/bootstrap/nsSetupRegistry.cpp, and again when that file includes this one.  Leaving it on both places to underline the hack.


git-svn-id: svn://10.0.0.236/trunk@54464 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:25:36 +00:00
jfrancis%netscape.com
5020ab053b implemented a system to track what portion of a document is affect by an editor action. Used that system to help solve extensive whitespace handling problems, ans also problems with caret placement in response to returns (this lattter fix for html editors only - plaintext coming later). Fixed numerous list bugs involving outdenting, unlisting, and splitting lists.
Checkin addressees these bugzilla bugs:
2073 & 12337 - whitespace trouble when typing (you can end up with all nbsp's instead of spaces)


git-svn-id: svn://10.0.0.236/trunk@54463 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:19:45 +00:00
jfrancis%netscape.com
6bcc04a122 implemented a system to track what portion of a document is affect by an editor action. Used that system to help solve extensive whitespace handling problems, ans also problems with caret placement in response to returns (this lattter fix for html editors only - plaintext coming later). Fixed numerous list bugs involving outdenting, unlisting, and splitting lists.
Checkin addressees these bugzilla bugs:
2073 & 12337 - whitespace trouble when typing (you can end up with all nbsp's instead of spaces) 
       16715 - caret gone or wrong after hitting return 
       16988 - aim foiled by our mozDIVs 
       17908 - enter at end of document does nothing 
       16085 - 4.x mail replied foiled by mozDIVs 
       19368 - inline style lost after typing return 
       17059 - "normal" made a paragraph, but typing made a div.  Now they both just use direct text in the body (or wherever) 
       18717 - exiting list gives UBER caret (note: this will only be fixed most of the time, not all) 
       17778 - cant type beside an image (it ends up above or below it) - this was a rather strange ramification of the old mozDIV
       rules which are now gone.


git-svn-id: svn://10.0.0.236/trunk@54462 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:16:56 +00:00
cmanske%netscape.com
90674903c4 Images for outdent/indent were reversed. No review for binaries
git-svn-id: svn://10.0.0.236/trunk@54461 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:13:05 +00:00
mcafee%netscape.com
aaecc62dd9 Renamed smoke test #1 to alive test; some comment cleanup; default display is now :0.0.
git-svn-id: svn://10.0.0.236/trunk@54460 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:07:55 +00:00
vidur%netscape.com
2b3d123d93 Changed signature of AddScriptEventListener. Event handlers that are attributes of XUL elements are now compiled only when first invoked. R=joki
git-svn-id: svn://10.0.0.236/trunk@54459 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:06:10 +00:00
waqar%netscape.com
e962647764 # 17102
r mcafee@netscape.com
d Need to have a dialog box when replacing a file. Make sure that user
  really wants to overwrite the existing file.


git-svn-id: svn://10.0.0.236/trunk@54458 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:05:32 +00:00
vidur%netscape.com
29607952c0 Fixes for 19650 and 15133. Added nsHTMLDocument::Resolve(). Script event handler compilation is deferred till when the event handler is first invoked. Atoms used for event name comparisions instead of strings. R=joki
git-svn-id: svn://10.0.0.236/trunk@54457 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:05:21 +00:00
vidur%netscape.com
4fc2089b79 Reverted to NPL 1.1. R=joki
git-svn-id: svn://10.0.0.236/trunk@54456 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:02:47 +00:00
vidur%netscape.com
7611c6f483 Fix for 19650 and 15133. Added nsIJSEventListener. JS event listener now stores script context and script object owner for late compilation of script event handlers.
git-svn-id: svn://10.0.0.236/trunk@54455 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:01:30 +00:00
vidur%netscape.com
d63d53e37b Added window.scroll(). Changed signature of RegisterScriptEventListener. R=joki
git-svn-id: svn://10.0.0.236/trunk@54454 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-25 00:00:21 +00:00
vidur%netscape.com
83242bfd2b Added nsIJSEventListener.h
git-svn-id: svn://10.0.0.236/trunk@54453 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:59:08 +00:00
vidur%netscape.com
97136e7647 Added window.scroll(). Reverted back to NPL 1.1. R=joki
git-svn-id: svn://10.0.0.236/trunk@54452 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:58:43 +00:00
vidur%netscape.com
f89521fdfe Added window.scroll()
git-svn-id: svn://10.0.0.236/trunk@54451 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:56:39 +00:00
rpotts%netscape.com
258f8c739b bug #18651. Explicitly cancel te transport to make it go away even if it is blocked waiting for the consumer to empty the pipe...
git-svn-id: svn://10.0.0.236/trunk@54450 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:51:09 +00:00
waterson%netscape.com
0d2ce02d14 More random flailing to fix gcc-2.7.2.3
git-svn-id: svn://10.0.0.236/trunk@54449 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:39:34 +00:00
waterson%netscape.com
91d3876ee2 Random flailing to fix gcc-2.7.2.3 bustage.
git-svn-id: svn://10.0.0.236/trunk@54448 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:19:52 +00:00
ducarroz%netscape.com
238a498f13 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54447 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 23:01:13 +00:00
akkana%netscape.com
50c0c63208 20062: following Naoki's advice on which flag to use for entity conversion
git-svn-id: svn://10.0.0.236/trunk@54446 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:59:34 +00:00
waterson%netscape.com
c270cdebcb Expose nsIXULDocument and nsIXULPrototypeDocument as public interfaces. Properly implement nsIXULDocument::CreateFromPrototype().
git-svn-id: svn://10.0.0.236/trunk@54445 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:46:09 +00:00
waterson%netscape.com
d19314125e Add methods to individually flush prototypes and style sheets.
git-svn-id: svn://10.0.0.236/trunk@54444 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:44:52 +00:00
waterson%netscape.com
bb116685ba Bug 20036. Fix style sheet ordering.
git-svn-id: svn://10.0.0.236/trunk@54443 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:43:45 +00:00
akkana%netscape.com
52425f1d69 small part of 18033: get rid of obsolete bindings that interfered with Unix alt bindings
git-svn-id: svn://10.0.0.236/trunk@54442 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:35:15 +00:00
akkana%netscape.com
73bbfb0072 Fix platform global overlays now that saari and waterson explained to me how overlays work
git-svn-id: svn://10.0.0.236/trunk@54441 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:28:58 +00:00
jj%netscape.com
27f103258b fixed NSPR log file name ('NSPR Logging')
git-svn-id: svn://10.0.0.236/trunk@54440 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:16:17 +00:00
dmose%mozilla.org
69af608285 added newline to EOF to keep Solaris sed from whining, r=mcafee@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54439 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 22:04:23 +00:00
akkana%netscape.com
98ace5c30f AbortIfFalse should abort on all platforms -- that's the whole point. r=shaver
git-svn-id: svn://10.0.0.236/trunk@54438 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:58:20 +00:00
despotdaemon%netscape.com
8a65131bee Pseudo-automatic update of changes made by svn@xmlterm.org.
git-svn-id: svn://10.0.0.236/trunk@54437 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:54:01 +00:00
waterson%netscape.com
7aed734132 Bug 19600. Change content length magical 'unknown-so-read-til-you-puke' value from zero to -1.
git-svn-id: svn://10.0.0.236/trunk@54436 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:44:13 +00:00
rods%netscape.com
a904db796a added back in the code that hook it up to the form for submission
r=kmcclusk bug 19546


git-svn-id: svn://10.0.0.236/trunk@54435 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:37:34 +00:00
tonyr%fbdesigns.com
4280a49ae3 Got rid of outdated API's
git-svn-id: svn://10.0.0.236/trunk@54434 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:26:14 +00:00
tonyr%fbdesigns.com
bd76609759 Added address book import for Win32
git-svn-id: svn://10.0.0.236/trunk@54433 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:24:21 +00:00
rods%netscape.com
0ca8329bcb change to always check for upper case TEXT
r=kmccluck bug 19607


git-svn-id: svn://10.0.0.236/trunk@54432 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:24:06 +00:00
rods%netscape.com
daa6109f75 CheckIfAllFramesHere not actually check to see if all the frames are there
r=kmcclusk Bug 19949


git-svn-id: svn://10.0.0.236/trunk@54431 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:12:03 +00:00
rods%netscape.com
5466f34839 Add a check around the WipeContaingBlock call in ContentInserted, it checks for
the select and doesn't do it. Just like Bug 18366, r=kmcclusk Bug 19949


git-svn-id: svn://10.0.0.236/trunk@54430 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:10:49 +00:00
valeski%netscape.com
4695b284df r=mscott, premature stream closure cleanup and minor state change to FTP state machine.
git-svn-id: svn://10.0.0.236/trunk@54429 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:08:04 +00:00
valeski%netscape.com
435deb5588 passing a signed int into an unsigned param. now we're not
git-svn-id: svn://10.0.0.236/trunk@54428 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:07:11 +00:00
rjc%netscape.com
c96d03d417 Speed up reading in of HTML results by reading in as many bytes in one chunk as possible, instead of 256 bytes at a time.
git-svn-id: svn://10.0.0.236/trunk@54427 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 21:04:52 +00:00
rods%netscape.com
17d3e898d7 when there is no value it gets the text for the butto from the egernated content
in all cases (not just when it is a submit or reset) r=kmcclusk bug 19607


git-svn-id: svn://10.0.0.236/trunk@54426 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:59:49 +00:00
rods%netscape.com
50d2a1f377 nsGfxListControl.cpp is now in the build
git-svn-id: svn://10.0.0.236/trunk@54425 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:56:05 +00:00
waterson%netscape.com
3394356c02 Add experimental support for RDF delegates.
git-svn-id: svn://10.0.0.236/trunk@54424 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:51:39 +00:00
akkana%netscape.com
bcb564f007 19610: Change InsertAsQuotation API to return inserted node r=rhp
git-svn-id: svn://10.0.0.236/trunk@54423 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:48:59 +00:00
ssu%netscape.com
4b174b6e6e initial checkin of tool that renames files. This tool is used with the psm.xpi installer to rename 8.3 filenames to long filenames under Win95/98. Not part of tinderbox build system yet.
git-svn-id: svn://10.0.0.236/trunk@54422 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:48:32 +00:00
cmanske%netscape.com
5c6b93be9a Adding new image to use for color picker on Composer toolbar
git-svn-id: svn://10.0.0.236/trunk@54421 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:46:06 +00:00
akkana%netscape.com
f9ab270d0b More on 11818 (xulkey): make meta the default mac xulkey,
since platformGlobalOverlay.xul isn't loaded. r=brade
Also fix the mac and unix platformGlobalOverlay files
for when platformGlobalOverlay.xul merging gets fixed.


git-svn-id: svn://10.0.0.236/trunk@54420 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:44:56 +00:00
cmanske%netscape.com
0cead8187c Fixed images not checked in using -kb. Review not possible on icons (leaf helped)
git-svn-id: svn://10.0.0.236/trunk@54419 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:44:30 +00:00
warren%netscape.com
f45da4fd55 Added friend _class_ for hpukes.
git-svn-id: svn://10.0.0.236/trunk@54418 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:42:04 +00:00
rjc%netscape.com
4a0303df11 Remove errant "ref" attribute on "NC:LastSearchRoot" node.
git-svn-id: svn://10.0.0.236/trunk@54417 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:40:48 +00:00
rjc%netscape.com
60161f1564 Clear the list of result search sites when the search dialog opens.
git-svn-id: svn://10.0.0.236/trunk@54416 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:40:01 +00:00
despotdaemon%netscape.com
8f14c31189 Pseudo-automatic update of changes made by tor@cs.brown.edu.
git-svn-id: svn://10.0.0.236/trunk@54415 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 20:29:28 +00:00
rods%netscape.com
1722fe906a fixed it up for the frame changes so it will compile
(not in build yet, because if it was tinderbox would be in flames)


git-svn-id: svn://10.0.0.236/trunk@54414 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 17:33:59 +00:00
brade%netscape.com
8085b14742 make indent actually look like indent (not outdent) bug 19372
git-svn-id: svn://10.0.0.236/trunk@54413 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 15:52:39 +00:00
brade%netscape.com
258d555b23 fix corrupted gif
git-svn-id: svn://10.0.0.236/trunk@54412 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 15:48:19 +00:00
dveditz%netscape.com
f5b953ca85 force install for now, to prevent bogus 'old-version' warning bubbling up as an error
git-svn-id: svn://10.0.0.236/trunk@54411 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 14:55:56 +00:00
rjc%netscape.com
9620dc7bda Use the status bar at the bottom of the internet search pane: when a result is clicked on, put its true URL into the status bar.
git-svn-id: svn://10.0.0.236/trunk@54410 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 11:14:14 +00:00
rjc%netscape.com
b38052fc61 Get search locale DTDs from proper location.
git-svn-id: svn://10.0.0.236/trunk@54409 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 10:15:53 +00:00
tbogard%aol.net
dddce8c3b5 Removed implementation of nsIURLDispatcher. Changed the QI into a new interface map.
git-svn-id: svn://10.0.0.236/trunk@54408 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 10:04:13 +00:00
tbogard%aol.net
ecf4583b04 Removed the SetURLDispatcher call.
git-svn-id: svn://10.0.0.236/trunk@54407 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 09:41:45 +00:00
tbogard%aol.net
a779a909e7 Removed the set and get of the URLDispatcher. Changed a QI to using the Interface maps.
git-svn-id: svn://10.0.0.236/trunk@54406 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 09:40:56 +00:00
rjc%netscape.com
e3ed25ca3f Make sure that default.htm is referenced via a chrome: URL.
git-svn-id: svn://10.0.0.236/trunk@54405 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 09:40:33 +00:00
tbogard%aol.net
00600f316c Slight re-arrangement of some methods. Mainly just removed Set and GetURLDispatcher.
git-svn-id: svn://10.0.0.236/trunk@54404 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 09:39:58 +00:00
warren%netscape.com
cb0dd060c7 Added nsIInterfaceRequestor.h to keep nsCOMPtr happy.
git-svn-id: svn://10.0.0.236/trunk@54403 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 08:31:06 +00:00
warren%netscape.com
bed9c57e40 Added optimized dependency on netwerk util.
git-svn-id: svn://10.0.0.236/trunk@54402 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 08:28:08 +00:00
warren%netscape.com
af805ec2ae Added include for nsCOMPtr.
git-svn-id: svn://10.0.0.236/trunk@54401 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 07:40:54 +00:00
hyatt%netscape.com
acfc96d2e1 Closer to refresh of chrome on a skin switch. r=gimpy
git-svn-id: svn://10.0.0.236/trunk@54400 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 07:37:38 +00:00
warren%netscape.com
f59f13ab64 Somehow added to wrong directory. Moving.
git-svn-id: svn://10.0.0.236/trunk@54399 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 07:19:12 +00:00
warren%netscape.com
edca144500 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54398 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 07:16:03 +00:00
rjc%netscape.com
2b1c75597f Part of fix for bug # 14442: pressing the delete/backspace key(s) will now delete any selected bookmarks.
git-svn-id: svn://10.0.0.236/trunk@54397 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:33:48 +00:00
warren%netscape.com
98eda3653c Added test for res protocol.
git-svn-id: svn://10.0.0.236/trunk@54396 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:30:51 +00:00
warren%netscape.com
673fa8a01b Added res and jar protocols.
git-svn-id: svn://10.0.0.236/trunk@54395 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:29:44 +00:00
warren%netscape.com
28944d9cea Added new/missing protocols.
git-svn-id: svn://10.0.0.236/trunk@54394 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:27:28 +00:00
rjc%netscape.com
180d39b774 Some partial fixes for bug # 14442: when pasting some nodes into a container, don't insert a URL that already is in the container. Also, keep a dirty flag for all operations, and only update (i.e. write out) the bookmarks.html file if dirty=true when all done.
git-svn-id: svn://10.0.0.236/trunk@54393 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:15:55 +00:00
tbogard%aol.net
ae5a81e394 Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc
git-svn-id: svn://10.0.0.236/trunk@54392 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:03:41 +00:00
tbogard%aol.net
081927560a Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*.
git-svn-id: svn://10.0.0.236/trunk@54391 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 06:03:10 +00:00
warren%netscape.com
f6aaeb2e77 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54390 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:54:31 +00:00
warren%netscape.com
a707b9e5a7 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@54389 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:51:32 +00:00
warren%netscape.com
5d77bc1cb6 Added nsIHttpEventSink.h
git-svn-id: svn://10.0.0.236/trunk@54388 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:49:38 +00:00
rjc%netscape.com
ca270e7d24 Part of fix for bug # 19564: add new search chrome and DTD references into Windows build.
git-svn-id: svn://10.0.0.236/trunk@54387 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:36:47 +00:00
rjc%netscape.com
874ce0a211 Part of fix for bug # 19564: preparing to add new search chrome: and DTD references into Windows build. (Not part of Windows build yet.)
git-svn-id: svn://10.0.0.236/trunk@54386 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:19:49 +00:00
rjc%netscape.com
b1fb63ece7 Part of fix for bug # 19564: add new search chrome: and DTD references into Mac build.
git-svn-id: svn://10.0.0.236/trunk@54385 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:15:39 +00:00
rjc%netscape.com
38810cabc0 Part of fix for bug # 19564: add new search chrome: and DTD references into Unix build.
git-svn-id: svn://10.0.0.236/trunk@54384 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:11:21 +00:00
rjc%netscape.com
eb7f11584f Part of fix for bug # 19564: open search dialog via a chrome: URL.
git-svn-id: svn://10.0.0.236/trunk@54383 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 05:00:46 +00:00
rjc%netscape.com
2d366736b9 Add ability to debug search output. (Off by default.)
git-svn-id: svn://10.0.0.236/trunk@54382 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:55:49 +00:00
rgoodger%ihug.co.nz
bfd8c99664 style settings for wizardOverlay buttons. r=alecf
git-svn-id: svn://10.0.0.236/trunk@54381 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:48:52 +00:00
rjc%netscape.com
5d78e5133b Prepare to fix bug # 19564... search dialogs need to be skinnable, by using chrome: URLs and DTDs.
git-svn-id: svn://10.0.0.236/trunk@54380 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:47:26 +00:00
rgoodger%ihug.co.nz
e10dd870c7 Localisation files for wizardManager and wizardOverlay buttons. r=alecf
git-svn-id: svn://10.0.0.236/trunk@54379 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:46:13 +00:00
rjc%netscape.com
d46c8fbdd7 Add search DTD MANIFEST file.
git-svn-id: svn://10.0.0.236/trunk@54378 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:43:18 +00:00
rjc%netscape.com
86a4f79c76 Add some search DTDs.
git-svn-id: svn://10.0.0.236/trunk@54377 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:43:00 +00:00
rgoodger%ihug.co.nz
0298981187 Widget state persistence for multi-pane dialogs, generic wizard architecture and wizard buttons. r=alecf
git-svn-id: svn://10.0.0.236/trunk@54376 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:39:20 +00:00
warren%netscape.com
a1c39e3041 Fix for loading resource: urls with -f option. Bug#18423. Now passing original url (rather than redirect) to Observe callback.
git-svn-id: svn://10.0.0.236/trunk@54375 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:34:26 +00:00
warren%netscape.com
b775f4788a Fix to use the resource url as the original url if an original wasn't supplied.
git-svn-id: svn://10.0.0.236/trunk@54374 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:32:49 +00:00
shaver%netscape.com
da96140bff Move View->Sidebar toggle into sidebarOverlay.xul. Fixes 16618. r=ben_goodger.
git-svn-id: svn://10.0.0.236/trunk@54373 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 04:10:18 +00:00
sfraser%netscape.com
847ecec5d7 Fix the embedding stuff to no longer explicitly create an image manager, now that it is a service. r=neeti.
git-svn-id: svn://10.0.0.236/trunk@54372 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:57:32 +00:00
neeti%netscape.com
004b45dfbe *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@54371 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:49:11 +00:00
hyatt%netscape.com
fb3020db9c blah. commenting out some stuff. r=me
git-svn-id: svn://10.0.0.236/trunk@54370 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:46:17 +00:00
hyatt%netscape.com
e1d1c67cf1 Working on making windows refresh following a skin change. r=danm
git-svn-id: svn://10.0.0.236/trunk@54369 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:45:45 +00:00
neeti%netscape.com
61d74e4fc7 fix bug 15820,memory leak in ImageManagerImpl by converting it to a service on gtk, windows and mac.r=dp
git-svn-id: svn://10.0.0.236/trunk@54368 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:41:48 +00:00
sfraser%netscape.com
48b07a2cf2 Make the image manager a service, part of neeti's checkin that follows. We no longer need the image manager hack in main(), so comment it out. r=neeti.
git-svn-id: svn://10.0.0.236/trunk@54367 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:40:05 +00:00
sfraser%netscape.com
9adf99cc1d Make the image manager a service, part of neeti's checkin that follows. r=neeti.
git-svn-id: svn://10.0.0.236/trunk@54366 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:39:30 +00:00
shaver%netscape.com
ac0b5e80b1 update to track catchguard syntax, r=cls
git-svn-id: svn://10.0.0.236/trunk@54365 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:36:26 +00:00
shaver%netscape.com
3676f93091 - report function name, if any, when warning about mismatched return
- change catchguard syntax to avoid ECMA conflict
- light XDR cleanup


git-svn-id: svn://10.0.0.236/trunk@54364 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:36:25 +00:00
idk%eng.sun.com
a1e0f1ac14 18857
changed return value from 0 to -1


git-svn-id: svn://10.0.0.236/trunk@54363 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:36:06 +00:00
mike%neoplanet.com
eb419dae48 Added preliminary cookie support. Enabled preferences to be read from the default preference file. Corrected/Added DWebBrowser events: DownloadBegin, DownloadComplete, StatusTextChange, and TitleChange. Added support for ExecWB->SaveAs.
git-svn-id: svn://10.0.0.236/trunk@54362 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:34:34 +00:00
idk%eng.sun.com
beaaee18a3 18963
Litle fix. Fixed typo


git-svn-id: svn://10.0.0.236/trunk@54361 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 03:30:34 +00:00
jdunn%netscape.com
e8ed6ef97b r= slamm@netscape.com
# 18552

Adding SHLIB_PATH for HPUX and LIBPATH for AIX to the export list.


git-svn-id: svn://10.0.0.236/trunk@54360 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 02:11:18 +00:00
sgehani%netscape.com
fbb6c3bec1 Fix build warnings. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@54359 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 02:09:06 +00:00
frankm%eng.sun.com
fcdf12aad5 [Bugs 18486, 18488; r=mccabe] XPIDL->Java: always make first char of methods lowercase, translate PRBool to Java boolean
git-svn-id: svn://10.0.0.236/trunk@54358 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 02:08:34 +00:00
sgehani%netscape.com
d4264fcb05 *** NOT PART OF CONTINUOUS BUILD ***
Fix for bug 18887: Mac installer was not installing browser.xpi. [r=dbragg]


git-svn-id: svn://10.0.0.236/trunk@54357 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 01:57:44 +00:00
sgehani%netscape.com
b7a4ffa6c8 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54356 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 01:56:51 +00:00
hyatt%netscape.com
d4551c2a74 Chrome registry skin switching implemented. r=danm
git-svn-id: svn://10.0.0.236/trunk@54355 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 01:12:35 +00:00
mjudge%netscape.com
4c7a925272 Fixing mac issue with selection dragging not working when above or below single line text. aka URL. mac has a different preference now. this may be done with look and feel object later. hyatt,cmanske(19191)
git-svn-id: svn://10.0.0.236/trunk@54354 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 01:10:22 +00:00
akkana%netscape.com
2f3bf08c73 Change asserts to nonfatal warnings
git-svn-id: svn://10.0.0.236/trunk@54353 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:56:03 +00:00
briano%netscape.com
3bb09b961f Automated update
git-svn-id: svn://10.0.0.236/trunk@54352 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:45:26 +00:00
mcafee%netscape.com
9c200b4d28 Add -DULTRA_SPARC to CFLAGS as well, needed for jslock.c/WS5.0/Solaris. r=slamm
git-svn-id: svn://10.0.0.236/trunk@54351 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:43:58 +00:00
jdunn%netscape.com
92a2da4944 newline required at eof for HPUX
git-svn-id: svn://10.0.0.236/trunk@54350 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:43:50 +00:00
mscott%netscape.com
979c528441 Bug #19955 --> QueryInterface was going to the RDFResource base class
if it couldn't handle it. It should go to nsMsgFolder which is the next class in the hierarchy.
r=alecf


git-svn-id: svn://10.0.0.236/trunk@54349 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:39:26 +00:00
mscott%netscape.com
df2218dd9e Bug #19955 --> QI was incorrectly going to nsmsgFolder if it couldn't handle it
instead of going to nsMsgDBFolder
r=alecf


git-svn-id: svn://10.0.0.236/trunk@54348 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:38:35 +00:00
evaughan%netscape.com
cd59b4628b Turned gfx scrollbars on by default. -r Mcaffe
git-svn-id: svn://10.0.0.236/trunk@54347 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:21:12 +00:00
pinkerton%netscape.com
c49fe9643c temp workaround for bug 19588, don't allow dragging of containers on personal toolbar. r=hyatt.
git-svn-id: svn://10.0.0.236/trunk@54346 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:17:34 +00:00
akkana%netscape.com
c13d4152e3 Define semicolon as well as colon. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@54345 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-24 00:04:20 +00:00
valeski%netscape.com
27803fc1b1 18434, r=rpotts. the socket transport now issues OnProgress notifications
git-svn-id: svn://10.0.0.236/trunk@54344 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:53:10 +00:00
radha%netscape.com
8e17e0f7de Fix for regressed bug # 9699. Comment out the code that removes partially
loaded pages from session History. r=law.


git-svn-id: svn://10.0.0.236/trunk@54343 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:29:58 +00:00
akkana%netscape.com
a29e9ad060 11818: Rename the special XUL key from "command" to "xulkey" so it won't
confuse people into thinking it has something to do with the Mac command key.
This means changing all the XUL keybinding files from command= to xulkey=.
r=brade.


git-svn-id: svn://10.0.0.236/trunk@54342 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:24:57 +00:00
valeski%netscape.com
ebe6074d2f bustage fix. comptr include ordering problem
git-svn-id: svn://10.0.0.236/trunk@54341 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:15:16 +00:00
valeski%netscape.com
742ccc82f5 bustage attempt. chasing comptr fun
git-svn-id: svn://10.0.0.236/trunk@54340 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:14:08 +00:00
sgehani%netscape.com
e0a2e408c8 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54339 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:14:07 +00:00
sgehani%netscape.com
a37d857f2e Preparing to checkin updated version.
git-svn-id: svn://10.0.0.236/trunk@54338 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:14:00 +00:00
waqar%netscape.com
b0564cd829 # 15904, 19582
r vidur@netscape.com
d Fixes the problem with memory leak in AppendData node when manipulating
  comment nodes.


git-svn-id: svn://10.0.0.236/trunk@54337 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:13:03 +00:00
sgehani%netscape.com
dd7cf9b5b1 *** Mac only ***
UI bug fixes: 18874, 18880, 18900, 18208 
[r=ssu, a=don]


git-svn-id: svn://10.0.0.236/trunk@54336 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:12:06 +00:00
warren%netscape.com
03a7be4590 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54335 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 23:03:43 +00:00
waterson%netscape.com
b004a1a6d0 Bug 19968. Just 'throw' if we can't create an RDF container on the thing.
git-svn-id: svn://10.0.0.236/trunk@54334 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:59:02 +00:00
mjudge%netscape.com
93087b4bea missed a |= instead of just a ==. The compared variable is a bitflag not just a number.
git-svn-id: svn://10.0.0.236/trunk@54333 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:49:44 +00:00
waterson%netscape.com
54b96b5a21 Don't need to AddRef the resource before putting into an nsISupportsArray.
git-svn-id: svn://10.0.0.236/trunk@54332 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:36:50 +00:00
rginda%netscape.com
f486d713bc * Makefile
Add target for windows systems.
* runtests2.pl
  Add xpcshell option, no longer requires \n at end of list file.
* ecma/ExecutionContexts/10.1.3.js
  Reformatted.


git-svn-id: svn://10.0.0.236/trunk@54331 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:35:35 +00:00
waterson%netscape.com
f0c4a41376 Fix leak of kRDF_nextVal; make construction/initialization safe.
git-svn-id: svn://10.0.0.236/trunk@54330 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:30:58 +00:00
waterson%netscape.com
8bbe74eab0 Balance acquisition of RDF resources by releasing them in the dtor.
git-svn-id: svn://10.0.0.236/trunk@54329 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:30:27 +00:00
valeski%netscape.com
5387fd9909 18434, r=rpotts. HTTP now implements AsyncOpen. AsyncOpen will be used by URI dispatching
git-svn-id: svn://10.0.0.236/trunk@54328 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:23:06 +00:00
jefft%netscape.com
169ea81a2e fixed bug 10801 -- failed to save messages as templates; stationary folder is now per identity; r=putterman
git-svn-id: svn://10.0.0.236/trunk@54327 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:19:48 +00:00
pinkerton%netscape.com
230ce7b8c2 fix for bug 19590, writing to nil during a drag. Also fixed a memory corruptor with deleting bad memory when there was no flavor mapping table (no bug filed). r=sfraser.
git-svn-id: svn://10.0.0.236/trunk@54326 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:19:26 +00:00
waterson%netscape.com
d896882605 Remove vestigial addref that was leaking proxy objects. r=dougt
git-svn-id: svn://10.0.0.236/trunk@54325 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:05:44 +00:00
alecf%netscape.com
33acdaea73 fix for #16929
nuke the scrollbar whenever the total rows is less than the visible rows. This prevents the scrollbar from disappearing under you if you scroll up after many rows have been deleted (such as collapsing folders in mail)
r=hyatt


git-svn-id: svn://10.0.0.236/trunk@54324 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:05:19 +00:00
dp%netscape.com
2c1ed40631 Adding back implementation for nsINetNotify. This got removed in the
previous checkin.


git-svn-id: svn://10.0.0.236/trunk@54323 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:05:18 +00:00
kin%netscape.com
275e4a25ba Fix for bug #18092 which is a modified version of Kipp's fix for #1413 that
also fixes #18002, and #18006. nsContainerFrame::GetFrameForPointUsing() now
looks through any outside children even if it finds a normal child containing
aPoint.

r=joki@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54322 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:05:05 +00:00
waterson%netscape.com
38ba2d94d5 Fix incorrect use of nsSupportsHashTable that was causing leakage.
git-svn-id: svn://10.0.0.236/trunk@54321 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:02:57 +00:00
valeski%netscape.com
702135127e added files: mozilla/netwerk/protocol/ftp/public/nsPIFTPChannel.idl, removed files: mozilla/netwerk/protocol/ftp/public/nsIFTPChannel.idl
git-svn-id: svn://10.0.0.236/trunk@54320 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:00:54 +00:00
tonyr%fbdesigns.com
7e2dd62642 Fixed typo, someone added a call to naAllocator::Free when they meant nsAllocator::Free
git-svn-id: svn://10.0.0.236/trunk@54319 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:00:19 +00:00
valeski%netscape.com
217a9a5ea0 18435,18413. r=warren. Implemented AsyncOpen for FTP, as well as OpenInputStream. FTP no longer implements the stream listener interface
git-svn-id: svn://10.0.0.236/trunk@54318 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 22:00:18 +00:00
endico%mozilla.org
59318f16fc for nsI*.idl files, add deoxygen link and image
git-svn-id: svn://10.0.0.236/trunk@54317 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:59:13 +00:00
tonyr%fbdesigns.com
256ffc06c6 Added tests for eudora import
git-svn-id: svn://10.0.0.236/trunk@54316 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:59:03 +00:00
dp%netscape.com
5a854190a3 - Converting to using COMPtrs
- Caching of Atoms
- Making code readable
- Removing Create() method. Adding Init() method.
r=neeti


git-svn-id: svn://10.0.0.236/trunk@54315 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:57:05 +00:00
dp%netscape.com
692f3375c4 Improving readability of code.
git-svn-id: svn://10.0.0.236/trunk@54314 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:55:50 +00:00
tonyr%fbdesigns.com
92df2ccbd4 Added address book files
git-svn-id: svn://10.0.0.236/trunk@54313 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:54:53 +00:00
tonyr%fbdesigns.com
27199ce73f Added support for importing eudora address books
git-svn-id: svn://10.0.0.236/trunk@54312 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:54:01 +00:00
tonyr%fbdesigns.com
9875d94239 Updates to handle eudora attachments on Mac
git-svn-id: svn://10.0.0.236/trunk@54311 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:52:52 +00:00
nhotta%netscape.com
99464ce5fd Changed conversion between posix and xp locale to handle extra locale info correctly, bug 18338, r=tao.
git-svn-id: svn://10.0.0.236/trunk@54310 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:51:26 +00:00
tonyr%fbdesigns.com
1c02ee9f86 Added strings for address book import
git-svn-id: svn://10.0.0.236/trunk@54309 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:51:23 +00:00
alecf%netscape.com
d400aa697f fixing spelling error in dtd (no reviewer necessary)
git-svn-id: svn://10.0.0.236/trunk@54308 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:50:19 +00:00
tonyr%fbdesigns.com
59a35bc32f First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54307 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:49:50 +00:00
ducarroz%netscape.com
8ca1787ffe We should display a correct error message when the send operation faild. R=mscott
git-svn-id: svn://10.0.0.236/trunk@54306 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:48:21 +00:00
dcone%netscape.com
4f301728a5 Initialize the mEnableRendering in other constructor... so print preview will show document. r=rods
git-svn-id: svn://10.0.0.236/trunk@54305 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:45:36 +00:00
valeski%netscape.com
fa00d72bc4 r=warren. missing addref in sync streamlistener creator.
git-svn-id: svn://10.0.0.236/trunk@54304 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 21:41:12 +00:00
waterson%netscape.com
e8af2119bd Be sure to release the mCookieHTTPNotify object.
git-svn-id: svn://10.0.0.236/trunk@54303 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:55:58 +00:00
blizzard%redhat.com
6eaf2d5023 fix bug #14131. popup windows on modal dialogs should work now.
git-svn-id: svn://10.0.0.236/trunk@54302 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:55:57 +00:00
valeski%netscape.com
5a10336b5a 18435, r = warren. changing chars to constants.
git-svn-id: svn://10.0.0.236/trunk@54301 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:55:27 +00:00
waterson%netscape.com
df32789d46 Fix nsNetModuleMgr and nsNetModRegEntry leaks. r=valeski
git-svn-id: svn://10.0.0.236/trunk@54300 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:47:25 +00:00
mjudge%netscape.com
43a63010d1 small fixes for BR frames getting correct offset. also one case of textframe not returning proper location (simply a missed change of a regressed call in PeekOffset) nsCaret was also too stringent on the limitation of text frames as the only frames to get the caret position. these were reviewed by a few people and i just dont remember. r=simon,cmanske,akkana and hyatt?
git-svn-id: svn://10.0.0.236/trunk@54299 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:30:21 +00:00
ssu%netscape.com
5a557d72ae updated to deliver *.html files dist install. a=leaf.
git-svn-id: svn://10.0.0.236/trunk@54298 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:29:45 +00:00
ssu%netscape.com
2bb9a33f4d initial checkin of a smartupdate trial trigger page. not part of tinderbox. a=leaf not part of build either.
git-svn-id: svn://10.0.0.236/trunk@54295 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 20:00:19 +00:00
larryh%netscape.com
7e10edeacf BugZilla: 19448. Back out disable call to _PR_MD_GetRandomNoise()
git-svn-id: svn://10.0.0.236/trunk@54294 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 19:15:32 +00:00
briano%netscape.com
8a9274e9d6 Automated update
git-svn-id: svn://10.0.0.236/trunk@54293 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 19:01:02 +00:00
cls%seawood.org
59159e9dfe Oops, we're using USE_PTHREADS instead of _HAVE_PTHREADS.
git-svn-id: svn://10.0.0.236/trunk@54292 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 18:55:01 +00:00
slamm%netscape.com
1f35e0a04c Add 'mozilla/' to blame links.
git-svn-id: svn://10.0.0.236/trunk@54291 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 17:42:19 +00:00
norris%netscape.com
b275a73219 delete of non-reference just evaluates to true.
git-svn-id: svn://10.0.0.236/trunk@54290 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 17:36:17 +00:00
larryh%netscape.com
98b909eb6b BugZilla 19448. Temporary circumvention
git-svn-id: svn://10.0.0.236/trunk@54289 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 17:33:20 +00:00
norris%netscape.com
34673b8f9e Add ConversionError and make it work for undefined.foo.
git-svn-id: svn://10.0.0.236/trunk@54288 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 17:30:31 +00:00
norris%netscape.com
13ceb50706 Remove commented-out code.
git-svn-id: svn://10.0.0.236/trunk@54287 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 17:29:53 +00:00
norris%netscape.com
412d0add5a Fix formatting.
git-svn-id: svn://10.0.0.236/trunk@54286 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 17:29:34 +00:00
briano%netscape.com
4b40e12399 Automated update
git-svn-id: svn://10.0.0.236/trunk@54285 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 15:45:26 +00:00
cls%seawood.org
04aeafd41a Added check for pthread symbols in libc.
git-svn-id: svn://10.0.0.236/trunk@54284 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 15:31:56 +00:00
valeski%netscape.com
a4eb901f54 18435, r=warren. the FTP directory listing stream converter now supports synchronous usage. This allows directory listing streams to be converted when OpenInputStream is called.
git-svn-id: svn://10.0.0.236/trunk@54283 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 15:13:29 +00:00
rods%netscape.com
a6d7ccf209 removed return variable that wasn't used and its warning r=self
git-svn-id: svn://10.0.0.236/trunk@54282 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 14:21:03 +00:00
rods%netscape.com
d5f402d8c6 removed extra variable declaration and the warning
git-svn-id: svn://10.0.0.236/trunk@54281 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 14:20:17 +00:00
rods%netscape.com
94accb2fc7 fixed two warning r=me
git-svn-id: svn://10.0.0.236/trunk@54280 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 14:16:59 +00:00
andreas.otte%primus-online.de
b4d1d896af Added code to remove trailing spaces in URLs. (Fixes bug 15451)
Some code to add a trailing / in SetDirectory if it is missing. There is no special bug behind this, just a fix for a potential bug.

And a oneliner in ParsePath to deal with params, querys and refs in the right place. Between setting brk and getting to the code that deals with this stuff, there is a ReplaceMess call which can change the position of querys and co. This change avoids that problem.

r=valeski


git-svn-id: svn://10.0.0.236/trunk@54279 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 14:06:17 +00:00
Jerry.Kirk%Nexwarecorp.com
9f15cbd1bd nsAppShell: Added some NS_WARNING calls.
nsWidget: Aded support for numeris keys on the numeric keypad.


git-svn-id: svn://10.0.0.236/trunk@54278 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 13:10:03 +00:00
Jerry.Kirk%Nexwarecorp.com
5cd0db7fc2 Overloaded more methods in the ChildWindow for destruction.
Added GetFrameSize method to the Window.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@54277 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 13:08:46 +00:00
Jerry.Kirk%Nexwarecorp.com
2f8fb284e0 Changed some logging to be more helpful in tracking down graphic rips.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@54276 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 13:06:27 +00:00
Jerry.Kirk%Nexwarecorp.com
7a24d2b40b Increased size of static Font List buffer to support new fonts
being released.  This should really be dynamic.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@54275 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 13:02:21 +00:00
warren%netscape.com
639dba992f Test case for the res: protocol.
git-svn-id: svn://10.0.0.236/trunk@54274 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 12:14:58 +00:00
warren%netscape.com
8149fa4c9b Initial checkin of the res: protocol -- replacement for resource: that does symbolic roots, and searching.
git-svn-id: svn://10.0.0.236/trunk@54273 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 12:13:33 +00:00
tbogard%aol.net
f7854c4d17 Changes to get this compiling again.
git-svn-id: svn://10.0.0.236/trunk@54272 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 10:15:10 +00:00
tbogard%aol.net
57191011f6 Changed the old QI map to use the new NS_INTERFACE_MAP_BEGIN, NS_INTERFACE_ENTRY, NS_INTERFACE_MAP_END type map.
git-svn-id: svn://10.0.0.236/trunk@54271 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 10:08:32 +00:00
tbogard%aol.net
80ea367e86 Changed the concept of the webshell holding an mChromeElement object to it holding a nsIChromeEventHandler interface. This is more generic and allows other apps to plugin nicer into the API.r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54270 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 09:57:47 +00:00
tbogard%aol.net
5a58d9854e Enabled nsHTMLFrameElement and nsHTMLIFrameElement to implement the nsIChromeEventHandler interface. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54269 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 09:42:49 +00:00
tbogard%aol.net
1911c4e4d3 Enabled nsXULElement to implement the nsIChromeEventHandler interface. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54268 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 09:36:39 +00:00
dougt%netscape.com
587185d7ca 1) #ifdefing out dll entry points from nsProxyObjectManager which should not
be used

2) Fix crashing bug in nsProxiedService when a CI fails.  Converted this to
use nsCOMPtrs

3) Fixing bug 18109.  This involved changing what information about hash values
we use.

Tested FTP dir and file, and IMAP.


git-svn-id: svn://10.0.0.236/trunk@54267 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 08:53:44 +00:00
dp%netscape.com
2589a07d5b Beautify...
git-svn-id: svn://10.0.0.236/trunk@54266 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 07:54:25 +00:00
mscott%netscape.com
96db249ec3 force uri dispatching to always be on if the url we are trying to load
is a mailto url. why? because it works so well for mailto =). No sense
in only allowing people turning uri dispatching on to get the benefits.
r=travis.


git-svn-id: svn://10.0.0.236/trunk@54265 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 07:14:45 +00:00
warren%netscape.com
7cc3cd1861 Minor cleanup.
git-svn-id: svn://10.0.0.236/trunk@54264 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 07:05:53 +00:00
warren%netscape.com
f966e3dacd Pedantic change to macro.
git-svn-id: svn://10.0.0.236/trunk@54263 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 07:03:04 +00:00
warren%netscape.com
0257ba25ee Added code to aggressively clean up file transport on failure.
git-svn-id: svn://10.0.0.236/trunk@54262 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 07:01:56 +00:00
briano%netscape.com
d6e9e1b9ad Automated update
git-svn-id: svn://10.0.0.236/trunk@54261 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 06:45:09 +00:00
cls%seawood.org
8c143b9f1d Forgot the "test" keyword on the final elif. Bug #19626
git-svn-id: svn://10.0.0.236/trunk@54260 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 06:35:43 +00:00
cls%seawood.org
580f31aa92 Added support for neutrino target to configure.in. Patch submitted by Jerry L. Kirk <Jerry.Kirk@Nexwarecorp.com>.
Split AR_FLAGS from AR for platforms that don't use the common syntax.


git-svn-id: svn://10.0.0.236/trunk@54259 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 06:23:52 +00:00
rbs%maths.uq.edu.au
198220fee0 Consolidation of the code and efficient trimming of msqrt by delagating a big chunk of the reflow operation to the base class.
git-svn-id: svn://10.0.0.236/trunk@54258 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 06:04:02 +00:00
scc%netscape.com
b27b4320eb Added |do_GetService| of a specific service manager as opposed to the global one. Fixed the appropriate macro accordingly. Please note: travis will be supporting this change until I'm back online in Michigan. r=dp.
git-svn-id: svn://10.0.0.236/trunk@54257 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 05:55:33 +00:00
scc%netscape.com
50681e94de added macros preparing us to move to table-driven QI. Please note: travis will be supporting any problems with this checkin till I'm back online in Michigan. r=tbogard
git-svn-id: svn://10.0.0.236/trunk@54256 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 05:55:31 +00:00
rjc%netscape.com
8d33404471 One less loop (figured out what was preventing this).
git-svn-id: svn://10.0.0.236/trunk@54255 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 05:37:33 +00:00
rjc%netscape.com
555f303d71 Get rid of a warning.
git-svn-id: svn://10.0.0.236/trunk@54254 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 04:47:38 +00:00
rjc%netscape.com
c10829cb59 Get rid of another signed/unsigned warning.
git-svn-id: svn://10.0.0.236/trunk@54253 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 04:44:52 +00:00
rjc%netscape.com
75ef977af7 Get rid of a signed/unsigned warning.
git-svn-id: svn://10.0.0.236/trunk@54252 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 04:43:01 +00:00
rjc%netscape.com
632f1cacc1 Speed up sorting by reducing the # of times we loop over the list of nodes. Now, we loop over once to build up a flat array of nodes [qsort needs a flat array] and remove them from the content model, then we sort, then we loop again to re-add the now-sorted nodes, and finally we loop to check if any of the nodes is a container with children such that we need to recursively sort on it. [Note: I tried to combine the final two loops but the tree widget didn't like that. Oh well... its still a lot better than before.]
git-svn-id: svn://10.0.0.236/trunk@54251 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 04:39:29 +00:00
scc%netscape.com
3ed13a724b fixed up to match recent changes made to weak references. r=tbogard
git-svn-id: svn://10.0.0.236/trunk@54250 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:30:06 +00:00
sfraser%netscape.com
d121ce38a0 #ifdef out all the stupid printfs. r=pinkerton, no bug.
git-svn-id: svn://10.0.0.236/trunk@54249 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:26:56 +00:00
ssu%netscape.com
6aca798337 fixing bug #19597. Fixed the warning of insufficient disk space error message to show the correct disk space required/available. r=dveditz
git-svn-id: svn://10.0.0.236/trunk@54248 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:21:43 +00:00
scc%netscape.com
7ca94fb86d Added the file "nsIInterfaceRequestor.cpp" to the project. Contents currently |#if|d out. Travis will add this file to the other builds, and then enable. This adds |do_GetInterface| functionality. r=tbogard.
git-svn-id: svn://10.0.0.236/trunk@54247 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:14:42 +00:00
scc%netscape.com
7d6855108a commented out, so it could be added to the project. Travis will uncomment it when he adds it to the windows and unix builds. r=tbogard
git-svn-id: svn://10.0.0.236/trunk@54246 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:13:05 +00:00
scc%netscape.com
43dcf964eb don't ASSERT that it doesn't support weak references for NULL. r=pinkerton
git-svn-id: svn://10.0.0.236/trunk@54245 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:10:02 +00:00
rickg%netscape.com
ac4f0092a0 fixed bug18312; this isn't PDT+, but is something that Phil has been *really* anxious to have fixed. r=nisheeth
git-svn-id: svn://10.0.0.236/trunk@54244 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:09:12 +00:00
rickg%netscape.com
7301979853 fixed bug 18312; it's not PDT+, but it's something Phil has been *really* anxious to fix. r=nisheeth
git-svn-id: svn://10.0.0.236/trunk@54243 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:07:09 +00:00
saari%netscape.com
e7d7a8170e Popup menu positioning code. R: Hyatt
git-svn-id: svn://10.0.0.236/trunk@54242 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 03:02:01 +00:00
scc%netscape.com
876498d1eb First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54241 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 02:50:17 +00:00
rjc%netscape.com
3be3d684c2 When sorting, only set found="true" attribute if not a natural order sort.
git-svn-id: svn://10.0.0.236/trunk@54240 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 02:27:03 +00:00
nisheeth%netscape.com
4d096639bc r=karnaze. Fix for bug 18367. We set the primary frame for table rows to be the row frame for all cases now. Earlier, the anonymous table row group frame was getting set as the primary frame of rows inserted from script.
git-svn-id: svn://10.0.0.236/trunk@54239 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 02:06:39 +00:00
dougt%netscape.com
4003fcee5e removing protocol icon stuff.
git-svn-id: svn://10.0.0.236/trunk@54238 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:55:59 +00:00
matt%netscape.com
24976b0b18 14846 r-self
git-svn-id: svn://10.0.0.236/trunk@54237 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:55:13 +00:00
dougt%netscape.com
23b89f19c9 Removing protocol icon.
git-svn-id: svn://10.0.0.236/trunk@54236 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:52:36 +00:00
rjc%netscape.com
e1871db87e Set some sorting hints on the root of the tree (allows for faster insertion sort, due to not having to look around for treecol tags; also makes it pretty easy for drag&drop code to determine if a sort is currently being imposed.)
git-svn-id: svn://10.0.0.236/trunk@54235 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:51:46 +00:00
waterson%netscape.com
8085996e7f Bug 19421. Brendan's fixes for brutal sharing of script, plus a 'placeholder channel' that ensures we don't fire the EndDocumentLoad() before the prototype walk completes. r=brendan
git-svn-id: svn://10.0.0.236/trunk@54234 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:44:51 +00:00
nhotta%netscape.com
c0d856f5bb Added error checking (result code and null pointer), bug 19469, r=ftang.
git-svn-id: svn://10.0.0.236/trunk@54233 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:21:32 +00:00
pierre%netscape.com
cb816ff88c 8862 "listStyleImage not directly updated". Changing the className causes recreation of frames for the element. Suggested although not formally reviewed by vidur.
git-svn-id: svn://10.0.0.236/trunk@54232 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:08:44 +00:00
pierre%netscape.com
5814ba61a0 18285: crash on infoworld. When we append a change to the ChangeList, make sure we return its hint, especially if it's a HINT_REFLOW because the reflow may delete some frames that are referred to elsewhere in the ChangeList. r=troy.
git-svn-id: svn://10.0.0.236/trunk@54231 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:08:20 +00:00
pierre%netscape.com
47b0c08a9f 12520 "GFX select elements need to be able to turn off text". Changed nsFrame::DisplaySelection to use the parent's mUserSelect similarly to what we do with mCursor in nsFrame::GetCursor. r=mjudge.
git-svn-id: svn://10.0.0.236/trunk@54230 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:07:56 +00:00
mcafee%netscape.com
988eaa952c These files got checked in with win32 EOL characters, re-checking these in. r=radha,akkana
git-svn-id: svn://10.0.0.236/trunk@54229 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:07:29 +00:00
pierre%netscape.com
4a74358841 12737: removed the 'moz-fixed' NavQuirk
git-svn-id: svn://10.0.0.236/trunk@54228 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:07:26 +00:00
pierre%netscape.com
35f41f6a1d 12520/12521 "GFX select elements need to be able to turn off text" turn off user selection inside the drop-down list. r=mjudge.
git-svn-id: svn://10.0.0.236/trunk@54227 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:05:45 +00:00
rjc%netscape.com
d0aa909e23 Add support for sorting in-between separators. Restoring all bookmark columns (per marketing).
git-svn-id: svn://10.0.0.236/trunk@54226 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:03:30 +00:00
rjc%netscape.com
ecb5a962fe Better handling of natural order calculation on RDF sequences; add support for sorting in-between separators.
git-svn-id: svn://10.0.0.236/trunk@54225 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:02:55 +00:00
jband%netscape.com
170ebb1f69 fixup the exported api declarations to use JS_PUBLIC_API in a consistent fashion r=mccabe
git-svn-id: svn://10.0.0.236/trunk@54224 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 01:02:28 +00:00
rpotts%netscape.com
818496052b Added a missing Release to prevent leaking a SupportsArrayEnumerator...
git-svn-id: svn://10.0.0.236/trunk@54223 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 00:59:41 +00:00
erik%netscape.com
593974c3ba bug 8801; new font enumerator for GTK for font prefs UI; r=ftang
git-svn-id: svn://10.0.0.236/trunk@54222 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 00:43:41 +00:00
jj%netscape.com
bc14f0eb17 #19568: fixed app name (was missing from distribution)
git-svn-id: svn://10.0.0.236/trunk@54221 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 00:30:12 +00:00
erik%netscape.com
8fee3c22cb bug 8801; better error handling for new font enumerator; r=ftang
git-svn-id: svn://10.0.0.236/trunk@54220 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 00:12:36 +00:00
larryh%netscape.com
f040981a26 BugZilla: 19247. Add support for FreeBSD
git-svn-id: svn://10.0.0.236/trunk@54219 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-23 00:04:15 +00:00
matt%netscape.com
894f79e85e fix for bug 683 typo
git-svn-id: svn://10.0.0.236/trunk@54218 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:58:05 +00:00
matt%netscape.com
f96381c532 adding ' for bug 6830..typo
git-svn-id: svn://10.0.0.236/trunk@54217 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:56:22 +00:00
ducarroz%netscape.com
b60563f9ec Fix for bug 19404. We need to return an error code when the SMTP server name is missing. R=mscott
git-svn-id: svn://10.0.0.236/trunk@54216 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:48:42 +00:00
norris%netscape.com
4e4fe42d78 Fix test failures:
ecma_2/Exceptions/expression-020.js
js1_4/Regress/date-001-n.js
js1_4/Regress/toString-001-n.js


git-svn-id: svn://10.0.0.236/trunk@54214 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:48:06 +00:00
sfraser%netscape.com
1d2a704d20 Include stdio.h using system paths, not user paths. r=syd,akk, shaver. no bug (so bite me)
git-svn-id: svn://10.0.0.236/trunk@54213 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:46:30 +00:00
matt%netscape.com
2e0d493a20 adding offline prefs default for the prefs -r dp
git-svn-id: svn://10.0.0.236/trunk@54212 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:44:54 +00:00
mscott%netscape.com
37207fe11e Bug #1966 --> properly ref count the url listeners for send and post
this means never calling delete directly on the objects like
we were before. A nsCAutoString tweak...
r=rhp


git-svn-id: svn://10.0.0.236/trunk@54211 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:33:24 +00:00
mscott%netscape.com
5846246979 Bug #1966 --> be safe...when you get an OnStopRunningUrl,
remove yourself as a url listener because you don't care anymore.
r=rhp


git-svn-id: svn://10.0.0.236/trunk@54210 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:32:48 +00:00
mscott%netscape.com
917a5230d6 Bug #19166 --> pull a 180 and reverse the ref counting
model for url listeners. The manager now uses an
nsIsupportsArray to keep references to all of the url listeners.
However, in order to prevent circular references (which is
why I was using a nsVoidArray before), when we issue the on stop
call to a url listener, we automatically release our ref
to that object.
r=rhp


git-svn-id: svn://10.0.0.236/trunk@54209 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:32:13 +00:00
rginda%netscape.com
61f33305f8 Return exitcode 3 on runtime errors, and 4 on 'file not found's; added to js and xpc shell,
r=jband


git-svn-id: svn://10.0.0.236/trunk@54208 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:28:58 +00:00
law%netscape.com
cfd4928f35 Fix for 14634; use fileSpec.nativePath rather than raw file: URL; r=matt@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54207 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:15:02 +00:00
varada%netscape.com
89731ecc00 third party components fix for bug#7173
git-svn-id: svn://10.0.0.236/trunk@54206 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:11:38 +00:00
scc%netscape.com
4d5f66b2ed needs |NS_EXPORT| ... still not turned on
git-svn-id: svn://10.0.0.236/trunk@54205 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:11:15 +00:00
scc%netscape.com
9815e50527 Added |do_GetInterface| (not turned on yet). This will be turned on when we add a file for the implementation. r=tbogard
git-svn-id: svn://10.0.0.236/trunk@54204 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:09:05 +00:00
law%netscape.com
2422c0617b Fix for 18763; submitted by Steve Morrison (smorrison@gte.com); r=law@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54203 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:04:34 +00:00
scc%netscape.com
7011fe7fc1 clear out the result in |do_CreateInstance| on error. r=pinkerton
git-svn-id: svn://10.0.0.236/trunk@54202 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:01:35 +00:00
ssu%netscape.com
cbc140cc8e fixed the title bar of the Progress dialog during installation of files to
show which component it's currently processing.

also added a new key to parse in the config.ini to help fix bug #19391.

All these changes only affect windows platorms

r=dbragg


git-svn-id: svn://10.0.0.236/trunk@54199 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 23:00:21 +00:00
davidm%netscape.com
744ee56b12 Added
nsISHEntry.idl 
nsISHContainer.idl 
nsISHTransaction.idl 
 and
nsSHEntry.cpp 
nsSHTransaction.cpp 
for radha@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54198 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:59:34 +00:00
scc%netscape.com
ba8f7bc4e6 clear out result in |do_QueryReferent| on error; assert in |NS_GetWeakReference| if the source object doesn't support weak references; also return NS_ERROR_NO_INTERFACE in release builds. r=pinkerton
git-svn-id: svn://10.0.0.236/trunk@54197 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:59:21 +00:00
ssu%netscape.com
499fce381e added new error ID and exposed it to the Install object in javascript. This is part of fixing bug #18704. r=dbragg
git-svn-id: svn://10.0.0.236/trunk@54196 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:57:13 +00:00
kmcclusk%netscape.com
eac0eb7881 Applied patch for improving event dispatching on WIN32. bug=17881. r=rods@netscape.com,michael.lowe@bigfoot.com
git-svn-id: svn://10.0.0.236/trunk@54195 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:51:39 +00:00
ssu%netscape.com
24b5372b33 fixing bugs #19391 and #18704. The .xpi files now check for errors and
disk space availability before installation begins.

It also copies npjava*.dll from wherever JRE is to its Plugins folder.

Affects only Windows platforms, but not part of tinderbox.
r=dbragg


git-svn-id: svn://10.0.0.236/trunk@54193 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:50:30 +00:00
radha%netscape.com
5c61905f0e Initial checkin for new SessionHistory component
git-svn-id: svn://10.0.0.236/trunk@54192 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:49:01 +00:00
radha%netscape.com
32e419cc84 IDL files for new SessionHistory component.Initial checkin
git-svn-id: svn://10.0.0.236/trunk@54191 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:47:09 +00:00
ssu%netscape.com
89257ed01f initial checkin. not part of tinderbox. r=dbragg
git-svn-id: svn://10.0.0.236/trunk@54190 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:45:50 +00:00
waterson%netscape.com
a51e13d781 Add nsIRDFDelegateFactory.idl to Mac build.
git-svn-id: svn://10.0.0.236/trunk@54189 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:35:58 +00:00
dp%netscape.com
963f1afd0a Adding support for MOZ_CVS_FLAGS (useful for specifying -z3) r=leaf
git-svn-id: svn://10.0.0.236/trunk@54188 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:33:40 +00:00
pinkerton%netscape.com
94e760238a add new layout idl stuff for travis.
git-svn-id: svn://10.0.0.236/trunk@54187 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:33:17 +00:00
waterson%netscape.com
e0baec67b1 Add nsIRDFDelegateFactory to Win32 and Unix builds.
git-svn-id: svn://10.0.0.236/trunk@54186 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:33:11 +00:00
dveditz%netscape.com
ad383a25e0 Bug 19566 preventing PSM install. r=ssu
git-svn-id: svn://10.0.0.236/trunk@54185 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:32:40 +00:00
waterson%netscape.com
0b0b1920dc Initial revision. Not yet in the build.
git-svn-id: svn://10.0.0.236/trunk@54184 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:32:27 +00:00
pinkerton%netscape.com
b7ff04918d First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54183 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:30:12 +00:00
pinkerton%netscape.com
ab7e02511c First Checked In.
git-svn-id: svn://10.0.0.236/trunk@54182 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:23:08 +00:00
alecf%netscape.com
b74f2a54b5 update xterm-titler to only show the relative directory
r=leaf


git-svn-id: svn://10.0.0.236/trunk@54181 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:21:07 +00:00
akhil.arora%sun.com
ddcef18796 r=akhil.arora@sun.com fix=Denis Sharypov <sdv@sparc.spb.su>
Added some new tests.


git-svn-id: svn://10.0.0.236/trunk@54180 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:10:44 +00:00
putterman%netscape.com
962c93df68 Work on making folder pane look like spec. Fixes 17841. Reviewed by alecf.
git-svn-id: svn://10.0.0.236/trunk@54179 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:08:23 +00:00
akhil.arora%sun.com
4de6bf5f15 19304 r=akhil.arora@sun.com fix=Denis Sharypov <sdv@sparc.spb.su>
Forgot to commit these two files that are part of the conversion to an
  xpcom module.


git-svn-id: svn://10.0.0.236/trunk@54178 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:06:46 +00:00
akhil.arora%sun.com
7b0173cd92 19305 r=akhil.arora fix=Denis Sharypov <sdv@sparc.spb.su>
Use QI to check for nsIWebShell before casting. Safer.


git-svn-id: svn://10.0.0.236/trunk@54177 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:05:31 +00:00
rods%netscape.com
14ecc50063 Added NavQuirks sizing for input button
git-svn-id: svn://10.0.0.236/trunk@54176 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:04:53 +00:00
rods%netscape.com
3593d7e84c Added NavQuirks sizing for buttons and hidden
git-svn-id: svn://10.0.0.236/trunk@54175 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:03:35 +00:00
rods%netscape.com
9a199b5e98 Added the correct fonts for submit,reset, input button.
set box-sizing for HTML 4 buttons
Set font in psuedo element for the input text
r=kmcclusk bug b=11285


git-svn-id: svn://10.0.0.236/trunk@54174 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:02:19 +00:00
akhil.arora%sun.com
b2ac9c284d 19578 r=akhil.arora@sun.com fix=Denis Sharypov <sdv@sparc.spb.su>
Defer deleting the current element until the next iteration so that we can
  dereference the element first to get to the next element.


git-svn-id: svn://10.0.0.236/trunk@54173 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 22:01:23 +00:00
cls%seawood.org
2606d77b9d Check for pthread symbols in libc if the checks in libpthread & libc_r fail.
Fix typo in MOZ_OPTIMIZE check.


git-svn-id: svn://10.0.0.236/trunk@54172 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:59:08 +00:00
rhp%netscape.com
a280eab275 Fixing include problem..but this is NOT PART OF THE BUILD. - r: rhp
git-svn-id: svn://10.0.0.236/trunk@54171 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:47:24 +00:00
radha%netscape.com
515178a55d Fix for regressed bug #, 15441. Back/Forward to anchors erratic. r=nisheeth
git-svn-id: svn://10.0.0.236/trunk@54170 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:42:00 +00:00
jdunn%netscape.com
c2d530c6a9 Link against superwin even if monolithic
r=pepper@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54169 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:35:33 +00:00
kmcclusk%netscape.com
5461495672 Changed misspelled vertial-align to vertical-align for input[type=image]. bug=16370. r=rods@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54168 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:32:22 +00:00
nhotta%netscape.com
76bc7542e3 Change to charset name to case sensitive corresponding the nsCharsetManagerService change, r=ftang.
git-svn-id: svn://10.0.0.236/trunk@54167 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:22:58 +00:00
kmcclusk%netscape.com
b383e76259 Removed build warning in nsCornerView::Paint on Linux by overriding both overloaded Paints. r=buster@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54166 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:11:46 +00:00
dp%netscape.com
d60d874245 - Converting to nsGenericModule
- Removed exported NS_New*()
- Using NS_IMPL_ISUPPORTS[0-9]
r=akkanna@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54165 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 21:03:04 +00:00
waterson%netscape.com
07a5141e0d Tweak for chrome registry: don't hard-fail if stream cannot be opened. Allows creation of new RDF/XML datasources. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54164 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 20:53:09 +00:00
rickg%netscape.com
3be554e7b5 fixed PDT+ bug 3118; r=dcone
git-svn-id: svn://10.0.0.236/trunk@54163 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 20:12:21 +00:00
matt%netscape.com
4bf1438d37 Fix for save as bug 15805
git-svn-id: svn://10.0.0.236/trunk@54162 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:55:47 +00:00
joki%netscape.com
1c8e0c82bf Fix for 17683, add key events for alt+numpad character generation. r:vidur
git-svn-id: svn://10.0.0.236/trunk@54161 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:45:13 +00:00
erik%netscape.com
194286b793 bug 8801; register new font enumerator for font prefs UI; r=ftang
git-svn-id: svn://10.0.0.236/trunk@54160 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:40:00 +00:00
joki%netscape.com
ee323bff2a Add initialization of named Event class to script. part of fix for 9544. r:vidur
git-svn-id: svn://10.0.0.236/trunk@54159 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:39:55 +00:00
erik%netscape.com
f23933cd51 bug 8801; new font enumerator for font prefs UI; r=ftang
git-svn-id: svn://10.0.0.236/trunk@54158 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:39:13 +00:00
norris%netscape.com
f6b5e55922 Fix
Testcase ecma_2/Exceptions/expression-020.js failed
Failure messages were:
result = this.eval("NaN") (threw No exception thrown) = NaN FAILED! expected: Passed


git-svn-id: svn://10.0.0.236/trunk@54157 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:35:59 +00:00
norris%netscape.com
c792dc00f2 'thisArg' could be null, so use 'fun' for scope.
git-svn-id: svn://10.0.0.236/trunk@54156 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:35:20 +00:00
erik%netscape.com
71f8c3d7c7 bug 8801; CID for new font enumerator for font prefs UI; r=ftang
git-svn-id: svn://10.0.0.236/trunk@54155 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:34:31 +00:00
jdunn%netscape.com
a81f697336 Adding newline which is required by HPUX
git-svn-id: svn://10.0.0.236/trunk@54154 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:34:18 +00:00
erik%netscape.com
52d4e80c00 bug 8801; new font enumeration API for font prefs UI; r=ftang
git-svn-id: svn://10.0.0.236/trunk@54153 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:33:25 +00:00
cls%seawood.org
d8260be26b Do immediate evaluations instead of the default deferred. (And also cause coffee to rebuild in that directory.)
git-svn-id: svn://10.0.0.236/trunk@54152 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 19:28:30 +00:00
cls%seawood.org
0d66b135a6 Previous checkin was incomplete.
Changed the debug/optimize setup to mimic the Mozilla setup.
Updated the irix target_os section to use the same logic as IRIX.mk in order to fix bug #18966.
Fixed call of whoami inside configure.
Added mode & license headers.
Added the following options:
    --enable-optimize
    --enable-n32 (IRIX only)
    --enable-64bit
    --enable-mdupdate


git-svn-id: svn://10.0.0.236/trunk@54151 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 15:40:10 +00:00
briano%netscape.com
1342afdcf1 Automated update
git-svn-id: svn://10.0.0.236/trunk@54150 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 15:30:40 +00:00
cls%seawood.org
241f3941de Made the handling of the debug/optimize flags to match the Mozilla configure.in setup.
Updated the irix target section to contain the exact logic contained in IRIX.mk in an effort to fix bug 18966.
Added the following options:
   --enable-optimize
   --enable-mdupdate
   --enable-n32 (IRIX only)
   --enable-64bit


git-svn-id: svn://10.0.0.236/trunk@54149 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 15:24:12 +00:00
cls%seawood.org
5d17ecc875 FreeBSD should not use monolithic toolkit by default. Patch submitted by Pascal Hofstee <daeron@shadowmere.student.utwente.nl>.
git-svn-id: svn://10.0.0.236/trunk@54148 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 15:16:34 +00:00
cmanske%netscape.com
282c805eb7 Fixed bug 19000: Assertion editing remote file. Fixed warning. r=sfraser
git-svn-id: svn://10.0.0.236/trunk@54147 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 14:52:21 +00:00
jefft%netscape.com
3f987fbd74 fixed Mac compilation warnings; rv=binenvenu; remove obsoleted private method, AddSubfolder
git-svn-id: svn://10.0.0.236/trunk@54146 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 14:43:19 +00:00
jefft%netscape.com
1d825e8ba7 fixed bug 8889 - cannot post messages with attachments to the news server; rv=mscott; Added base PostMessage() method to remove duplicate code in smtp and nntp protocol
git-svn-id: svn://10.0.0.236/trunk@54145 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 14:41:20 +00:00
neeti%netscape.com
7391eeab16 bug 15821. r=sfraser. Fixed memory leaks in ImageRequestImpl.
git-svn-id: svn://10.0.0.236/trunk@54144 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 14:27:04 +00:00
rbs%maths.uq.edu.au
153548e1c9 Code to render the mroot tag.
git-svn-id: svn://10.0.0.236/trunk@54143 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 12:35:36 +00:00
dveditz%netscape.com
e6ffa26b48 first hack to get relative URLS working in triggers
git-svn-id: svn://10.0.0.236/trunk@54142 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 12:01:19 +00:00
tbogard%aol.net
30f925a33d A couple of comment tweaks.
git-svn-id: svn://10.0.0.236/trunk@54141 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 10:07:10 +00:00
rjc%netscape.com
8fd2d84fa4 Fix bug # 19306. Update Google dataset. Review=me
git-svn-id: svn://10.0.0.236/trunk@54140 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 09:01:59 +00:00
rbs%maths.uq.edu.au
df494570af Added a control statement to avoid doing work that will lead nowhere.
git-svn-id: svn://10.0.0.236/trunk@54139 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:42:20 +00:00
dveditz%netscape.com
f46e700a28 x86 win should join unix and alpha win part of DBG_LOG macro
git-svn-id: svn://10.0.0.236/trunk@54138 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:41:04 +00:00
briano%netscape.com
28a8c8cb2e Automated update
git-svn-id: svn://10.0.0.236/trunk@54137 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:30:19 +00:00
rbs%maths.uq.edu.au
4d4133db17 Added a control statement to avoid doing work that will lead nowhere.
git-svn-id: svn://10.0.0.236/trunk@54136 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:20:50 +00:00
cls%seawood.org
120e5dab7b We don't need to recalculate the OS_* variables each time make is invoked so move them into configure.in so that they are set only once.
git-svn-id: svn://10.0.0.236/trunk@54135 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:15:46 +00:00
tbogard%aol.net
4a5e0b9a0e Adding nsIChromeEventHandler.idl to the build. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54134 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:03:54 +00:00
tbogard%aol.net
147f733168 First check-in.... Defining nsIChromeEventHandler interface for use to make the mChromeElement event firing generic. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@54133 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 08:02:28 +00:00
rpotts%netscape.com
8842c9b930 fix build bustage - unix compilers are dumb as bricks!
git-svn-id: svn://10.0.0.236/trunk@54132 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 07:09:59 +00:00
rpotts%netscape.com
6a7984adfe bug #19303. HTTPHeader entries were leaking... I checked in a modified version of beards patch.
git-svn-id: svn://10.0.0.236/trunk@54131 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 07:02:44 +00:00
rpotts%netscape.com
601e0eba5e fix build bustage - NS_NewLoadGroup(...) no longer takes a parent load group as an argument...
git-svn-id: svn://10.0.0.236/trunk@54130 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 06:20:51 +00:00
rickg%netscape.com
4cacfb312f landing updates for harish, and residual style WIP; r=rickg
git-svn-id: svn://10.0.0.236/trunk@54129 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 06:18:24 +00:00
rickg%netscape.com
d5114737fd landing update for harishd r=rickg
git-svn-id: svn://10.0.0.236/trunk@54128 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 06:16:25 +00:00
rpotts%netscape.com
0ba3dca017 fixes to make the web crawler work when sites which have meta-refresh tags are encountered...
git-svn-id: svn://10.0.0.236/trunk@54127 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 05:47:26 +00:00
jband%netscape.com
57e7c4d781 removing the .cvsignore file in an abandoned directory so that using -P with cvs will trim the thing out of a tree
git-svn-id: svn://10.0.0.236/trunk@54126 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 05:46:56 +00:00
rpotts%netscape.com
bf7832c37a bug #15342 and #15560. Refactored the LoadGroup and DocumentLoader...
git-svn-id: svn://10.0.0.236/trunk@54125 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 05:46:03 +00:00
ramiro%fateware.com
2ab3181220 Take myself out of the debug code, since it has broken since I last looked
at it.


git-svn-id: svn://10.0.0.236/trunk@54124 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 05:03:48 +00:00
rbs%maths.uq.edu.au
96fead56f4 Catch up with recent changes in layout.
git-svn-id: svn://10.0.0.236/trunk@54123 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 03:29:14 +00:00
leaf%mozilla.org
d12a03afb2 checkin to fix build bustage.
git-svn-id: svn://10.0.0.236/trunk@54122 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 01:08:36 +00:00
nisheeth%netscape.com
f03cdb6370 Fix for bug 17937. nsHTMLEditor::DeleteSelectionAndCreateNode() wasn't addref'ing an out parameter. r=sfraser.
git-svn-id: svn://10.0.0.236/trunk@54121 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-22 00:01:18 +00:00
rbs%maths.uq.edu.au
895e006577 Now make mroot part of the mathml build.
git-svn-id: svn://10.0.0.236/trunk@54120 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 22:27:21 +00:00
rbs%maths.uq.edu.au
595ba7a05b Code to support the mfenced tag.
git-svn-id: svn://10.0.0.236/trunk@54119 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 22:16:47 +00:00
rbs%maths.uq.edu.au
c2064b42a2 Minor cleanup and Fixed a regression introduced by the consolidation of the code in nsMathMLChar.
git-svn-id: svn://10.0.0.236/trunk@54118 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 22:15:17 +00:00
rbs%maths.uq.edu.au
f4bb014558 Consolidation of the code. Stretchy painting in horizontal direction and vertical direction and now treated with separate functions, yielding to improved readability.
git-svn-id: svn://10.0.0.236/trunk@54117 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 22:10:45 +00:00
rbs%maths.uq.edu.au
2d835e7e47 Added factory function for the mroot tag and did a minor clean up
git-svn-id: svn://10.0.0.236/trunk@54116 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 22:05:15 +00:00
rbs%maths.uq.edu.au
5753b4d3a0 Add hook for the mroot tag in the confined MathML world
git-svn-id: svn://10.0.0.236/trunk@54115 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 22:01:56 +00:00
rbs%maths.uq.edu.au
87f68d993c Added three atoms: open, close, separators. These are the attributes of mfenced
git-svn-id: svn://10.0.0.236/trunk@54114 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 21:37:25 +00:00
cls%seawood.org
3826889094 When cross-compiling, we want to use the header generated from NSPR defines.
git-svn-id: svn://10.0.0.236/trunk@54113 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 16:06:53 +00:00
fur%netscape.com
897d69d466 In support of bug #8305 (Implement cache)
Replaced WriteStringZ()/ReadStringZ() stubs with trivial implementations.
Simplified existing code. r: none


git-svn-id: svn://10.0.0.236/trunk@54112 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 08:01:08 +00:00
fur%netscape.com
82f02c752b Fixed indentation
git-svn-id: svn://10.0.0.236/trunk@54111 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 07:58:53 +00:00
dveditz%netscape.com
23f42fcb05 mac build bustage
git-svn-id: svn://10.0.0.236/trunk@54110 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 07:55:18 +00:00
dp%netscape.com
f5450155e1 Removing unused factory implementations
git-svn-id: svn://10.0.0.236/trunk@54106 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 06:44:34 +00:00
dveditz%netscape.com
fca312892f added files: mozilla/xpinstall/src/nsJSFileSpecObj.cpp
git-svn-id: svn://10.0.0.236/trunk@54105 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 06:06:37 +00:00
dveditz%netscape.com
f9d42c747f comment fix
git-svn-id: svn://10.0.0.236/trunk@54104 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 06:05:22 +00:00
dveditz%netscape.com
70cb614dd9 Checkin for dbragg, Bug 16214 make "folder" params objects rather than path strings, r=dveditz.
Bug 17509 add BLOATY instrumentation to XPInstall. A couple of minor leak fixes


git-svn-id: svn://10.0.0.236/trunk@54103 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 06:03:23 +00:00
dp%netscape.com
44d8849387 - Converting to nsGenericModule and nsGenericFactory
- Using NS_IMPL_ISUPPORTS[0-9]
- Removing exported NS_New*() functions
- Moving the implementation definitions to their headers
r=morse@Netscape.com


git-svn-id: svn://10.0.0.236/trunk@54102 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 05:29:16 +00:00
dp%netscape.com
06c62c95a3 First version. Implementation header of Wallet Viewer.
git-svn-id: svn://10.0.0.236/trunk@54101 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 05:17:41 +00:00
dp%netscape.com
5399e1ccb7 First version. Implementation header of single signon viewer.
git-svn-id: svn://10.0.0.236/trunk@54100 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 05:17:16 +00:00
dp%netscape.com
4914f9d8e4 First version. Implementation header of wallet editor.
git-svn-id: svn://10.0.0.236/trunk@54099 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 05:16:45 +00:00
dp%netscape.com
1f624e8f04 First version. Header of Cookie Viewer implementation.
git-svn-id: svn://10.0.0.236/trunk@54098 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 05:15:46 +00:00
troy%netscape.com
44bfa2d248 b=19280. Changed DeletingFrameSubtree() so it's order N instead of
N^2/2 in the worst case. This speeds things way up. Note that the real
problem here is that WipeContainingBlock() is repeatedly throwing away
and recreating the BODY element's frame and all its child frames


git-svn-id: svn://10.0.0.236/trunk@54092 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 04:06:44 +00:00
dp%netscape.com
01cb613ac1 - Converting to GenericModule
- Using NS_IMPL_ISUPPORTS[0-9]
- Removing unused NS_DEFINE_CID/IID
- Removing NS_New exports
r=morse@Netscape.com


git-svn-id: svn://10.0.0.236/trunk@54091 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 03:43:55 +00:00
bryner%uiuc.edu
5e76628a60 These changes will enable scrolling with the mouse wheel (currently only
for unix).  r=saari.


git-svn-id: svn://10.0.0.236/trunk@54090 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 01:46:41 +00:00
dveditz%netscape.com
4d3ad643b8 adding new files from dbragg, r=dveditz, not yet part of build
git-svn-id: svn://10.0.0.236/trunk@54089 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 01:24:18 +00:00
beard%netscape.com
36de2be344 [MLK] aCurrentStyle can be the only owning reference. r=scc, bug=15906
git-svn-id: svn://10.0.0.236/trunk@54088 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 01:14:33 +00:00
beard%netscape.com
7d57dfba18 bug 15906, to make blame happy, fixed case of "GIF.CPP" to "gif.cpp". r=saari.
git-svn-id: svn://10.0.0.236/trunk@54087 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 01:10:30 +00:00
bryner%uiuc.edu
70728b9425 Tree changes to support mousewheel scrolling, and some other tree
changes (scrolling changes and some nsString -> nsAutoString
conversions) from alecf.  r=alecf.


git-svn-id: svn://10.0.0.236/trunk@54086 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-21 00:51:31 +00:00
cls%seawood.org
e39ea41859 Removed listing of win32 Makefile I accidentally checked in.
git-svn-id: svn://10.0.0.236/trunk@54085 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 23:48:14 +00:00
valeski%netscape.com
a9e59ceb15 fixing build bustage
git-svn-id: svn://10.0.0.236/trunk@54084 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 23:23:59 +00:00
idk%eng.sun.com
440dcafbf3 19465
Port pluglets to linux and Solaris
(This is not part of the build)
Oups. I fogot to add this file


git-svn-id: svn://10.0.0.236/trunk@54083 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 23:20:27 +00:00
idk%eng.sun.com
c76f9909a2 19465
Port pluglets to linux and Solaris
(This is not part of the build)


git-svn-id: svn://10.0.0.236/trunk@54082 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 23:19:40 +00:00
jj%netscape.com
fc62ea3678 #13663: output names now have a capital M: "Mozilla" and "MozillaDebug"
git-svn-id: svn://10.0.0.236/trunk@54081 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 22:50:21 +00:00
beard%netscape.com
6c9ae2df08 implements InvalidateRegion(). r=kmcclusk
git-svn-id: svn://10.0.0.236/trunk@54080 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 22:33:42 +00:00
valeski%netscape.com
763bf1361e 6144, I'm checking in gagan's code for him as he's gone. r=valeski, r=gagan :). This checkin drops in HTTP authentication caching so you don't get hit w/ multiple auth dialogs when accessing auth requiring sites that have images in their html
git-svn-id: svn://10.0.0.236/trunk@54079 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 22:11:15 +00:00
sfraser%netscape.com
b31731e4ce Added nsAuthEngine.cpp for valeski
git-svn-id: svn://10.0.0.236/trunk@54078 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 22:09:56 +00:00
rhp%netscape.com
25c5428af8 Curing bitrot...THIS IS NOT PART OF THE BUILD.
git-svn-id: svn://10.0.0.236/trunk@54077 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 22:03:19 +00:00
valeski%netscape.com
5edf678070 not in build. updated auth engine
git-svn-id: svn://10.0.0.236/trunk@54076 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 21:46:23 +00:00
wtc%netscape.com
2031562612 Added new file brng.c. (Contributed by Matthew Zahorik and Duncan Wilcox.)
git-svn-id: svn://10.0.0.236/trunk@54075 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 20:38:05 +00:00
dp%netscape.com
22c153fe7b - Convering to GenericModule.
- Removing NS_DEFINE_IID
- Using NS_ISUPPORTS_IMPL1


git-svn-id: svn://10.0.0.236/trunk@54074 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 20:19:01 +00:00
wtc%netscape.com
b52967df83 Ported script to Windows 95.
git-svn-id: svn://10.0.0.236/trunk@54073 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 20:01:24 +00:00
wtc%netscape.com
119fe2bfe8 Changed tab to spaces.
git-svn-id: svn://10.0.0.236/trunk@54072 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 20:00:02 +00:00
wtc%netscape.com
d1e5d22bb2 Removed extra blank line.
git-svn-id: svn://10.0.0.236/trunk@54071 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 19:59:31 +00:00
duncan%be.com
ea96df6f46 Clone nsFileSpec::Truncate from nsFileSpecUnix.cpp, r=shaver.
git-svn-id: svn://10.0.0.236/trunk@54070 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 17:57:42 +00:00
briano%netscape.com
561be072fd Automated update
git-svn-id: svn://10.0.0.236/trunk@54069 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 16:30:21 +00:00
duncan%be.com
a940edf149 Try again with fix for BeOS build. This is not the same fix that broke
the Solaris build yestarday, but I'm looking at tinderbox anyway, ready
to back this out if there are build problems.
r=mcafee, r=shaver


git-svn-id: svn://10.0.0.236/trunk@54068 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 16:15:44 +00:00
cls%seawood.org
e1d17a6621 Applied fix to mork for BeOS. Patch submitted by Duncan Wilcox <duncan@be.com>.
git-svn-id: svn://10.0.0.236/trunk@54067 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 11:03:43 +00:00
duncan%be.com
3346a5d069 Make locale work under BeOS (added XP_BEOS next to XP_UNIX). r=nhotta
Make JS timing work under BeOS (added XP_BEOS next to XP_UNIX). r=mcafee
Make nsSigHandlers.cpp build under BeOS (strsignal returns const char *). r=mcafee


git-svn-id: svn://10.0.0.236/trunk@54066 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 10:53:34 +00:00
cls%seawood.org
034597aebe Missing include was causing strncpy to be undefined and we should be using PL_strncpy anyways. Added newline at end of file to get rid of a warning.
git-svn-id: svn://10.0.0.236/trunk@54065 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 10:05:44 +00:00
rjc%netscape.com
c9c6db0307 Better handling of natural order calculate on RDF sequences. Makes drag&drop work fairly well in natural order.
git-svn-id: svn://10.0.0.236/trunk@54064 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 08:46:22 +00:00
rjc%netscape.com
df7ad44038 Check in some preliminary bookmarks drag&drop support.
git-svn-id: svn://10.0.0.236/trunk@54063 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 08:35:39 +00:00
rjc%netscape.com
9779740f37 nsBookmarksService must accept RDF nextVal assertions, otherwise the RDF container utilities can't successfully add/remove items from RDF sequences.
git-svn-id: svn://10.0.0.236/trunk@54062 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 08:34:41 +00:00
scc%netscape.com
de82a95c8c fixed an annoying, but rare, bug where an |nsCOMPtr| in an ownership ring could |Release()| twice. See the comment in the code for details. r=waterson
git-svn-id: svn://10.0.0.236/trunk@54061 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 08:19:24 +00:00
bryner%uiuc.edu
0aaaa64320 Oops, fixing a typo. Sorry about that.
git-svn-id: svn://10.0.0.236/trunk@54060 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 08:12:56 +00:00
dp%netscape.com
405cdd23c8 Removing extra semi-colon
git-svn-id: svn://10.0.0.236/trunk@54059 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 08:04:59 +00:00
rginda%netscape.com
22c7977472 tweaked html output, added test duration time.
git-svn-id: svn://10.0.0.236/trunk@54058 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:50:43 +00:00
dp%netscape.com
f1015223ed Using nsAllocator to match changed Registry allocation. r=shaver
git-svn-id: svn://10.0.0.236/trunk@54057 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:37:32 +00:00
dp%netscape.com
fbd0e803f5 - Converting to GenericModule
- Using NS_IMPL_ISUPPORTS1
- Removing a bunch of NS_DEFINE_IID


git-svn-id: svn://10.0.0.236/trunk@54056 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:34:03 +00:00
dp%netscape.com
5aaa3eaf10 Adding pref classname
git-svn-id: svn://10.0.0.236/trunk@54055 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:33:09 +00:00
norris%netscape.com
47aa81f887 Remove unused file and change makefile to reflect change.
r=mstoltz


git-svn-id: svn://10.0.0.236/trunk@54054 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:30:57 +00:00
warren%netscape.com
7a58577c40 Fixed indentation.
git-svn-id: svn://10.0.0.236/trunk@54053 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:30:26 +00:00
warren%netscape.com
aeadc2d08d Changed ifdefs to this stuff is off for debug builds too.
git-svn-id: svn://10.0.0.236/trunk@54052 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:28:45 +00:00
norris%netscape.com
f77a65d9d4 Modify generated dom code to use a enum rather than a string for codesize
and efficiency.
Tighten checks on document properties and node properties. Should resolve
several bugs:
18965 document.firstChild vulnerability
19043 document.childNodes vulnerability
19044 document.lastChild vulnerability
r=mstoltz


git-svn-id: svn://10.0.0.236/trunk@54051 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:28:34 +00:00
dp%netscape.com
dfd39434e3 Convering to GenericModule.
git-svn-id: svn://10.0.0.236/trunk@54050 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:28:11 +00:00
dp%netscape.com
7790c1ad9c Eliminating leak of factory when getting it from hashtable.
Using NS_IMPL_ISUPPORTS1
Removing NS_DEFINE_IID
r=warren@netscape.com


git-svn-id: svn://10.0.0.236/trunk@54049 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:21:53 +00:00
bryner%uiuc.edu
36947c99bc Adding a new interface that will be used for scrolling tree frames with
the mouse wheel.


git-svn-id: svn://10.0.0.236/trunk@54048 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:16:52 +00:00
dp%netscape.com
540481040b Using COMPtr
git-svn-id: svn://10.0.0.236/trunk@54047 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:16:42 +00:00
waterson%netscape.com
719918611c Bug 16797. Allow files to be 'zero' length. r=warren
git-svn-id: svn://10.0.0.236/trunk@54046 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:15:28 +00:00
dp%netscape.com
aa94e40f1a Using NS_REINTERPERT_CAST instead of NS_STATIC_CAST r=scc@netscape.com
git-svn-id: svn://10.0.0.236/trunk@54045 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:15:23 +00:00
waterson%netscape.com
8b7f58ab3c Bug 12734. Make check for duplicate insertions debug-only. Thanks to zee@northrock.bm
git-svn-id: svn://10.0.0.236/trunk@54044 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:13:25 +00:00
nisheeth%netscape.com
7bb8856626 Don't make the label of a pref an anchor. r=none.
git-svn-id: svn://10.0.0.236/trunk@54043 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 07:11:11 +00:00
sfraser%netscape.com
612e5331ad Workaround for bug 19421 -- no menus on mac. This is a problem with brutal sharing of overlays that waterson needs to fix. For now, turn off brutal sharing of scripts. r=brendan, saari.
git-svn-id: svn://10.0.0.236/trunk@54042 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 06:42:24 +00:00
troy%netscape.com
01e5cb02a3 b=19416. Workaround for problem of combo box drop-down being displayed in
the wrong place sometimes


git-svn-id: svn://10.0.0.236/trunk@54041 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 06:03:16 +00:00
warren%netscape.com
cde014ca66 Added isascii for mac
git-svn-id: svn://10.0.0.236/trunk@54040 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 05:46:04 +00:00
warren%netscape.com
460bc80b0e Fixed include for non-debug builds.
git-svn-id: svn://10.0.0.236/trunk@54039 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 05:27:35 +00:00
rginda%netscape.com
e5529bf0b8 Added javapath, and confail options. Made some trace output come out by default so it isn't so eerily quiet in quiet mode.
git-svn-id: svn://10.0.0.236/trunk@54038 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 05:22:20 +00:00
waldemar%netscape.com
9edbe5b45d Fixed MCL incompatibility
git-svn-id: svn://10.0.0.236/trunk@54037 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 04:34:42 +00:00
warren%netscape.com
eff6e0fd5e Added nsStr (nsString, nsString2) code for counting strings that have been seen. r=rickg
git-svn-id: svn://10.0.0.236/trunk@54036 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 04:22:26 +00:00
jband%netscape.com
f9c524f923 r=fur Conform to the recently changed semantics of nsHashtableEnumerator::IsDone to fix the infinite loop that started happening in the Components.[interfaces,classes,classesByID] enumerators
git-svn-id: svn://10.0.0.236/trunk@54035 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 04:21:58 +00:00
warren%netscape.com
7a8a688789 Fix for bug that triggers assertion in END_READ state of file transport.
git-svn-id: svn://10.0.0.236/trunk@54034 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 04:19:20 +00:00
morse%netscape.com
891ac58db7 Partial fix for bug 18668, unable to login to aka, r=valeski
git-svn-id: svn://10.0.0.236/trunk@54033 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 04:13:21 +00:00
dougt%netscape.com
8c8ca254b1 removing unneeded file.
fixing build bustage.
making simon happy.


git-svn-id: svn://10.0.0.236/trunk@54032 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 04:07:25 +00:00
tbogard%aol.net
915ece3cba Spelling fix for bug #16386.
git-svn-id: svn://10.0.0.236/trunk@54031 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 03:57:34 +00:00
rhp%netscape.com
a92eaad364 Changes for using nsSpecialSystemDirectory directory - Bug #18021 - r: jefft
git-svn-id: svn://10.0.0.236/trunk@54030 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 03:14:13 +00:00
dougt%netscape.com
502cd1efc7 removing task extensions. now using dynamic overlays. r=hyatt.
git-svn-id: svn://10.0.0.236/trunk@54029 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 03:13:39 +00:00
brendan%mozilla.org
3b43f14bd3 Followup to my last checkin: get list-unlink vs. ResumeWalk order right (r=waterson@netscape.com)
git-svn-id: svn://10.0.0.236/trunk@54028 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 03:10:42 +00:00
waldemar%netscape.com
aefedb080a Added Allegro reference
git-svn-id: svn://10.0.0.236/trunk@54027 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 02:18:26 +00:00
waldemar%netscape.com
0685de255a Updated to work under Allegro Common Lisp
git-svn-id: svn://10.0.0.236/trunk@54026 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 02:16:56 +00:00
rginda%netscape.com
9dda965075 s/FAILED!/{return a failure}/ in testcase description to keep from fooling the test driver.
git-svn-id: svn://10.0.0.236/trunk@54025 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 01:43:44 +00:00
gagan%netscape.com
2cf255f928 New files first checkin.
git-svn-id: svn://10.0.0.236/trunk@54024 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 01:34:19 +00:00
rginda%netscape.com
ea6fe4f1f9 Correct exit codes on win32, echo output file regardles of -t
git-svn-id: svn://10.0.0.236/trunk@54023 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 00:28:06 +00:00
norris%netscape.com
e3823e3854 Fix ecma_2/Expressions/instanceof-003-n.js
ScriptRuntime::instanceOf now needs a scope parameter that it can use to construct an exception object


git-svn-id: svn://10.0.0.236/trunk@54022 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-20 00:19:00 +00:00
norris%netscape.com
ba5ee4bd59 argument.caller shouldn't be defined in the default version
git-svn-id: svn://10.0.0.236/trunk@54021 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 23:02:52 +00:00
troy%netscape.com
07f4c06751 b=19374. Restored some code I unintentionaly removed in previous checkin.
Now after Reflow() of child frame "kidRect.width" and "kidRect.height" are
updated


git-svn-id: svn://10.0.0.236/trunk@54020 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 22:04:01 +00:00
duncan%be.com
6e35da0794 Fix to behave correctly under BeOS.
r=warren


git-svn-id: svn://10.0.0.236/trunk@54019 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 21:58:39 +00:00
rginda%netscape.com
46250d0a36 Add bugnumber to reports, bugzilla url option, and expect exit code 3 for negative tests.
git-svn-id: svn://10.0.0.236/trunk@54018 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 21:54:46 +00:00
kin%netscape.com
7e6fe21ee8 Fix for bug #19371: [DOGFOOD][REGRESSION] entering text and hitting
return in new message crashes app
Modified nsMsgCompose::ConvertAndLoadComposeWindow() to make sure
aBuf was valid before using it with an editor method.
a=sfraser@netscape.com a=leaf@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@54017 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 21:39:23 +00:00
buster%netscape.com
ad1f779a36 fixed bug 19381. previously, I had added 2 interfaces onto this class, but I
forgot to add those classes in the QueryInterface method.  god, i wish we
had a macro for that!
r=kmcclusk.  thanks, kevin


git-svn-id: svn://10.0.0.236/trunk@54016 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 21:33:21 +00:00
terry%mozilla.org
77eb37e301 Vastly speed up searches if a directory name is specified.
git-svn-id: svn://10.0.0.236/trunk@54015 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 17:22:47 +00:00
cls%seawood.org
49c320b36f Adding rng to the autoconf Makefiles. Patch submitted by Mike Shaver <shaver@mozilla.org> a=granrose
git-svn-id: svn://10.0.0.236/trunk@54014 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 16:43:00 +00:00
rods%netscape.com
73b63eb2a5 added boolean in DoneAddingContent method
git-svn-id: svn://10.0.0.236/trunk@54013 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 16:09:32 +00:00
rods%netscape.com
28621261c8 added bool parm to is DoneAddinContent r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@54012 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 16:05:16 +00:00
terry%mozilla.org
ac9efccb00 Updated version string to 2.9 (development)
git-svn-id: svn://10.0.0.236/trunk@54011 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:57:00 +00:00
terry%mozilla.org
124bc20fe4 Updated version string to 2.8 (shipping)
git-svn-id: svn://10.0.0.236/trunk@54009 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:56:28 +00:00
fur%netscape.com
9e09ebcd19 Add support for offset argument to FileTransport's OpenOutputChannel() method.
r: fur, yixiong.zou@intel.com


git-svn-id: svn://10.0.0.236/trunk@54008 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:56:24 +00:00
terry%mozilla.org
8957836cb5 Was crashing if not using milestones.
git-svn-id: svn://10.0.0.236/trunk@54007 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:51:48 +00:00
rods%netscape.com
19bedc8578 added bool parm to is DoneAddinContent r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@54006 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:46:20 +00:00
rods%netscape.com
adb9c767ca remove SetMainChild
git-svn-id: svn://10.0.0.236/trunk@54005 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:45:55 +00:00
rods%netscape.com
57c1298fdf added bool parm to is DoneAddingContent r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@54004 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:45:47 +00:00
rods%netscape.com
5e7ca2acf8 added nsGfxListControlFrame.cpp commented out bug 18895
git-svn-id: svn://10.0.0.236/trunk@54003 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:45:07 +00:00
rods%netscape.com
dabfe59776 added bool parm to DoneAddingContent r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@54002 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:43:06 +00:00
rods%netscape.com
f5defbd9b7 removed select initialization code r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@54001 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:42:06 +00:00
rods%netscape.com
9454f93684 added bool parm to DoneAddingContent content sink sets it to false r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@54000 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:41:30 +00:00
rods%netscape.com
025b1100d2 added nsGfxListControlFrame code ifdef'd out r=dcone bug 18241
git-svn-id: svn://10.0.0.236/trunk@53999 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:41:19 +00:00
troy%netscape.com
3f61543a91 WillReflow/DidReflow changes and changes to the way view positioning
and sizing works


git-svn-id: svn://10.0.0.236/trunk@53998 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:33:29 +00:00
rhp%netscape.com
853149f4fe Fix for separators after body text - Bug #: 18972 r: jefft
git-svn-id: svn://10.0.0.236/trunk@53997 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:19:53 +00:00
fur%netscape.com
ba3c92d1c5 Change IDL to generate identical C++ headers, but with improved scriptability.
r: rpotts


git-svn-id: svn://10.0.0.236/trunk@53996 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 15:13:00 +00:00
dcone%netscape.com
a2aa9d8bb8 Reworked the flashing for porkjockey's. r=rods
git-svn-id: svn://10.0.0.236/trunk@53995 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 14:56:24 +00:00
terry%mozilla.org
c75e5b7c82 Fixed bug 4889 -- don't allow new bugs to be submitted with a blank summary.
git-svn-id: svn://10.0.0.236/trunk@53994 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 14:50:57 +00:00
jefft%netscape.com
c3252e964e fixed bug 17765 - Rename not implemented for Pop3, bug 19097 -- copying messages cause corrupted messages if the message size is greater than 4 k; r=putterman; make sure all children node were deleted when rename a folder, also rename the directory if it has subfolders; added m_leftOver to keep tracking partial completed line
git-svn-id: svn://10.0.0.236/trunk@53993 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 14:39:05 +00:00
jefft%netscape.com
d54f209fd6 fixed bug 17765 - Rename not implemented for Pop3, bug 19097 -- copying messages cause corrupted messages if the message size is greater than 4 k; r=putterman; added new method AddSubfolder()
git-svn-id: svn://10.0.0.236/trunk@53992 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 14:35:31 +00:00
jefft%netscape.com
d9cc300f3b fixed bug 17765 - Rename not implemented for Pop3, bug 19097 -- copying messages cause corrupted messages if the message size is greater than 4 k; r=putterman; clear tree selection item when rename
git-svn-id: svn://10.0.0.236/trunk@53991 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 14:34:55 +00:00
morse%netscape.com
764e441b81 fix bug 15111, mac not reading cookies file, r=rjc
git-svn-id: svn://10.0.0.236/trunk@53990 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 10:13:44 +00:00
buster%netscape.com
08cb20b3f9 don't know how this got through, I must not have saved the file from my IDE?
git-svn-id: svn://10.0.0.236/trunk@53989 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 08:43:27 +00:00
buster%netscape.com
046103d30b fixed a typo that compiles on win32 but not on linux
git-svn-id: svn://10.0.0.236/trunk@53988 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 08:30:02 +00:00
buster%netscape.com
292497ba01 bug 12022, r=rickg
git-svn-id: svn://10.0.0.236/trunk@53987 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 08:26:56 +00:00
rickg%netscape.com
3cd1a47af6 corrected type mismatch in memory error status of nsStrings; r=none
git-svn-id: svn://10.0.0.236/trunk@53986 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 08:10:40 +00:00
rickg%netscape.com
1eaa6d5152 added DebugDump() to nsString classes for terminal output. Also slightly improved documentation. r=buster
git-svn-id: svn://10.0.0.236/trunk@53985 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 08:05:30 +00:00
briano%netscape.com
bfced5ecee Automated update
git-svn-id: svn://10.0.0.236/trunk@53984 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 08:00:23 +00:00
danm%netscape.com
51faaf23bd older and wiser, making previous attempt to return correct clientrect actually work. r:saari@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53983 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:56:12 +00:00
nisheeth%netscape.com
349cc4710f Backing out mcafee's change to configure.in to fix SunOS bustage.
git-svn-id: svn://10.0.0.236/trunk@53982 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:50:38 +00:00
buster%netscape.com
bbde48daa1 first version of interface for content-specific manipulations
git-svn-id: svn://10.0.0.236/trunk@53981 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:44:27 +00:00
nisheeth%netscape.com
7ee23780a4 Attempt to fix mac build bustage.
git-svn-id: svn://10.0.0.236/trunk@53980 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:37:04 +00:00
buster%netscape.com
1e648d27d6 moved content-specific data and methods from nsIWebShell to appropriate content viewer interface
no bug number, this is for webshell redesign work
r=rickg, travis


git-svn-id: svn://10.0.0.236/trunk@53979 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:35:27 +00:00
buster%netscape.com
d9fe797e65 just a comment for future webshell work
git-svn-id: svn://10.0.0.236/trunk@53978 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:32:20 +00:00
buster%netscape.com
43763bae6a found a tiny bug, possible uninitialized variable. fixed it along with work for:
moved content-specific data and methods from nsIWebShell to appropriate content viewer interface
no bug number, this is for webshell redesign work
r=rickg, travis


git-svn-id: svn://10.0.0.236/trunk@53977 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:29:13 +00:00
buster%netscape.com
322aab6269 DOM extension for exposing text areas to XUL
bug 12022, r=rickg, vidur
also made some improvements for future docshell work
r=rickg, travis


git-svn-id: svn://10.0.0.236/trunk@53976 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:25:11 +00:00
buster%netscape.com
9bc057e191 DOM extension for exposing text areas to XUL
bug 12022, r=rickg, vidur


git-svn-id: svn://10.0.0.236/trunk@53975 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:24:15 +00:00
buster%netscape.com
b84e9eae1a added nsIGfxTextControlFrame.h
git-svn-id: svn://10.0.0.236/trunk@53974 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:23:47 +00:00
buster%netscape.com
125f9f6a8a added files: mozilla/layout/html/content/src/nsEditorController.cpp
git-svn-id: svn://10.0.0.236/trunk@53973 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:22:40 +00:00
buster%netscape.com
ef56beeb67 DOM extension for exposing text areas to XUL
bug 12022, r=rickg and vidur


git-svn-id: svn://10.0.0.236/trunk@53972 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:19:10 +00:00
buster%netscape.com
0914a1cddd DOM extension for exposing text areas to XUL
bug 12022, r=rickg


git-svn-id: svn://10.0.0.236/trunk@53971 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 07:18:25 +00:00
mcafee%netscape.com
a7cc2d6484 I forgot more stuff for prefs, fixing bustage per my last checkin here.
git-svn-id: svn://10.0.0.236/trunk@53970 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 05:54:58 +00:00
briano%netscape.com
1049e53f4c Automated update
git-svn-id: svn://10.0.0.236/trunk@53969 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 05:30:20 +00:00
mcafee%netscape.com
0eab1dd930 Fix from Duncan Wilcox, makefiles have dependency on MOZ_TIMER_LIBS and cannot use -ltimer_beos. r=mcafee (me)
git-svn-id: svn://10.0.0.236/trunk@53968 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 05:24:47 +00:00
mcafee%netscape.com
3ddaab1812 includes were incorrectly wrapped in the NS_BUILD_REFCNT_LOGGING define, fixing mac/win32 bustage.
git-svn-id: svn://10.0.0.236/trunk@53967 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 05:08:58 +00:00
dougt%netscape.com
8487fade66 Fixes: 19167,16801,17282,17682,17690,18616 Yes, this one line fix closes
all of these bugs and has taken 40 some hours to find.  Good night.


git-svn-id: svn://10.0.0.236/trunk@53966 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 04:11:16 +00:00
harishd%netscape.com
9262567bff Fix for bug 18328
r=vidur


git-svn-id: svn://10.0.0.236/trunk@53965 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 04:02:23 +00:00
nisheeth%netscape.com
00dd235681 r=harishd. Tell the refcounting code that the pref service is instantiated.
git-svn-id: svn://10.0.0.236/trunk@53964 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:57:30 +00:00
nisheeth%netscape.com
51e89c24b2 r=harishd.
- The stack walking code now works on windows.  We were initializing the symbol handler on each DLL load which was resetting its symbol tables.  Now, we don't re-init the symbol handler repeatedly.

- Added support for an environment variable, XPCOM_REFCNT_LOG_ENABLE_VIA_PREF.  When this is set to 1, refcount logging is done based on whether the "Enable XPCOM refcount log" pref in the Debug pane is set.  If this is not set, refcount logging is not affected by the pref.


git-svn-id: svn://10.0.0.236/trunk@53963 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:50:28 +00:00
rhp%netscape.com
80c1f0da8e Checking in some debug only code - r: rhp
git-svn-id: svn://10.0.0.236/trunk@53962 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:49:18 +00:00
alecf%netscape.com
100d711362 fix regression #19239
form widget "types" changed to be leading-letter capitalized, which busted the heck out of everything.
couldn't find a reviewer, but this has to be fixed for tomorrow
r=me


git-svn-id: svn://10.0.0.236/trunk@53961 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:37:10 +00:00
rhp%netscape.com
5ac7366170 Change for I18N quoting bugs - Bug #: 19164 - r: jefft
git-svn-id: svn://10.0.0.236/trunk@53960 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:27:03 +00:00
mscott%netscape.com
ae45afeab4 remove two compile warnings to get me off the warnings list...
git-svn-id: svn://10.0.0.236/trunk@53959 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:04:25 +00:00
dougt%netscape.com
f5f94a1ba7 making sure that we do not empty our segmented buffer if we did not create it
bug fix 19290.  submitted by bienvenu, r=dougt.


git-svn-id: svn://10.0.0.236/trunk@53958 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 03:01:33 +00:00
jj%netscape.com
4e8d388799 updated version number to M12.
git-svn-id: svn://10.0.0.236/trunk@53957 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:56:00 +00:00
jj%netscape.com
a2f8d160d5 renamed output binary from 'apprunner'/'apprunnerDebug' to 'mozilla' and 'mozillaDebug'.
git-svn-id: svn://10.0.0.236/trunk@53956 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:55:46 +00:00
warren%netscape.com
4306e0bc94 Fixed generic module factory lookup to look in cache.
git-svn-id: svn://10.0.0.236/trunk@53955 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:46:50 +00:00
fur%netscape.com
92928f5ea4 Fix build bustage, maybe. Get rid of unnecessary const
git-svn-id: svn://10.0.0.236/trunk@53954 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:35:02 +00:00
fur%netscape.com
4c203ed17c Took out unnecessary const, which will hopefully unbusticate unix build
git-svn-id: svn://10.0.0.236/trunk@53953 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:25:04 +00:00
akhil.arora%sun.com
d592b29ae7 fix=Denis Sharypov <sdv@sparc.spb.su> r=akhil.arora@sun.com
19304 convert java dom api to an xpcom module
19305 synchronize with interface changes in nsIDocumentLoaderObserver


git-svn-id: svn://10.0.0.236/trunk@53952 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:17:28 +00:00
beard%netscape.com
fed38c19f8 fix C string leak, bug=18699, r=shaver
git-svn-id: svn://10.0.0.236/trunk@53951 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 02:14:23 +00:00
Jerry.Kirk%Nexwarecorp.com
03e774325c Adding nsSigHandlers file to pull out unix signal handlers into a
seperate file.
r=Ramiro


git-svn-id: svn://10.0.0.236/trunk@53950 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:55:19 +00:00
fur%netscape.com
78cb9bc6ed In support of #8305 (implement cache).
Add Truncate() method to nsIFileSpec and implement in nsFileSpecImpl


git-svn-id: svn://10.0.0.236/trunk@53949 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:44:54 +00:00
fur%netscape.com
e3d83679ec In support of #8305 (implement cache).
Add Truncate() method to nsIFileSpec and implement in nsFileSpecImpl

[Mac Implementation: sdagley, r: sfraser]
[Win implementation: fur, r:rogerl]
[Unix implementation: yixiong.zue@intel.com, r: fur]


git-svn-id: svn://10.0.0.236/trunk@53948 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:42:46 +00:00
bienvenu%netscape.com
c9cba49af2 small performance tweak for null id xul elements r=waterson
git-svn-id: svn://10.0.0.236/trunk@53947 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:31:36 +00:00
tonyr%fbdesigns.com
ca8584134a Changes to support importing Eudora mail/settings on Mac.
git-svn-id: svn://10.0.0.236/trunk@53946 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:25:50 +00:00
fur%netscape.com
42df532834 Quash warning
git-svn-id: svn://10.0.0.236/trunk@53945 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:22:30 +00:00
rginda%netscape.com
4cacaf8f66 s/perl5/perl/
git-svn-id: svn://10.0.0.236/trunk@53944 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:18:33 +00:00
ftang%netscape.com
bc83f2f618 change the charset name to correct case for ISO-8859-x
git-svn-id: svn://10.0.0.236/trunk@53943 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:18:32 +00:00
ftang%netscape.com
39a7ea650f check in backout code after nhotta fix other problem. fix bug 14914
git-svn-id: svn://10.0.0.236/trunk@53942 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:16:53 +00:00
ftang%netscape.com
29c06c6d6a fix charset name from BIG5 to Big5
git-svn-id: svn://10.0.0.236/trunk@53941 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:16:07 +00:00
danm%netscape.com
4e42d460b0 windows device context now reports ClientRect in twips, like everyone else. fixes bug 13392. r:saari@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53940 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:15:46 +00:00
ftang%netscape.com
361e24e1e7 change charset name for Big5 from BIG5
git-svn-id: svn://10.0.0.236/trunk@53939 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:15:10 +00:00
ftang%netscape.com
c32a6e4c6f fix 19132 19135 ane partial fix 12090. implement nsIKBStateContorl for gtk. call ResetInputState from mouse button press. force ime to commit in ResetInputState and send the uncommitted text by using composition start/end and text event. move unicode conversion for IME into nsGtkIMEHelper class. r=erik
git-svn-id: svn://10.0.0.236/trunk@53938 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:14:23 +00:00
dp%netscape.com
56f3b0c295 Fixes compilation error with sun workshop. Removed bogus case to
PRBool. r=akhil.arora@sun.com


git-svn-id: svn://10.0.0.236/trunk@53937 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:14:07 +00:00
wtc%netscape.com
5a3213de7c Allow specification of timeout for test programs.
git-svn-id: svn://10.0.0.236/trunk@53936 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 01:01:19 +00:00
wtc%netscape.com
a1926fa40c Added test case for PR_Available on pipes.
git-svn-id: svn://10.0.0.236/trunk@53935 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:59:57 +00:00
wtc%netscape.com
e8346601d8 Use #elif instead of #else + #if.
git-svn-id: svn://10.0.0.236/trunk@53934 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:59:17 +00:00
tonyr%fbdesigns.com
816b8237e2 Added a couple of Morefiles routines to the export list. FSpGetFileSize and FSpResolveFileIDRef. r=sfraser
git-svn-id: svn://10.0.0.236/trunk@53933 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:58:42 +00:00
wtc%netscape.com
f6d1c72f04 This header file should not define HAVE_UINT. There should be a better
solution solution for the problem this solved.


git-svn-id: svn://10.0.0.236/trunk@53932 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:58:21 +00:00
rginda%netscape.com
09b51fab5d Added most.tests, most of the tests, minus liveconnect and some date/array tests that take a long time.
git-svn-id: svn://10.0.0.236/trunk@53931 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:57:18 +00:00
wtc%netscape.com
3fb7dc1743 _macos.h: define _MD_MINIMUM_STACK_SIZE to be 58K.
pruthr.c: removed unnecessary XP_MAC code since _MD_MINIMUM_STACK_SIZE is
checked by _PR_ADJUST_STACKSIZE.


git-svn-id: svn://10.0.0.236/trunk@53930 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:56:45 +00:00
rginda%netscape.com
f4b791db8c HTML output is in, script generally useful. Not tested on win32 or mac yet.
git-svn-id: svn://10.0.0.236/trunk@53929 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:56:17 +00:00
wtc%netscape.com
9cb44715ee Removed unnecessary _MD_MINIMUM_STACK_SIZE macro definition. Define this
macro only if the platform has a minimum stack size requirement.


git-svn-id: svn://10.0.0.236/trunk@53928 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:52:58 +00:00
wtc%netscape.com
34658f5bf6 Added newline at end of file.
git-svn-id: svn://10.0.0.236/trunk@53927 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:51:58 +00:00
wtc%netscape.com
1771f85608 Removed the depend:clean hack.
git-svn-id: svn://10.0.0.236/trunk@53926 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:51:25 +00:00
ducarroz%netscape.com
0a9a9efcf3 Fix bug 9713. comment out some sensitive code until I rewrite it. This code isn't needed yet. r=mscott
git-svn-id: svn://10.0.0.236/trunk@53925 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:47:40 +00:00
valeski%netscape.com
b27c18fb1e changed the on header notification to actually request the observers of the correct notification. OnHeaders indicates a response has come back, thus those registered for the RESPONSE should get notified, not those registered for the REQUEST
git-svn-id: svn://10.0.0.236/trunk@53924 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-19 00:15:42 +00:00
tonyr%fbdesigns.com
4051528619 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@53923 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 23:14:05 +00:00
tonyr%fbdesigns.com
966f57e21c First Checked In.
git-svn-id: svn://10.0.0.236/trunk@53922 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 23:03:36 +00:00
colin%theblakes.com
26547830fb Don't define EXTRA_DSO_LDOPTS to EXTRA_LIBS and more. r=shaver
git-svn-id: svn://10.0.0.236/trunk@53921 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:54:09 +00:00
colin%theblakes.com
b82556ae25 Add MOZ_TIMER_LIBS to the link. r=shaver
git-svn-id: svn://10.0.0.236/trunk@53920 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:49:59 +00:00
tonyr%fbdesigns.com
4c4d5c60ef First Checked In.
git-svn-id: svn://10.0.0.236/trunk@53919 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:48:04 +00:00
briano%netscape.com
0fca89625e Automated update
git-svn-id: svn://10.0.0.236/trunk@53918 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:45:23 +00:00
colin%theblakes.com
47b10a7742 Do not define MOZ_MONOLITHIC_TOOLKIT for OpenVMS
git-svn-id: svn://10.0.0.236/trunk@53917 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:38:51 +00:00
larryh%netscape.com
bd7fed59fd BugZilla: 19247
git-svn-id: svn://10.0.0.236/trunk@53916 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:23:00 +00:00
rods%netscape.com
ac17cc58d4 initial check in, not in the build
git-svn-id: svn://10.0.0.236/trunk@53915 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:14:26 +00:00
leaf%mozilla.org
f3af975808 added mozilla/js/.cvsignore to JSClient --leaf
git-svn-id: svn://10.0.0.236/trunk@53914 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 22:05:22 +00:00
ducarroz%netscape.com
08022abc2d Fix for bug 18974 & bug 15238. We need to use the default identity when no identity is specified. r=alecf
git-svn-id: svn://10.0.0.236/trunk@53913 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:57:06 +00:00
erik%netscape.com
cbd4c73f17 Updating local .cvsignore file. Does not affect build.
git-svn-id: svn://10.0.0.236/trunk@53912 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:49:12 +00:00
larryh%netscape.com
9ef040228f BugZilla: 19247, fix declaration of _PR_MD_GetRandomNoise()
git-svn-id: svn://10.0.0.236/trunk@53911 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:38:39 +00:00
leaf%mozilla.org
446af992dc adding mozilla/dbm/.cvsignore to SeaMonkeyCore. --leaf
git-svn-id: svn://10.0.0.236/trunk@53910 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:34:01 +00:00
sdagley%netscape.com
372a9629c1 Fix Mac bustage. Make PR_GetRandomNoise() compile. Don't know about working yet.
git-svn-id: svn://10.0.0.236/trunk@53909 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:16:51 +00:00
rhp%netscape.com
1e59708d57 Cleanup of free calls - No bug - r: bienvenu
git-svn-id: svn://10.0.0.236/trunk@53908 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:12:49 +00:00
evaughan%netscape.com
d5e1a5239e 1) Changed box to use a linked list instead of a fixed array. -r Hyatt
2) Cleaned up some of the preference panels. -r Matt


git-svn-id: svn://10.0.0.236/trunk@53907 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 21:05:43 +00:00
brade%netscape.com
341249e471 fix original size/custom size toggling/setting. bug #14750 (r=kin@netscape.com)
git-svn-id: svn://10.0.0.236/trunk@53906 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:53:48 +00:00
valeski%netscape.com
69182ebaed fixing crasher introduced when new Setter*() were dropped in last night. we now set the channel's url member *before* calling the set routines.
git-svn-id: svn://10.0.0.236/trunk@53905 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:51:05 +00:00
mcafee%netscape.com
e6803347f5 Removing const to match IDL spec, fixes Solaris/CC. r=mscott
git-svn-id: svn://10.0.0.236/trunk@53904 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:47:57 +00:00
waterson%netscape.com
0dbad7d852 Fix event listener leak in idlc-generated code. r=joki
git-svn-id: svn://10.0.0.236/trunk@53903 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:39:58 +00:00
waterson%netscape.com
8f787ac240 Fix event listener leak in code that is generated to take functions. Fix to generate new NPL 1.1 license. r=joki
git-svn-id: svn://10.0.0.236/trunk@53902 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:38:43 +00:00
brade%netscape.com
dd7e2539fd during CloneAttributes, delete all the nodes attached (not half of them); discovered when fixing bug #14750; r=kin@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53901 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:34:15 +00:00
larryh%netscape.com
079ba173e7 BugZilla: 19247. PR_GetRandomNoise()
git-svn-id: svn://10.0.0.236/trunk@53900 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:29:17 +00:00
colin%theblakes.com
720180b9d4 Add MOZ_COMPONENT_LIBS. r=jdunn
git-svn-id: svn://10.0.0.236/trunk@53899 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:23:31 +00:00
brendan%mozilla.org
1c2d96a428 - Add JS_HAS_FUN_EXPR_STMT jsconfig.h macro and use it to ifdef a special case explicitly specified by ECMA ed. 3 to be an error: a function expression that's a statement (not at top-level). This allows one to wrap functions in if and else statements and conditionally define them.
(More work is needed to conform to ECMA ed. 3 by removing Closure objects; also we want more efficient closure calling, soon.)

- Move mislocated call to js_FoldConstants from jsemit.c's js_EmitTree, the TOK_FUNCTION case, back to jsparse.c.  This avoids redundant fold-walks over non-top-level functions.  Folding should be done at tree-gen time, not at code-gen time.

- Eliminate dead code in if-else and ?: when folding constants.

- Release tempPool arena space before early return on error in js_FoldConstants, just to be nice (all arena space gets released eventually, when the compiler finishes).


git-svn-id: svn://10.0.0.236/trunk@53898 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:19:56 +00:00
valeski%netscape.com
7fcea33960 adding new param to newChannelCall to reflect the new api
git-svn-id: svn://10.0.0.236/trunk@53897 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:09:54 +00:00
valeski%netscape.com
62802829e3 typo. we need to be allocating the size of the struct, not the pointer to the struct.
git-svn-id: svn://10.0.0.236/trunk@53896 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 20:05:15 +00:00
colin%theblakes.com
cce10d19b3 build gtksuperwin if MOZ_ENABLE_GTK and MOZ_MONOLITHIC_TOOLKIT are both set. r=jdunn
git-svn-id: svn://10.0.0.236/trunk@53895 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:50:45 +00:00
akkana%netscape.com
f524df3661 Improve the problem of excessive whitespace around <pre> quotes in
plaintext mail (r=mcafee).
Also, 19237: an initial fix for html quoting (html source being
inserted outside the blockquote).


git-svn-id: svn://10.0.0.236/trunk@53894 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:43:14 +00:00
kin%netscape.com
53798ca2b2 Fix for bug #17989: Selection AutoScrolling broken when using GFX Scrollbars
layout/base/src/nsRangeList.cpp
        - Added ConstrainFrameAndPointToAnchorSubtree() and various utility
          methods.
        - Modified HandleDrag() to call ConstrainFrameAndPointToAnchorSubtree().

    layout/html/base/src/nsFrame.cpp
        - Modified GetContentAndOffsetFromPoint() to skip over generated
          and anonymous content frames.

    layout/html/base/src/nsGfxScrollFrame.cpp
    layout/html/base/src/nsGfxScrollFrame.h
        - Override the default nsFrame::GetContentAndOffsetsFromPoint()
          implementation with a version that calls
          mInner->GetContentAndOffsetsFromPoint(). This prevents the
          scrollbar frames from being included in the search.

    view/src/nsScrollPortView.cpp
        - Fixed bug where GetContainerSize() was returning the size of the
          ScrollPortView instead of the ScrolledView.

r=evaughan@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53893 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:40:52 +00:00
akkana%netscape.com
5207ade415 Use Recycle to free nsStrings; and fix a warning
git-svn-id: svn://10.0.0.236/trunk@53892 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:40:30 +00:00
akkana%netscape.com
0a7d0ef76e Contribution from mozilla@bucksch.org to improve anchor and img tags
in formatted mode (r=akkana).
Also some minor improvements to handling of blank lines in pre tags,
to get rid of extra blank lines in plaintext mail (r=mcafee).


git-svn-id: svn://10.0.0.236/trunk@53891 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:39:47 +00:00
blizzard%redhat.com
42d0b173ba we don't need to listen to events on the top level window
git-svn-id: svn://10.0.0.236/trunk@53890 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:36:28 +00:00
rhp%netscape.com
dda3d32d70 Small fix for a useful test program - NOT PART OF THE BUILD
git-svn-id: svn://10.0.0.236/trunk@53889 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 19:29:11 +00:00
varada%netscape.com
1281db945a fix for bug #18332 and other clean ups
git-svn-id: svn://10.0.0.236/trunk@53888 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 17:34:18 +00:00
terry%mozilla.org
e5db30cabf Patch by Tom Schutter <tom@platte.com>: Added some more doc, fixed product description.
git-svn-id: svn://10.0.0.236/trunk@53887 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 17:29:58 +00:00
erik%netscape.com
c7ac536631 Grabbing the next available ID. Does not affect build.
git-svn-id: svn://10.0.0.236/trunk@53886 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 16:45:59 +00:00
dcone%netscape.com
8246fb0177 Thickness of side is now checked. Fixed bug 14944. r=rods
git-svn-id: svn://10.0.0.236/trunk@53885 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 16:03:45 +00:00
shaver%netscape.com
1ec9b3aa0d Fix some MLK and FMR badness.
Use nsCOMPtr to manage services (thank you dp, thank you).
Only push context on stack when actually executing JS via JSAPI.
Use nsXPIDLCString to simplify memory management (thank you waterson,
thank you).
Use generic module stuff.
r=fur,jband


git-svn-id: svn://10.0.0.236/trunk@53884 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 15:39:28 +00:00
rods%netscape.com
affaaecfb9 removing extra box sizing code that is not needed.
computed border and padding is always added for Standard and only for explicit w/h for NavQuirks.
r=dcone bug=18448


git-svn-id: svn://10.0.0.236/trunk@53883 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 15:15:07 +00:00
dcone%netscape.com
cc7ba3518e Move the dotted and dashed rouned corner code to fall into solid until it is supported by code
r=rods.  Bug fixed 13944


git-svn-id: svn://10.0.0.236/trunk@53882 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 15:09:02 +00:00
ducarroz%netscape.com
d942732a0a Fix for bug 16413. Use parser call RemoveDuplicateAddresses when building recipients list. R=mscott
git-svn-id: svn://10.0.0.236/trunk@53881 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 15:06:56 +00:00
Jerry.Kirk%Nexwarecorp.com
bc032919d8 Added a few comments to remind me whats going on.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53880 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 13:03:16 +00:00
Jerry.Kirk%Nexwarecorp.com
96675c27b8 turning off automatic generation of BMP files for each image drawn.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53879 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 13:02:21 +00:00
Jerry.Kirk%Nexwarecorp.com
c249dfa1b7 Added some debug info to UpdateWidgeDamage , still tryin to track down
the reason for the extra draws I see under Photon.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53878 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 12:49:43 +00:00
Jerry.Kirk%Nexwarecorp.com
633876903d Check for mContext != NULL in RawDraw.. This fixes a crash that occurs
because we try to do a draw of a window after it is destroyed. Not sure
why this is happening, I think its Photon that wants the draw.

Also took out mFrame changes to size of the dialog in GetClientBounds. This
was causing several dialog to be clipped.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53877 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 12:48:43 +00:00
Jerry.Kirk%Nexwarecorp.com
2dd5f95279 Added new static memer mModalCount to be used when a modal dialog
is created. Now calling PtModalStart/End, this fixed the problem with
widgets not highlighting properly when the mouse moved over them on a
modal dialog.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53876 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 12:43:43 +00:00
mscott%netscape.com
8a6fcaa4c8 minor tweak to properly remove everything after (and including) the ? from a mailto url when extracting
the to part.


git-svn-id: svn://10.0.0.236/trunk@53875 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 10:16:26 +00:00
mscott%netscape.com
c64b1cd2fe remove these obsolete files.
git-svn-id: svn://10.0.0.236/trunk@53874 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 09:56:39 +00:00
mscott%netscape.com
b817656159 Fix clobber unix build. don't build uri dispatcher anymore.
git-svn-id: svn://10.0.0.236/trunk@53873 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 09:55:44 +00:00
waterson%netscape.com
5bccad4e4b Back off on nsCOMPtr use for mInner because of funky release
sequence. Fixes crash on shutdown.


git-svn-id: svn://10.0.0.236/trunk@53872 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 09:44:29 +00:00
tbogard%aol.net
67f780367f Renamed nsIWebBrowserApp with nsIWebBrowserChrome. Added some additional methods and more fully specified the ones that were there. Changed the interfaces to forward declare referenced interfaces rather than including them all. Added topLevelWindow to nsIWebBrowser. Provided implementation for these changes.
git-svn-id: svn://10.0.0.236/trunk@53871 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 09:17:07 +00:00
mscott%netscape.com
e90e4590f2 Fix solaris breakage.
git-svn-id: svn://10.0.0.236/trunk@53870 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 09:15:20 +00:00
waterson%netscape.com
3ecbe6226f Finish #ifdef-ing MOZ_THREADSAFE_RDF. Appears an unused PRLock will
assert when being destroyed?!?


git-svn-id: svn://10.0.0.236/trunk@53869 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 09:06:50 +00:00
mscott%netscape.com
a71f08582e uri dispatching tweak...doContent shouldn't explictly check for message/rfc822
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53868 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:59:53 +00:00
mscott%netscape.com
f719e4da75 Bug #14928 register our x-application-mailto content handler
register mailto url protocol
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53867 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:39:40 +00:00
mscott%netscape.com
bfd710100c add mailto url cid and progid
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53866 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:39:17 +00:00
mscott%netscape.com
8fe7da0cfd Bug #14928 --> for url dispatching of mailto urls:
add NewChannel, NewURI support for mailto urls.
added nsMailtoChannel which is a light weight channel
implementation for mailto urls
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53865 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:38:50 +00:00
mscott%netscape.com
eeb0411736 add nsMailtoUrl implementation which is different from
a smtp url. Simplified logic for smtp url.
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53864 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:38:12 +00:00
mscott%netscape.com
f5fe45832f Bug #14928 --> implement open compose window for a uri
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53863 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:37:34 +00:00
mscott%netscape.com
48fa4a66e0 Bug #14928 --> added nsIMailtoUrl interface and reduced the functionality
of nsISmtpUrl which was acting as both mailto and smtp
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53862 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:37:06 +00:00
mscott%netscape.com
38736ca7bd Bug #14928 --> add method for opening a compose window given a mailto url.
this is needed for url dispatching.
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53861 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:36:39 +00:00
mscott%netscape.com
95b7561599 remove some obsolete files
git-svn-id: svn://10.0.0.236/trunk@53860 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:15:39 +00:00
mscott%netscape.com
d546b36c84 Remove some obsolete idl files from the unix build.
git-svn-id: svn://10.0.0.236/trunk@53859 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 08:13:15 +00:00
mscott%netscape.com
ec2d81223e Bug #14928 --> uri dispatching intial landing. when a mail window comes up, we need to register ourselves
with the uri loader.

The mail window is also a nsIURIContentListener. Implement this interface such that doContent requests
are forwarded to the webshell for our message.
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@53858 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:47:52 +00:00
warren%netscape.com
97fe1591d9 Removed nsICapabilities in favor of nsIInterfaceRequestor.
git-svn-id: svn://10.0.0.236/trunk@53857 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:44:14 +00:00
warren%netscape.com
cbcd671c5d Removed the nsICapabilities interface in favor of nsIInterfaceRequestor.
git-svn-id: svn://10.0.0.236/trunk@53856 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:36:41 +00:00
mscott%netscape.com
4eb376a28d Bug #14928 --> inital uri dispatching landing. the app instance is a uri content listener. implement
that interface. Register the content listener with the uri loader when we are created and again when
we go away. Forward doContent calls on nsIURIContentListener to the webshell where we want content displayed.
r=travis


git-svn-id: svn://10.0.0.236/trunk@53855 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:19:39 +00:00
mscott%netscape.com
04664370c7 add uriloader to the packages file for the mac
git-svn-id: svn://10.0.0.236/trunk@53854 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:13:10 +00:00
mscott%netscape.com
ca68a03062 Bug #14928 --> phase one of uri dispatching landing. IF uri dispatching is turned on,
invoke the uri loader instead of opening the document ourselves.

Various changes for uri dispatching....

r=travis


git-svn-id: svn://10.0.0.236/trunk@53853 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:07:33 +00:00
mscott%netscape.com
249eb0a085 Bug #14928 --> phase one of uri dispatching landing. webshell is a nsIURIContentListener.
r=travis.


git-svn-id: svn://10.0.0.236/trunk@53852 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:06:39 +00:00
mscott%netscape.com
00c26ba6bf Bug #14928 --> phase one of uri dispatching landing. add ability to get/set content listener parent on the webshell
r=travis


git-svn-id: svn://10.0.0.236/trunk@53851 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:06:07 +00:00
mscott%netscape.com
0ed2e8850a Bug #14928 --> phase one of uri dispatching landing. add ability for doc loader to load
an opened channel
r=travis


git-svn-id: svn://10.0.0.236/trunk@53850 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 07:05:47 +00:00
fur%netscape.com
5a97fd4572 Quell warning
git-svn-id: svn://10.0.0.236/trunk@53849 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:59:28 +00:00
mscott%netscape.com
446a6ec0c7 Add a debug menu item for turning on / turning off url dispatching
r=travis


git-svn-id: svn://10.0.0.236/trunk@53848 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:58:22 +00:00
mscott%netscape.com
16d83b9a69 add labels for uri dispatching menu item which is in the debug window
r=travis


git-svn-id: svn://10.0.0.236/trunk@53847 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:57:36 +00:00
mscott%netscape.com
7bc4ae6da8 Make the uri loader a component.
git-svn-id: svn://10.0.0.236/trunk@53846 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:39:37 +00:00
mscott%netscape.com
7e2aa68ab6 add uriloader to the unix installer
git-svn-id: svn://10.0.0.236/trunk@53845 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:22:52 +00:00
waterson%netscape.com
789312e427 Bug 9246. Give bookmark URLs the tough love they need. Fix changing a bookmark's URL, fix setting a bookmark's URL when one wasn't set before. Prohibit removal of a bookmark's URL. r=rjc.
git-svn-id: svn://10.0.0.236/trunk@53844 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:21:09 +00:00
mscott%netscape.com
ddfa8bd6a4 add uriloader to the windows install package.
git-svn-id: svn://10.0.0.236/trunk@53843 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:19:52 +00:00
fur%netscape.com
d81b34c48f Quash warnings
git-svn-id: svn://10.0.0.236/trunk@53842 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:19:51 +00:00
valeski%netscape.com
00e07f6d85 updated urltest.cpp to use the new Resolve code
git-svn-id: svn://10.0.0.236/trunk@53841 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:19:01 +00:00
mscott%netscape.com
82de57b51b Add uriloader directory to the mac build.
git-svn-id: svn://10.0.0.236/trunk@53840 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:07:52 +00:00
waterson%netscape.com
8eb3297670 Be sure to waitpid() after killing the process so as not to leave zombies around.
git-svn-id: svn://10.0.0.236/trunk@53837 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:06:28 +00:00
mscott%netscape.com
3436e5ab25 add uriloader directory
git-svn-id: svn://10.0.0.236/trunk@53836 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:05:16 +00:00
mscott%netscape.com
ad327ebf31 Make uriloader part of the build on Unix!!
*yeah*


git-svn-id: svn://10.0.0.236/trunk@53835 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:03:27 +00:00
mscott%netscape.com
0d4f454ad5 Make uriloader part of the build on windows!!
*yeah*


git-svn-id: svn://10.0.0.236/trunk@53834 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:02:51 +00:00
mscott%netscape.com
c1237abda6 make this library 8.3 on windows.
(renamed to urildr)


git-svn-id: svn://10.0.0.236/trunk@53833 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 06:02:00 +00:00
waterson%netscape.com
a66438f908 Clean up some timing printfs.
git-svn-id: svn://10.0.0.236/trunk@53832 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 05:47:51 +00:00
sfraser%netscape.com
8136303d07 Fix for 19170 -- yield to NSPR threads in our main event loop, to service the necko thread more promptly. r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53830 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 05:26:59 +00:00
wtc%netscape.com
76b46ea633 Minor improvements. In objs.mk fixed the problem that pthreads_user.c
is added to CSRCS twice if USE_AUTOCONF is not defined.
Modified files: pr/src/md/unix/Makefile,Makefile.in,objs.mk


git-svn-id: svn://10.0.0.236/trunk@53829 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 05:26:06 +00:00
dougt%netscape.com
5156796d61 fix for 18949. make seek do a flush to avoid corruption.
git-svn-id: svn://10.0.0.236/trunk@53828 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 05:16:42 +00:00
ssu%netscape.com
c192307dcf overloaded the abortInstall() function for the Install object to take a
numerical parameter.  It now allows the script writer to specify
an abort value, instead of the default one.

r=sgehani


git-svn-id: svn://10.0.0.236/trunk@53827 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 05:08:11 +00:00
rbs%maths.uq.edu.au
5bf3169323 Fine-tuning of the placement of the sqrt symbol and Patch of Mike Shaver to make the code compile on Linux
git-svn-id: svn://10.0.0.236/trunk@53826 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 04:51:56 +00:00
kvisco%ziplink.net
c0fcd98ef9 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@53825 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 04:40:02 +00:00
putterman%netscape.com
4b4bbf050c Fixes various message count updating bugs. reviewed by bienvenu.
git-svn-id: svn://10.0.0.236/trunk@53824 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 04:31:01 +00:00
jband%netscape.com
704976db95 remove invalid assertion
git-svn-id: svn://10.0.0.236/trunk@53823 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 04:30:54 +00:00
rginda%netscape.com
8bd4b3f833 Added ^c handler, beginnings of html output.
git-svn-id: svn://10.0.0.236/trunk@53822 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 04:14:00 +00:00
rbs%maths.uq.edu.au
5993ff13a3 Ensure all the control paths return value
git-svn-id: svn://10.0.0.236/trunk@53821 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:56:38 +00:00
fur%netscape.com
e76b531c35 Quell warnings
git-svn-id: svn://10.0.0.236/trunk@53820 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:38:32 +00:00
waterson%netscape.com
af2b1bd863 Be sure to close the file before moving it.
git-svn-id: svn://10.0.0.236/trunk@53819 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:38:24 +00:00
waterson%netscape.com
5d934cf0b4 Add chdir() so that it can be called from an alias.
git-svn-id: svn://10.0.0.236/trunk@53818 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:29:11 +00:00
nhotta%netscape.com
63ad96223a Change to pass an empty string to setlocale instead of NULL (which is illegal in Unix unlike windows). Bug
18338, r=tao.


git-svn-id: svn://10.0.0.236/trunk@53817 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:28:35 +00:00
nhotta%netscape.com
4aadb70b4d In MIME encoder, put a check at the end of the loop if the source points to a null character then bump the
pointer. This fixes a problem when a separator is at the end of a header string. Bug 9762, r=cata.


git-svn-id: svn://10.0.0.236/trunk@53816 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:24:56 +00:00
mcafee%netscape.com
9fed8c5977 Switching to PRBool, un-break Solaris WS build. r=slamm
git-svn-id: svn://10.0.0.236/trunk@53815 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:22:47 +00:00
blizzard%redhat.com
b0b5056241 fix for modal dialogs. fixes bug #16310. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53814 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:19:43 +00:00
jdunn%netscape.com
ab3b3b9c03 Only include SUPER_WIN includes if it is on. HPUX and AIX compilers fail
if they can't find the include file


git-svn-id: svn://10.0.0.236/trunk@53813 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:08:19 +00:00
briano%netscape.com
66aeaeb6f5 Automated update
git-svn-id: svn://10.0.0.236/trunk@53812 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 03:00:19 +00:00
warren%netscape.com
861f45621b Added nsIJARProtocolHandler.idl
git-svn-id: svn://10.0.0.236/trunk@53811 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:54:05 +00:00
jdunn%netscape.com
c2943700d3 Change the linking option of -Bsymbolic to only happen on Components
(i.e the i18n code and NOT on anything that links in gtk

r=pepper@netscape.com
# 18129


git-svn-id: svn://10.0.0.236/trunk@53810 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:49:30 +00:00
wtc%netscape.com
4214c05a0a Bugzilla bug #5358: fixed build problem on Solaris/x86 under gcc by
removing the #ifdef stuff from os_SunOS_x86.s.
Modified files: pr/src/md/unix/Makefile,Makefile.in,objs.mk,os_SunOS_x86.s


git-svn-id: svn://10.0.0.236/trunk@53809 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:48:18 +00:00
rhp%netscape.com
5e2156e1ac Fix for memory allocation off by 1 error. No bug. r: rhp (submitted by Ben Bucksch <mozilla-news@bucksch.org>
git-svn-id: svn://10.0.0.236/trunk@53808 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:46:52 +00:00
hangas%netscape.com
4bc17baa5a Fixes for selection bug 19011 and sidebar resize bug 18742. r=ducarroz
git-svn-id: svn://10.0.0.236/trunk@53807 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:45:38 +00:00
pinkerton%netscape.com
12204f19bc Fix for bug #18998. strip nulls off the end of unicode text strings. (r=danm).
git-svn-id: svn://10.0.0.236/trunk@53806 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:40:49 +00:00
bienvenu%netscape.com
6f45f8a08a only send change notification for pending filtered messages if the count changed - performance tweak
git-svn-id: svn://10.0.0.236/trunk@53805 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:36:22 +00:00
brendan%mozilla.org
ec11858386 Brutal JS script sharing (15146, r=waterson@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@53804 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:25:33 +00:00
valeski%netscape.com
0f008d3a79 r=rhp. nsDocumentBindInfo was returning NO_INTERFACE when asked for nsISupports. I can't believe we made it this far w/ that object not able to support nsISupports :/
git-svn-id: svn://10.0.0.236/trunk@53803 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:19:13 +00:00
wtc%netscape.com
d90cc02dc7 Bugzilla bug #17896: added new macro _PR_IS_GCABLE_THREAD.
r=srinivas@netscape.com
Modified files: primpl.h, macthr.c, irix.c, pthreads_user.c, solaris.c,
unixware.c, pruthr.c


git-svn-id: svn://10.0.0.236/trunk@53802 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:14:38 +00:00
wtc%netscape.com
67284c22a6 Added a new test sendzlf.c, which sends a zero-length file with PR_SendFile
and PR_TransmitFile.
Modified files: pr/tests/Makefile,Makefile.in,runtests.ksh
Added file: sendzlf.c


git-svn-id: svn://10.0.0.236/trunk@53801 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 02:11:38 +00:00
sspitzer%netscape.com
64020d1638 ok, really fixed this time. forgot the "== 0" in the macro. dummy.
git-svn-id: svn://10.0.0.236/trunk@53800 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 01:14:05 +00:00
mscott%netscape.com
a3f0be31f8 (not part of the build)
api tweak to nsIURIContentListener::CanHandleContent


git-svn-id: svn://10.0.0.236/trunk@53799 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 01:09:56 +00:00
mscott%netscape.com
67e5e83714 (not part of the seamonkey build)
CanHandleContent now has an out parameter for desired content type.
Minor re-write of uri loder logic to incorporate stream conversion. If the content listener passes back
a desired content type that is different from the content type that we asked it to handle, we'll
automatically invoke a stream converter. This allows a doc shell which wants to handle say message/rfc822
to request that content be in the form of text/xul (i.e. if it was presenting the content).


git-svn-id: svn://10.0.0.236/trunk@53798 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 01:02:31 +00:00
mscott%netscape.com
4faf756f66 (not part of the seamonkey build)
CanHandleContent now has an out parameter for desired content type.


git-svn-id: svn://10.0.0.236/trunk@53797 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 01:00:56 +00:00
sspitzer%netscape.com
bffbbd96e1 fix for #19068, prefs not loading values, or saving changes.
the problem was the pref window architecture walks the dom looking for input widgets
of type "radio" or "text" and not "RADIO", "Radio", etc or "TEXT", "Text", etc.  (the widget type changed recently from lowercase to uppercase.

now we do a case insensitive string compare and it all works fine.
a=leaf
r=mscott


git-svn-id: svn://10.0.0.236/trunk@53796 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 00:59:21 +00:00
tbogard%aol.net
34cb340e23 Fixed some calls on GetTopLevelWindow() and the assumptions made on the return value with the returned pointer. Added some pseudo code that is commented out for prompter stuff. r=seth (This is a cleanup of the checkin made in an effort to get the tree open.)
git-svn-id: svn://10.0.0.236/trunk@53795 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 00:33:54 +00:00
idk%eng.sun.com
e2e8a47460 no bug id
fixed typo OJI_DISABLED->OJI_DISABLE


git-svn-id: svn://10.0.0.236/trunk@53794 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 00:32:33 +00:00
erik%netscape.com
0b192df612 Grabbing the next available IID. Does not affect the build.
git-svn-id: svn://10.0.0.236/trunk@53793 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-18 00:09:46 +00:00
sspitzer%netscape.com
4780a4d9a1 fix for #19117, crash. add check before dereferencing null.
git-svn-id: svn://10.0.0.236/trunk@53792 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 23:05:29 +00:00
waterson%netscape.com
5612a50ae2 Add some commentary and a '--timeout' option.
git-svn-id: svn://10.0.0.236/trunk@53791 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 23:02:53 +00:00
mscott%netscape.com
31b10b655b First Checked In.
git-svn-id: svn://10.0.0.236/trunk@53790 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:48:42 +00:00
sspitzer%netscape.com
7fe343ca94 fix for blocker bug #19083, compose html message causes a crash.
r=sfraser.


git-svn-id: svn://10.0.0.236/trunk@53789 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:34:41 +00:00
rginda%netscape.com
4c59ec23d1 * menuhead.html
make all targets "other_window" to reduce number of open windows.
* mklistpage.pl
  make all targets "other_window" to reduce number of open windows.
* runtests2.pl
  more hacking, still not done.


git-svn-id: svn://10.0.0.236/trunk@53788 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:33:05 +00:00
rginda%netscape.com
ee50e06936 Initial checkin of "import test list" dialog.
git-svn-id: svn://10.0.0.236/trunk@53787 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:31:07 +00:00
waterson%netscape.com
48b8a18ada Add usage notes.
git-svn-id: svn://10.0.0.236/trunk@53786 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:30:35 +00:00
waterson%netscape.com
68ed9f664b Increase timeout to 10min., and don't over-eagerly assume the app crashed. Add code to send email.
git-svn-id: svn://10.0.0.236/trunk@53785 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:26:50 +00:00
leaf%mozilla.org
ebc5a3a800 removing useless line
git-svn-id: svn://10.0.0.236/trunk@53784 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:19:07 +00:00
leaf%mozilla.org
6633399c6c really fixing ls calls.
git-svn-id: svn://10.0.0.236/trunk@53783 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:14:21 +00:00
blizzard%redhat.com
74a76eef9b fix bug #19075 and #19080. make sure to handle the 2 + 3 button press events in nsWidget::HandleEvent().
git-svn-id: svn://10.0.0.236/trunk@53782 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 22:04:03 +00:00
waterson%netscape.com
23981df7df Initial revision.
git-svn-id: svn://10.0.0.236/trunk@53781 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 20:52:45 +00:00
varada%netscape.com
816a23bea8 fix for bug #19078 -obtaining value for window title bar text
git-svn-id: svn://10.0.0.236/trunk@53780 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 20:47:08 +00:00
waterson%netscape.com
2bed62ce5c Fix license to use MPL.
git-svn-id: svn://10.0.0.236/trunk@53779 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 20:42:57 +00:00
rginda%netscape.com
521eb32640 * Global.java
Cleared global.exitCode in quit() just to be safe.
* Main.java
  Adjusted exit code constants to match the js and xpcshells.


git-svn-id: svn://10.0.0.236/trunk@53778 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 20:26:17 +00:00
pavlov%netscape.com
0eb755927a fix for blizzard's editor making a mistake typing what he typed and not what he thought r=blizzard
git-svn-id: svn://10.0.0.236/trunk@53777 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 20:18:07 +00:00
despotdaemon%netscape.com
1ac394a5c2 Pseudo-automatic update of changes made by endico@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@53776 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 19:28:18 +00:00
waterson%netscape.com
b7feff7c3e Fix license to use MPL.
git-svn-id: svn://10.0.0.236/trunk@53775 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 19:15:05 +00:00
rogerl%netscape.com
fd8c6885d9 Changes for JS1.5 build under AIX4.3.
(Not a part of SeaMonkey builds)


git-svn-id: svn://10.0.0.236/trunk@53773 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 18:34:04 +00:00
duncan%be.com
8e3d684f96 BeOS only fixes to keep Mozilla building on BeOS. Still doesn't really run.
git-svn-id: svn://10.0.0.236/trunk@53772 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 15:18:02 +00:00
jfrancis%netscape.com
1b34dda41b some fixes for deletion and also selection movement, contributed by Steve Clark. fixes bug 18537 (backspace can delete entire line); r = buster
git-svn-id: svn://10.0.0.236/trunk@53771 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 11:30:39 +00:00
jfrancis%netscape.com
a7b072071c improved fix for bug 15696 (leaking an atom). r=floppy moose
git-svn-id: svn://10.0.0.236/trunk@53770 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 11:26:41 +00:00
jfrancis%netscape.com
07d4e1f07d rewrote GetFirstEditableNode() / GetLastEditableNode(). This fixes bugs: 18922, 18938, 18723; r=floppy moose
git-svn-id: svn://10.0.0.236/trunk@53769 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 11:03:25 +00:00
warren%netscape.com
9632e323b9 Fix for bustage due to channel retargeting changes.
git-svn-id: svn://10.0.0.236/trunk@53768 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 09:33:13 +00:00
warren%netscape.com
f77ab5063e Fix for bustage due to channel retargeting changes.
git-svn-id: svn://10.0.0.236/trunk@53767 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 09:22:47 +00:00
warren%netscape.com
7a9dd28d13 Fix for bustage due to channel retargeting changes.
git-svn-id: svn://10.0.0.236/trunk@53766 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 09:17:04 +00:00
warren%netscape.com
c47a7a261b Fix for linux bustage due to channel retargeting changes.
git-svn-id: svn://10.0.0.236/trunk@53765 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 09:11:03 +00:00
tbogard%aol.net
b5b6d5c1a7 Replaced references to nsIGenericWindow to use nsIBaseWindow. Removed the NS_IMPL_ISUPPORTSX in favor of the map approach.
git-svn-id: svn://10.0.0.236/trunk@53764 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 09:00:05 +00:00
tbogard%aol.net
3374645a8a Got the code compiling again.
git-svn-id: svn://10.0.0.236/trunk@53763 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 08:57:00 +00:00
tbogard%aol.net
da2b769d83 Replaced nsIGenericWindow with nsIBaseWindow.
git-svn-id: svn://10.0.0.236/trunk@53762 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 08:45:28 +00:00
warren%netscape.com
d8627fe912 Necko API and implementation changes for retargeting. Needed for URL dispatching. r=mscott
git-svn-id: svn://10.0.0.236/trunk@53761 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 08:14:52 +00:00
brendan%mozilla.org
693b8201bd Unregress top-level lambda expressions not in with statements to avoid full closure overhead.
git-svn-id: svn://10.0.0.236/trunk@53760 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 07:41:12 +00:00
warren%netscape.com
990558f3e9 Added nsICapabilities. Abstracted out from nsIContentViewerContainer for use in necko.
git-svn-id: svn://10.0.0.236/trunk@53759 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 07:36:40 +00:00
tbogard%aol.net
eed562f89a Removed nsIGenericWindow.idl as is is now implemented by widget/public/nsIBaseWindow.idl.
git-svn-id: svn://10.0.0.236/trunk@53758 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 07:25:22 +00:00
bryner%uiuc.edu
997ba5b632 Checking in some widget changes to support scrolling with the mouse
wheel.  Layout changes (to make it actually work) will follow soon,
and also a Windows implementation.  r=blizzard.


git-svn-id: svn://10.0.0.236/trunk@53757 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 06:54:02 +00:00
sdagley%netscape.com
de8d2d027f Fix build bustage by removing header files that were improperly added to project. NOTE - do NOT add .h files to a project, the project tracks them by parsing the source .c/.cp files
git-svn-id: svn://10.0.0.236/trunk@53756 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 06:10:07 +00:00
pavlov%netscape.com
b070a9eadf fix for bug 17936 making windows smaller after they have become visible r=waterson
git-svn-id: svn://10.0.0.236/trunk@53755 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 05:47:45 +00:00
sgehani%netscape.com
d63405a43c Fixes bug 18887. Although the bug doesn't mention it this really is:
CRC-32 checking is now fixed in libjar. [r=dveditz]


git-svn-id: svn://10.0.0.236/trunk@53754 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 05:40:00 +00:00
wtc%netscape.com
6104a72f93 Bugsplat bug #367096: need to set md.thr_bound_cpu to NULL when we
resume a falsely timed-out or abort a really timed-out AcceptEx call.
Also we must add a thread to its current CPU if md.thr_bound_cpu is
not NULL.
Modified files: ntio.c, ntthread.c, and pruthr.c


git-svn-id: svn://10.0.0.236/trunk@53753 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 05:25:27 +00:00
despotdaemon%netscape.com
8f321bdf52 Pseudo-automatic update of changes made by jar@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53752 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 05:21:25 +00:00
pavlov%netscape.com
3025de75af added files: mozilla/widget/public/nsIBaseWindow.idl
git-svn-id: svn://10.0.0.236/trunk@53751 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 05:10:11 +00:00
pavlov%netscape.com
5c59e16c9d add nsIBaseWindow.idl to the build
git-svn-id: svn://10.0.0.236/trunk@53750 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 05:08:56 +00:00
brendan%mozilla.org
66fd5fc23b Whitespace, comment, and bracing diffs.
git-svn-id: svn://10.0.0.236/trunk@53749 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:32:37 +00:00
despotdaemon%netscape.com
ec6dd06039 Pseudo-automatic update of changes made by dmose@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@53748 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:27:03 +00:00
tbogard%aol.net
0dfaa7fc02 Fixed a warning.
git-svn-id: svn://10.0.0.236/trunk@53747 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:19:39 +00:00
brendan%mozilla.org
1f55285563 Brutal sharing followup (15146, r=shaver@mozilla.org)
- jsinterp.c changes: 
__- JSOP_CLOSURE comment fixes.
____(NB: ECMA ed 3 seems to require that we abolish the Closure object altogether, replacing it with a new Function object where we used to make a new closure.  That says we should use JS_CloneFunctionObject or an internal form (js_).) 
__- Use obj rather than the same-valued fp->scopeChain as fourth argument to js_ConstructObject. 
__- JSOP_DEFFUN change to auto-clone when running a script in a different scope from the one the compiler used for static function scope linkage. 
__- Remove bogus assertion from JSOP_DEFVAR/CONST: case.

- jsparse.c/.h changes:
__- Restored outerFun test to FunctionDef in jsparse.c, so that we make a closure if (outerFun || lambda || !funAtom) -- i.e., if we're compiling
____- A function statement within an active function via eval;
____- We're compiling a function expression statement (not at apparent-to-compiler top-level; part of some kind of compound statement, e.g. if or with);
____- Or the function, even at top statement level and not in another function, has no name. 
__- Don't predefine local variables at compile time if they're in with statement
__- Enforce const at compile time for local consts

- Minor jsemit.[ch] cleanup.


git-svn-id: svn://10.0.0.236/trunk@53746 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:13:05 +00:00
slamm%netscape.com
f961c5ff69 Now adjust the ignored warnings with the changes.
git-svn-id: svn://10.0.0.236/trunk@53745 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:12:00 +00:00
slamm%netscape.com
4c55bbe84e Remember to add source_root when searching for file in repository.
git-svn-id: svn://10.0.0.236/trunk@53744 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:09:19 +00:00
blizzard%redhat.com
ffeade219f land SUPERWIN
git-svn-id: svn://10.0.0.236/trunk@53743 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:06:21 +00:00
blizzard%redhat.com
94ea44f86c add gtksuperwin to the link line for viewer
git-svn-id: svn://10.0.0.236/trunk@53742 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:05:41 +00:00
blizzard%redhat.com
1859c289d3 add gtksuperwin directory to the build
git-svn-id: svn://10.0.0.236/trunk@53741 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 04:00:00 +00:00
tbogard%aol.net
24449c4ccb Seems Solaris' compiler is on the bus... Doesn't understand what nsISupports to grab or something. Anway adding the .get() fixes it.
git-svn-id: svn://10.0.0.236/trunk@53739 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 03:55:35 +00:00
slamm%netscape.com
54587cf6ec Fix filename lookups. Needed to remove source root for path.
git-svn-id: svn://10.0.0.236/trunk@53738 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 03:52:53 +00:00
waterson%netscape.com
011da6cb8c Fix build bustage: disambiguate nsXULDocument::State from nsForwardReference::State by renaming to nsForwardReference::Phase.
git-svn-id: svn://10.0.0.236/trunk@53736 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 03:20:03 +00:00
pavlov%netscape.com
47411053af add nsIBaseWindow (not built) r=travis
git-svn-id: svn://10.0.0.236/trunk@53735 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 03:19:56 +00:00
danm%netscape.com
6a35760f1f add additional release of parent reference to twitchy destruction code. fixes bug 16310. r:pavlov@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53734 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 03:15:31 +00:00
waterson%netscape.com
304a4f2540 Bug 13378. Make sure that we hook up any broadcasters that arrive in overlay subtrees. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@53732 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 02:45:46 +00:00
rginda%netscape.com
c907eeaead Initial add of new (universal) perl test driver, and test case selection tool.
git-svn-id: svn://10.0.0.236/trunk@53731 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 02:05:29 +00:00
rjc%netscape.com
7635ec807d Trim out some crufty/old unused code, and speed up sorting a bit by reducing the number of string copies. Review: me
git-svn-id: svn://10.0.0.236/trunk@53730 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 02:03:46 +00:00
wtc%netscape.com
976dc82e55 Bugzilla bug #17728: pt_writev_cont, pt_write_cont, pt_send_cont, and
pt_sendto_cont need to deal with the possibility of a zero-length buffer.
r=srinivas@netscape.com.  Added a test zerolen.c for this bug.
Modified files: ptio.c, pr/tests/Makefile, pr/tests/Makefile.in,
pr/tests/runtests.ksh.
Added file: pr/tests/zerolen.c


git-svn-id: svn://10.0.0.236/trunk@53729 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:59:23 +00:00
tbogard%aol.net
2ab3492319 errr, Unix compilers don't understand the right value nsCOMPtr thing... Fixed.
git-svn-id: svn://10.0.0.236/trunk@53728 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:54:04 +00:00
mscott%netscape.com
28fcdb480a (not part of the build)
remove obsolete file


git-svn-id: svn://10.0.0.236/trunk@53727 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:46:08 +00:00
mscott%netscape.com
59166f5149 (not part of the build)
exorcise nsURILoaderCIDs.h


git-svn-id: svn://10.0.0.236/trunk@53726 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:45:25 +00:00
mscott%netscape.com
f4038863e2 (Not part of the seamonkey build yet)
add manifest idl file for uriloader


git-svn-id: svn://10.0.0.236/trunk@53725 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:43:38 +00:00
rbs%maths.uq.edu.au
ed99068e15 Removed a left-over getchar() that was there for debugging purposes
git-svn-id: svn://10.0.0.236/trunk@53724 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:43:30 +00:00
rbs%maths.uq.edu.au
823c317c0c Code for the msqrt MathML tag
git-svn-id: svn://10.0.0.236/trunk@53723 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:40:04 +00:00
sdagley%netscape.com
4a221cb89e File Removed.
git-svn-id: svn://10.0.0.236/trunk@53722 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:33:19 +00:00
sdagley%netscape.com
80a6ae1e66 Mac specific changes. Updating to current version of MoreFiles library (1.4.9) which is required for #17949 - nsIFile impl for Mac. r=sheriff
git-svn-id: svn://10.0.0.236/trunk@53721 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:32:53 +00:00
sdagley%netscape.com
e3933da174 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@53720 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:13:03 +00:00
jdunn%netscape.com
6af106def0 fixing HPUX 10.20's which was having problem with this definition since
it was creating an unresolved symbol "static_iid"

r= dougt@netscape.com
# 19021


git-svn-id: svn://10.0.0.236/trunk@53719 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:01:22 +00:00
vidur%netscape.com
ecb6eb504e fix for bug 18693. Event handler default actions shouldn't be done in the capture phase. R=joki.
git-svn-id: svn://10.0.0.236/trunk@53718 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 01:01:12 +00:00
rbs%maths.uq.edu.au
a5239931ae Examples to illustrate the newly added support of stretchy MathML symbols
git-svn-id: svn://10.0.0.236/trunk@53717 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:55:32 +00:00
putterman%netscape.com
86b2124a20 Fixes leak. reviewed by bienvenu.
git-svn-id: svn://10.0.0.236/trunk@53716 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:52:16 +00:00
rbs%maths.uq.edu.au
4f4d69e894 Code to support stretchy MathML symbols!
git-svn-id: svn://10.0.0.236/trunk@53715 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:49:37 +00:00
erik%netscape.com
c402c54b8b commenting out a change that caused a regression in paste-as-quote
r=akkana


git-svn-id: svn://10.0.0.236/trunk@53714 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:44:29 +00:00
tbogard%aol.net
505b219276 Changed nsPIDOMWindow::GetPrivateParent() to be implemented using it's own mChromeElement so it doesn't have to rely on the nsIWebShell::GetParentEvenIfChrome(). r=hyatt.
git-svn-id: svn://10.0.0.236/trunk@53713 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:43:19 +00:00
rbs%maths.uq.edu.au
69f12a0069 Add hook for the msqrt tag in the confined MathML world
git-svn-id: svn://10.0.0.236/trunk@53712 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:41:48 +00:00
harishd%netscape.com
1f8ab9e606 Unblocking bug 18679.
[ scanner got into an infinte loop ]


git-svn-id: svn://10.0.0.236/trunk@53711 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:25:33 +00:00
rogerl%netscape.com
20bec5b4fd Added changes at Jane's request.
(Not a prt of SeaMonkey build)


git-svn-id: svn://10.0.0.236/trunk@53710 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:05:45 +00:00
rogerl%netscape.com
5ca7bc097e Added new defs at Jane's request.
(Not a prt of SeaMonkey build)


git-svn-id: svn://10.0.0.236/trunk@53709 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:04:49 +00:00
norris%netscape.com
a1350a3bf7 Make -f semantics match those of the C engine.
git-svn-id: svn://10.0.0.236/trunk@53708 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-17 00:04:17 +00:00
norris%netscape.com
1013c44229 Add contributor.
git-svn-id: svn://10.0.0.236/trunk@53707 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:58:11 +00:00
norris%netscape.com
b893fe749d rginda's changes for having quit() take an exit code.
git-svn-id: svn://10.0.0.236/trunk@53706 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:57:23 +00:00
rogerl%netscape.com
bd24478a5d r=norris.
Fix overrun by back-reference digit sequence parsing.


git-svn-id: svn://10.0.0.236/trunk@53705 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:54:18 +00:00
rogerl%netscape.com
45e1ab641f r=norris
Fix for toString under 1.2 - calls toSource which provides extra '{}' that
doesn't match previous behaviour.


git-svn-id: svn://10.0.0.236/trunk@53704 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:53:33 +00:00
putterman%netscape.com
22559aaeb3 Fixed icons in folder pane.
git-svn-id: svn://10.0.0.236/trunk@53703 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:52:20 +00:00
rogerl%netscape.com
6760f395ea r=norris
Fixed handling of weird indices (NaN etc) for charCode and charCodeAt.
Bug #16984


git-svn-id: svn://10.0.0.236/trunk@53702 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:52:08 +00:00
rogerl%netscape.com
8bff78dad7 r=norris.
Changes for ECMA compatible function.apply handling of missing or null args
Bug #16984


git-svn-id: svn://10.0.0.236/trunk@53701 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:51:02 +00:00
ftang%netscape.com
0b3f92395d clean up nsWindow IME code to use nsCString and nsString to do buffer management. r=cata
git-svn-id: svn://10.0.0.236/trunk@53700 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:45:44 +00:00
wtc%netscape.com
04a7a748cc Bugzilla bug #17601: fixed memory leak and some other problems in our
thread-private data code.
Modified files: primpl.h, ptthread.c, prcthr.c, prtpd.c, pruthr.c.


git-svn-id: svn://10.0.0.236/trunk@53699 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:44:41 +00:00
putterman%netscape.com
4f873f1237 Partial fix for 18742. You can now move the sidebar splitter, Thanks to slamm for the fix.
Also some other skin changes to fix some icons and don't make news show up in copy and move menu.


git-svn-id: svn://10.0.0.236/trunk@53698 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:33:35 +00:00
jdunn%netscape.com
218f4125de finish unresolved symbols checkin
r dp@netscape.com
# 18896


git-svn-id: svn://10.0.0.236/trunk@53697 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:24:44 +00:00
jdunn%netscape.com
0a107d6b92 finish unresolved symbol checkins.
r dp@netscape.com
# 18896


git-svn-id: svn://10.0.0.236/trunk@53696 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:23:55 +00:00
vidur%netscape.com
8f564b57fe Fix for bug 18301. window.closed returns true for all windows that have been closed. R=troy. Fix for typo from earlier checkin from Travis that caused window.open to fail. R=travis
git-svn-id: svn://10.0.0.236/trunk@53695 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:11:50 +00:00
vidur%netscape.com
34d1147eb0 Fix for bug 10173. Attributes that are enumerated values are returned with the first letter upper-cased. R=troy
git-svn-id: svn://10.0.0.236/trunk@53694 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:09:31 +00:00
morse%netscape.com
4a0b42fe1e undoing last check-in now that bug 18479 has really been fixed
git-svn-id: svn://10.0.0.236/trunk@53693 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 23:05:49 +00:00
sspitzer%netscape.com
ef04a7c923 fix for #18999, r=putterman
gracefully handle migration if the user used movemail (unix only) in 4.x
wrap all the movemail code with #defines, it is not needed on non-unix
platforms.  movemail is still not supported, but at least now migration
(of bookmarks and cookies) doesn't fail, and you can see your old mail
in 5.0.


git-svn-id: svn://10.0.0.236/trunk@53692 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:54:58 +00:00
hangas%netscape.com
7ac7081499 New Skin work. New images for twisties. Added white border around navigator window. r=german
git-svn-id: svn://10.0.0.236/trunk@53691 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:54:38 +00:00
rods%netscape.com
39c4cb7c9e Added MakeSureSomethingIsSelected to the combobox so the ListBox can
call it after it is initialized.


git-svn-id: svn://10.0.0.236/trunk@53690 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:47:23 +00:00
rods%netscape.com
7d32b5b957 Added MakeSureSomethingIsSelected so the ListBox can call it after it is initialized.
git-svn-id: svn://10.0.0.236/trunk@53689 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:47:15 +00:00
ftang%netscape.com
7dbb611a31 fix bug 12090. Implement nsIKBStateControl for nsMacWindow . Call ResetInputState when mouse down in GoAway or Content.
git-svn-id: svn://10.0.0.236/trunk@53688 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:35:02 +00:00
waterson%netscape.com
0a1ccf23c8 Fix default 'logdir' param.
git-svn-id: svn://10.0.0.236/trunk@53687 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:19:23 +00:00
waterson%netscape.com
58a5834839 Pretty up the main table.
git-svn-id: svn://10.0.0.236/trunk@53686 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:15:26 +00:00
waterson%netscape.com
af93a2c7cc Add top-level 'logs.cgi' to show all the logs; deal with stuff being in a 'data' subdirectory.
git-svn-id: svn://10.0.0.236/trunk@53685 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 22:10:11 +00:00
mscott%netscape.com
7acdb1ca78 I need to add this bogus file to uriloader\macbuild so my mac will pull the directory...
turns out it won't pull empty directories....


git-svn-id: svn://10.0.0.236/trunk@53684 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 21:16:13 +00:00
fur%netscape.com
14e4fb4755 #8305 (Cache implementation)
Added dependencies to pick up nsStorageStream.cpp and nsBinaryStream.cpp


git-svn-id: svn://10.0.0.236/trunk@53683 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 21:14:52 +00:00
wtc%netscape.com
6b0d991d1d Bugzilla bug #18968: check for the case where RTLD_GLOBAL is not defined.
git-svn-id: svn://10.0.0.236/trunk@53682 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 21:05:41 +00:00
leaf%mozilla.org
7a81dae844 checking in xterm update fix from Pierre Phaneuf <pp@ludusdesign.com>,
r=leaf@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@53681 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:58:24 +00:00
morse%netscape.com
137d445d78 work-around for bug 18479, safe form-fill comes up blank, r=rods
git-svn-id: svn://10.0.0.236/trunk@53680 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:50:40 +00:00
rgoodger%ihug.co.nz
8216c17939 Cosmetic update to finddialog.xul and dtd. r=syd
git-svn-id: svn://10.0.0.236/trunk@53679 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:16:02 +00:00
rgoodger%ihug.co.nz
7e17ae6023 Cosmetic changes to finddialog.xul & dtd. r=syd
git-svn-id: svn://10.0.0.236/trunk@53678 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:15:20 +00:00
tbogard%aol.net
e2ce7a824b Removed nsIWebShell::GetRootWebShellEvenIfChrome(). Added nsIWebShell::GetTopLevelWindow(). Made GetRootWebShellEvenIfChrome implementation a protected member function.
git-svn-id: svn://10.0.0.236/trunk@53677 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:06:12 +00:00
tbogard%aol.net
a9a3650565 Changed calls to nsIWebShell::GetRootWebShellEvenIfChrome() and further QI's to use the new nsIWebShell::GetTopLevelWindow().
git-svn-id: svn://10.0.0.236/trunk@53676 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:05:21 +00:00
tbogard%aol.net
2a61872f8a Commented out references to nsIWebShell::GetRootWebShellEvenIfChrome().
git-svn-id: svn://10.0.0.236/trunk@53675 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 20:04:40 +00:00
fur%netscape.com
0a75ddd78f added files: mozilla/xpcom/io/nsStorageStream.cpp, mozilla/xpcom/io/nsBinaryStream.cpp
git-svn-id: svn://10.0.0.236/trunk@53673 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:45:25 +00:00
fur%netscape.com
3bddcd9e3d added files: mozilla/xpcom/io/nsIBinaryInputStream.idl, mozilla/xpcom/io/nsIBinaryOutputStream.idl, mozilla/xpcom/io/nsIStorageStream.idl
git-svn-id: svn://10.0.0.236/trunk@53672 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:42:38 +00:00
sspitzer%netscape.com
23e6b96c43 go back to using window.content.home()
no need to duplicating code.


git-svn-id: svn://10.0.0.236/trunk@53671 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:29:29 +00:00
sspitzer%netscape.com
a22048c5dc fix warning.
git-svn-id: svn://10.0.0.236/trunk@53670 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:24:35 +00:00
fur%netscape.com
0cf9e74cb2 Add storage stream and binary stream files. r: none
git-svn-id: svn://10.0.0.236/trunk@53669 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:14:51 +00:00
fur%netscape.com
497837bc4d Bug #8305, r: valeski, rickg
The storage stream provides an internal buffer that
can be filled by a client using a single output
stream.  One or more independent input streams can
be created to read the data out non-destructively.
The implementation uses a segmented buffer
internally to avoid realloc'ing of large buffers.


git-svn-id: svn://10.0.0.236/trunk@53668 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:14:08 +00:00
fur%netscape.com
2db47f04c9 Bug #8305 (Implement cache), r: valeski, rickg
The storage stream provides an internal buffer that
can be filled by a client using a single output
stream.  One or more independent input streams can
be created to read the data out non-destructively.
The implementation uses a segmented buffer
internally to avoid realloc'ing of large buffers.


git-svn-id: svn://10.0.0.236/trunk@53667 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:12:41 +00:00
alecf%netscape.com
7404fb931a fix for #18196 - fix off-by-one errors with trees that have headers - EnsureRowIsVisible and IsValidRow expect zero-based rows, not row-index based rows
r=hyatt


git-svn-id: svn://10.0.0.236/trunk@53666 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:07:34 +00:00
Jerry.Kirk%Nexwarecorp.com
70eeead4ae Fix SetTitle method for Photon Windows
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53665 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 19:06:45 +00:00
alecf%netscape.com
2e8eac3e44 fix off-by-one error when calculating row indicies for trees with headers/footers - use IsRowGroup(), which takes headers/footers into account
r=hyatt
no bug, but this fixes some wierd scrolling behavior


git-svn-id: svn://10.0.0.236/trunk@53664 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 18:57:49 +00:00
sspitzer%netscape.com
d650d0570b fix windows build bustage.
git-svn-id: svn://10.0.0.236/trunk@53662 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 17:44:37 +00:00
cls%seawood.org
c120c60094 Oops, added dbm in the wrong order.
git-svn-id: svn://10.0.0.236/trunk@53661 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 17:33:41 +00:00
sgehani%netscape.com
f5e4399856 Conforming to use API names starting lowercase. Added alias creation, plugins dir creation. Fixes bug 18339. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@53659 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 16:14:07 +00:00
sgehani%netscape.com
b2d471038a Fix for bug 18874: buttons should appear depressed when invoked by keyboard. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@53658 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 16:11:24 +00:00
sgehani%netscape.com
bbeb961bd5 Change "extracting" string. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@53657 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 16:10:26 +00:00
dougt%netscape.com
b023f23e6c fix for bug 18114. Adding simple accessor to PL_WaitForEvent.
git-svn-id: svn://10.0.0.236/trunk@53655 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 16:04:14 +00:00
cls%seawood.org
f47ecdb4ad Back by popular demand...(ok, it was just fur ;P)..dbm has returned.
git-svn-id: svn://10.0.0.236/trunk@53654 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 15:56:31 +00:00
brade%netscape.com
2529ac0ca6 fix bug 14624 (don't handle tab key twice). r=kin@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53652 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 14:41:03 +00:00
brade%netscape.com
44627def1e fix bug 18892 (r=kin@netscape.com); change constant to PRUnichar
git-svn-id: svn://10.0.0.236/trunk@53651 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 14:40:11 +00:00
briano%netscape.com
f578e0af93 Automated update
git-svn-id: svn://10.0.0.236/trunk@53650 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 12:30:18 +00:00
briano%netscape.com
bd208c9f1d Automated update
git-svn-id: svn://10.0.0.236/trunk@53649 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 12:15:24 +00:00
idk%eng.sun.com
56c7b4556f no bug id
converted pluglet runner to XPCOM module
(see bug 15217)
(not a part of regular build)


git-svn-id: svn://10.0.0.236/trunk@53648 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 10:44:25 +00:00
scc%netscape.com
4bd89164cd fixing build bustage. Further discussion is needed
git-svn-id: svn://10.0.0.236/trunk@53646 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 08:50:25 +00:00
rjc%netscape.com
2c0284aae5 Missed a "rdf:ftp" removal.
git-svn-id: svn://10.0.0.236/trunk@53645 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 08:08:22 +00:00
rjc%netscape.com
542178bb95 Obsolete the "rdf:ftp" datasource.
git-svn-id: svn://10.0.0.236/trunk@53644 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 08:00:19 +00:00
dougt%netscape.com
ff6b97fb15 checking back in changes which were backed out. Added workaround to bug
which scc pointed out.


git-svn-id: svn://10.0.0.236/trunk@53643 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 07:44:18 +00:00
dp%netscape.com
9fb2047017 Changing comments for readability.
git-svn-id: svn://10.0.0.236/trunk@53642 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 07:14:49 +00:00
briano%netscape.com
ddad430b16 Automated update
git-svn-id: svn://10.0.0.236/trunk@53641 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 07:00:24 +00:00
jdunn%netscape.com
30b5b1f168 Fixing all unresolved symbols on unix. The bug has the diff's
r dp@netscape.com (ramiro helped me with it)
# 18688


git-svn-id: svn://10.0.0.236/trunk@53640 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 06:47:54 +00:00
ssu%netscape.com
f19bcaf4f2 moving nsinstall into the MOZ_MFC define. This way people who do not have MFC, do not build this module by default.
git-svn-id: svn://10.0.0.236/trunk@53639 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 06:47:19 +00:00
ssu%netscape.com
d5361306f3 undoing commenting the RESFILE line. Commenting this line out was not the correct fix.
git-svn-id: svn://10.0.0.236/trunk@53638 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 06:46:17 +00:00
jdunn%netscape.com
f0c83b3d5a Fixing all unresolved symbols on unix. The bug has the diff's
r dp@netscape.com (ramiro helped me with it)
# 18688


git-svn-id: svn://10.0.0.236/trunk@53637 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 06:02:31 +00:00
ssu%netscape.com
397e00067a fixing bug #17109. It now takes into account the size of the .xpi file to be downloaded as part of the amount of disk space required. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@53636 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:59:35 +00:00
ssu%netscape.com
2047a1c1f5 fixing bug #18683. fixing how libjar does crc checks. It didn't work for all cases, until now. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@53635 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:43:44 +00:00
rjc%netscape.com
fa176863e4 Bye bye "rdf:ftp"
git-svn-id: svn://10.0.0.236/trunk@53634 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:40:17 +00:00
rjc%netscape.com
9df9583dae Fix bug # 6637: removing old, crufty FTP datasource from build. Just removing file(s) and CIDs. Review: me
git-svn-id: svn://10.0.0.236/trunk@53633 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:37:30 +00:00
waterson%netscape.com
9e9294757a Bug 10469. Remove 'natural order position' stuff. Make sure that nsXULSortService::InsertContainerNode() does the right thing when presented with an unsorted tree. r=rjc
git-svn-id: svn://10.0.0.236/trunk@53632 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:34:13 +00:00
norris%netscape.com
331cf153db * Fix 12124 [DOGFOOD] Reading user's preferences
* Implement site-specific security policies (bug 858)
r=mstoltz
* Use Recycle rather than delete[] to clean up Purify logs
r=law


git-svn-id: svn://10.0.0.236/trunk@53631 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:07:31 +00:00
jdunn%netscape.com
4c9d876f3f Fixing all unresolved symbols on unix. The bug has the diff's
r dp@netscape.com (ramiro helped me with it)
# 18688


git-svn-id: svn://10.0.0.236/trunk@53630 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:03:45 +00:00
pavlov%netscape.com
ca8ce3c748 More work on making widget idlified. merged from branch. (not built) r=travis
git-svn-id: svn://10.0.0.236/trunk@53629 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 05:03:09 +00:00
bienvenu%netscape.com
c6bc213629 fix build warning
git-svn-id: svn://10.0.0.236/trunk@53627 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:55:37 +00:00
sspitzer%netscape.com
47e22673f7 fix for #18940. don't define the default home page in the dtd. this is already
set in all.js.

the bug was caused by code in navigator.js that got this attribute from the
home button, and tried to set the pref!

r=mozilla@bucksch.org (benb)


git-svn-id: svn://10.0.0.236/trunk@53624 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:50:32 +00:00
pavlov%netscape.com
6276c71d9a you are going to a branch, not HEAD
git-svn-id: svn://10.0.0.236/trunk@53623 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:49:59 +00:00
bienvenu%netscape.com
ad86958d59 fix build warning
git-svn-id: svn://10.0.0.236/trunk@53622 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:48:51 +00:00
pavlov%netscape.com
3787e743f7 merge from head
git-svn-id: svn://10.0.0.236/trunk@53620 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:47:02 +00:00
bienvenu%netscape.com
1cf6ec2327 fix 18925,r=sspitzer, mozilla status flags broken
git-svn-id: svn://10.0.0.236/trunk@53619 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:35:29 +00:00
cls%seawood.org
f733c6b52e Set appropriate debug flags.
git-svn-id: svn://10.0.0.236/trunk@53618 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:21:08 +00:00
idk%eng.sun.com
81c9c905de Fix for bug 15217
r = akhil.arora@eng.sun.com, netscape.public.mozilla.java, netscape.public.mozilla.plugins
Added hook for pluglet-engine.
In case there are no handlers for some MIME type this hook would be using.
This fix does not create any dependencies on java-plugin module.


git-svn-id: svn://10.0.0.236/trunk@53617 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 04:18:59 +00:00
fur%netscape.com
604b5b8c26 Fix build bustage
git-svn-id: svn://10.0.0.236/trunk@53616 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:50:56 +00:00
fur%netscape.com
f12430fa5d I screwed up the checkin message log, here's the real changes in revision
3.5 of this file.  These changes are in support of bug #8305 (Cache implementation):
r: dougt

+ Fixed off-by-one value in enumerating either forwards or backwards, such
  that the last element is never enumerated.

+ Fixed return values of IsDone() to conform to unusual nsIEnumerator definition

+ Fixed declarations so public methods can be called outside DLL


git-svn-id: svn://10.0.0.236/trunk@53614 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:23:10 +00:00
varada%netscape.com
06ba9debd2 copying customCD shell contents onto the config CD directory
git-svn-id: svn://10.0.0.236/trunk@53613 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:14:56 +00:00
varada%netscape.com
19715623b3 removing CreateRshell from wizardmachine.cpp
git-svn-id: svn://10.0.0.236/trunk@53612 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:14:13 +00:00
fur%netscape.com
d885ca903c In support of #8305 (Implementing cache), allow storing of NUL characters
in string streams. r: dougt


git-svn-id: svn://10.0.0.236/trunk@53611 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:13:49 +00:00
varada%netscape.com
5cafdc1ce6 adding part1.ini and part2.ini to ccktools directory
git-svn-id: svn://10.0.0.236/trunk@53610 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:13:37 +00:00
fur%netscape.com
eee2215bda In support of bug #8305 (Cache implementation), added new type of hash-table
key, an array of opaque data, not owned by the key. r: dougt


git-svn-id: svn://10.0.0.236/trunk@53609 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:10:54 +00:00
fur%netscape.com
2b188ce191 Fixed a problem with the NS_GENERIC_FACTORY_CONSTRUCTOR_INIT() macro.
If the Init() routine happens to perform a balanced AddRef/Release,
the instance will be prematurely destroyed when Release() is called.
The change is to do the AddRef() before calling the initialization
routine to stabilize the instance's ref-count.

r: dp, putterman


git-svn-id: svn://10.0.0.236/trunk@53608 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 03:05:36 +00:00
bienvenu%netscape.com
474d46c354 fix double headers on local filter moves, r=jefft 18733
git-svn-id: svn://10.0.0.236/trunk@53607 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:51:56 +00:00
rchen%netscape.com
0c9c9d03e4 Add L10N notes
git-svn-id: svn://10.0.0.236/trunk@53606 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:48:47 +00:00
bienvenu%netscape.com
57de49ed0a fix memory leak in canonical folder path, r=jefft
git-svn-id: svn://10.0.0.236/trunk@53605 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:43:50 +00:00
bienvenu%netscape.com
7f55d09e97 fix problem with not reporting server error messages, r=jefft 11970
git-svn-id: svn://10.0.0.236/trunk@53604 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:43:17 +00:00
brendan%mozilla.org
f02610dd2c Fix exception bytecodes to use script->main (18926, r=jband@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@53602 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:15:22 +00:00
varada%netscape.com
d7afcd0c19 adding rshell creation feature
git-svn-id: svn://10.0.0.236/trunk@53601 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:09:40 +00:00
varada%netscape.com
7ee17cd116 adding two parts of the rshell.ini
git-svn-id: svn://10.0.0.236/trunk@53600 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:08:47 +00:00
rchen%netscape.com
dbb2d8683f Add L10N Notes
git-svn-id: svn://10.0.0.236/trunk@53599 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:03:08 +00:00
slamm%netscape.com
c239249d8e Simple warning fix. Change loop index to unsigned (It starts at zero and is always incremented.)
git-svn-id: svn://10.0.0.236/trunk@53598 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 02:02:59 +00:00
waterson%netscape.com
fff58fb461 Fix exec() and kill() stuff.
git-svn-id: svn://10.0.0.236/trunk@53597 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:54:12 +00:00
despotdaemon%netscape.com
60be64bf5a Pseudo-automatic update of changes made by waqar@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53596 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:53:02 +00:00
dveditz%netscape.com
7fd4abbfe1 added Bloaty instrumentation
git-svn-id: svn://10.0.0.236/trunk@53595 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:52:29 +00:00
pavlov%netscape.com
5fdb81885f make nsFilePicker inherit from nsBaseFilePicker and add it to the build r=smfr
git-svn-id: svn://10.0.0.236/trunk@53592 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:52:19 +00:00
pavlov%netscape.com
bd4795dba7 add nsBaseFilePicker and have it built on unix r=smfr
git-svn-id: svn://10.0.0.236/trunk@53590 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:51:39 +00:00
despotdaemon%netscape.com
8f3477b6ce Pseudo-automatic update of changes made by leaf@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@53589 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:29:08 +00:00
warren%netscape.com
2976a83b9f Fix socket transport deadlock (affecting imap thread). Bug #18201 and regression bug 14612. r=rpotts
git-svn-id: svn://10.0.0.236/trunk@53588 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:25:46 +00:00
hangas%netscape.com
073f65577b Added some user-focus styles following saari's focus checkins, r=saari. Fixed 17947, 17780, 16483, 16601 which were related to focus issues. Some New Skin adjustments (menu color and 15219), r=german
git-svn-id: svn://10.0.0.236/trunk@53587 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:21:22 +00:00
pollmann%netscape.com
381644c5ab Fix typo during typo during previous checkin.
git-svn-id: svn://10.0.0.236/trunk@53586 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:20:04 +00:00
tonyr%fbdesigns.com
b1af1bd21f Added Eudora mail import module
git-svn-id: svn://10.0.0.236/trunk@53585 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:17:56 +00:00
pollmann%netscape.com
70a5cd9f40 Bug 15204: Allow getting text value in uninitialized textarea - GetText works with text inputs AND textareas. r=harishd
git-svn-id: svn://10.0.0.236/trunk@53584 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:17:54 +00:00
brendan%mozilla.org
dc881ea1fe Fix stupid logic bug (13163, r=sfraser@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@53583 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:15:05 +00:00
nhotta%netscape.com
3b57d51d53 Putting a debug printf so the tester can see the real locale used for the sorting, bug 18338, r=tao.
git-svn-id: svn://10.0.0.236/trunk@53582 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:12:47 +00:00
danm%netscape.com
371307ad92 update rev 1.166 to handle stacks of modal dialogs. r:pavlov@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53581 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:10:46 +00:00
varada%netscape.com
5c9a062ecc fix for bug#18911
git-svn-id: svn://10.0.0.236/trunk@53580 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:04:03 +00:00
tbogard%aol.net
de1f9925a5 Changed nsDocLoader to get Container by asking nsIWebShell rather than nsIContentViewerContainer.
git-svn-id: svn://10.0.0.236/trunk@53579 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:03:57 +00:00
tbogard%aol.net
b3fbe630a0 Moved GetContainer() from nsIContentViewerContainer to nsIWebShell. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53578 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 01:02:17 +00:00
sspitzer%netscape.com
5bede10c9f ignore the created executables
git-svn-id: svn://10.0.0.236/trunk@53577 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 00:42:06 +00:00
sspitzer%netscape.com
86fcef5db0 ignore generated Makefile
git-svn-id: svn://10.0.0.236/trunk@53576 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 00:41:01 +00:00
sspitzer%netscape.com
238f78aa94 changes from german@netscape.com to make the profile xul look better and look
more like the rest of the chrome.  r=sspitzer@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53575 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 00:38:16 +00:00
saari%netscape.com
11b77c2fd6 Bring back, bring back, bring back the caret to me, to me...
The return of the text caret. Simple change, start dispatching content
focus events to the window (what I checked in) *and* the document (the
way it worked before, what editor relied upon). Discussed with joki, but not
technically reviewed.


git-svn-id: svn://10.0.0.236/trunk@53571 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-16 00:04:55 +00:00
waterson%netscape.com
76b80dff7f Initial revision.
git-svn-id: svn://10.0.0.236/trunk@53569 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 23:56:58 +00:00
tbogard%aol.net
dfca085423 Changed GetContainer to be performed off the nsIDocShell parent rather than try to QI to nsIContentViewerContainer.
git-svn-id: svn://10.0.0.236/trunk@53568 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 23:48:27 +00:00
tbogard%aol.net
cf24576e46 Fixed ambigous cast.
git-svn-id: svn://10.0.0.236/trunk@53566 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 23:26:50 +00:00
waterson%netscape.com
62f1dbf3e2 Add MPL.
git-svn-id: svn://10.0.0.236/trunk@53565 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 23:15:49 +00:00
slamm%netscape.com
6aaedc5fa5 Add the MPL.
git-svn-id: svn://10.0.0.236/trunk@53564 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 23:09:58 +00:00
tbogard%aol.net
bda092db4e nsIDocShell now has a readonly attribute for the currently loaded content viewer.
git-svn-id: svn://10.0.0.236/trunk@53563 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:54:47 +00:00
rogerl%netscape.com
50e9fca03a Backing out changes to script.exec scope access. r=norris
git-svn-id: svn://10.0.0.236/trunk@53562 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:54:06 +00:00
sfraser%netscape.com
43a68dc75d Build the static lib targets of the JPEG project. r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53561 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:44:45 +00:00
sfraser%netscape.com
3d8298ab28 Remove JPEG.shlb, which is now linked in with the jpgdecoder shared lib. r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53560 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:43:37 +00:00
sfraser%netscape.com
4d4687361a Fix for 18903 -- remove an unecessary JPEG shared lib. Link JPEG.o with the decoder, and remove the JPEG shared lib from the imglib project. r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53559 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:43:10 +00:00
sfraser%netscape.com
de9cffd28a Part of fix for 18903 -- remove uneeded DLLs from the project. r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53558 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:42:27 +00:00
sfraser%netscape.com
3903b93b15 Fix for 18903 -- remove an unecessary JPEG shared lib. Make two new static lib targets. r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53557 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:41:54 +00:00
tbogard%aol.net
41d58a79d2 Changed places where container were set to use nsISupports instead of nsIContentViewerContainer. r=dp
git-svn-id: svn://10.0.0.236/trunk@53556 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:36:41 +00:00
ssu%netscape.com
3425b762fe moving setup and setuprsc to be built on if MOZ_MFC is set. This will allow people w/o MFC to build. People w/MFC should still build fine. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@53555 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:35:07 +00:00
waterson%netscape.com
fa26384174 Initial revision.
git-svn-id: svn://10.0.0.236/trunk@53554 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:31:34 +00:00
tbogard%aol.net
67a365111c Changed places where containers were set to use nsISupports instead of nsIContentViewerContainer. r=dp
git-svn-id: svn://10.0.0.236/trunk@53553 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:17:54 +00:00
jband%netscape.com
ee57201b52 r=waterson. add explicit lock and unlock to nsAutoLock. This allows us to use the autolock to cover a scope and to also explicitly bracket a call out to some other function with an unlock and relock
git-svn-id: svn://10.0.0.236/trunk@53551 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:15:27 +00:00
tbogard%aol.net
9e4e911de1 Changed interfaces to take nsISupports for the container instead of nsIContentViewerContainer. nsXULDocument was for some reason holding on to this interface (as a weak reference) but was never using it. I have therefore gotten rid of this member variable. r=dp
git-svn-id: svn://10.0.0.236/trunk@53550 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:14:37 +00:00
Jerry.Kirk%Nexwarecorp.com
241cf26867 Fixes for pulldown windows and on screen image drawing.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53549 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:11:48 +00:00
jband%netscape.com
0468fe6fcd r=norris. Fix for bug 18702. Adds code to track whether caller to xpconnect is native or JS. This allows xpconnect to decide to not call security manager to filter calls originating from native code
git-svn-id: svn://10.0.0.236/trunk@53548 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:11:21 +00:00
Jerry.Kirk%Nexwarecorp.com
078ded00e5 Fixes for on screen drawing in viewer.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53547 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 22:05:16 +00:00
wtc%netscape.com
d6c5f3cedd Bugzilla bug #16566: PR_Assert should be defined only if DEBUG is defined.
git-svn-id: svn://10.0.0.236/trunk@53546 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:59:52 +00:00
tbogard%aol.net
a0c1d51635 Simply added the TestXPEventLoop test to the makefile.
git-svn-id: svn://10.0.0.236/trunk@53545 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:52:35 +00:00
mscott%netscape.com
87ce7ec67c (not part of the seamonkey build)
Revamp the uri loader to excusively use AsyncRead instead of AsyncOpen and AsyncRead. With these changes,
we now only need to add the ability to retarget to our protocol channels instead of requiring both
retargeting and AsyncOpen support.

In order to do this, the DocumentOpenInfo object needed to become a nsIStreamListener instead of just
a stream observer.


git-svn-id: svn://10.0.0.236/trunk@53544 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:35:40 +00:00
wtc%netscape.com
7f586bd2bb Temporary depend:clean hack.
git-svn-id: svn://10.0.0.236/trunk@53543 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:32:32 +00:00
wtc%netscape.com
251e30e5b4 Bugzilla bug #17699: removed obsolete functions PR_SetThreadExit and
PR_GetThreadExit.
Modified files: pprthred.h, primpl.h, prcthr.c, prtpd.c, and pruthr.c.


git-svn-id: svn://10.0.0.236/trunk@53542 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:29:29 +00:00
varada%netscape.com
07f823f19e copying customcd to workspace autorun
git-svn-id: svn://10.0.0.236/trunk@53541 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:22:58 +00:00
erik%netscape.com
78e08763c9 bug 15627; got rid of compiler warning; r=none
git-svn-id: svn://10.0.0.236/trunk@53540 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:18:24 +00:00
valeski%netscape.com
463edf202d r=mcafee. component name change reflection. now we can traverse dir trees
git-svn-id: svn://10.0.0.236/trunk@53539 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:16:10 +00:00
erik%netscape.com
df64dd2187 bugs 15496 and 15520; put the input method window at the right location
when the user focusses a window and when the user types into the window;
coded by tajima@eng.sun.com; r=erik


git-svn-id: svn://10.0.0.236/trunk@53538 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:14:05 +00:00
akhil.arora%sun.com
d15d40f8d9 17549 r=akhil.arora@sun.com fix=Igor Nekrestyanov <nis@sparc.spb.su>
Maintain association of java dom listeners with native dom nodes


git-svn-id: svn://10.0.0.236/trunk@53535 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:12:49 +00:00
brendan%mozilla.org
52c12d5bf6 Disassembler uses ToSource, not ToString, where appropriate (DEBUG only change).
git-svn-id: svn://10.0.0.236/trunk@53532 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 21:11:59 +00:00
putterman%netscape.com
e2cbb7c81b Partial fix for 10208. When adding items to a container, update the empty attribute. reviewed by
waterson.


git-svn-id: svn://10.0.0.236/trunk@53530 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:58:39 +00:00
ftang%netscape.com
20e2b36756 add nsIKBStateControl for IME force commit and password field disable. Change window implementation to implement nsIKBStateControl in nsWindow. Fix 12250 by filtering out the composition window flag in OnIMESetContext. r=erik
git-svn-id: svn://10.0.0.236/trunk@53529 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:57:41 +00:00
putterman%netscape.com
29e05f2b3f Fixes leak. Reviewed by law.
git-svn-id: svn://10.0.0.236/trunk@53528 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:57:24 +00:00
morse%netscape.com
fa3ee309b4 fix bug 17945, string concatenation in localizable strings, r=erik
git-svn-id: svn://10.0.0.236/trunk@53527 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:53:16 +00:00
brade%netscape.com
037a9af08e File Removed.
git-svn-id: svn://10.0.0.236/trunk@53526 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:46:30 +00:00
ssu%netscape.com
0d37abe86b added myself as the module owner in this makefile
git-svn-id: svn://10.0.0.236/trunk@53525 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:24:25 +00:00
ssu%netscape.com
d9286fe159 fixing bug #18867. This now builds the resource file required to run setup.exe. This does not require MFC. It only affects windows platforms.
git-svn-id: svn://10.0.0.236/trunk@53524 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:13:53 +00:00
don%netscape.com
9e22967825 Checked in saari fix for bug #18876 to help re-open tree. r:saari
git-svn-id: svn://10.0.0.236/trunk@53523 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 20:09:37 +00:00
despotdaemon%netscape.com
fe968a4460 Pseudo-automatic update of changes made by rhess@engr.sgi.com.
git-svn-id: svn://10.0.0.236/trunk@53518 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 17:27:37 +00:00
rickg%netscape.com
a321381b94 reenabled safer version of assertion
git-svn-id: svn://10.0.0.236/trunk@53516 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 17:10:06 +00:00
rickg%netscape.com
a22352015d disable overambitious assert for now; r=rods; a=leaf
git-svn-id: svn://10.0.0.236/trunk@53515 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 16:38:29 +00:00
Jerry.Kirk%Nexwarecorp.com
91dceda3d5 Re-adding taskbar-tab-hover.gif which was accidentally taken out in
patch 1.21  This puts the Makefile.in MANIFEST and makefile.win back
sync.
r=brade


git-svn-id: svn://10.0.0.236/trunk@53514 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:50:50 +00:00
karnaze%netscape.com
6c106ec216 removed allocation warning messages
git-svn-id: svn://10.0.0.236/trunk@53513 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:42:20 +00:00
dcone%netscape.com
d93bf4b996 DrawDashedSides now used the correct height and width for the right and bottom
git-svn-id: svn://10.0.0.236/trunk@53512 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:33:25 +00:00
rods%netscape.com
86e9616018 Fixing focus & blur event dispatch (mostly having to do with native windows in embedded webshells)
Fixing the sizing issues related to box-sizing for CSS.
r=buster, bug 17196,18448


git-svn-id: svn://10.0.0.236/trunk@53511 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:20:03 +00:00
rods%netscape.com
281122754e temporarily adding box sizing utility methods to help forms calculate their size
appropriately for box sizing.
r=kmcllsuk, bug 18448


git-svn-id: svn://10.0.0.236/trunk@53510 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:16:28 +00:00
rods%netscape.com
30e99e419b It will now mask out any focus events that may be generated because of native windows
r=buster, bug 17196


git-svn-id: svn://10.0.0.236/trunk@53509 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:13:12 +00:00
rods%netscape.com
0fd71cf8f9 added the call DoneAddingContent for the select after it has been created.
r=dcone,bug 18784,16821


git-svn-id: svn://10.0.0.236/trunk@53508 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 15:11:33 +00:00
pavlov%netscape.com
eb7f112fcb I suck.
git-svn-id: svn://10.0.0.236/trunk@53507 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 11:40:00 +00:00
pavlov%netscape.com
a0bb112ebc add GetDefaultString() r=mozbot
git-svn-id: svn://10.0.0.236/trunk@53506 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 11:16:06 +00:00
tbogard%aol.net
5e7ea957d8 Changes to reflect changes in nsIContentViewerContainer usage.
git-svn-id: svn://10.0.0.236/trunk@53505 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 10:51:57 +00:00
pavlov%netscape.com
036378e00c unix nsIFilePicker implimentation r=travis
git-svn-id: svn://10.0.0.236/trunk@53504 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 10:36:10 +00:00
pavlov%netscape.com
1de4cf33b3 show returns a short instead of a boolean r=travis
git-svn-id: svn://10.0.0.236/trunk@53503 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 10:19:00 +00:00
pavlov%netscape.com
8b92970433 added files: mozilla/widget/public/nsIFilePicker.idl
git-svn-id: svn://10.0.0.236/trunk@53502 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 09:34:26 +00:00
pavlov%netscape.com
c7ec051caa add nsIFilePicker.idl to the manifest
git-svn-id: svn://10.0.0.236/trunk@53501 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 09:33:34 +00:00
pavlov%netscape.com
9697bc32c8 leave nsIFileWidget, add nsIFilePicker as the one true file picker. add this to the build. r=travis
git-svn-id: svn://10.0.0.236/trunk@53500 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 09:32:51 +00:00
pavlov%netscape.com
6870fd7681 create one true scriptable file picker interface r=travis
git-svn-id: svn://10.0.0.236/trunk@53497 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 08:13:40 +00:00
nisheeth%netscape.com
5338fcdee4 Checkin won't affect build. Re-applying mozilla specific defines that weren't included in the source drop from Keith.
git-svn-id: svn://10.0.0.236/trunk@53495 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:48:36 +00:00
tbogard%aol.net
702a9de01d Removed temporary QI to nsIContentViewerContainer as nsISupports is what is needed on the parameter anyway. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53494 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:47:01 +00:00
nisheeth%netscape.com
381e5465e7 Checking not part of build. Removing files that had gotten checked in with upper case filenames.
git-svn-id: svn://10.0.0.236/trunk@53493 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:30:52 +00:00
tbogard%aol.net
3332c74e48 Changed references to nsIContentViewerContainer to nsISupports in the march to get rid of nsIContentViewerContainer. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53492 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:29:23 +00:00
tbogard%aol.net
a5283d2178 Changed references to nsIContentViewerContainer to nsISupports in the march to get rid of nsIContentViewerContainer. Fixed some refcounting (or lack there of). This module NEEDS SERIOUS XPCOM work and review. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53491 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:28:44 +00:00
nisheeth%netscape.com
a2bc9a1e09 Checkin not part of build Checking in new files for Transformiix from Keith Visco (keith@ziplink.net)
git-svn-id: svn://10.0.0.236/trunk@53490 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:28:04 +00:00
nisheeth%netscape.com
f553d5a1c9 Checkin not part of build. New version of Transformiix from Keith Visco (kvisco@ziplink.net)
git-svn-id: svn://10.0.0.236/trunk@53489 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 07:13:17 +00:00
sfraser%netscape.com
820a1d39c8 Removed nsKeyBindMgr.cpp from teh project.
git-svn-id: svn://10.0.0.236/trunk@53488 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 06:44:04 +00:00
tbogard%aol.net
9394028bd9 Removed these two files which are no longer used. r=pavlov.
git-svn-id: svn://10.0.0.236/trunk@53483 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 05:09:39 +00:00
beard%netscape.com
01a5d5daf9 bug #15906, moved stubs from NSStartup.c to nsGCStubs.c.
git-svn-id: svn://10.0.0.236/trunk@53482 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 03:44:13 +00:00
beard%netscape.com
c691aa7131 bug #15906: added symbol_name parameter to GC_address_to_source, instead of relying on traceback table.
git-svn-id: svn://10.0.0.236/trunk@53481 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 03:26:03 +00:00
wtc%netscape.com
b3a7327bd2 Bugzilla bug #18826: some systems don't have RTLD_LOCAL defined. Thanks
to dejong@cs.umn.edu for the bug report and suggested fix.


git-svn-id: svn://10.0.0.236/trunk@53480 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-15 00:07:00 +00:00
rickg%netscape.com
698b534caa trivial removal of warnings; r=none
git-svn-id: svn://10.0.0.236/trunk@53479 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 23:15:35 +00:00
rbs%maths.uq.edu.au
29f1545c98 Catching up with recent changes in layout. Update to auto-install the mathml.dtd in bin/dtd/
git-svn-id: svn://10.0.0.236/trunk@53478 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 23:10:56 +00:00
rbs%maths.uq.edu.au
38111aec46 Catching up with recent changes in layout
git-svn-id: svn://10.0.0.236/trunk@53477 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 22:15:05 +00:00
putterman%netscape.com
e945cca3a4 Fix potential crash from last checkins that might occur when shutting down without
having run mailnews.


git-svn-id: svn://10.0.0.236/trunk@53476 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 22:03:24 +00:00
putterman%netscape.com
3ce86bbc71 Fix for 17712. Reviewed by bienvenu and alecf. Mailnews shuts down accounts, biff,
and folders properly as an xpcom shutdown observer.


git-svn-id: svn://10.0.0.236/trunk@53475 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 20:36:22 +00:00
jdunn%netscape.com
70bee2b278 adding newline at end of file... required by HP
git-svn-id: svn://10.0.0.236/trunk@53473 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 20:26:08 +00:00
morse%netscape.com
9374c29050 fix bug 17957, confirmation when changing password, r=dp
git-svn-id: svn://10.0.0.236/trunk@53469 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 16:17:01 +00:00
fur%netscape.com
85eff30f18 Fixed copy/paste error in comment
git-svn-id: svn://10.0.0.236/trunk@53468 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 15:59:17 +00:00
fur%netscape.com
07cec86849 Return NS_ERROR_FACTORY_NOT_REGISTERED, not NS_ERROR_FAILURE, if a non-existent ProgID is used to instantiate a component. Also, don't ignore CLSID parse errors. R: dp
git-svn-id: svn://10.0.0.236/trunk@53467 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 15:41:40 +00:00
rjc%netscape.com
52ab5d0a4d XUL templates can now be specified via attribute instead of a child node of the root. Also, sorting info can now be specified on the root node, so now any RDF-generated content can be sorted (not just trees). Review: me
git-svn-id: svn://10.0.0.236/trunk@53466 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 11:10:34 +00:00
tbogard%aol.net
13b7290eca Removed QueryCapability to reflect removal in the nsIContentViewerContainer API. Changed call the nsIContentViewer::SetContainer() to cast to the right nsISupports.
git-svn-id: svn://10.0.0.236/trunk@53465 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:24:37 +00:00
tbogard%aol.net
3d105e77c7 Changed QueryCapability to use the new interface requestor. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53464 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:22:00 +00:00
tbogard%aol.net
88e87f8850 Reflect changes to nsIContentViewer::SetContainer and GetContainer API. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53463 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:12:21 +00:00
tbogard%aol.net
80cb90d4a4 Removed QueryCapability to reflect changes in nsIContentViewerContainer API. Casting change when calling nsIContentViewer::SetContainer. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53462 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:11:26 +00:00
tbogard%aol.net
9336c33e4f Changed Set and GetContainer to deal with nsISupports instead of nsIContentViewerContainer. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53461 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:10:32 +00:00
tbogard%aol.net
f33c6ad621 Removed QueryCapability as it is no longer used. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53460 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:10:05 +00:00
rickg%netscape.com
00192bb235 change NS_ASSERTION to NS_WARN_IF_FALSE; r=none
git-svn-id: svn://10.0.0.236/trunk@53459 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 10:05:40 +00:00
rickg%netscape.com
bcf8227c2a force rebuild of this file
git-svn-id: svn://10.0.0.236/trunk@53458 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 08:41:36 +00:00
rickg%netscape.com
ddde4bb78a finally: a fix for archaic compilers
git-svn-id: svn://10.0.0.236/trunk@53457 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 07:58:05 +00:00
rickg%netscape.com
aaa3aafc43 trying to get around string problem
git-svn-id: svn://10.0.0.236/trunk@53456 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 07:50:15 +00:00
rickg%netscape.com
0c7236fc65 try to get around string problem
git-svn-id: svn://10.0.0.236/trunk@53455 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 07:46:23 +00:00
rickg%netscape.com
27037be4db try again to get around unix problem
git-svn-id: svn://10.0.0.236/trunk@53454 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 07:20:02 +00:00
rickg%netscape.com
3a276447b6 touch file to force recompile
git-svn-id: svn://10.0.0.236/trunk@53453 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 07:07:47 +00:00
rickg%netscape.com
538fc8b875 try to get around linux compiler grief
git-svn-id: svn://10.0.0.236/trunk@53452 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 06:49:43 +00:00
rickg%netscape.com
a01e50e17f 2nd half of parser wip; lots of bugs; r=harishd
git-svn-id: svn://10.0.0.236/trunk@53451 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 06:23:11 +00:00
rickg%netscape.com
6e4e20009b bug18337 and fixes for embedded nulls; r=harishd
git-svn-id: svn://10.0.0.236/trunk@53450 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 06:22:52 +00:00
rickg%netscape.com
3256544542 update to sync with string API change
git-svn-id: svn://10.0.0.236/trunk@53449 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 06:22:48 +00:00
beard%netscape.com
c9334b0fcd partial reversion of view manager, to fix XP menu breakage on windows.
git-svn-id: svn://10.0.0.236/trunk@53448 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 05:47:00 +00:00
beard%netscape.com
fb2ed0031b fix VC5 bustage, needed to add const qualifiers to GetWidgetView, ViewToWidget.
git-svn-id: svn://10.0.0.236/trunk@53446 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 03:53:51 +00:00
cls%seawood.org
36a6a1da9c Removing dbm & modules/security/freenav from DIRS
git-svn-id: svn://10.0.0.236/trunk@53445 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 02:52:19 +00:00
beard%netscape.com
9a5f66247d pork jockey paint fixes. bug=18140, r=kmcclusk,pavlov
git-svn-id: svn://10.0.0.236/trunk@53444 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 02:51:25 +00:00
briano%netscape.com
e915c380e1 Automated update
git-svn-id: svn://10.0.0.236/trunk@53443 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 01:30:14 +00:00
cls%seawood.org
00733493f8 Remove substitution of unused variables
git-svn-id: svn://10.0.0.236/trunk@53442 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 01:26:33 +00:00
cls%seawood.org
ff8505d463 Removing use of unneeded dbm module from win32 build
git-svn-id: svn://10.0.0.236/trunk@53441 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 00:52:48 +00:00
rods%netscape.com
aff2ad4caa Should always return true, the caching of the "true" value is most important. Failing on getting the
preshell or frames should not be passed back.
r=self, bug 18784


git-svn-id: svn://10.0.0.236/trunk@53440 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 00:35:35 +00:00
rods%netscape.com
8de7b8fef1 Added notification to the select in CreateElemenet to tell it it is complete.
r=vidur(sort iof, we talked about this change on friday) bug 18784


git-svn-id: svn://10.0.0.236/trunk@53439 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-14 00:34:15 +00:00
cls%seawood.org
3eb07b84ae Removing dependency upon security/freenav module. r=alecf
git-svn-id: svn://10.0.0.236/trunk@53438 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 23:51:49 +00:00
pinkerton%netscape.com
1ae8aef62a add ability to drag the urlbar proxy icon as a demo of d&d. r=scc.
git-svn-id: svn://10.0.0.236/trunk@53437 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 23:28:51 +00:00
cls%seawood.org
0c8429dbc0 Replace uint* (which are not defined on all systems) with the appropriate PRUint* types. Submitted by Jerry L. Kirk <Jerry.Kirk@Nexwarecorp.com>
git-svn-id: svn://10.0.0.236/trunk@53436 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 22:37:44 +00:00
cls%seawood.org
a2b4334717 Removing the need for MFC from the build. The .rc files require afxres.h to build but do not appear to be neccessary themselves.
git-svn-id: svn://10.0.0.236/trunk@53435 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 22:33:41 +00:00
cmanske%netscape.com
1bed6fcc4e A better fix for Mac build bustage
git-svn-id: svn://10.0.0.236/trunk@53433 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 19:27:59 +00:00
cmanske%netscape.com
949d747bf6 Fixing Mac build bustage
git-svn-id: svn://10.0.0.236/trunk@53432 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 19:18:37 +00:00
cmanske%netscape.com
fc50750177 Partial fix for 14344(Page Properties) and 18774(Increase/Decrease Font Size). Fixed 18234 (move Advanced Edit button), 18485 (don't prompt for title with Save As), 16714 (undefined value for para. property combobox) and 18494 (add filename to window caption). Improved Image Properties dialog and CSS style for toolbars. Added new Composer icons. r=sfraser
git-svn-id: svn://10.0.0.236/trunk@53428 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 16:37:58 +00:00
cmanske%netscape.com
c88c677147 Changed Mail Composer XUL to use Increase/Decrease font size instead of combobox (part of fix for 18774) r=sfraser
git-svn-id: svn://10.0.0.236/trunk@53427 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 16:37:16 +00:00
ducarroz%netscape.com
996c3bcb67 Fix for bug 18605. We need to listen on nsMsgCompose and not anymore on nsIEditorShell in order to synch. the Front End with the Back End. R=rhp
git-svn-id: svn://10.0.0.236/trunk@53426 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 16:04:41 +00:00
blizzard%redhat.com
287d557df6 return GDK_FILTER_REMOVE for ConfigureNotify events on the bin_window. this will prevent ConfigureNotify event compression from occuring with older versions of gtk.
git-svn-id: svn://10.0.0.236/trunk@53424 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 15:05:40 +00:00
law%netscape.com
6929a449e0 Fix bustage by backing out some CallQueryInterface calls (for Travis); r=travis@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53423 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 08:20:53 +00:00
saari%netscape.com
9e56ded383 Adding user-focus: normal CSS rule to make message compose subject and to: field fuction properly. R: billions and billions of monkeys
git-svn-id: svn://10.0.0.236/trunk@53422 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 08:17:17 +00:00
tbogard%aol.net
80bdf7abcd Implemented a number of the Positioning / Sizing routines.
git-svn-id: svn://10.0.0.236/trunk@53421 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 08:09:16 +00:00
law%netscape.com
f9dc85d792 Yet another fix to try to become non nsCOMPtr-challenged
git-svn-id: svn://10.0.0.236/trunk@53420 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 07:40:30 +00:00
tbogard%aol.net
52c3ea73a7 Changed storage of of the container to hold simply nsISupports as the mContainer instead of nsIContentViewerContainer. Changed calls to QueryCapability to use the nsIInterfaceRequestor::GetInterface(). r=scc
git-svn-id: svn://10.0.0.236/trunk@53419 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 07:36:28 +00:00
tbogard%aol.net
a79ed82edc Changed an NS_ASSERTION to be an NS_WARN_IF_FALSE. r=scc
git-svn-id: svn://10.0.0.236/trunk@53418 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 07:34:29 +00:00
law%netscape.com
ea15cf034d Better fix for VC++5 and Solaris bustage
git-svn-id: svn://10.0.0.236/trunk@53417 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 07:04:36 +00:00
law%netscape.com
c60f524dfb Fix for VC++5 and Solaris bustage
git-svn-id: svn://10.0.0.236/trunk@53416 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 06:32:55 +00:00
law%netscape.com
44b3d23c6d Fixing non-debug build bustage
git-svn-id: svn://10.0.0.236/trunk@53415 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 06:27:22 +00:00
warren%netscape.com
0dddae74b6 Fixed QI problem now that comptrs check.
git-svn-id: svn://10.0.0.236/trunk@53414 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 06:18:34 +00:00
warren%netscape.com
50fd544966 Fix for case where we're trying to Write to a blocking stream, and we're out of buffer space. This should block. r=rpotts
git-svn-id: svn://10.0.0.236/trunk@53413 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 06:16:52 +00:00
law%netscape.com
c4a2b4eb53 Fixes for #10737 (ftp download), overhauled to work better with Necko; r=valeski
git-svn-id: svn://10.0.0.236/trunk@53412 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 05:37:00 +00:00
tbogard%aol.net
6aeba41e73 Changed the QueryInterface to be a QUERY using the macros. r=scc
git-svn-id: svn://10.0.0.236/trunk@53411 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 05:31:36 +00:00
saari%netscape.com
48d75f5289 Landing focus changes. R: joki
git-svn-id: svn://10.0.0.236/trunk@53410 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 05:16:33 +00:00
harishd%netscape.com
8f5bb2e4a0 Another attempt to fix the bustage!!!
git-svn-id: svn://10.0.0.236/trunk@53409 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 04:56:56 +00:00
saari%netscape.com
1b5c5e872b gtk widget changes to facilitate new focus work. R: pavlov
git-svn-id: svn://10.0.0.236/trunk@53407 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 04:53:18 +00:00
harishd%netscape.com
3590e2325e Fix for the bustage.
git-svn-id: svn://10.0.0.236/trunk@53406 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 04:37:54 +00:00
sgehani%netscape.com
fe40f4a5a5 *** NOT PART OF BUILD ***
* Bug fix 18703: call AbortInstall() if errors encountered during installation.   

  * Bug fix 15954: delete Component Registry after XPInstall engien is done with it.


git-svn-id: svn://10.0.0.236/trunk@53405 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 04:08:50 +00:00
tbogard%aol.net
fc9e43113e Made webshell implement nsIInterfaceRequestor. This paves the way for me to start changing people to not use nsIContentViewerContainer::QueryCapability(). r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53404 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 04:06:23 +00:00
sgehani%netscape.com
9e3940cd0d Fix bug 18670: handle enter key in addition to return key for default buttons on the Mac Install Wizard UI. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@53403 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 04:06:05 +00:00
harishd%netscape.com
1e6fe5a7f5 This checkin contains combined work of rickg and harishd
Harishd's Changes:
 Fix for bugs
 2749    - Tweaked strict comment handling, i.e., <!------> is now treated as an illegal comment in strict mode
16934   - Rectifed reporting of JS line error when a newline is found within a tag.
15204   - Made TEXTAREA content to reflect the source document.
11979, 16826  - Stoping the parser properly on receiving the stop-error message.
17594   - Added code to parse <!DOCTYPE> content correctly.
17496   - Building up the stack for orphaned OPTIONs

r=rickg

Rickg's Changes:
  rickg will be posting comments on his changes by 11/12/99.

r=harishd


git-svn-id: svn://10.0.0.236/trunk@53402 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 03:53:11 +00:00
sspitzer%netscape.com
ff9a5de363 really fix the warning this time.
git-svn-id: svn://10.0.0.236/trunk@53401 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 03:49:30 +00:00
valeski%netscape.com
af81ab813d another shot at vc5 bustage
git-svn-id: svn://10.0.0.236/trunk@53400 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 03:17:54 +00:00
valeski%netscape.com
9386a6d995 another shot at 5.0 bustage
git-svn-id: svn://10.0.0.236/trunk@53399 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 03:07:01 +00:00
sgehani%netscape.com
a62f6077ea MIWCommon + Netscape || MIWCommon + Mozilla subsumes MacInstallWizard (now obsolete).
git-svn-id: svn://10.0.0.236/trunk@53398 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 02:49:30 +00:00
mcafee%netscape.com
d0c7a84da9 Removing multiple FE support, we were not using it. Fixing mozilla-bin hash table problem, binary was not getting deleted. Other minor cleanup. r=slamm
git-svn-id: svn://10.0.0.236/trunk@53397 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 02:43:55 +00:00
sspitzer%netscape.com
457995c98d fix for #17954
before, if "mail.directory" was set, we'd assume the mail wasn't in the standard
default place, so we'd migrate Mail -> Mail5
now, we check if "mail.directory" == the default place.  if so, we migrate
it like we would if it wasn't set.
Mail -> Users50/<profile>/Mail

to help do this, I added Equals() to the nsIFileSpec interface, to compare
two nsIFileSpec's, it does this by comparing the nsFileSpecs.


git-svn-id: svn://10.0.0.236/trunk@53396 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 02:02:22 +00:00
sspitzer%netscape.com
f8f296d9bd fix warning by casting. r=slamm
git-svn-id: svn://10.0.0.236/trunk@53395 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 01:59:19 +00:00
valeski%netscape.com
c7d300d956 fixing bustage for win32 vc5
git-svn-id: svn://10.0.0.236/trunk@53394 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 01:56:02 +00:00
dveditz%netscape.com
f4e3a02775 variable name change to silence build warning
git-svn-id: svn://10.0.0.236/trunk@53393 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 01:54:12 +00:00
valeski%netscape.com
4ca7261c2d fixing win32 vc5 bustage
git-svn-id: svn://10.0.0.236/trunk@53392 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 01:48:17 +00:00
slamm%netscape.com
65de125a35 Fix build warnings. r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@53391 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 01:36:34 +00:00
wtc%netscape.com
ffa3d44778 Bugzilla bug #16845: added new function PR_LoadLibraryWithFlags.
Also, use RTLD_LAZY on Linux (was using RTLD_NOW).
Modified files: prlink.h, prlink.c.


git-svn-id: svn://10.0.0.236/trunk@53390 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 01:27:06 +00:00
rchen%netscape.com
ad4953c21f Modify L10N note
git-svn-id: svn://10.0.0.236/trunk@53389 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:48:23 +00:00
sgehani%netscape.com
fd7cff88d9 Fixes for bug 18683. Libjar interfaces changed but the implementation didn't so XPInstall was horked. This fixes the runtime XP horkage. [r=dveditz]
Also, added deletion of extracted files if the CRC-32 doesn't match. Mapped 'PR_Delete' to 'remove' for STANDALONE. [r=mstoltz]


git-svn-id: svn://10.0.0.236/trunk@53388 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:44:56 +00:00
sgehani%netscape.com
28bd8c8413 Mac profiler code crept in. Removed this ifdef'd cruft.
git-svn-id: svn://10.0.0.236/trunk@53387 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:43:12 +00:00
sgehani%netscape.com
134c4195ec Fixes for bug 18683. Libjar interfaces changed but the implementation didn't. This fixes the runtime XP horkage. [r=dveditz]
git-svn-id: svn://10.0.0.236/trunk@53386 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:39:03 +00:00
mark.lin%eng.sun.com
dc17bcb8fb Added support for Proxies in the MRJ Plugin via getProxyForURL. Reviewed
by ed.burns@eng.sun.com and approved by drapeau@eng.sun.com. Fixes bug
#18691. I can be contacted at mark.lin@eng.sun.com or
phone: (408) 517-5365, (650) 627-8409.


git-svn-id: svn://10.0.0.236/trunk@53385 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:37:48 +00:00
rchen%netscape.com
489056f14a Modify L10N notes
git-svn-id: svn://10.0.0.236/trunk@53384 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:37:34 +00:00
valeski%netscape.com
d8847a0d1c 18725, r=sdagley. FTP is now cancellable.
* added new state to FTP. data channel reading state.

* the FTP channel's SetConnectionQueue now handles a null arg and resets it's eventq if null is passed in.


git-svn-id: svn://10.0.0.236/trunk@53383 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:31:36 +00:00
fergus%netscape.com
c2400d6df6 Added/updated Localization Notes.
r: rchen@netscape.com & chjung@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53382 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:31:35 +00:00
akkana%netscape.com
9d3b32781e 18576: Enclose plaintext replies in a <pre> so they don't get wrapped,
and add appropriate edit rules to split pre tags when editing plaintext.
r=sfraser


git-svn-id: svn://10.0.0.236/trunk@53381 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:26:45 +00:00
rchen%netscape.com
f17b519acb Modify Localization notes
git-svn-id: svn://10.0.0.236/trunk@53380 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:22:31 +00:00
ducarroz%netscape.com
87c867fae9 File Removed.
git-svn-id: svn://10.0.0.236/trunk@53379 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-13 00:00:29 +00:00
akhil.arora%sun.com
acf8eb3875 17809 r=av the sun c++ 5.0 compiler's version of strchr returns const char*
This fix is needed in order to be able to build with this compiler


git-svn-id: svn://10.0.0.236/trunk@53378 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:55:01 +00:00
akhil.arora%sun.com
9d927bb510 18639 r=dp need to cast away the const returned by the sun C++ 5.0 compiler
git-svn-id: svn://10.0.0.236/trunk@53377 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:52:17 +00:00
danm%netscape.com
b74ba16a95 Use new modal event filtering method on nsIWidget. Reset modal window flag when modal window is closed. part of fix for bug 14131. r:rods@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53376 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:46:39 +00:00
danm%netscape.com
589934792f Gut modal event filtering (relying instead on glib modal window flag). part of fix for bug 14131. r:rods@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53375 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:46:36 +00:00
danm%netscape.com
3f552485cf Add ModalEventFilter (originally nsAppShell::EventIsForModalWindow) and add parameter to SetModal. part of fix for bug 14131. r:rods@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53374 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:46:30 +00:00
danm%netscape.com
69f9b6a11c add (unimplemented) parameter to SetModal. part of fix for bug 14131. r:rods@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53373 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:46:23 +00:00
danm%netscape.com
393dab04e5 moved nsAppShell::EventIsForModalWindow to nsWidget::ModalEventFilter, teach latter to accept events for modal window and any active rollup widget window. part of fix for bug 14131. r:rods@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53372 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:46:11 +00:00
danm%netscape.com
5dc1a4f316 moved nsAppShell::EventIsForModalWindow to nsWidget::ModalEventFilter. part of fix for bug 14131. r:rods@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53371 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:45:59 +00:00
ducarroz%netscape.com
846f71ee05 Fix for bug 12080, 16730: I cannot modify the window from a JS listenner function, therefore I use a timer function to do the job. Also, I've implemented support for pref "mailnews.reply_on_top". And add a space to the standard signature separator, now it's "-- ". R=jefft
git-svn-id: svn://10.0.0.236/trunk@53370 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:44:28 +00:00
ducarroz%netscape.com
eecd5ec27f Add a dark gray line under the addressing toolbar to separate it from either the body or the HTML format toolbar. R=german
git-svn-id: svn://10.0.0.236/trunk@53369 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:44:26 +00:00
ducarroz%netscape.com
8f09c74c51 Remove unused files. R=jefft
git-svn-id: svn://10.0.0.236/trunk@53368 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:44:24 +00:00
ducarroz%netscape.com
bcf693c827 Fix build warning. R=mscott
git-svn-id: svn://10.0.0.236/trunk@53367 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:44:17 +00:00
petitta%netscape.com
ae59418657 Added more mkdir's to create cd layout
git-svn-id: svn://10.0.0.236/trunk@53366 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 23:38:25 +00:00
terry%mozilla.org
33db2438de Added missing get_line.pl.
git-svn-id: svn://10.0.0.236/trunk@53364 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 21:14:29 +00:00
brendan%mozilla.org
2d612a6ea6 Fix 18684, bad combo of old-latent and new bugs (r=shaver@mozilla.org).
git-svn-id: svn://10.0.0.236/trunk@53363 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 20:41:04 +00:00
blizzard%redhat.com
7a3b237f3f add widget/src/gtksuperwin/Makefile
git-svn-id: svn://10.0.0.236/trunk@53358 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 20:12:28 +00:00
blizzard%redhat.com
a2f71091f4 add the gtksuperwin library. this is not part of the build. a=granrose
git-svn-id: svn://10.0.0.236/trunk@53357 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 20:12:02 +00:00
norris%netscape.com
db83163c81 Fix 18634 [CRASH] mozilla -installer crashes
r=sspitzer@netscape.com, a=sspitzer@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53356 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 18:59:03 +00:00
dcone%netscape.com
f6f13004dc Fixed the MoveTo to move to the x and y instead of the y and y. R=rods
git-svn-id: svn://10.0.0.236/trunk@53352 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 15:10:40 +00:00
rods%netscape.com
a5ce70aa7d Disabled key events when it is disabled
r=dcone,b=14771


git-svn-id: svn://10.0.0.236/trunk@53351 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 15:08:28 +00:00
rods%netscape.com
bcc1dd2443 Removed the mDisplay data member it was the same as mHasAllFrames, this was preventing
the options from having there selected state displayed initially
Also, changed it so when in drop down mode and nothing is selected it always scrolls
to 0,0
b=14771,13771 r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@53350 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 15:00:30 +00:00
srinivas%netscape.com
c380166172 Added a new test case for PR_SendFile. Bugzilla #17486.
git-svn-id: svn://10.0.0.236/trunk@53349 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 13:40:17 +00:00
srinivas%netscape.com
9381966367 Include string.h for string functions. Bugzilla 17940.
git-svn-id: svn://10.0.0.236/trunk@53348 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 13:08:43 +00:00
warren%netscape.com
353db4a569 Fixed breakage due to new generic module stuff.
git-svn-id: svn://10.0.0.236/trunk@53347 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:40:30 +00:00
dp%netscape.com
6d145b7f92 Fixing spelling mistake.
git-svn-id: svn://10.0.0.236/trunk@53346 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:38:26 +00:00
tbogard%aol.net
0aa1b10d0c Changed a temp XPCOM manual ref pointer to an nsCOMPtr.
git-svn-id: svn://10.0.0.236/trunk@53345 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:13:52 +00:00
warren%netscape.com
6be51335c6 Minor fix.
git-svn-id: svn://10.0.0.236/trunk@53344 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:10:40 +00:00
tbogard%aol.net
9d54835d01 Got more implementation for the DoContent methods. It now calls the new nsDocShell::CreateContentViewer method to kick off the content viewer creation and pairing to the stream.
git-svn-id: svn://10.0.0.236/trunk@53343 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:09:27 +00:00
tbogard%aol.net
9504c337e6 Added CreateContentViewer and NewContentViewerObj methods for docShell.
git-svn-id: svn://10.0.0.236/trunk@53342 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:07:28 +00:00
warren%netscape.com
f4eb982ac0 Added NS_NewGenericModule. Made NS_IMPL_NSGETFACTORY use it to save space. r=dp,alecf
git-svn-id: svn://10.0.0.236/trunk@53341 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 09:07:26 +00:00
warren%netscape.com
d374c3916f Added neckoutil_s.lib
git-svn-id: svn://10.0.0.236/trunk@53340 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 08:58:32 +00:00
warren%netscape.com
bafdd8e2c0 Added idl files
git-svn-id: svn://10.0.0.236/trunk@53339 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 08:57:52 +00:00
tbogard%aol.net
78db3add9d Removed the call to CanHandleContentType as this need to be re-worked now that there is only going to be one DocShell for all content types.
git-svn-id: svn://10.0.0.236/trunk@53338 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 07:29:45 +00:00
tbogard%aol.net
59bdeee953 Now that we have decided that there is only one docshell for all content types, we needed to get rid of the base class/ content type implementation. This checkin takes and moves the nsDocShellBase to be nsDocShell. It now holds the nsIHTMLDocShell stuff. This will be going away. nsCDocShell was created to replace the previous nsCHTMLDocShell.
git-svn-id: svn://10.0.0.236/trunk@53337 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 07:28:25 +00:00
waldemar%netscape.com
45fc90e1a6 Changed external-link-base
git-svn-id: svn://10.0.0.236/trunk@53336 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 07:24:40 +00:00
waldemar%netscape.com
511d60eba6 Added language declarations, ?id syntax, ^^, ^^=, units. Updated list of future reserved words. Allowed definitions in compount statements.
git-svn-id: svn://10.0.0.236/trunk@53335 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 07:24:19 +00:00
waldemar%netscape.com
51f81a61e3 Updated list of keywords
git-svn-id: svn://10.0.0.236/trunk@53334 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 07:22:27 +00:00
warren%netscape.com
fe2c05f6bf Fixed linux compiler bustage (again).
git-svn-id: svn://10.0.0.236/trunk@53333 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 07:17:50 +00:00
warren%netscape.com
7ffefe09f1 Fixed linux breakage with nsFileSpec constructor.
git-svn-id: svn://10.0.0.236/trunk@53332 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 06:54:49 +00:00
miodrag%netscape.com
41849c2cc4 Updated ldapjdk 4.05
git-svn-id: svn://10.0.0.236/trunk@53331 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 06:34:14 +00:00
warren%netscape.com
4695e1619c Libjar cleanup. Added Close method. Bug#18273. r=mstoltz,gayatrib,dveditz
git-svn-id: svn://10.0.0.236/trunk@53330 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 06:13:13 +00:00
warren%netscape.com
8dbfe8f78c Switched to new nsIZipReader interface for Mac.
git-svn-id: svn://10.0.0.236/trunk@53329 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 06:12:14 +00:00
brendan%mozilla.org
abfb05cbb4 XULDOMJS_19991106_BRANCH landing (15146, r=vidur@netscape.com)
git-svn-id: svn://10.0.0.236/trunk@53328 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 06:08:14 +00:00
brendan%mozilla.org
5d2eac8479 XULDOMJS_19991106_BRANCH landing (15146, 18025, r=shaver@mozilla.org)
git-svn-id: svn://10.0.0.236/trunk@53326 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 06:03:40 +00:00
warren%netscape.com
f7a4841081 Added
git-svn-id: svn://10.0.0.236/trunk@53325 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 05:58:46 +00:00
alecf%netscape.com
7f77950d2c fix for #17146, #13483, possibly #15479
don't be stupid about finding the insertion point onto the tree for new rows. use GetInsertionPoint to walk the frames to determine the appropriate row index for new content that doesn't already have frames, so that the rows in the cellmap get the right index.
r=hyatt, bryner@uiuc.edu, alecf (some code dictated by hyatt)


git-svn-id: svn://10.0.0.236/trunk@53324 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 05:51:26 +00:00
rhp%netscape.com
7f41209288 Fixing my build warnings - No Bug - r: jefft
git-svn-id: svn://10.0.0.236/trunk@53323 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:58:33 +00:00
despotdaemon%netscape.com
59453b1004 Pseudo-automatic update of changes made by kvisco@ziplink.net.
git-svn-id: svn://10.0.0.236/trunk@53321 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:48:16 +00:00
karnaze%netscape.com
c82a2a497c disabled delayed handling of reflow commands (pre rev 3.208). r=nisheeth
git-svn-id: svn://10.0.0.236/trunk@53320 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:41:34 +00:00
norris%netscape.com
a7392aecd3 Fix bug 18640.
r=akhil.arora@sun.com


git-svn-id: svn://10.0.0.236/trunk@53319 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:33:17 +00:00
sdagley%netscape.com
2bc4a9c6c1 Fix for #17694 - nsFileSpecWithUIImpl.cpp::ChooseOutputFile should preset the directory if one has been specified as a starting point. Code from vxir@concentric.net, r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53318 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:27:57 +00:00
sdagley%netscape.com
094b680736 Fix for #17666 - nsFileSpecWithUIImpl.cpp::ChooseOutputFile was returning NS_OK when user actually canceled the file selection. Code from vxir@concentric.net, r=sdagley
git-svn-id: svn://10.0.0.236/trunk@53317 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:09:40 +00:00
briano%netscape.com
e2d12eea92 Automated update
git-svn-id: svn://10.0.0.236/trunk@53316 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 04:00:22 +00:00
jdunn%netscape.com
20bee13047 AIX requires a 'const' in order to handle the assignment of 2 nsStrings
(see wallet.cpp line 3093).

rickg approved


git-svn-id: svn://10.0.0.236/trunk@53315 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 03:58:15 +00:00
jdunn%netscape.com
b1b38d3c68 turn on NSCAP_DISABLE_DEBUG_PTR_TYPES for AIX
git-svn-id: svn://10.0.0.236/trunk@53314 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 03:55:34 +00:00
jdunn%netscape.com
2318eebe99 Fix for AIX build bustage. Unfortunately the compiler requires that if
a class includes other classes, then the other classes must be defined
by the time the enclosing class is.  In this case nsDST includes
NodeArena, LeafNode & TwoNode and so therefore those classes must be
defined in nsDST.h.

r troy: Note, Troy didn't APPROVE of the fix (since it isn't pretty) but
        he has graciously allowed it in order to help AIX development.
        He did believe that it wouldn't hurt to put the change in.


git-svn-id: svn://10.0.0.236/trunk@53313 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 03:52:50 +00:00
pinkerton%netscape.com
9234b31058 added JS and handlers to enable dropping URLs onto the content area and having them load (r=sdagley).
git-svn-id: svn://10.0.0.236/trunk@53312 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 03:41:27 +00:00
norris%netscape.com
af6af01717 Restore original changes with bustage fixes.
git-svn-id: svn://10.0.0.236/trunk@53310 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 03:07:37 +00:00
rhp%netscape.com
fcb79a75fb Changes for multipart alternative UI - Bug #: 17770 - r: jefft
git-svn-id: svn://10.0.0.236/trunk@53309 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:58:22 +00:00
norris%netscape.com
01fb538344 * Modify nsIPref to support security policy work.
r=neeti@netscape.com
* Close security holes by tightening prefs.
r=mstoltz@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53308 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:50:18 +00:00
syd%netscape.com
807da9b463 Don't flash window if paint message is ignored. r=kmcclusk@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53307 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:49:48 +00:00
hangas%netscape.com
5fb74436a0 New Skin update (changed mail and AB windows to have visible representation of focus on trees). Fixed bug 16459 (clear card view pane on change of selection in AB). r=scottip
git-svn-id: svn://10.0.0.236/trunk@53306 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:41:50 +00:00
rchen%netscape.com
d38cbcce10 modify Localization notes
git-svn-id: svn://10.0.0.236/trunk@53305 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:35:35 +00:00
Jerry.Kirk%Nexwarecorp.com
0f253287ec This fixes some clipping and sizing problems. Also converts the
drop down menus from containers to windows.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53304 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:20:07 +00:00
Jerry.Kirk%Nexwarecorp.com
4123508bb2 A re-write of Rendering and Drawing Surface to fix a lot of
inherent bugs that became apparent when the new Chrome was applied.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53303 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:18:36 +00:00
vidur%netscape.com
bd073773d8 Fix for bug 13144. Check that private of JSObject is an nsISupports before trying to convert. R=pollmann.
git-svn-id: svn://10.0.0.236/trunk@53302 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:17:12 +00:00
vidur%netscape.com
81fbbedb2f Added error string for NS_ERROR_DOM_RETVAL_UNDEFINED since Nisheeth forgot to do it. R=pollmann.
git-svn-id: svn://10.0.0.236/trunk@53301 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:09:32 +00:00
vidur%netscape.com
1cf6a4cc7c Added comment to remind people modifying nsDOMError.h to also add an error string.
git-svn-id: svn://10.0.0.236/trunk@53300 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:08:45 +00:00
vidur%netscape.com
8244e5ee1a Fix for bug 18040. Removed spurious UMR. Added macro for turning off incremental notification. R=buster, pollmann.
git-svn-id: svn://10.0.0.236/trunk@53299 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:07:54 +00:00
vidur%netscape.com
b4112523b1 Fix for bug 18186. document.lastModified now returns the correct value for FileChannels as well. R=pollmann.
git-svn-id: svn://10.0.0.236/trunk@53298 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:06:54 +00:00
kmcclusk%netscape.com
baa1b7bb9b (Paint flashing debug option)Don't flash window if the paint is ignored. bug 16435; r=buster@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53297 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:06:52 +00:00
vidur%netscape.com
19c16e67fa Fix for bug 13948. We now correctly store and retrieve an OL element with type=1. R=pollmann.
git-svn-id: svn://10.0.0.236/trunk@53296 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 02:06:09 +00:00
fergus%netscape.com
d56458321f Updated/added Localization Notes.
r: chjung & rchen


git-svn-id: svn://10.0.0.236/trunk@53295 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:53:54 +00:00
kmcclusk%netscape.com
4672b267d3 Fixed problem where buttons where causing reflows when entering and exiting.
Removed outline border style and fixed style context parentage of buttons.
bug 17892; r=buster@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53294 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:45:53 +00:00
bienvenu%netscape.com
c43f45b36a fix filters firing on read message, r=mscott, 17838
git-svn-id: svn://10.0.0.236/trunk@53293 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:29:26 +00:00
dp%netscape.com
93f188b106 Converted using nsIShutdownListener to xpcom shutdown observer. r=putterman
git-svn-id: svn://10.0.0.236/trunk@53292 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:28:58 +00:00
valeski%netscape.com
76ab6dcf18 FTP no longer sets the port on a URI. If no port is set on a URI, FTP will use the default (21) at connection time.
git-svn-id: svn://10.0.0.236/trunk@53291 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:26:20 +00:00
nhotta%netscape.com
dce1458a65 For unicode conversion, I had to convert a part of the string not the entire string, otherwise MIME encoder aborts, bug 18105/18595, r=cata.
git-svn-id: svn://10.0.0.236/trunk@53290 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:22:09 +00:00
morse%netscape.com
bcef2c11d7 fix bug 18603, grammar error in dialog, r=cpratt
git-svn-id: svn://10.0.0.236/trunk@53289 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:11:21 +00:00
pinkerton%netscape.com
3f1097cdba preliminary js for handling drops on the tree (r=saari).
git-svn-id: svn://10.0.0.236/trunk@53288 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:02:55 +00:00
pinkerton%netscape.com
f1b54be399 don't generate drag exit events until _after_ drop event has been processed. move from PreHandleEvent to PostHandleEvent. r=saari.
git-svn-id: svn://10.0.0.236/trunk@53287 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:02:14 +00:00
rchen%netscape.com
fab5246d20 modify Localization notes
git-svn-id: svn://10.0.0.236/trunk@53286 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 01:00:30 +00:00
akkana%netscape.com
bada3e794d Oops, citer classes weren't initializing refcount, causing an assert on Windows. One-line change, r=rhp
git-svn-id: svn://10.0.0.236/trunk@53285 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 00:57:55 +00:00
dveditz%netscape.com
8fba50ecbf new versions of the build tools
git-svn-id: svn://10.0.0.236/trunk@53284 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 00:45:13 +00:00
mcafee%netscape.com
6a4cc980af Print out what we're deleting, debugging orange status.
git-svn-id: svn://10.0.0.236/trunk@53283 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 00:28:56 +00:00
sspitzer%netscape.com
150c408da8 fix build bustage.
#include "nsIDOMDocument.h"
not
#include "nsIDOMDOcument.h"


git-svn-id: svn://10.0.0.236/trunk@53282 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-12 00:19:00 +00:00
despotdaemon%netscape.com
5827d109f3 Pseudo-automatic update of changes made by fergus@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@53280 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 23:42:51 +00:00
buster%netscape.com
b5058db9ab added hooking up document tree in FireEndDocumentLoad.
git-svn-id: svn://10.0.0.236/trunk@53279 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 23:30:41 +00:00
norris%netscape.com
dca5057dcd Remove call that the compilers can't figure out.
Appears that perhaps the IDL compiler isn't getting called on nsIPref.idl in time.


git-svn-id: svn://10.0.0.236/trunk@53278 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 23:25:59 +00:00
Jerry.Kirk%Nexwarecorp.com
5e0ee866f6 I left some junk in this file on the last check-in. This only effects
Photon.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53275 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 23:14:35 +00:00
norris%netscape.com
8add0018e4 Fix build bustage.
My build on Linux worked; don't understand why the Tinderbox build is different.


git-svn-id: svn://10.0.0.236/trunk@53274 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 23:07:14 +00:00
akkana%netscape.com
5ede0750c6 Backing out previous change -- it didn't do as much as I'd hoped
git-svn-id: svn://10.0.0.236/trunk@53273 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:45:32 +00:00
waterson%netscape.com
bd944d09e0 Bug 18544. Make sure to destroy mDisplayFrame before re-creating. r=buster
git-svn-id: svn://10.0.0.236/trunk@53272 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:40:25 +00:00
valeski%netscape.com
b9fbf7f89f fixes bugzilla problem. added improved LF CRLF LFLF handling.
git-svn-id: svn://10.0.0.236/trunk@53271 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:40:08 +00:00
akhil.arora%sun.com
96f506169a 17873 r=akhil.arora@sun.com fix=Denis Sharypov <sdv@sparc.spb.su>
Remove duplicate declaration of cvalue


git-svn-id: svn://10.0.0.236/trunk@53270 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:35:14 +00:00
buster%netscape.com
09ff79c694 added nsIWebShell::SetDocument, a new interface for loading a pre-fabricated content model
into a webshell synchronously.
This has NOT yet been reviewed, and is not yet used anywhere in the system.
I *will* get a formal code review before enabling it's use.  However, I want to get the code into
the tree because keeping my tree in synch is becoming a burden.


git-svn-id: svn://10.0.0.236/trunk@53269 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:32:13 +00:00
akhil.arora%sun.com
c3c5415b15 18076 r=Igor Nekrestyanov <nis@sparc.spb.su> fix=akhil.arora@sun.com
Handle Unicode string correctly in javaDOMEventsGlobals.cpp
18072 r=akhil.arora@sun.com fix=Igor Nekrestyanov <nis@sparc.spb.su>
Sync with changes in Mozilla's DOM Event interfaces


git-svn-id: svn://10.0.0.236/trunk@53267 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:28:56 +00:00
ftang%netscape.com
fb91b3114a add OnIMExx handler. Move IME code from case: block into OnIMExx handler. Change the IME ofset from 35 to 0 since nsCaret now return the bottom of the cursor instead of the top. r=cata
git-svn-id: svn://10.0.0.236/trunk@53266 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:28:52 +00:00
kmcclusk%netscape.com
2892308a61 Added three checkbox style rules so the border does not change between hover, focus,
and disabled states. Changing the border causing reflows. bug 16461; r=hyatt@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53265 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:27:11 +00:00
rods%netscape.com
d1e0d6a911 added empty impl of DoneAddingContent
b 17695, r=self


git-svn-id: svn://10.0.0.236/trunk@53264 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:25:23 +00:00
akkana%netscape.com
f5c24f5975 18576: improve wrapping of plaintext replies
git-svn-id: svn://10.0.0.236/trunk@53263 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:24:34 +00:00
buster%netscape.com
90b9a98a5d removed a bogus assert.
git-svn-id: svn://10.0.0.236/trunk@53262 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:24:19 +00:00
buster%netscape.com
79d00d2acc partial fix for bug 11537, r=kmcclusk (sucker!)
also checked in some webshell redesign work, but that is #ifdef'd out (also reviewed by kevin, double-sucker!)


git-svn-id: svn://10.0.0.236/trunk@53261 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:23:32 +00:00
mcafee%netscape.com
ef0546a4d0 Nuking this file. ar=slamm,waterson
git-svn-id: svn://10.0.0.236/trunk@53260 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:16:51 +00:00
rods%netscape.com
f999911691 notifies the select content when all the children content is there
r=vidur, bug 17965


git-svn-id: svn://10.0.0.236/trunk@53259 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:15:02 +00:00
rods%netscape.com
d018396336 Added new method "DoneAddingContent" so the select frame can be told that all the content has been added
Reworked the select code to keep the state as to whether all the content and/or all the frames
have been created and then whether it is initialized
r=self&kmcclusk, bug 17965


git-svn-id: svn://10.0.0.236/trunk@53258 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:13:33 +00:00
rods%netscape.com
77cd5a0de0 Added method "DoneAddingContent" to notify the select that all the chiild are there
it also caches this state so it can be asked whether they have been added
Added method: IsDoneAddingContent(PRBool * aIsDone)
r=vidur, bug 17965


git-svn-id: svn://10.0.0.236/trunk@53257 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:13:20 +00:00
rods%netscape.com
df310de8ee Added method "DoneAddingContent" to notify the select that all the chiild are there
r=vidur, bug 17965


git-svn-id: svn://10.0.0.236/trunk@53256 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:13:17 +00:00
norris%netscape.com
783c2dc693 added files: mozilla/caps/src/nsBasePrincipal.cpp
git-svn-id: svn://10.0.0.236/trunk@53255 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:11:03 +00:00
norris%netscape.com
d83622d4ac * Fix the following bugs by tightening the default security policy.
17977 [DOGFOOD] Reading documents using document.body
17538 document.lastModified is exposed
17537 document.images vulnerabilities
16036 [DOGFOOD] document.Element exposes the DOM of documents from
15757 [DOGFOOD] Injecting JS code using setAttribute and getElemen
15550 Injecting text in documents from any domain using createText
15067 [DOGFOOD] getElementsByTagName() allows reading of arbitrary
* Create an array of dom property policy types and initialize it when the script security manager is created.
* Move some implementation code to a new shared implementation base class.
* Implement privilege enabling, disabling and reverting
* Implement stack walking for checking privileges.
r=mstoltz@netscape.com

* Modify nsIPref to support security policy work.
r=neeti@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53254 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:10:36 +00:00
sgehani%netscape.com
ccf824f925 Added CRC checking for every item we extract. Fixes bug 17511. [r=mstoltz]
git-svn-id: svn://10.0.0.236/trunk@53253 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:08:08 +00:00
nhotta%netscape.com
2e44257660 Changed to resolve charset alias before unicode conversion, made charset name to case sensitive, consolidated conversion wrapper functions, bug 18264,
r=ftang.


git-svn-id: svn://10.0.0.236/trunk@53252 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:05:10 +00:00
pinkerton%netscape.com
12e2deefa8 better stab at native system colors, provided by mpt26@student.canterbury.ac.nz. bug #1004, r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53250 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:01:43 +00:00
briano%netscape.com
320c6e0037 Automated update
git-svn-id: svn://10.0.0.236/trunk@53249 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 22:00:30 +00:00
sspitzer%netscape.com
03a8d14c26 fix for #16341
from putterman, who gave me the fix:

"Whenever you add something to RDF through an observer notification, RDF
verifies that you really have it by calling HasAssertion.  Our implementation of HasAssertion for adding a folder to a folder consists of seeing if the the
child folder's parent is equal to the parent passed in.  Because we weren't setting the parent, the child's parent was null which wasn't equal to the parent
passed in and the whole operation failed.  This prevents that from happening."


git-svn-id: svn://10.0.0.236/trunk@53248 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:55:39 +00:00
jdunn%netscape.com
c4e3217b72 Add a configure.in flag to allow components (IS_COMPONENTS) to link
against NSPR and xpcom.  I did this for AIX and added the step for
OpenVMS per Colin Blake's note.


git-svn-id: svn://10.0.0.236/trunk@53247 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:55:11 +00:00
mccabe%netscape.com
b31e8409ff Fix most remaining warnings in js/src. Patch courtesy slamm.
r=mccabe.


git-svn-id: svn://10.0.0.236/trunk@53245 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:52:35 +00:00
waterson%netscape.com
9d218e2b5b Bug 18542. Make sure that we don't over-write aContentStyle arg when GFX scrollbars are turned on. r=evaughan
git-svn-id: svn://10.0.0.236/trunk@53244 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:48:17 +00:00
briano%netscape.com
95b77ece6f Automated update
git-svn-id: svn://10.0.0.236/trunk@53243 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:45:23 +00:00
troy%netscape.com
f5fbb8684f Re-order things so we set the content object's document pointer after
initializing it. This eliminates some useless "content changed" notifications


git-svn-id: svn://10.0.0.236/trunk@53242 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:43:15 +00:00
mcafee%netscape.com
a79c1a411f Adding comment about cookie and wallet dependency, r=morse,shaver
git-svn-id: svn://10.0.0.236/trunk@53240 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:36:22 +00:00
jdunn%netscape.com
68a5a4a034 removing ';' from the end of the macros, since the macro in nsTimer.h
already handles the trailing ';'.
NOTE: trying to compile a ';' fails on AIX


git-svn-id: svn://10.0.0.236/trunk@53239 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:35:34 +00:00
despotdaemon%netscape.com
0a65915b40 Pseudo-automatic update of changes made by leaf@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@53237 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:11:05 +00:00
troy%netscape.com
12896a5964 b=17798. Changed WipeContainingBlock() to remove the frames it is deleting from
the content to frame map and undisplayed content map


git-svn-id: svn://10.0.0.236/trunk@53236 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 21:08:32 +00:00
akkana%netscape.com
4c84cb5563 17983: Use editor's InsertAsQuotation even for plaintext. r=rhp
git-svn-id: svn://10.0.0.236/trunk@53235 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:56:03 +00:00
despotdaemon%netscape.com
03e9524b7e Pseudo-automatic update of changes made by bryner@uiuc.edu.
git-svn-id: svn://10.0.0.236/trunk@53234 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:50:24 +00:00
pavlov%netscape.com
4e275828c5 remove ifdef gtk_fixed test stuff r=dmose
git-svn-id: svn://10.0.0.236/trunk@53233 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:47:10 +00:00
sfraser%netscape.com
165bb9b371 Oh, silly me. Warren's last change was on a branch. Putting nsNeckoUtil.h back.
git-svn-id: svn://10.0.0.236/trunk@53232 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:47:01 +00:00
sfraser%netscape.com
7a8b46a42e Somehow I managed to stomp on warren's last change (renaming of nsNeckoUtil.h to nsNetUtil.h). Putting that back.
git-svn-id: svn://10.0.0.236/trunk@53231 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:46:03 +00:00
sfraser%netscape.com
841c7049ce Fix for 18315 -- remember which rdf files you've tried, and failed, to open, to avoid trying over and over and over again. r=pavlov.
git-svn-id: svn://10.0.0.236/trunk@53230 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:42:31 +00:00
sfraser%netscape.com
211c4f5a58 Part of fix for 18315 -- allow nsSupportsHashTable to contain null entries, which meant changing NS_{ADDREF,RELEASE} to NS_IF_{ADDREF,RELEASE} in a bunch of places. r=pavlov.
git-svn-id: svn://10.0.0.236/trunk@53229 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:41:54 +00:00
Jerry.Kirk%Nexwarecorp.com
e87a4df2d5 Making a few changes to allow this to be built under Neutrino.
r=Warren


git-svn-id: svn://10.0.0.236/trunk@53228 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:40:44 +00:00
despotdaemon%netscape.com
ffe45c60a3 Pseudo-automatic update of changes made by leaf@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@53227 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:37:09 +00:00
pinkerton%netscape.com
6455da26bd correctly send dragExit events when the mouse leaves the window (bug# 18356) r=saari.
git-svn-id: svn://10.0.0.236/trunk@53226 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:28:23 +00:00
putterman%netscape.com
b6084ce6f1 some speed improvments. reviewed by hangas.
git-svn-id: svn://10.0.0.236/trunk@53225 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:27:52 +00:00
putterman%netscape.com
91d7958a74 Fix for 18244. Don't load messages if splitter between thread and message pane is collapsed.
reviewed by hangas.


git-svn-id: svn://10.0.0.236/trunk@53224 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 20:24:46 +00:00
dp%netscape.com
f388eedbe1 Enabling componentmanager shutdown() before a release to clear out
references to the component manager.


git-svn-id: svn://10.0.0.236/trunk@53221 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 19:38:13 +00:00
kin%netscape.com
e17664b119 TransactionManager fix for bug #11590: eliminate NS_COMFALSE
Modified all nsITransactionListener::Will* methods and implementations
to use an aInterrupt argument.

    mozilla/editor/base/nsEditorTxnLog.cpp
    mozilla/editor/base/nsEditorTxnLog.h
    mozilla/editor/txmgr/public/nsITransactionListener.h
    mozilla/editor/txmgr/src/nsTransactionItem.cpp
    mozilla/editor/txmgr/src/nsTransactionManager.cpp
    mozilla/editor/txmgr/src/nsTransactionManager.h

r=brade@netscape.com


git-svn-id: svn://10.0.0.236/trunk@53220 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 19:35:40 +00:00
buster%netscape.com
5765c7e4da partial fix for bug 14599. We no longer crash. The frameset loads in the editor window,
but no editor is actually attached, so no editing is possible.  Next step is
to detect the error case and stop the document load altogether.


git-svn-id: svn://10.0.0.236/trunk@53219 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 19:22:30 +00:00
rhp%netscape.com
13ffd6201b Changes to fix message display problems and others - Bug #: 13402 17770 17772 17899 - r: bienvenu
git-svn-id: svn://10.0.0.236/trunk@53218 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 19:21:11 +00:00
rhp%netscape.com
27b2501e65 Changes for multipart alternative - Bug #: 17770 - r: jefft
git-svn-id: svn://10.0.0.236/trunk@53217 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 19:19:02 +00:00
karnaze%netscape.com
3edd689e09 put back to rev 3.340 due to mail/news regressions.
git-svn-id: svn://10.0.0.236/trunk@53215 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 18:22:57 +00:00
erik%netscape.com
4de25d8087 This is just a local .cvsignore file. Doesn't affect build.
git-svn-id: svn://10.0.0.236/trunk@53213 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 18:15:49 +00:00
jefft%netscape.com
bd2f2e88cc fixed bug 6904 -- Close() to implicit expunge deleted messages when in delete is move to the trash mode; this only happened when we shutdown the app; r=bienvenu
git-svn-id: svn://10.0.0.236/trunk@53211 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 15:46:22 +00:00
Jerry.Kirk%Nexwarecorp.com
5ee5312f98 Removed code that kept us from creating timers with a delay of
more than 10 seconds.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53210 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 15:23:09 +00:00
Jerry.Kirk%Nexwarecorp.com
dc612cf329 Added debug code to track my clipping. I am about to re-arrange some guts
so I wanted a fail-safe backup working version to be checked in.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53209 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 15:21:51 +00:00
Jerry.Kirk%Nexwarecorp.com
5014b501c3 Adding static data member and accessor that keeps track of what the
PhDrawContext_t for Photon was when the program is first started.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53208 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 15:19:25 +00:00
Jerry.Kirk%Nexwarecorp.com
8c4c66b2c3 Added signal handler to call the Photon function what cleans up any
allocated shared memory in the event we crash or are closed abnormally
with a CTRL-C command.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@53207 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 14:42:03 +00:00
syd%netscape.com
4c64ccdafa Wire up margin settings from dialog. r=dcone
git-svn-id: svn://10.0.0.236/trunk@53206 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 14:20:19 +00:00
terry%mozilla.org
11a5136ce0 Back out that completely bizarre and weird checkin that warren did.
git-svn-id: svn://10.0.0.236/trunk@53205 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 13:58:45 +00:00
warren%netscape.com
f6a76baaff Removing neckoutil_s.lib from tree. Moving/renaming nsNeckoUtil.h to nsNetUtil.h. Bug#11159. r=colin@theblakes.com,kipp,waterson,valeski,pierre,nisheeth
git-svn-id: svn://10.0.0.236/trunk@53202 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 08:51:50 +00:00
saari%netscape.com
3637aa5041 Fixing keybinding. Was using an nsDOMUIEvent interface when I should have been using nsDOMKeyEvent. Something chaged recently that exposed this bug. Also inserted a few nsCOMPtrs to fix leaks. R: waterson, mostly
git-svn-id: svn://10.0.0.236/trunk@53200 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 08:48:25 +00:00
troy%netscape.com
29fc759acb b=17546. Changed block frame code to save/restore space manager when create
a space manager, and changes button code to use the NS_BLOCK_SPACE_MGR flag
when creating the area frame


git-svn-id: svn://10.0.0.236/trunk@53199 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 06:00:41 +00:00
waterson%netscape.com
7b9aae2779 Bug 17839. Add timer_s.lib to the libraries link deps.
git-svn-id: svn://10.0.0.236/trunk@53198 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:51:53 +00:00
waterson%netscape.com
43745f1dd5 Bug 17839. Call mAppShell->Exit() on a timer callback to allow Quit() to cleanly exit the app on platforms where the event queue gets yanked. a=warren
git-svn-id: svn://10.0.0.236/trunk@53197 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:51:22 +00:00
karnaze%netscape.com
003aeba6b5 fixed crash (cnn and other sites with javascript) in nsCellMap due to it not being invalidated.
git-svn-id: svn://10.0.0.236/trunk@53196 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:43:35 +00:00
ssu%netscape.com
6dd010f54a part of fixing bug #18107. This checkin fixes problem with passing in the correct length of the string value to set in the windows registry. This fix affects only the windows platform. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@53195 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:33:38 +00:00
mcafee%netscape.com
edb7d70019 Missing type field for check_doc_requency pref (17903) r=jfrancis
git-svn-id: svn://10.0.0.236/trunk@53194 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:27:29 +00:00
warren%netscape.com
d167d070a0 Added
git-svn-id: svn://10.0.0.236/trunk@53191 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:21:38 +00:00
pinkerton%netscape.com
f56fb5a896 toolbar/tree d&d code reworking (r=hyatt).
git-svn-id: svn://10.0.0.236/trunk@53190 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:11:10 +00:00
pinkerton%netscape.com
31e06f152f readding the tree item drag capturer (r=hyatt)
git-svn-id: svn://10.0.0.236/trunk@53189 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:10:47 +00:00
pinkerton%netscape.com
22fff674e8 reworking of toolbar d&d impl and tree d&d impl (r=hyatt).
git-svn-id: svn://10.0.0.236/trunk@53188 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:10:38 +00:00
pinkerton%netscape.com
80fa125d68 readding the tree item drag capturer
git-svn-id: svn://10.0.0.236/trunk@53187 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:10:28 +00:00
waterson%netscape.com
d133d7f701 Oops. Make sure XPCOM_MEM_LOG_CLASSES works without XPCOM_MEM_REFCNT_LOG being set. a=warren
git-svn-id: svn://10.0.0.236/trunk@53186 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 05:02:03 +00:00
rbs%maths.uq.edu.au
db7000695f [GFX] GetBoundingMetrics() added in nsIRenderingContext and associated changes elsewhere (patform-specific) to support its implementation. Fixes for existing bugs discovered while doing the implementation. Details for public: API of the GetBoundingMetrics() method for accurate measurements of a string in order to allow precise positionning when processing MathML. review: Erik, Shyjan.
git-svn-id: svn://10.0.0.236/trunk@53185 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 04:24:51 +00:00
rbs%maths.uq.edu.au
0c0970ccab [GFX] GetBoundingMetrics() added in nsIRenderingContext and associated changes elsewhere (patform-specific) to support its implementation. Fixes for existing bugs discovered while doing the implementation. Details for windows: Erik van der Poel erik@netscape.com's code for the support of the Symbol font. review: Shyjan, rbs. My changes to DrawString to use the baseline as the reference point and changes aimed at computing the bounding metrics. review: Erik, Shyjan.
git-svn-id: svn://10.0.0.236/trunk@53184 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 04:19:25 +00:00
rbs%maths.uq.edu.au
2f912ca46b [GFX] GetBoundingMetrics() added in nsIRenderingContext and associated changes elsewhere (patform-specific) to support its implementation. Fixes for existing bugs discovered while doing the implementation. Details for gtk: Shyjan Mahamud mahamud@cs.cmu.edu's changes to enable the symbol font on Linux, as well as the fix for the CSS font-family bug, and the computation of the bounding metrics. review: Erik, rbs.
git-svn-id: svn://10.0.0.236/trunk@53183 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 04:16:54 +00:00
rbs%maths.uq.edu.au
ad61b6a672 [GFX] GetBoundingMetrics() added in nsIRenderingContext and associated changes elsewhere (patform-specific) to support its implementation. Fixes for existing bugs discovered while doing the implementation. Details for ps: Empty hooks to make the code compile while awaiting implementation.
git-svn-id: svn://10.0.0.236/trunk@53182 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 04:12:33 +00:00
waterson%netscape.com
8b75e6af56 Add docs for XPCOM_MEM_LOG_OBJECTS.
git-svn-id: svn://10.0.0.236/trunk@53181 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 04:08:28 +00:00
valeski%netscape.com
0af0d697db 11869, r=brendan (for everything but the case where we check for keyword url load failure). Hooking up keywords to webshell. we now kick non-qualified hosts to the keyword server (if keywords are enabled (they're defaulted to off), on windows. and if a non-qualifed host lookup fails we kick that to the keyword server (on all platforms, if keywords are enabled). If keywords are disabled (default case) we do the www.*.com trick ourselves in the client.
git-svn-id: svn://10.0.0.236/trunk@53180 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 03:26:18 +00:00
waterson%netscape.com
74dce44ae9 Bug 18069. Support XPCOM_MEM_TRACE_OBJECTS, per-object reference count tracing. r=warren
git-svn-id: svn://10.0.0.236/trunk@53179 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 03:23:24 +00:00
jdunn%netscape.com
db2a5c813e Add newline at end of file... HP requires it!
git-svn-id: svn://10.0.0.236/trunk@53178 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 03:14:37 +00:00
saari%netscape.com
aec790d0e6 part of previous checkin
git-svn-id: svn://10.0.0.236/trunk@53177 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 03:09:16 +00:00
saari%netscape.com
5432ae5d44 Turning gFocusHandler into gEventDispatchHandler, a Mac event dispatch change. Should be fine without the rest of the focus changes, commiting to facilitate pink's need to change this file. R: pink
git-svn-id: svn://10.0.0.236/trunk@53176 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 03:08:31 +00:00
jdunn%netscape.com
dcd9ca22e2 Fix additional bugs with stubs. This still doesn't work 100% but getting there
(basically pulled in the mac ppc CPP file for aix stubs file)


git-svn-id: svn://10.0.0.236/trunk@53175 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:20:22 +00:00
valeski%netscape.com
5514f3c5ea hooking up keyword prefs so we check for them
git-svn-id: svn://10.0.0.236/trunk@53174 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:18:02 +00:00
briano%netscape.com
c4458f4151 Automated update
git-svn-id: svn://10.0.0.236/trunk@53173 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:15:16 +00:00
valeski%netscape.com
8630e33bf6 18419. *removed nsIFTPContext and associated impl of it. we no longer pass this context between the FTP thread and the channel thread, we use nsISupports proxies to move back and forth.*added SetcontentLength() method to nsIFTPChannel so we can move the content length from the FTP thread to the channel thread. nsFTPChannel impls this meth now.*made a couple FTP channel logging changes for better description*nsCOMPtrized a bit*added nsFTPChannel to load group when avail (this starts/stops the throbber for url bar loaded ftp urls.*the FTP protocl handler (a service) is now an observer of XPCOM shutdown. this allows the handler to join w/ all the threads it has created (that are still running) if we try and shutdown the main thread whill ftp is still running.
git-svn-id: svn://10.0.0.236/trunk@53172 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:14:23 +00:00
valeski%netscape.com
f6bc0b70d1 *** empty log message ***
git-svn-id: svn://10.0.0.236/trunk@53171 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:13:44 +00:00
valeski%netscape.com
56450ba26e removed files: mozilla/netwerk/protocol/ftp/public/nsIFTPContext.idl
git-svn-id: svn://10.0.0.236/trunk@53170 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:11:50 +00:00
valeski%netscape.com
f168e2ebc5 18419.
git-svn-id: svn://10.0.0.236/trunk@53169 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:09:07 +00:00
jdunn%netscape.com
e923683866 HP specific Fix for #16506.
git-svn-id: svn://10.0.0.236/trunk@53168 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 02:08:10 +00:00
ssu%netscape.com
91333ec8d3 these files are part of bug #17109. It's to help with calculating
the correct disk space required during installation.  It doesn't fix this
bug, but it's part of getting it done.

All these files are not part of tinderbox build.  They are only Windows
platform too.

r=sgehani


git-svn-id: svn://10.0.0.236/trunk@53167 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:54:58 +00:00
slamm%netscape.com
65a646ea08 Script to generate panels' rdf and dtd files.
git-svn-id: svn://10.0.0.236/trunk@53166 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:54:01 +00:00
waqar%netscape.com
8e98416f47 # 16610
r vidur
d Javascript should throw an execption on index size error. DOM now throws
an execption for size error.


git-svn-id: svn://10.0.0.236/trunk@53165 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:48:25 +00:00
pinkerton%netscape.com
e4e6e5b049 remove the tree item drag capturer. i was premature.
git-svn-id: svn://10.0.0.236/trunk@53164 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:46:12 +00:00
pinkerton%netscape.com
173dc604a4 backing out my last added file.
git-svn-id: svn://10.0.0.236/trunk@53163 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:42:12 +00:00
saari%netscape.com
a8c0e40278 Just checking in nsGUIEvent.h changes to start the focus landing... can't finish it without more reviews, but this change is reviewed and harmless. r: joki
git-svn-id: svn://10.0.0.236/trunk@53162 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:33:48 +00:00
waqar%netscape.com
90fdd6824c # 6071, 15904
r vidur
d Fixes the problem with comment delimiters.


git-svn-id: svn://10.0.0.236/trunk@53161 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:28:32 +00:00
buster%netscape.com
7955df305a tiny fix to SetDocument based on small change to semantics of underlying objects, back-ported from webshell
git-svn-id: svn://10.0.0.236/trunk@53160 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:27:27 +00:00
putterman%netscape.com
783df58a3b Use get() instead of ==
git-svn-id: svn://10.0.0.236/trunk@53159 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:22:59 +00:00
mccabe%netscape.com
f7d8c1e1aa Warning fix for uninitialized structure members. r=fur,slamm.
git-svn-id: svn://10.0.0.236/trunk@53158 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:15:43 +00:00
valeski%netscape.com
a67d97f104 default for keywords enabled field is false
git-svn-id: svn://10.0.0.236/trunk@53157 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:13:51 +00:00
pinkerton%netscape.com
4e18984c5e add nsTreeItemDragCapturer to the build
git-svn-id: svn://10.0.0.236/trunk@53156 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:04:36 +00:00
pinkerton%netscape.com
d1e40118fa adding nsTreeItemDragCapturer to the build and moving XUL frames into the right group.
git-svn-id: svn://10.0.0.236/trunk@53155 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:04:15 +00:00
pinkerton%netscape.com
61cde1ceb0 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@53154 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 01:03:41 +00:00
hangas%netscape.com
2039a6d814 New disabled arrow for menus. Problem reported by Crysgem@crosswinds.net and icon submitted by michael.lowe@bigfoot.com.
git-svn-id: svn://10.0.0.236/trunk@53153 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:59:07 +00:00
pinkerton%netscape.com
e994710532 set the default image size to be small in order to avoid obvious reflows when button code would assume 30x30 before it loaded the image (r=evaughan).
git-svn-id: svn://10.0.0.236/trunk@53152 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:58:42 +00:00
sfraser%netscape.com
cdc1e8d7c9 Fix for 18525 -- non-scriptable accessor to get at the editor from the editor shell. r=akkana.
git-svn-id: svn://10.0.0.236/trunk@53151 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:58:40 +00:00
ftang%netscape.com
c359f1ed02 adjust XIM spot location code scince we change the nsCaret to return the bottom of the cursor intead of the top of the cursor ow. It look a little bit weired since the GFX didn't alight Japanese text base line right. r=erik
git-svn-id: svn://10.0.0.236/trunk@53150 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:58:14 +00:00
karnaze%netscape.com
b5aebd8ca2 new regression test not affecting build.
git-svn-id: svn://10.0.0.236/trunk@53149 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:56:50 +00:00
terry%mozilla.org
24b7b0cacd freshmeat seems to have changed the location of their RDF page.
git-svn-id: svn://10.0.0.236/trunk@53148 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:55:49 +00:00
sgehani%netscape.com
0f83368472 Restoring file dates when decoding was off by 12 hours. This is now fixed. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@53147 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:52:04 +00:00
nhotta%netscape.com
5b454a2e97 Added msgbaseutil to a project file so unicode conversion utils to be accessable, part of bug fix #18264, r=ftang.
git-svn-id: svn://10.0.0.236/trunk@53146 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:48:55 +00:00
buster%netscape.com
081fe363eb added SetDocument implementation
added Get/SetDocLoaderObserver
added base implementation for nsIDocShellContainer methods
started filling in GetVisibility
started nsIContentViewerContainer methods, very rough
added FireStartDocumentLoad, FireEndDocumentLoad
added DestroyChildren


git-svn-id: svn://10.0.0.236/trunk@53145 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:42:48 +00:00
pepper%netscape.com
b604bfeeca Changed friend declaration to make HP Compilers Happy.
r=mgleeson


git-svn-id: svn://10.0.0.236/trunk@53144 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:39:59 +00:00
buster%netscape.com
358fa5f31d added charset attributes
git-svn-id: svn://10.0.0.236/trunk@53143 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:39:50 +00:00
valeski%netscape.com
cf6a7895bf 16256, nscomprtizing
git-svn-id: svn://10.0.0.236/trunk@53142 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:39:21 +00:00
buster%netscape.com
04b0f51565 added charset member data
git-svn-id: svn://10.0.0.236/trunk@53141 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:39:16 +00:00
buster%netscape.com
79679411ae filled in charset methods
select all
some of sizeToContent
AddChild override, to handle charset stuff


git-svn-id: svn://10.0.0.236/trunk@53140 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:38:55 +00:00
valeski%netscape.com
1ed04f3a7d 16256. nsCOMptrizing
git-svn-id: svn://10.0.0.236/trunk@53139 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:38:16 +00:00
valeski%netscape.com
9903ce8559 16256, r=gagan. the nsinputstreamchannel was lowercasing the entire contenttype. we don't want to lower case the contenttype attribs
git-svn-id: svn://10.0.0.236/trunk@53138 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:37:18 +00:00
buster%netscape.com
67d716f4fe added libs:
>  $(DIST)\lib\neckoutil_s.lib	       \
>  $(DIST)\lib\gkgfxwin.lib	           \


git-svn-id: svn://10.0.0.236/trunk@53137 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:36:48 +00:00
buster%netscape.com
b5d9e6f2e9 made childCount readonly
git-svn-id: svn://10.0.0.236/trunk@53136 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:36:09 +00:00
buster%netscape.com
e1a9b1cf06 changed args to SetDocument
added attribute nsIDocumentLoaderObserver docLoaderObserver;


git-svn-id: svn://10.0.0.236/trunk@53135 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:35:36 +00:00
buster%netscape.com
f9748dc756 nsDocShellBase implements nsIDocShellContainer
added some member data


git-svn-id: svn://10.0.0.236/trunk@53134 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:34:41 +00:00
valeski%netscape.com
cf9447c758 16256, r=morse. Large bugzilla queries were bleeding http headers into the html displayed.
git-svn-id: svn://10.0.0.236/trunk@53133 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:34:01 +00:00
sgehani%netscape.com
4c6642169a *** NOT PART OF BUILD ***
Fixed warnings and added C callback prototypes.


git-svn-id: svn://10.0.0.236/trunk@53132 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:33:39 +00:00
dp%netscape.com
bf00e32685 Services used with COMPtrs. NS_WITH_SERVICE definition uses COMPtrs. r=scc
git-svn-id: svn://10.0.0.236/trunk@53131 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:31:45 +00:00
sgehani%netscape.com
a8792931ec Added progress bar and message for overall status of components being installed. Also, we now display the icon for the folder or volume selected to install, including custom folder and disk icons. Added Quit menu and cmd+Quit keyboard handling. [r=ssu]
git-svn-id: svn://10.0.0.236/trunk@53130 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:29:38 +00:00
valeski%netscape.com
be2a330da5 16485, y2k DOS FTP server date parsing problem (we're now compensating for lacking two digit dos date years
git-svn-id: svn://10.0.0.236/trunk@53129 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:28:30 +00:00
putterman%netscape.com
af2026ecdf added nsIIncomingServerListener.idl
git-svn-id: svn://10.0.0.236/trunk@53128 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:27:10 +00:00
valeski%netscape.com
3014976cd0 11869, r=dagley. added keyword related prefs (1 for enable/disable, and 1 for keyword URL).
git-svn-id: svn://10.0.0.236/trunk@53127 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:26:05 +00:00
putterman%netscape.com
6d6e668a41 Work on 17712 to add incoming server listeners and hook biff up to them. Reviewed by alecf and bienvenu.
git-svn-id: svn://10.0.0.236/trunk@53126 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:26:02 +00:00
putterman%netscape.com
b45fc5c931 Work on 17712 to add incoming server listeners and hook biff up to them. Reviewed by alecf.
git-svn-id: svn://10.0.0.236/trunk@53125 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:25:19 +00:00
sgehani%netscape.com
2707a601bc Fix build warnings by moving a static struct from a .h to its .cpp.
Fixes bug 15898. [r=ssu]


git-svn-id: svn://10.0.0.236/trunk@53124 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:24:24 +00:00
sfraser%netscape.com
19850957f7 Fix warnings, bug 15588. r=ducarroz
git-svn-id: svn://10.0.0.236/trunk@53123 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:24:18 +00:00
putterman%netscape.com
3eee221ecf Work on 12846 for making message threads work. Reviewed by bienvenu.
git-svn-id: svn://10.0.0.236/trunk@53122 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:23:29 +00:00
sfraser%netscape.com
cbb5dd663c Fix 16653 and 18496 -- assert on non-local Edit Page, and avoid opening a second composer window for a file that is already open. r=cmanske
git-svn-id: svn://10.0.0.236/trunk@53121 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:12:23 +00:00
sfraser%netscape.com
109ce230c7 Add windowtype attribtue on window for bug 18496. r=cmanske
git-svn-id: svn://10.0.0.236/trunk@53120 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:10:05 +00:00
sfraser%netscape.com
79de159da2 Use OS call to get caret blink time on Windows, bug 15422. r=kin
git-svn-id: svn://10.0.0.236/trunk@53119 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:08:49 +00:00
sspitzer%netscape.com
72a0898873 ignore generated Makefiles
git-svn-id: svn://10.0.0.236/trunk@53118 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:08:20 +00:00
bienvenu%netscape.com
c66aeb5988 hook up pseudo interruption, r=jefft 15012
git-svn-id: svn://10.0.0.236/trunk@53117 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:04:45 +00:00
av%netscape.com
e2a5ab7e02 Fix for bug 16302. Added counting margins when calculating the object size, r=nisheeth
git-svn-id: svn://10.0.0.236/trunk@53116 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-11 00:00:07 +00:00
bienvenu%netscape.com
0e2fbc7315 fix trivial build warnings, unused variables
git-svn-id: svn://10.0.0.236/trunk@53115 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:58:39 +00:00
rjc%netscape.com
577cd4ac84 Check in real fix. Review: me
git-svn-id: svn://10.0.0.236/trunk@53114 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:56:29 +00:00
sspitzer%netscape.com
a2031e92b9 fix #18383, r=alecf.
check if the folder really exists by checking if it has a server.
if not, return an error.
this makes the right error message pop up.


git-svn-id: svn://10.0.0.236/trunk@53113 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:54:25 +00:00
rjc%netscape.com
c1eba56c75 Comment out problem.
git-svn-id: svn://10.0.0.236/trunk@53112 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:54:24 +00:00
ducarroz%netscape.com
85c58b7866 Forget to checking version that check return of ConvertFromUnicode & ConvertToUnicode. R=jefft
git-svn-id: svn://10.0.0.236/trunk@53111 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:54:05 +00:00
sspitzer%netscape.com
a0d9a56a3c check in patch from cls@seawood.org
add comment.


git-svn-id: svn://10.0.0.236/trunk@53110 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:53:40 +00:00
sspitzer%netscape.com
7eb395e300 fix #18510. package up "Mozilla Select Profile"
and the "Mozilla NSPR Log" files.


git-svn-id: svn://10.0.0.236/trunk@53109 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:53:12 +00:00
nhotta%netscape.com
f4b0f0a51a Added msgbaseutil to makefiles so unicode conversion utils to be accessable, part of bug fix #18264, r=ftang.
git-svn-id: svn://10.0.0.236/trunk@53108 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:51:46 +00:00
sspitzer%netscape.com
ddd9e310c2 fix warning.
git-svn-id: svn://10.0.0.236/trunk@53107 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:51:45 +00:00
evaughan%netscape.com
009c882c36 Fixed gfxscrollbar bugs #16460 and #15722
git-svn-id: svn://10.0.0.236/trunk@53106 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:51:44 +00:00
rjc%netscape.com
1c6454fbce Small improvements to HTTP-INDEX datasource. Review: me
git-svn-id: svn://10.0.0.236/trunk@53105 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:51:10 +00:00
akkana%netscape.com
6f4b49e030 17564, 17871, 17883, 18249, 13753,
18012, 16800, maybe 17565 and 13278:
Integrate contributions from Ben Bucksch (mozilla@bucksch.org)
and Daniel Brattell (bratell@lysator.liu.se) to improve formatted
plaintext output, including adding text style indicators, improving
table output and wrapping, and fixing several wrapping/whitespace bugs.
Also update the auto tests to reflect some of the bugs recently fixed.
  r=myself,mozilla@bucksch.org,bratell@lysator.liu.se


git-svn-id: svn://10.0.0.236/trunk@53104 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:50:45 +00:00
pollmann%netscape.com
5d1e46267a Bug 17656: Checking in jst@citec.fi fix to make Framesets resize correctly. A: chofmann R: pollmann
git-svn-id: svn://10.0.0.236/trunk@53103 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:50:38 +00:00
rjc%netscape.com
2466de998d Add support for secondary key sort. Convert over to using nsCOMPtrs. Review: me
git-svn-id: svn://10.0.0.236/trunk@53102 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:50:34 +00:00
leaf%mozilla.org
35f00f3824 s/apprunner/mozilla-bin/ to comply with new binary name. r=alecf
git-svn-id: svn://10.0.0.236/trunk@53101 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:50:01 +00:00
ducarroz%netscape.com
0cdb370274 Fix for bug 18402, don't use AutoCString when need to deal with a UTF8 string (nsMsgCompose.cpp only).
Fix for bug 13261, use constants instead of numerical.
Cleanup Forward code, eliminate duplicate or dead code (in prep. for bug 15682)


git-svn-id: svn://10.0.0.236/trunk@53100 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:47:59 +00:00
ftang%netscape.com
acade41cee Change the GetRelativedWindowCoordinate to return the botton of the cursor, instead of the top of the cursor. We need this to make Mac IME candidcate window popup in a more reasonable place. author=sfraser. r=ftang
git-svn-id: svn://10.0.0.236/trunk@53099 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:47:56 +00:00
slamm%netscape.com
82330ef504 Fix warnings for partially bracketed initializers. r=rickg a=chofmann
git-svn-id: svn://10.0.0.236/trunk@53098 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:47:37 +00:00
ftang%netscape.com
f4cad5fb6e fix bug 17710, 12253, 18286. r=erik. hide the mIMEIsComposition into HandlStart/EndComposition method. +1 for size checking. remove startCompostion after we receive result. Add StartComposition if we have not start composition
git-svn-id: svn://10.0.0.236/trunk@53096 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:43:46 +00:00
akkana%netscape.com
d7c2ad3748 16803, 17341: Enable unicode paste. Code from nhotta, r=me. Also re-enable plaintext paste
git-svn-id: svn://10.0.0.236/trunk@53095 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:42:11 +00:00
ftang%netscape.com
32f598b99e 1. fix 7571. review by ftang/pierre/saari
2. rewrite Mac IME code r=brade


git-svn-id: svn://10.0.0.236/trunk@53094 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:41:21 +00:00
akkana%netscape.com
eafe3578c4 Fix mEditorType, which wasn't being set before. r=sfraser
git-svn-id: svn://10.0.0.236/trunk@53093 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 23:40:38 +00:00
waterson%netscape.com
2a0808b97f Bug 18408. Use 'ObjectAt()' rather than 'Peek()', which looks at the
front of the queue. r=jband


git-svn-id: svn://10.0.0.236/trunk@53091 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 21:59:05 +00:00
tbogard%aol.net
12f6152a5f Added mLoadCookie that is used in the new URI Loader calls.
git-svn-id: svn://10.0.0.236/trunk@53090 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 21:43:58 +00:00
leaf%mozilla.org
d4db03b390 clobber builds should be making realclean
git-svn-id: svn://10.0.0.236/trunk@53087 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 20:15:32 +00:00
brade%netscape.com
9591e1ed1e remove empty_doc.html (bug #15442) r:Jerry.Kirk@Nexwarecorp.com
git-svn-id: svn://10.0.0.236/trunk@53084 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 14:48:36 +00:00
gagan%netscape.com
3ab2c7be1a Fix for 7533. The mechanism of specifying charset in content-type of a post data was breaking a lot of websites. I have changed the default to not send charset. If this has to be changed again this should go thru a pref (See bug 18431)
git-svn-id: svn://10.0.0.236/trunk@53083 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 08:58:20 +00:00
mcafee%netscape.com
b7898d0469 Ignore new name of binary. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@53082 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 08:03:06 +00:00
pavlov%netscape.com
b92f4aa57b remove #ifdef DEBUG_pavlov #define NOISY FONTS blah blah r=paulmac,mcafee
git-svn-id: svn://10.0.0.236/trunk@53081 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 07:31:01 +00:00
tbogard%aol.net
8cecdb58e5 Changes to call OpenURI with new parameter set.
git-svn-id: svn://10.0.0.236/trunk@53080 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 07:27:25 +00:00
pavlov%netscape.com
daa074a108 fixes for pasting unicode text for bug 18276 r=akkana
git-svn-id: svn://10.0.0.236/trunk@53079 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 07:26:06 +00:00
pavlov%netscape.com
8e735f811d fix for bug 1004 (native system colors) r=blizzard,smfr
git-svn-id: svn://10.0.0.236/trunk@53078 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 07:20:33 +00:00
rjc%netscape.com
00e0da2712 Fix bug # 12114 [an internal timer no longer refcnt's the nsBookmarksService, preventing a leak; instead, we cancel the timer in the DTOR] and bug # 18250 [speed up loading of bookmarks on startup by deferring loading of IE favorites.html (on Mac) until needed, and try to read in the entire file in one read request if memory is available, otherwise fall back to parsing line by line]. Review: waterson@netscape.com
git-svn-id: svn://10.0.0.236/trunk@53077 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 07:05:16 +00:00
tbogard%aol.net
b66961452f Changed nsComponentManager::CreateInstance to use new nsCOMPtr do_CreateInstance.
git-svn-id: svn://10.0.0.236/trunk@53076 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 07:03:50 +00:00
tbogard%aol.net
40bcf7296c Changed nsComponentManager::CreateInstance calls to use the new nsCOMPtr do_CreateInstance().
git-svn-id: svn://10.0.0.236/trunk@53075 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 06:54:39 +00:00
mscott%netscape.com
80bf48903f (not part of the seamonkey build...yet!)
Clean up OpenURI api. get rid of the verb, the channel context and the loadgroup as required arguments
to OpenURI.

Add nsUriLoaderEventSinkGetter class. Many method signatures
changed to match the changes to nsIURILoader::OpenURI.


git-svn-id: svn://10.0.0.236/trunk@53074 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 06:24:40 +00:00
mscott%netscape.com
f0c23a8611 (not part of the build yet!)
Clean up OpenURI api. get rid of the verb, the channel context and the loadgroup as required arguments
to OpenURI.

Add the notion of a open uri context as an in and an out parameter. The open uri context is a cookie which
the caller can later give back to the uri loader when running another url in the same context. It's an ISupports
right now and the type should be opaque to the caller.

Don't require the caller to pass in an event sink getter. We can generate this for them. Do give them the ability
to pass in a nsIProgressEventSink. Note: this parameter is actually going to get changed into a nsIProgressListener
real soon as well. So don't get to used to it.


git-svn-id: svn://10.0.0.236/trunk@53073 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 06:22:29 +00:00
ftang%netscape.com
1b0abe5c51 fix 17409. rewrite the Notify method to take care random order of HTTP-EQUIV or CONTENT. performance enhance the code. keep the old code in the #else of #if 1 statement for now. r=nhotta
git-svn-id: svn://10.0.0.236/trunk@53071 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 05:55:58 +00:00
ftang%netscape.com
f274743ebb fix 16808. change hard coded utf-8'to UTF-8', get charset hint from webshell. r=nhotta
git-svn-id: svn://10.0.0.236/trunk@53070 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 05:50:10 +00:00
tbogard%aol.net
50c4711b2e NS_WARN_IF_FALSE now by default puts the windows messagebox up on a tripped warning condition. Before it relied on the developer having an environment variable set. r=pink a=sdagley
git-svn-id: svn://10.0.0.236/trunk@53069 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 04:32:33 +00:00
shaver%netscape.com
d225f7052a revert case change, because I no longer have the accompanying JS changes -- don't ask
git-svn-id: svn://10.0.0.236/trunk@53068 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 04:18:07 +00:00
bienvenu%netscape.com
272d724890 fix crash with bookmark to local folder, r=alecf
git-svn-id: svn://10.0.0.236/trunk@53067 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 04:12:26 +00:00
bienvenu%netscape.com
945350d58c fix build warnings
git-svn-id: svn://10.0.0.236/trunk@53066 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 04:05:16 +00:00
bienvenu%netscape.com
1abcf5624a fix build warnings about unused variables
git-svn-id: svn://10.0.0.236/trunk@53065 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 03:59:45 +00:00
nisheeth%netscape.com
2bfa653735 a=sdagley. Move over to new timing macros...
git-svn-id: svn://10.0.0.236/trunk@53064 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 03:41:09 +00:00
morse%netscape.com
4cad860e7c fix bug 65552, integrating ftp authentication with single signon, r=valeski
git-svn-id: svn://10.0.0.236/trunk@53063 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 03:39:33 +00:00
morse%netscape.com
09fe028d90 fix bug 65552, integrating ftp authentication with single signon, r=neeti
git-svn-id: svn://10.0.0.236/trunk@53062 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 03:37:35 +00:00
cls%seawood.org
e6a3cfb8fe I'm in complete awe as to how the unix tinderboxen haven't broken because of this....when I did a clobber build, nsCookie.cpp & mailnews/* started complaining about a missing rosetta.h.
git-svn-id: svn://10.0.0.236/trunk@53061 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 02:30:47 +00:00
shaver%netscape.com
742d5f1204 missed a #include
git-svn-id: svn://10.0.0.236/trunk@53060 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 02:11:08 +00:00
shaver%netscape.com
e03c3f1706 maybe fix build bustage
git-svn-id: svn://10.0.0.236/trunk@53059 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 02:10:39 +00:00
shaver%netscape.com
e67b7a69e7 fix build bustage from big dumb shaver
git-svn-id: svn://10.0.0.236/trunk@53058 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 02:04:58 +00:00
shaver%netscape.com
c6b0353b9c export nsSupportsArray so the Mac and VC can see it
git-svn-id: svn://10.0.0.236/trunk@53057 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 01:49:30 +00:00
bienvenu%netscape.com
08cbb3eb94 fix build bustage, use PR_MAX instead of MAX
git-svn-id: svn://10.0.0.236/trunk@53056 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 01:02:30 +00:00
cls%seawood.org
1759db8032 Oops. Wrapping that in a ifdef until a proper fix is determined
git-svn-id: svn://10.0.0.236/trunk@53055 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:59:30 +00:00
rhp%netscape.com
237439b927 Fixing evaluation of nsresult - Bug #:18157 r: jefft
git-svn-id: svn://10.0.0.236/trunk@53054 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:56:36 +00:00
bienvenu%netscape.com
6a23d1fc5a fixes for msg threading, r=scottip
git-svn-id: svn://10.0.0.236/trunk@53053 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:44:45 +00:00
bienvenu%netscape.com
c3d2033a3a more work on imap pending counts,r=jefft
git-svn-id: svn://10.0.0.236/trunk@53052 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:42:55 +00:00
bienvenu%netscape.com
fcfedf2d17 move folder cache to account mgr, per alecf, fix pending counts r=jefft
git-svn-id: svn://10.0.0.236/trunk@53051 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:41:52 +00:00
jj%netscape.com
bf63cc710d fixed a misplaced '-' . a=chofmann
git-svn-id: svn://10.0.0.236/trunk@53050 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:34:48 +00:00
shaver%netscape.com
d9c238eacf - use JSThreadContextStack and JSRuntimeService (more) correctly in loader
- teach loader about unloading and deferring components
- turn off some DEBUG_shaver noise
- better error reporting
- use nsXPIDLCString
- use nsCOMPtr
- add missing cxstack->Pop() in the xpcshell
- Components.results.NS_ERROR_FACTORY_REGISTER_AGAIN (want better text for
  error message)
- handle thrown-nsresult correctly where C++ calls JS without an active JS
  stack
- remove missing cxstack->Pop() from TestXPC
r=jband,brendan


git-svn-id: svn://10.0.0.236/trunk@53049 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:34:26 +00:00
waterson%netscape.com
ad1c6cded6 Bug 18257. Fix leak of nsIDocument in form submission. r=karnaze, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@53048 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:30:09 +00:00
shaver%netscape.com
6896473ece - NS_ERROR_FACTORY_REGISTER_AGAIN for deferring registration of a module until
later in the autoreg cycle.
- teach native component loader about deferred components
- add nsIComponentLoader::registerDeferredComponents
- teach component manager about deferred components
- made nsID::Parse take a |const char *| instead of a simple |char *|.
- move release of XPTI singletons until _after_ shutting down the component
  manager to prevent re-initialization during JS component shutdown.
- category manager work: really delete from reg, start on enumeration
- use nsXPIDLCString instead of autoStringFree.
- fix nsRegistry to use allocator properly.
- cleaner memory management in nsFactoryEntry.
- capitalization fixed in nsIComponentLoader.idl
- clean up loader creation logic
- remove/disable lots of DEBUG_shaver noise
- added (disabled) warning about NSGetFactory usage
- move .so and .shlb higher up in the ValidDllExtensions list to marginally
  speed up registration.
- added nsDll::GetRegistryLocation API
- properly export nsSupportsArray.h
- capitalization fixes in nsIEnumerator.idl
- added deferral to nsSample.js


git-svn-id: svn://10.0.0.236/trunk@53047 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:28:34 +00:00
idk%eng.sun.com
51054c8b7a 17316
Class names updated (see 18180)

a=laa@sparc.spb.su
r=idk@eng.sun.com


git-svn-id: svn://10.0.0.236/trunk@53046 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:27:00 +00:00
scc%netscape.com
9fec22a94d Added |do_CreateInstance()|, |do_GetService()| both by CID and ProgID. See bugs #17364, #17448. r={travis, dp}
git-svn-id: svn://10.0.0.236/trunk@53045 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:14:54 +00:00
sspitzer%netscape.com
34b13b24f7 add bulletproofing for bug #15093. bug still exists, but this code and assertion is needed.
git-svn-id: svn://10.0.0.236/trunk@53044 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:14:29 +00:00
scc%netscape.com
79bbb292a0 Moved |do_CreateInstance()| from here to nsComponentManagerUtils.h. See bugs #17364, #17448. r={travis, dp}
git-svn-id: svn://10.0.0.236/trunk@53043 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:14:10 +00:00
sspitzer%netscape.com
e766d064ca fix comment.
git-svn-id: svn://10.0.0.236/trunk@53042 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:12:37 +00:00
sspitzer%netscape.com
f172a4e37a fix warnings.
git-svn-id: svn://10.0.0.236/trunk@53041 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:12:22 +00:00
sspitzer%netscape.com
ae26eeb260 fix for #18260, r=mscott. if we had a pop server in 4.x, upon migration, set
the send later uri pref to the "Unsent Messages" folder under that pop account.


git-svn-id: svn://10.0.0.236/trunk@53040 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:12:08 +00:00
sspitzer%netscape.com
837d127dc1 fix warnings. r=valeski.
git-svn-id: svn://10.0.0.236/trunk@53039 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:10:59 +00:00
sspitzer%netscape.com
3a02b027dc don't build smtpTest anymore, it's obsolete. r=mscott
git-svn-id: svn://10.0.0.236/trunk@53038 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:10:40 +00:00
sspitzer%netscape.com
c148e9dbd8 fix warning.
git-svn-id: svn://10.0.0.236/trunk@53037 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-10 00:09:32 +00:00
cls%seawood.org
5f4e4068eb Commented out ExtCacheDBInfo struct & uses of it in net.h as it's not used since Necko landed. r=warren
Removed dbm from allmakefiles.sh & mozilla/Makefile.in.


git-svn-id: svn://10.0.0.236/trunk@53036 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:52:25 +00:00
rods%netscape.com
bd3e148ac8 I checked in a bad fix. This is correct. I have had Chris K. check it over.
Migrains will do that to you. for bug 18039


git-svn-id: svn://10.0.0.236/trunk@53035 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:49:37 +00:00
dp%netscape.com
9c89d26c52 Enabling observing of XPCOM Shutdown r=jband r=putterman
git-svn-id: svn://10.0.0.236/trunk@53034 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:41:24 +00:00
waterson%netscape.com
2f900ccff2 Bug 18256. Fix nsIDocument leak in WLLT_OnSubmit. r=morse, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@53033 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:39:36 +00:00
waterson%netscape.com
81352c0b3e Bug 18067. Event listeners are refcounted; do not try to manually 'delete'. r=hyatt, a=chofmann.
git-svn-id: svn://10.0.0.236/trunk@53032 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:37:57 +00:00
waterson%netscape.com
254ba7fef5 Bug 18066. Only addref the listener if it isn't already in our set of listeners. r=joki, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@53031 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:37:08 +00:00
briano%netscape.com
0e7fba508d Automated update
git-svn-id: svn://10.0.0.236/trunk@53030 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:31:43 +00:00
dp%netscape.com
ccb285cb8c Removing NS_COMFALSE usage.
git-svn-id: svn://10.0.0.236/trunk@53029 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:30:44 +00:00
briano%netscape.com
8fd91df808 Automated update
git-svn-id: svn://10.0.0.236/trunk@53028 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:30:43 +00:00
cls%seawood.org
5652546c52 Moved the handling of extensions into configure.in.
Changed allmakefiles.sh to only generate Makefiles for extensions directories that are specified.
Added support for --with-extensions=none & --without-extensions
The following options have been superceded by --with-extensions:
   --disable-cookie-management
   --disable-client-wallet
   --disable-single-signon


git-svn-id: svn://10.0.0.236/trunk@53027 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:30:32 +00:00
dp%netscape.com
459c2a4c80 Modifying sample to use NS_MODULE macros. r=alecf
git-svn-id: svn://10.0.0.236/trunk@53026 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:28:10 +00:00
cls%seawood.org
41bcfc5972 Removed modules/security/freenav from DIRS
git-svn-id: svn://10.0.0.236/trunk@53025 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:25:12 +00:00
cls%seawood.org
f1c7032b4b Removed NECKO define.
Added '-W -Wno-unused' to _WARNINGS_CFLAGS for gcc.
Marked --enable-mathml as broken.


git-svn-id: svn://10.0.0.236/trunk@53024 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:22:15 +00:00
cls%seawood.org
bd038eb739 Commented out unused Makefiles
git-svn-id: svn://10.0.0.236/trunk@53023 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:18:28 +00:00
cls%seawood.org
08b4a73117 Copied check for MOZ_SECURITY to DEBUG_AUTOCONF_XCOMPILE ifdef
git-svn-id: svn://10.0.0.236/trunk@53022 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:16:22 +00:00
cls%seawood.org
99804f7160 Replaced NO_SECURITY ifdef with MOZ_SECURITY one. This causes pref_VerifyLockFile to always return PR_TRUE rather than linking against the dummy secfree library. This replacement also removed the last dependency upon that dummy library so it will no longer be built (next patch).
git-svn-id: svn://10.0.0.236/trunk@53021 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:13:53 +00:00
cls%seawood.org
2f8c89d340 gcc 2.95+ fixes
git-svn-id: svn://10.0.0.236/trunk@53019 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:04:16 +00:00
despotdaemon%netscape.com
90ac873269 Pseudo-automatic update of changes made by leaf@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@53018 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:03:12 +00:00
matt%netscape.com
2dfb0ef7b9 fixing for bug 16221
changing port from string to int


git-svn-id: svn://10.0.0.236/trunk@53017 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 23:02:51 +00:00
rods%netscape.com
c8a56bd594 Fixes bug 18039, it doesn't call WipeContainingBlock for select frames
This needs a better fix, filed bug 18366
r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@53015 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 22:36:05 +00:00
valeski%netscape.com
b8aec44d1a 18134, a=chofmann,r=andreas. Resolve() was not handling ../../ cases in relative URI specs. Now it is. We call ReplaceDotMess() on the path portion _only_.
git-svn-id: svn://10.0.0.236/trunk@53011 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 21:31:43 +00:00
pinkerton%netscape.com
830bbaa157 remove the tooltip over mozilla button because we don't yet have a good fix for bug 15946. this is a workaround. (r=sdagley).
git-svn-id: svn://10.0.0.236/trunk@53010 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 21:29:06 +00:00
karnaze%netscape.com
e5e7dad23d new regression test not affecting build.
git-svn-id: svn://10.0.0.236/trunk@53009 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 21:06:13 +00:00
sspitzer%netscape.com
6342265a22 fix for the regression I introduced. when we send the 'MAIL FROM:' command to the SMTP server, we want to send it 'MAIL FROM: <sender>', not 'MAIL FROM: <Foo Bar <fbar@xyz.com>>'. my SMTP server allowed 'MAIL FROM: <Seth Spitzer <sspitzer@netscape.com>>' which is why I didn't catch this.
git-svn-id: svn://10.0.0.236/trunk@53007 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 19:25:39 +00:00
blizzard%redhat.com
6ab2c4bae1 include ctype.h so isprint() is defined. a=choffman
git-svn-id: svn://10.0.0.236/trunk@53006 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 19:20:24 +00:00
karnaze%netscape.com
64b63632a7 new regression test, not affecting build.
git-svn-id: svn://10.0.0.236/trunk@53005 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 18:45:09 +00:00
rogerl%netscape.com
c11cf8f069 Removed NativeClosure
git-svn-id: svn://10.0.0.236/trunk@53004 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 18:24:40 +00:00
leaf%mozilla.org
1e4724cd9d fixing packaging target to depend on mozilla-bin rather than apprunner
git-svn-id: svn://10.0.0.236/trunk@53003 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 18:21:18 +00:00
terry%mozilla.org
1d8dc5ef4f Turns out string fields should all be declared as "binary" if we want
them to be case-insensitive.


git-svn-id: svn://10.0.0.236/trunk@53002 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 18:12:43 +00:00
slamm%netscape.com
09261a2465 Now really get it right.
git-svn-id: svn://10.0.0.236/trunk@53001 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 18:05:12 +00:00
slamm%netscape.com
0b298978a3 Get directory right for mailnews aggregate warnings.
git-svn-id: svn://10.0.0.236/trunk@53000 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 18:01:26 +00:00
slamm%netscape.com
a65d46563a Add warning filtering by directory. Fix some perl warnings.
git-svn-id: svn://10.0.0.236/trunk@52999 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 17:58:56 +00:00
rods%netscape.com
b616783180 Fixes MLK 18207 - missing addref, r=beard
Fixes Crasher 17852 by temporarily commenting out the offending line, waiting on bug 18183
r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@52994 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 13:41:27 +00:00
idk%eng.sun.com
f49b0b03e5 bug 17859
Added null checking


git-svn-id: svn://10.0.0.236/trunk@52993 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 10:42:36 +00:00
idk%eng.sun.com
51254cf0e7 bug 18180
Names changed
Pluglet->PlugletFactory, *PlugletInstance*->*Pluglet*


git-svn-id: svn://10.0.0.236/trunk@52992 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 10:28:46 +00:00
pinkerton%netscape.com
2d80fbfdef fix for #17664 (crash in drag code when css destroys the frame when clicking on link). small fix for when target is null on mouseMove events (say when mouse is in menu bar on MacOS). (r=saari).
git-svn-id: svn://10.0.0.236/trunk@52991 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 07:10:46 +00:00
leaf%mozilla.org
453fa7fe38 removing NECKO #define, adding irc to windows build, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@52990 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 04:36:08 +00:00
nisheeth%netscape.com
7ad60e4687 r=vidur. a=chofmann. Post a reflow event instead of doing reflow command processing synchronously. Currently this only happens on content appended and content inserted notificaitions in the pres shell.
git-svn-id: svn://10.0.0.236/trunk@52989 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 03:23:26 +00:00
bienvenu%netscape.com
a76ce97e81 write out folder cache on messenger bootstrap shutdown a=chofmann,r=rhp 18306
git-svn-id: svn://10.0.0.236/trunk@52988 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 03:19:01 +00:00
rhp%netscape.com
0ec3cd2edd Fix for format=flowed plain text - Part of 17983 fix - r: rhp
git-svn-id: svn://10.0.0.236/trunk@52987 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 03:09:28 +00:00
rhp%netscape.com
abcd90e75e Fix for quoting problem - Bug #17983 - r: alecf
git-svn-id: svn://10.0.0.236/trunk@52986 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 03:05:10 +00:00
sspitzer%netscape.com
0e99032636 fix for #18128, r=alecf, a=chofmann
fix the broken icon.


git-svn-id: svn://10.0.0.236/trunk@52985 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:54:00 +00:00
slamm%netscape.com
58a222a49a Add styles, dialog and push, to titledbuttons. Fix for 18299. r=hyatt a=chofmann
git-svn-id: svn://10.0.0.236/trunk@52984 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:33:18 +00:00
sspitzer%netscape.com
23b419547b fix for #17956, a=chofmann. fix by ducarroz, r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@52983 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:07:58 +00:00
hangas%netscape.com
9d1753e49a Hacked Undo/Redo menus to always appear enabled. This is a work-around for the issue where menus steal focus and therefore break command updating. r=sspitzer a=chofmann
git-svn-id: svn://10.0.0.236/trunk@52982 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:07:40 +00:00
leaf%mozilla.org
b312375e6a making apprunner -> mozilla-bin switch
git-svn-id: svn://10.0.0.236/trunk@52981 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:05:20 +00:00
sspitzer%netscape.com
5839aa32bc fix for #17956 and #18084.
#17956 is reply fails if message in local mail folder

fix (by ducarroz) is to remove the temporary code.

#18084 is sending email fails in certain cases

the problem is we were sending the wrong info to the SMTP server.
when we sent "MAIL FROM: <address>" to the SMTP server we sent
the smtp username and not the full name built from the identity.
most of the changes are to support passing the identity around.
I also added code so that the smtp username is used on the mailto url spec.
we'll need that later, when we support multiple smtp servers and ESMTP.

r=alecf

a=chofmann


git-svn-id: svn://10.0.0.236/trunk@52980 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:04:06 +00:00
leaf%mozilla.org
bf26e79236 changing binary name to mozilla-bin, runscript to mozilla, modifying
mozilla-apprunner.sh to invoke new binary name. Updating packages file.
bug 17219, a=chofmann r=alecf


git-svn-id: svn://10.0.0.236/trunk@52979 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 02:03:38 +00:00
endico%mozilla.org
0122906378 Oops, now the text inside the form's text box is also centered. Re-fix this by adding </P> after the blurb at the top
git-svn-id: svn://10.0.0.236/trunk@52978 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 01:38:00 +00:00
endico%mozilla.org
c168f50f60 add a <P> before the <HR> so this looks better with mozilla. apparently in html 4.0, <HR> doesn't cause a </PR> so the entire rest of the page was getting centered after the <PR ALIGN=CENTER>
git-svn-id: svn://10.0.0.236/trunk@52977 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 00:38:35 +00:00
sdagley%netscape.com
f4d74e2669 Removed yet another file warren obsoleted from yet another MANIFEST file (didn't he come up with the idea for MANIFEST files in the first place?)
git-svn-id: svn://10.0.0.236/trunk@52976 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 00:31:52 +00:00
scc%netscape.com
731d3896e8 backing it out until doug and I can resolve the types issues
git-svn-id: svn://10.0.0.236/trunk@52975 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 00:27:05 +00:00
sdagley%netscape.com
02c56cabf3 Yet Another Tree Bistage Fix - looks like warren was having a bad CVS day as he put a typo in the first line
git-svn-id: svn://10.0.0.236/trunk@52974 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 00:27:00 +00:00
sdagley%netscape.com
fa64dc6443 Another shot at fixing Mac build bustage - also remove the obsoleted nsIBuffer.h
git-svn-id: svn://10.0.0.236/trunk@52973 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-09 00:08:23 +00:00
scc%netscape.com
e8d7bbbd9e dougt's changes from earlier in the week. He was unable to leave them
in at that time because he didn't have my |nsCOMPtr| fixes.  Those went
in last night.  So, on brendans suggestion, I'm reinstating dougt's
previous checkin.


git-svn-id: svn://10.0.0.236/trunk@52972 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 22:58:14 +00:00
warren%netscape.com
4f78ccf8ff Removed nsIPageManager.h
git-svn-id: svn://10.0.0.236/trunk@52969 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 22:40:52 +00:00
warren%netscape.com
56ec26df14 Removed obsolete files from tree.
git-svn-id: svn://10.0.0.236/trunk@52958 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 22:06:07 +00:00
warren%netscape.com
37ce7ee77c Removed obsolete nsPageMgr.cpp
git-svn-id: svn://10.0.0.236/trunk@52957 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 22:05:23 +00:00
varada%netscape.com
3a7a13822a adding wizard directory to cck
git-svn-id: svn://10.0.0.236/trunk@52956 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 21:55:03 +00:00
varada%netscape.com
31fab24987 adding another global variable in globals.h and .cpp
git-svn-id: svn://10.0.0.236/trunk@52955 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 21:54:31 +00:00
varada%netscape.com
6a65198e56 changing ini files to use wizard.dll instead of functions in interpret.cpp
git-svn-id: svn://10.0.0.236/trunk@52954 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 21:53:23 +00:00
varada%netscape.com
1b5b260da4 adding new function SelectItem to make the selected item as the first in a combo box
git-svn-id: svn://10.0.0.236/trunk@52952 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 21:50:55 +00:00
varada%netscape.com
2261f0f56c Adding new directory Wizard to form wizard.dll with cck specific functions and resources.
git-svn-id: svn://10.0.0.236/trunk@52951 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 21:49:18 +00:00
joki%netscape.com
0a957febc3 Fix for bug 17618, null out current event target frame after processing event. a:chofmann, r:vidur
git-svn-id: svn://10.0.0.236/trunk@52949 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 21:30:22 +00:00
waterson%netscape.com
4f269a8b55 Bug 18102. Consolidate element map, command dispatcher, and broadcaster hookup into AddSubtreeToDocument(). Fixes over-eager hookup of broadcast listeners into unresolved overlay elements, which left a dangling pointer. r=saari, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@52948 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 19:07:13 +00:00
kin%netscape.com
e404d42c5d Fix for bug #18230: [DOGFOOD] Assertion thrown when clicking in the editor.
Fixed nsRangeListIterator AddRef/QueryInterface problems.
r=buster@netscape.com, a=chofmann@netscape.com


git-svn-id: svn://10.0.0.236/trunk@52947 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 18:49:36 +00:00
norris%netscape.com
545b7b24e3 Fix 18229: Bogus class file names being generated on Windows
git-svn-id: svn://10.0.0.236/trunk@52945 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 17:24:10 +00:00
scc%netscape.com
1efff4fab2 missed two T-->nsISupports instances, which primary platforms didn't catch, since they weren't instantiated
git-svn-id: svn://10.0.0.236/trunk@52943 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 12:25:11 +00:00
scc%netscape.com
95b2d5acdc Specialize |nsCOMPtr| for |nsISupports| (i.e., |nsCOMPtr<nsISupports>|). The specialization _does_not_ have the invariant that |nsCOMPtr<T>| has of always pointing to the COM-correct interface. An |nsCOMPtr<nsISupports>| essentially means "a pointer to _any_ [XP]COM interface". This change allows dougt to fix his M11 bug. a=chofmann, r={danm, hyatt}
git-svn-id: svn://10.0.0.236/trunk@52942 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 11:43:11 +00:00
scc%netscape.com
8d635674d9 Was using a private name from "nsCOMPtr.h" that happened to go away with this checkin. Should have been using |dont_QueryInterface()|, and now it does. r={danm, hyatt}
git-svn-id: svn://10.0.0.236/trunk@52941 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 11:43:10 +00:00
scc%netscape.com
544ad333b3 was using private |#defines| (in spite of the warning) from "nsCOMPtr.h" that happened to go away with this checkin. Should have been using |NS_STATIC_CAST| from "nscore.h". r={danm, hyatt}
git-svn-id: svn://10.0.0.236/trunk@52940 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 11:43:09 +00:00
scc%netscape.com
75bcd345da Since there are two |CurrentItem()| functions, had to add an |NS_STATIC_CAST| to disambiguate the deciding parameter, caused by the change to |nsCOMPtr|s. r={danm, hyatt}
git-svn-id: svn://10.0.0.236/trunk@52939 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 11:43:08 +00:00
scc%netscape.com
9f6cc405c4 Test the new facilities added to |nsCOMPtr| in this checkin. r={danm, hyatt}
git-svn-id: svn://10.0.0.236/trunk@52938 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 11:43:07 +00:00
karnaze%netscape.com
3760a92c43 new regression tests not affecting the build.
git-svn-id: svn://10.0.0.236/trunk@52937 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 05:25:31 +00:00
karnaze%netscape.com
948d77fe2c bug 18204 - null pointer check fixes crash. permission from chofmann.
git-svn-id: svn://10.0.0.236/trunk@52936 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 05:24:27 +00:00
beard%netscape.com
57aa5577da update just a touch more when resizing views. bug=17574, r=pavlov, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@52935 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 04:06:59 +00:00
beard%netscape.com
2464adcbbd implementing InvalidateRegion. r=sfraser, a=chofmann, bug=porkjockey painting
git-svn-id: svn://10.0.0.236/trunk@52934 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-08 04:05:26 +00:00
warren%netscape.com
b0a33033b6 Got Gayatri's JAR protocol working. (not in build yet)
git-svn-id: svn://10.0.0.236/trunk@52933 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 21:55:12 +00:00
karnaze%netscape.com
efa7f84fde new regression tests - does not affect build.
git-svn-id: svn://10.0.0.236/trunk@52931 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 20:02:08 +00:00
tbogard%aol.net
b96fcdaf82 Implemented new interface method GetCurrentURI.
git-svn-id: svn://10.0.0.236/trunk@52929 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 10:06:38 +00:00
tbogard%aol.net
0f553e90ae Added a readonly attribute to get the currently loaded URI.
git-svn-id: svn://10.0.0.236/trunk@52928 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 10:05:48 +00:00
tbogard%aol.net
7cf62492a5 Removed NewURI as it is no longer needed. Added new methods that are found in the interface for getting the currently loaded URI. Also made the changes to LoadURI* to match changes in the interface. Took advantage of the change to nsDSURIContentListener to set the presContext for the load. Made nsDSURIContentListener a friend class to avoid having to make some non-interface member functions public.
git-svn-id: svn://10.0.0.236/trunk@52927 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 10:03:51 +00:00
tbogard%aol.net
a3c35caefc Added methods to set and get the presContext for the content listener. Made nsDocShellBase a friend class so we could move the constructor and all the non-interface methods into protected area.
git-svn-id: svn://10.0.0.236/trunk@52926 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 10:00:53 +00:00
tbogard%aol.net
5ccaaeea48 Changed loadURI to take an nsIURI instead of a wstring. Added a read-only attribute to get the currently loaded URI.
git-svn-id: svn://10.0.0.236/trunk@52925 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-07 09:57:56 +00:00
tbogard%aol.net
813d03c1d2 Changed the C++ includes to the equivalent of nsIURI and nsIStreamListener IDL versions. I couldn't find them earlier. Thanks to andreas.otte@primus-online.de for pointing the availability of them out to me.
git-svn-id: svn://10.0.0.236/trunk@52921 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 19:11:09 +00:00
tbogard%aol.net
977c28a6da Changed the nsIDocShell parent attribute to not create a cycle. Added notes about this. Framed out start of usage for the uriloader. Added code for the new nsDSURIContentListener object to be the callback object for nsIURIContentListener passed to uriloader.
git-svn-id: svn://10.0.0.236/trunk@52920 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 04:51:05 +00:00
tbogard%aol.net
7be6ee6c2f Added parentURIContentListener. Also added comments on the nsIDocShell parent attribute to discuss the cycle situation that could occur. Added notifications about the rules that must be used when using/ implementing this member.
git-svn-id: svn://10.0.0.236/trunk@52919 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 04:48:21 +00:00
tbogard%aol.net
790003c9ea Changed the some of the forward declared interfaces to be includes of the idl files. This makes the usages of these interfaces easier. Also put in the C++ includes for the nasty dumb interfaces nsIURI and nsIStreamListener which haven't found their homes in IDL yet.
git-svn-id: svn://10.0.0.236/trunk@52918 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:58:15 +00:00
endico%mozilla.org
bc53c85ca0 re-enabling bonsai after dmose's monster landing. also, stop maling sar and donm when modules file is updated
git-svn-id: svn://10.0.0.236/trunk@52917 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:46:25 +00:00
dmose%mozilla.org
0efb7c174c updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52910 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:43:54 +00:00
dmose%mozilla.org
92d791b7b0 updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52908 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:40:37 +00:00
beard%netscape.com
b3b0de73e9 added -assign flag, to assign blame to stack crawls.
git-svn-id: svn://10.0.0.236/trunk@52907 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:24:08 +00:00
beard%netscape.com
87caded68d added ASSIGN_BLAME to control whether blameInfo is retrieved (which is quite slow)
git-svn-id: svn://10.0.0.236/trunk@52906 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:23:49 +00:00
beard%netscape.com
5f0aaf354d added tag quoting, to avoid messing up the leak reports.
git-svn-id: svn://10.0.0.236/trunk@52905 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:22:46 +00:00
despotdaemon%netscape.com
ee4fb8f0ff Pseudo-automatic update of changes made by dmose@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@52904 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 03:15:28 +00:00
dmose%mozilla.org
4df7c35211 updated xPL license boilerplate to v1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52903 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 02:59:15 +00:00
dmose%mozilla.org
0f496fe790 updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@52902 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-06 02:52:41 +00:00
95 changed files with 21076 additions and 105 deletions

View File

@@ -0,0 +1,170 @@
INSTALL: Installation instructions for XMLterm source code
----------------------------------------------------------
*NOTE* This is work in progress. User beware!
*NOTE* Check the XMLterm web site <http://xmlterm.org> for updates.
29 Nov 1999
In the following discussion, file and directory names are relative
to the main ("mozilla/extensions/xmlterm") directory. See the end of the
README file for a brief description of the subdirectories.
1. Source tree (skip this step if XMLterm is already in the source tree)
------------------------------------------------------------------------
The XMLterm source code is distributed as a tarball, xmlterm.tar.gz
This tar file needs to be untarred in the "mozilla/extensions" directory,
or any any other "mozilla/dir" directory one level below the top-level.
A subdirectory called "xmlterm" will be created there.
("mozilla" denotes the root directory of the Mozilla source tree)
If you have already untarred it elsewhere, simply move the "xmlterm" directory
to the right place.
2. Configuration
----------------
To recursively create all Makefiles from Makefile.in files, type the following:
makemake -r
The file "config/xmlterm_config.mk" contains XMLterm specific configuration
information that is needed in addition to any Mozilla configuration
information. It has already been hand-configured for Linux2.0/Linux2.2, and
Solaris2.6 platforms. It may need to be modified slightly to compile XMLterm
on other platforms.
At present XMLterm has been tested only on Linux (RedHat6.0) and Solaris2.6
platforms, using the M11 release as the base version of Mozilla.
XMLterm typically uses the UNIX pseudo-TTY interface to communicate with the
shell. At present, this interface is implemented only for Linux and Solaris
platforms.
XMLterm may compile on other Unix platforms, but it will use NSPR pipes,
rather than a pseudo-TTY, for process communication; this means that the
terminal control characters, such as Control-C for interrupting jobs, will not
work on those platforms. (See the file doc/PORTABILITY for a discussion of
portability issues)
3. Creating the dynamically loaded XPCOM/XPCONNECT component
------------------------------------------------------------
To create the dynamically loaded XPCOM library, type the following in the main
directory
make all
This creates the self-registering library "libxmlterm.so" and installs it in
the "mozilla/dist/bin/components" directory, along with some chrome
files. After this step, the following interfaces become accessible in Mozilla
through XPCOM/XPCONNECT:
mozIXMLTermShell (interface to XMLterm)
mozILineTerm (interface to the stand-alone LINETERM)
To clean up completely, type
make clean
4. Using the lightweight "xmlterm" stand-alone program
----------------------------------------------------
Step 3 creates an executable called "xmlterm" in the "mozilla/dist/bin"
directory. This is a lightweight program implementing XMLterm using the Gecko
layout engine only, without the added baggage of the full browser. Executing
"xmlterm" will create an XMLterm window. Click on this window to give it focus
before typing Unix commands.
The command line can be edited using EMACS-style key bindings.
Command completion should also work with TCSH and BASH, as should history
recall.
**NOTE**
The command prompt is assumed to be terminated by one of the characters
"#$%>?", followed by a space. If this is not the case, many features will not
work. This restriction will be relaxed in the future.
By default, blue coloring is used to indicate clickable display elements.
Note that the prompt and the input command line are clickable.
(Of course, the appearance of XMLterm is completely configurable
using the CSS stylesheet chrome://xmlterm/skin/default/xmlterm.css)
After typing one or two commands, click on the prompt string of any previous
command to see what happens! Then click again on the same prompt string.
Also click on "Hide all output" button at the top of the document.
Clicking on a previous command line (to the right of the prompt) re-executes
the command.
The sample Perl script "xls", the iconic/hypertext version of the Unix "ls"
command, is in the "tests" directory. Copy it to some directory in your path
to use it.
Note: At present, xmlterm only works with the GTK front end.
5. Creating an XMLterm window using the browser
-----------------------------------------------
At this time, XMLterm cannot be accessed through the menu bar. Instead, load
the URL "chrome://xmlterm/content/xmlterm.html" in the browser, either at the
command line or by typing it in the URL box. Then click on the browser window
with the mouse to shift focus and then start typing UNIX commands.
6. Stand-alone mode (optional)
------------------------------
Although XMLterm resides in the Mozilla source tree, portions of it are
capable of being compiled and linked completely independent of Mozilla. You
may want to do this for testing purposes. The "config" directory contains
make files that are used for this stand-alone mode. There is even a dumb
script called "makemake" which can be used to re-create make files, if the
corresponding Makefile.in files have been changed.
*NOTE* The executable "lterm" requires the NCURSES include file "curses.h"
To create the stand-alone executables, type
make STAND_ALONE=1 all
(To clean up stand-alone modules, type "make STAND_ALONE=1 clean")
This creates the stand-alone library in "base/lib" and some stand-alone
executables in the "linetest/lib" directory, in particular, one called
"lterm".
The executable "lterm" implements a line terminal (LINETERM), i.e., a
non-graphical version of XMLterm. In the future, this may be implemented using
NCURSES for full screen operation. At present, it only provides line-at-a-time
functionality and is used only for testing.
LINETERM acts as an "engine" for XMLterm, carrying out all the non-graphical
tasks, completely independent of Mozilla. It is written in C and is licensed
under both MPL and GPL. It provides functionality similar to the EMACS shell
mode or the GNU readline package.
LINETERM has various options where trace output may be redirected to a
different TTY device, for debugging purposes. LINETERM may be used like the
shell command "sh", e.g.,
prompt% lterm
prompt% ls
<listing>
prompt% exit
The "tests/escape" program can be used to generate terminal escape sequences
to test the XMLterm API. In particular, the following command enables
extensive trace output, if executed within an XMLterm or LINETERM:
tests/escape 1 98 D
-----------------------------------------------------------------------------

View File

@@ -0,0 +1,78 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm root directory
ifdef STAND_ALONE
DEPTH = .
topsrcdir = .
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
# Debug option
DEBUG = 1
ifdef STAND_ALONE
DIRS = base tests linetest
else # not STAND_ALONE
DIRS = base ui geckoterm tests
LIBRARY_NAME =
# Exported header files
EXPORTS =
# Defines
DEFINES =
# C++ Sources
CPPSRCS =
endif
include $(topsrcdir)/config/config.mk
include config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,63 @@
xmlterm --- A graphical command line interface
==============================================
An early prototype of XMLterm, an XTERM-like terminal program implemented
using the open source Mozilla layout engine, is now available to tinker
with. XMLterm aims to add graphical and hypertext capabilities to the XTERM
command line interface, while maintaining backwards compatibility.
The basic design philosophy of XMLterm is that the user interface is a dynamic
XML document. The user and the computer interact by taking turns at appending
to this XML document. The plain text content of the XML document, i.e.,
excluding any markup, corresponds to the plain text that would be displayed by
a plain XTERM. The markup in the XML document is used to add graphical and
hypertext features. XMLterm uses the Mozilla layout engine to display the XML
document.
XMLterm is an open source project in its early stages. Comments and
contributions are welcome!
R. Saravanan <svn@xmlterm.org>
28 Nov 1999
===========
NOTES:
1. See the INSTALL file for configuration/installation instructions.
2. See the file doc/INSTALL.xmlterm for binary installation instructions.
3. Check the XMLterm web site <http://xmlterm.org> for updates.
===========================================================================
DOCUMENTATION
a. There is a README file in each directory that provides some basic
information.
b. The file "base/README" provides a brief overview of the XMLterm code
architecture.
c. The header files (*.idl, *.h) have comments describing class methods
and member variables in JAVADOC format. Look at them before delving
into the *.cpp files
===========================================================================
FILES:
INSTALL installation instructions
README this file
UUID.txt list of UUIDs used by XMLterm
The main subdirectories of the "xmlterm" directory are:
base/ base source code for XMLterm libraries
config/ make rules for stand-alone mode
dist/ holds include and library file for stand-alone LineTerm only
doc/ some documentation
geckoterm/ lightweight XMLterm executable
linetest/ stand-alone line terminal testing executables
tests/ XMLterm test programs and scripts, including "pagelets"
ui/* user interface/chrome files
--

View File

@@ -0,0 +1,28 @@
UUID.txt: UUIDs used by XMLTerm
-------------------------------
2 Dec 1999
A block of 256 UUIDs was generated by running uuidgen,
ranging from
/* 0eb82b00-43a2-11d3-8e76-006008948af5 */
to
/* 0eb82bff-43a2-11d3-8e76-006008948af5 */
with the 7th and 8th hex digits varying from 00 to ff.
Of these, the following UUIDs are being used as IIDs and CIDs:
mozILineTerm IID "0eb82b00-43a2-11d3-8e76-006008948af5"
mozLineTerm CID "0eb82b01-43a2-11d3-8e76-006008948af5"
mozILineTermAux IID "0eb82b10-43a2-11d3-8e76-006008948af5"
mozIXMLTerminal IID "0eb82b20-43a2-11d3-8e76-006008948af5"
mozXMLTerminal CID "0eb82b21-43a2-11d3-8e76-006008948af5"
mozIXMLTermShell IID "0eb82b30-43a2-11d3-8e76-006008948af5"
mozXMLTermShell CID "0eb82b31-43a2-11d3-8e76-006008948af5"
mozIXMLTermStream IID "0eb82b40-43a2-11d3-8e76-006008948af5"
mozXMLTermStream CID "0eb82b41-43a2-11d3-8e76-006008948af5"
mozISimpleContainer IID "0eb82bF0-43a2-11d3-8e76-006008948af5"
mozSimpleContainer CID "0eb82bF1-43a2-11d3-8e76-006008948af5"
--

View File

@@ -0,0 +1,120 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/base directory
ifdef STAND_ALONE
DEPTH = ..
topsrcdir = ..
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
# Debug option
DEBUG = 1
# Library name
LIBRARY_NAME = xmlterm
# C Sources
ifdef NO_PTY
CSRCS = ltermManager.c ltermIO.c ltermInput.c ltermOutput.c ltermEscape.c \
tracelog.c unistring.c
else
CSRCS = ltermManager.c ltermIO.c ltermInput.c ltermOutput.c ltermEscape.c \
tracelog.c unistring.c ptystream.c
endif
ifdef STAND_ALONE
# Defines
DEFINES +=
# Exported header files
EXPORTS = lineterm.h tracelog.h unistring.h ptystream.h
# C++ Sources
CPPSRCS =
else # not STAND_ALONE
# Defines
DEFINES += $(TK_CFLAGS)
# Exported header files (excluding XPCONNECT interfaces)
EXPORTS = lineterm.h tracelog.h unistring.h ptystream.h mozXMLT.h mozXMLTermUtils.h mozIXMLTerminal.h mozIXMLTermStream.h
# C++ Sources
CPPSRCS = \
mozLineTerm.cpp \
mozXMLTermUtils.cpp \
mozXMLTerminal.cpp \
mozXMLTermSession.cpp \
mozXMLTermListeners.cpp \
mozXMLTermShell.cpp \
mozXMLTermFactory.cpp \
$(NULL)
MODULE = xmlterm
IS_COMPONENT = 1
EXTRA_DSO_LDOPTS = $(TK_LIBS) \
-L$(DIST)/bin $(NSPR_LIBS) \
-L$(DIST)/bin -lxpcom
XPIDLSRCS = \
mozILineTerm.idl \
mozIXMLTermShell.idl \
$(NULL)
endif
# Also create static library libxmlterm.a
override NO_STATIC_LIB=
REQUIRES =
include $(topsrcdir)/config/config.mk
include ../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk
ifndef STAND_ALONE
ifeq ($(OS_ARCH),Linux)
OS_CFLAGS += -ansi
endif
endif

View File

@@ -0,0 +1,127 @@
base --- core source code for XMLterm and LineTerm
XMLterm control-flow/layering hierarchy
=======================================
mozilla-executable xmlterm-executable
| |
../ui/content/xmlterm.html |
| |
mozXMLTermShell ../geckoterm/mozGeckoTerm
| | |
+--------------+---------------+ |
| mozSimpleContainer
mozXMLTerminal
|
+-------------------+--------------------+
| | |
mozXMLTermSession mozLineTermAux mozXMLTermListeners
| | |
| | |
mozXMLTermStream... (LineTerm) (user input)
(rendering ...) (pseudo-TTY/shell)
XMLterm may be invoked one of two ways:
1. By loading the URL chrome://xmlterm/content/xmlterm.html in mozilla, or
2. By running the stand-alone executable "../geckoterm/xmlterm".
The diagram above shows the control-flow/layering hierarchy for both ways
of invoking XMLterm.
28 Nov 1999
===========================================================================
FILES:
The core source code for XMLterm in this directory consists of two distinct
families of files, those with names that begin with the prefix "moz" and all
the other files. The former are the Mozilla-specific portions of XMLterm,
written in C++. The remaining files constitute the Mozilla-independent portion
of XMLterm, referred to as "LineTerm".
============================================================================
LINETERM:
LineTerm is a line-oriented terminal program, in some respects similar in
functionality to the GNU Readline package. It is completely independent of the
Mozilla source code, is written in plain C, and dually licensed under GPL and
MPL.
============================================================================
INTERFACES:
lineterm.h Plain C interface to LineTerm
(used by mozLineTerm)
mozILineTerm.idl Scriptable XPCOM/XPCONNECT interface to LineTerm
(not used at the moment)
mozILineTermAux.h XPCOM interface to LineTerm, with extra features
(used by mozXMLTerminal)
mozIXMLTermShell.h Scriptable XPCOM/XPCONNECT interface to XMLterm
(used by the Javascript glue code in the XMLterm
start page at ../ui/content/xmlterm.html)
mozIXMLTerminal.h XPCOM interface to XMLterm
(used by mozXMLTermShell, ../geckoterm/mozGeckoterm)
mozIXMLTermStream.h XPCOM interface for displaying HTML/XML streams in
IFRAMES (used by mozXMLTermSession)
IMPLEMENTATIONS:
mozLineTerm.h/cpp Implementation of mozILineTerm, mozILineTermAux
Uses LineTerm to access shell
mozXMLTermShell.h/cpp Implementation of mozIXMLTermShell
Uses mozIXMLTerminal to create XMLterm
mozXMLTerminal.h/cpp Implementation of mozIXMLTerminal,
nsIDocumentLoaderObserver, and
nsIObserver
Uses mozILineTermAux to create LineTerm
Uses mozXMLTermListeners to capture user input
Uses mozXMLTermSession to display input/output
mozXMLTermListeners.h/cpp Implementations of nsIDOMKeyListener,
nsIDOMTextListener,
nsIDOMMouseListener,
nsIDOMDragListener
mozXMLTermStream.h/cpp Implementation of mozIXMLTermStream
CLASSES:
mozXMLTermSession.h/cpp Class to manage session input/output display
(used by mozXMLTerminal)
Uses mozIXMLTermStream to display streams
mozXMLTermUtils.h/cpp Abstract class for static utility functions
(for use by all classes)
============================================================================
The following are dually licensed under MPL and GPL:
LineTerm package:
lineterm.h Public interface to LineTerm
ltermPrivate.h Private common header file
ltermManager.c LineTerm manager
ltermIO.c Overlapping I/O functions
ltermInput.c Input handler
ltermOutput.c Output handler
ltermEscape.c Escape sequence handler
Low-level packages:
ptystream.h/c Stream-like interface to Unix pseudo-TTY
tracelog.h/c Simple tracing/logging diagnostic library
unistring.h/c Simple Unicode manipulation library
============================================================================

View File

@@ -0,0 +1,387 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* lineterm.h: Line terminal (LTERM) public interface header file
* LINETERM provides a "stream" interface to an XTERM-like terminal,
* using line-oriented input/output.
*/
#ifndef _LINETERM_H
#define _LINETERM_H 1
#ifndef _UNISTRING_H
#include "unistring.h"
#endif
/* Define LTERM read callback function type */
#ifdef USE_GTK_WIDGETS
#include <gtk/gtk.h>
typedef void (*lterm_callback_func_t)(gpointer, gint, GdkInputCondition);
#else
typedef void* lterm_callback_func_t;
#endif
/* Unicode character style information (same type as UNICHAR) */
typedef UNICHAR UNISTYLE;
#ifdef __cplusplus
extern "C" {
#endif
/* lineterm functions */
/* LTERM module number (used for trace/log operations) */
#define LTERM_TLOG_MODULE 1
/* Initializes all LTERM operations;
* needs to be called before any calls to lterm_new.
* @return 0 on success, or -1 on error.
*
* MESSAGELEVEL specifies the diagnostic message display level:
* 0 => (normal) only fatal errors cause diagnostic messages to be printed.
* -1 => (silent) no diagnostic messages are printed, even for fatal errors.
* 1 => (warning) print non-fatal warning messages as well as error messages.
* >9 and <= 99 (debugging)
* print debugging messages at selected procedure levels/sublevels
* (See tracelog.h for more information on messageLevel)
*
* Returns 0 on successful initialization, -1 otherwise.
*/
int lterm_init(int messageLevel);
/** Creates a new LTERM object and returns its descriptor index but
* does not open it for I/O
* (documented in the LTERM interface)
* @return lterm descriptor index (>= 0) on success, or
* -1 on error
*/
int lterm_new();
/* Opens line terminal indexed by LTERM for input/output and creates
* a process attached to it to execute the command line contained in string
* array ARGV.
* Called from the adminstrative/output thread of LTERM.
* @return 0 on success, or -1 on error.
*
* COOKIE contains a cookie string used for stream security. If it is null,
* or a null string, all streams are considered insecure.
* (only MAXCOOKIESTR-1 characters of the cookie string are used for checking)
*
* PROMPT_REGEXP contains a REGEXP string describing the command prompt.
* (**NOTE** For the moment, only a list of prompt delimiters is accepted;
* a typical list of prompt delimiters would be "#$%>?")
*
* OPTIONS is a bitmask controlling the following options:
* LTERM_NOCANONICAL_FLAG disable TTY canonical mode
* LTERM_NOEDIT_FLAG disable input line editing
* LTERM_NOCOMPLETION_FLAG disable command line completion
* LTERM_NOMETA_FLAG disable meta input
* LTERM_NOPARTLINE_FLAG disable returning of partial line output
* LTERM_NOMARKUP_FLAG disable HTML/XML element processing in command line
* LTERM_NOECHO_FLAG disable TTY echo
* LTERM_NOPTY_FLAG do not use pseudo-TTY
* LTERM_NOSTDERR_FLAG do not use separate STDERR
* LTERM_NONUL_FLAG do not process any NUL characters (discard them)
* LTERM_NOLINEWRAP_FLAG disable line wrapping
* LTERM_NOEXPORT_FLAG disable export of current environment to new process
*
* PROCESS_TYPE specifies the subordinate process type, if set to one
* of the following:
* LTERM_DETERMINE_PROCESS
* LTERM_UNKNOWN_PROCESS
* LTERM_SH_PROCESS
* LTERM_KSH_PROCESS
* LTERM_BASH_PROCESS
* LTERM_CSH_PROCESS
* LTERM_TCSH_PROCESS
* If it is set to LTERM_DETERMINE_PROCESS, the process type is determined
* from the path name.
*
* CALLBACK_FUNC is a pointer to a GTK-style callback function,
* or NULL for no callback.
* The function is called whenever there is data available for
* LTERM_READ to process, with CALLBACK_DATA as the data argument.
* The callback function should call LTERM_READ immediately;
* otherwise the callback function will be called repeatedly.
* (The type LTERM_CALLBACK_FUNC_T is defined at the top of this include file)
*
* In canonical mode, no input line editing is permitted.
* In editing mode, EMACS-style keyboard line editing commands are allowed.
* In completion mode, incomplete command/file names are transmitted to
* the subordinate process for complettion, as in TCSH.
* Meta input refers to input lines that begin with a colon,
* or with a "protocol" name followed by a colon, such as
* "http: ...".
* Meta input lines are not sent to the subordinate process, but simply
* echoed as LTERM output through LTERM_READ for further processing.
* If command line completion is not disabled, incomplete meta input may
* also be echoed for completion. In this case, the completed meta input
* should be supplied to the LTERM through a call to LTERM_WRITE as if the
* user had entered it.
*/
int lterm_open(int lterm, char *const argv[], const char* cookie,
const UNICHAR* prompt_regexp, int options, int process_type,
lterm_callback_func_t callback_func, void *callback_data);
/* Closes line terminal indexed by LTERM.
* The default action is to block until active calls to lterm_write
* and lterm_read to complete.
* Called from the administrative/output thread of LTERM.
* @return 0 on success, or -1 on error.
*/
int lterm_close(int lterm);
/** Deletes an LTERM object, closing it if necessary.
* @return 0 on success, or -1 on error.
*/
int lterm_delete(int lterm);
/* Closes all LTERMs, but does not delete them.
* This may be used to free any resources associated with LTERMs for clean up.
* The closed LTERMs should still be deleted, if possible.
*/
void lterm_close_all(void);
/* Set input echo flag for line terminal indexed by LTERM.
* Called from the output thread of LTERM.
* @return 0 on success, or -1 on error.
*/
int lterm_setecho(int lterm, int echo_flag);
/* Resizes the line terminal indexed by LTERM.
* Called from the output thread of LTERM.
* @return 0 on success, or -1 on error.
*/
int lterm_resize(int lterm, int rows, int cols,
int xpix, int ypix);
/* Sets cursor position in line terminal indexed by LTERM.
* Called from the output thread of LTERM.
* @return 0 on success, or -1 on error.
*/
int lterm_setcursor(int lterm, int row, int col);
/* Writes supplied to Unicode string in BUF of length COUNT to
* line terminal indexed by LTERM.
* (May be called from any thread, since it uses a pipe to communicate
* with the output thread.)
* DATATYPE may be set to one of the following values:
* LTERM_WRITE_PLAIN_INPUT Plain text user input
* LTERM_WRITE_XML_INPUT XML element user input
* LTERM_WRITE_PLAIN_OUTPUT Plain text server output
* LTERM_WRITE_CLOSE_MESSAGE End of file message
* NOTE: This is a non-blocking call
* Returns the number of characters written.
* Returns -1 on error, and
* -2 if pseudo-TTY has been closed.
* If the return value is less than COUNT, it usually indicates an error.
* If the return value is -1, any further operations on the LTERM,
* other than LTERM_CLOSE, will always fail with an error return value.
*/
int lterm_write(int lterm, const UNICHAR *buf, int count, int dataType);
/* Completes meta input in line terminal indexed by LTERM with the
* supplied to Unicode string in BUF of length COUNT.
* Called from the output thread of the LTERM.
* @return 0 on success, or -1 on error.
*/
int lterm_metacomplete(int lterm, const UNICHAR *buf, int count);
/* reads upto COUNT Unicode characters from a single line of output
* from line terminal indexed by LTERM into BUF.
* Called from the output thread of the LTERM.
* Returns the number of characters read (>=0) on a successful read.
* Returns -1 if an error occurred while reading,
* -2 if pseudo-TTY has been closed,
* -3 if more than COUNT characters are present in the line
* (in this case the first COUNT characters are returned in BUF,
* and the rest are discarded).
* If the return value is -1, any further operations on the LTERM,
* other than LTERM_CLOSE, will always fail with an error return value.
* (If return value is -2, it means that the subordinate process has closed
* the pseudo-TTY. In this case, the LTERM still needs to be explicitly
* closed by calling LTERM_CLOSE for proper clean-up.)
*
* TIMEOUT is the number of platform-dependent time units
* (usually milliseconds on Unix) to wait to read data.
* A zero value implies no waiting.
* A negative TIMEOUT value implies infinite timeout, i.e., a blocking read.
* Non-zero values of TIMEOUT should be used only when the output thread
* is allowed to block.
*
* STYLE should be an array of same length as BUF, and contains
* the style bits associated with each character on return (see below).
*
* OPCODES contains a bit mask describing the type of output (see below).
* Using Extended Backus-Naur Form notation:
*
* OPCODES ::= STREAMDATA NEWLINE? COOKIESTR? XMLSTREAM? DOCSTREAM? WINSTREAM?
* if StreamMode data is being returned.
*
* OPCODES ::= SCREENDATA BELL? ( CLEAR
* | INSERT MOVEDOWN?
* | DELETE MOVEDOWN?
* | OUTPUT )
* if ScreenMode data is being returned.
*
* OPCODES ::= LINEDATA BELL? ( CLEAR
* | ( PROMPT | OUTPUT)? INPUT ( NEWLINE HIDE? )?
* | PROMPT? INPUT META ( COMPLETION | NEWLINE HIDE? )
* | OUTPUT NEWLINE? )
* if LineMode data is being returned.
*
* If OPCODES == 0, then it means that no data has been read.
*
* If the returned OPCODES has META and COMPLETION bits set, then the completed
* version of the meta input should be supplied through a call to
* LTERM_WRITE, with an input data type, as if the user had typed it.
*
* BUF_ROW and BUF_COL denote the row and starting column at which to
* display the data in BUF.
* (If character count returned by lterm_read is zero, implying there is no
* data in BUF, then values of BUF_ROW and BUF_COL should be ignored.)
* In ScreenMode or LineMode, CURSOR_ROW and CURSOR_COL denote the final
* cursor position after any data in BUF is displayed.
*
* The bottom left corner of the screen corresponds to row 0, column 0.
* BUF_COL, CURSOR_COL are always >= 0, with 0 denoting the leftmost column.
* (BUF_COL is always zero if NOPARTLINE flag is set for LTERM.)
* (CURRENT IMPLEMENTATION: BUF_COL is always zero.)
* BUF_ROW, CURSOR_ROW are always set to -1 when LTERM is in line mode,
* BUF_ROW, CURSOR_ROW are always >=0 when LTERM is in screen mode,
* with 0 denoting the bottom row.
*/
int lterm_read(int lterm, int timeout, UNICHAR *buf, int count,
UNISTYLE *style, int *opcodes,
int *buf_row, int *buf_col, int *cursor_row, int *cursor_col);
/* opcodes describing terminal operations:
*/
#define LTERM_STREAMDATA_CODE 0x0001U /* Stream mode */
#define LTERM_SCREENDATA_CODE 0x0002U /* Screen mode */
#define LTERM_LINEDATA_CODE 0x0004U /* Line mode */
#define LTERM_BELL_CODE 0x0008U /* Ring bell */
#define LTERM_CLEAR_CODE 0x0010U /* Clear screen */
#define LTERM_INSERT_CODE 0x0020U /* Insert row at cursor */
#define LTERM_DELETE_CODE 0x0040U /* Delete row at cursor */
#define LTERM_MOVEDOWN_CODE 0x0080U /* Move text down on insert/delete */
#define LTERM_INPUT_CODE 0x0100U /* Contains STDIN at end of line */
#define LTERM_PROMPT_CODE 0x0200U /* Contains prompt at beginning */
#define LTERM_OUTPUT_CODE 0x0400U /* Contains STDOUT/STDERR/ALTOUT */
#define LTERM_META_CODE 0x0800U /* Meta input */
#define LTERM_COMPLETION_CODE 0x1000U /* Completion requested */
#define LTERM_NEWLINE_CODE 0x2000U /* Complete (new) line */
#define LTERM_HIDE_CODE 0x4000U /* Hide output */
#define LTERM_COOKIESTR_CODE 0x8000U /* Stream prefixed with cookie */
#define LTERM_XMLSTREAM_CODE 0x10000U /* Stream contains XML, not HTML */
#define LTERM_DOCSTREAM_CODE 0x20000U /* Stream contains complete document */
#define LTERM_WINSTREAM_CODE 0x40000U /* Display stream in entire window */
/* LTERM/XTERM 16-bit style mask:
* PROMPT, STDIN, STDOUT, STDERR, ALTOUT are mutually exclusive.
* The markup styles apply to STDIN/STDOUT/ALTOUT data.
* The highlighting styles only apply to STDOUT data.
* The VT100 foreground and background styles are not implemented.
*/
#define LTERM_PROMPT_STYLE 0x0001UL /* prompt string */
#define LTERM_STDIN_STYLE 0x0002UL /* standard input */
#define LTERM_STDOUT_STYLE 0x0004UL /* standard output */
#define LTERM_STDERR_STYLE 0x0008UL /* standard error */
#define LTERM_ALTOUT_STYLE 0x0010UL /* alternate output */
#define LTERM_URI_STYLE 0x0020UL /* URI markup */
#define LTERM_HTML_STYLE 0x0040UL /* HTML markup */
#define LTERM_XML_STYLE 0x0080UL /* XML markup */
#define LTERM_BOLD_STYLE 0x0100UL /* boldface */
#define LTERM_ULINE_STYLE 0x0200UL /* underline */
#define LTERM_BLINK_STYLE 0x0400UL /* blink */
#define LTERM_DIM_STYLE 0x0800UL /* inverse video */
/* LTERM option flags */
#define LTERM_NOCANONICAL_FLAG 0x0001U
#define LTERM_NOEDIT_FLAG 0x0002U
#define LTERM_NOCOMPLETION_FLAG 0x0004U
#define LTERM_NOMETA_FLAG 0x0008U
#define LTERM_NOPARTLINE_FLAG 0x0010U
#define LTERM_NOECHO_FLAG 0x0020U
#define LTERM_NOMARKUP_FLAG 0x0040U
#define LTERM_NOPTY_FLAG 0x0080U
#define LTERM_NOSTDERR_FLAG 0x0100U
#define LTERM_NONUL_FLAG 0x0200U
#define LTERM_NOLINEWRAP_FLAG 0x0400U
#define LTERM_NOEXPORT_FLAG 0x0800U
/* Process type codes */
#define LTERM_DETERMINE_PROCESS -1 /* Determine process type from name */
#define LTERM_UNKNOWN_PROCESS 0 /* Unknown process type */
#define LTERM_SH_PROCESS 1 /* Bourne shell */
#define LTERM_KSH_PROCESS 2 /* Korn shell */
#define LTERM_BASH_PROCESS 3 /* Bourne Again shell */
#define LTERM_CSH_PROCESS 4 /* C shell */
#define LTERM_TCSH_PROCESS 5 /* TC shell */
/* lterm_write data type codes (XML server output not permitted) */
#define LTERM_WRITE_PLAIN_INPUT 0 /* Plain text user input */
#define LTERM_WRITE_XML_INPUT 1 /* XML element user input */
#define LTERM_WRITE_PLAIN_OUTPUT 2 /* Plain text server output */
#define LTERM_WRITE_CLOSE_MESSAGE 3 /* End of file message */
#ifdef __cplusplus
}
#endif
#endif /* _LINETERM_H */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,829 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* ltermInput.c: LTERM PTY input data processing
*/
/* public declarations */
#include "lineterm.h"
/* private declarations */
#include "ltermPrivate.h"
static int ltermLineInput(struct lterms *lts, const UNICHAR *buf, int count,
int *opcodes);
static int ltermMetaInput(struct lterms *lts);
static int ltermRequestCompletion(struct lterms *lts, UNICHAR uch);
/** Processes plain text input data and returns
* OPCODES ::= LINEDATA ( INPUT ( NEWLINE HIDE? )?
* | INPUT META ( COMPLETION | NEWLINE HIDE? ) )
* if echoable input data was processed.
* (OPCODES is set to zero if raw input data was processed)
* Called from ltermWrite
* @return 0 on success,
* -1 on error, and
* -2 if pseudo-TTY has been closed.
*/
int ltermPlainTextInput(struct lterms *lts,
const UNICHAR *buf, int count, int *opcodes)
{
struct LtermInput *lti = &(lts->ltermInput);
int returnCode;
LTERM_LOG(ltermPlainTextInput,20,
("start lti->inputMode=%d\n", lti->inputMode));
if (lti->inputMode == LTERM0_RAW_MODE) {
/* Transmit characters immediately to child process; no buffering */
LTERM_LOG(ltermPlainTextInput,29,
("Raw mode, transmitting %d characters\n",
count));
if (ltermSendData(lts, buf, count) != 0)
return -1;
*opcodes = 0;
} else {
/* Not raw input mode; process line mode input */
int processTrailingTab = 0;
LTERM_LOG(ltermPlainTextInput,21,
("Line mode, lts->commandNumber=%d, inputMode=%d\n",
lts->commandNumber, lti->inputMode));
if ((lti->inputMode >= LTERM3_COMPLETION_MODE) &&
(lts->commandNumber == 0)) {
/* Downgrade input mode */
lti->inputMode = LTERM2_EDIT_MODE;
LTERM_LOG(ltermPlainTextInput,21,
("------------ Downgraded input mode=%d\n\n",
lti->inputMode));
} else if ((lti->inputMode < lts->maxInputMode) &&
(lts->commandNumber != 0)) {
/* Upgrade input mode */
int priorInputMode = lti->inputMode;
/* Set input mode (possibly allowing completion) */
lti->inputMode = lts->maxInputMode;
/* Do not allow command completion without TTY echo */
if ( (lts->disabledInputEcho || lts->noTTYEcho) &&
(lti->inputMode > LTERM2_EDIT_MODE) )
lti->inputMode = LTERM2_EDIT_MODE;
if ((lti->inputChars > 0) &&
(priorInputMode < LTERM3_COMPLETION_MODE) &&
(lti->inputMode >= LTERM3_COMPLETION_MODE)) {
/* Process prior input TABs before switching to completion mode */
int j;
if ((count == 0) &&
(lti->inputCursorGlyph == lti->inputGlyphs) &&
(lti->inputGlyphColIndex[lti->inputGlyphs] == lti->inputCols) &&
(lti->inputColCharIndex[lti->inputCols] == lti->inputChars) &&
(lti->inputLine[lti->inputChars] == U_TAB)) {
/* Trailing TAB in prior input; delete it, and process it later */
if (ltermDeleteGlyphs(lti, 1) != 0)
return -1;
processTrailingTab = 1;
}
/* Replace all input TABs with spaces */
for (j=0; j < lti->inputChars; j++) {
if (lti->inputLine[j] == U_TAB)
lti->inputLine[j] = U_SPACE;
}
}
LTERM_LOG(ltermPlainTextInput,21,
("------------ Upgraded input mode=%d, trailingTab=%d\n\n",
lti->inputMode, processTrailingTab));
}
if (processTrailingTab) {
/* Re-process trailing TAB */
UNICHAR uch = U_TAB;
assert(count == 0);
LTERM_LOG(ltermPlainTextInput,21,("Reprocessing trailing TAB\n"));
returnCode= ltermLineInput(lts, &uch, 1, opcodes);
if (returnCode < 0)
return returnCode;
} else {
/* Process new input characters */
returnCode = ltermLineInput(lts, buf, count, opcodes) != 0;
if (returnCode < 0)
return returnCode;
}
}
return 0;
}
/** Cancels a prior command line completion request
* @return 0 on success,
* -1 on error
*/
int ltermCancelCompletion(struct lterms *lts)
{
LTERM_LOG(ltermCancelCompletion,40,
("++++++++++++ CANCELED COMPLETION REQUEST\n\n"));
if (lts->completionRequest != LTERM_NO_COMPLETION) {
/* Kill input line transmitted to process */
if (ltermSendData(lts, lts->control+TTYKILL, 1) != 0)
return -1;
lts->completionRequest = LTERM_NO_COMPLETION;
}
return 0;
}
/** Inserts plain text character UCH as a single-column glyph at the
* current input cursor location, translating to escape sequence if needed.
* @return 0 on success, -1 on error.
*/
int ltermInsertChar(struct LtermInput *lti, UNICHAR uch)
{
UNICHAR* escapeSequence;
int insChars, insertColIndex, insertCharIndex, j;
LTERM_LOG(ltermInsertChar,40,("inserting character 0x%x at glyph %d\n",
uch, lti->inputCursorGlyph));
/* Ignore null character */
if (uch == 0)
return 0;
escapeSequence = NULL;
insChars = 1;
#if 0
/* COMMENTED OUT: Plain text not escaped; use code later in HTML insert */
/* Check if plain text character needs to be escaped for XML/HTML */
for (j=0; j<LTERM_PLAIN_ESCAPES; j++) {
if (uch == ltermGlobal.escapeChars[j]) {
/* Insert escape sequence rather than character */
escapeSequence = ltermGlobal.escapeSeq[j];
insChars = ltermGlobal.escapeLen[j];
LTERM_LOG(ltermInsertChar,42,("escape index=%d\n", j));
break;
}
}
#endif /* 0 */
if (lti->inputChars+insChars > MAXCOLM1) {
/* Input buffer overflow; ignore insert character */
LTERM_WARNING("ltermInsertChar: Warning - input line buffer overflow\n");
return 0;
}
assert(lti->inputChars >= 0);
assert(lti->inputCols >= 0);
assert(lti->inputGlyphs >= 0);
assert(lti->inputCursorGlyph >= 0);
assert(lti->inputCols <= lti->inputChars);
assert(lti->inputGlyphs <= lti->inputCols);
insertColIndex = lti->inputGlyphColIndex[lti->inputCursorGlyph];
insertCharIndex = lti->inputColCharIndex[insertColIndex];
LTERM_LOG(ltermInsertChar,41,("insertColIndex=%d, insertCharIndex=%d, insChars=%d\n",
insertColIndex, insertCharIndex, insChars));
/* Shift portion of input line to the right;
remember that the column/glyph index arrays have an extra element */
for (j=lti->inputChars - 1; j >= insertCharIndex; j--)
lti->inputLine[j+insChars] = lti->inputLine[j];
for (j=lti->inputCols; j >= insertColIndex; j--)
lti->inputColCharIndex[j+1] = lti->inputColCharIndex[j]+insChars;
for (j=lti->inputGlyphs; j >= lti->inputCursorGlyph; j--) {
lti->inputGlyphCharIndex[j+1] = lti->inputGlyphCharIndex[j]+insChars;
lti->inputGlyphColIndex[j+1] = lti->inputGlyphColIndex[j]+1;
}
/* Insert character(s) in input line */
if (escapeSequence == NULL) {
lti->inputLine[insertCharIndex] = uch;
} else {
for (j=0; j < insChars; j++)
lti->inputLine[j+insertCharIndex] = escapeSequence[j];
}
/* Insert column/glyph */
lti->inputColCharIndex[insertColIndex] = insertCharIndex;
lti->inputGlyphCharIndex[lti->inputCursorGlyph] = insertCharIndex;
lti->inputGlyphColIndex[lti->inputCursorGlyph] = insertColIndex;
lti->inputChars += insChars; /* Increment character count */
lti->inputCols++; /* Increment column count */
lti->inputGlyphs++; /* Increment glyph count */
lti->inputCursorGlyph++; /* Reposition cursor */
return 0;
}
/** switches to raw input mode */
void ltermSwitchToRawMode(struct lterms *lts)
{
struct LtermInput *lti = &(lts->ltermInput);
LTERM_LOG(ltermSwitchToRawMode,40,("\n"));
if (lti->inputMode != LTERM0_RAW_MODE) {
/* Do other things ... */
lti->inputMode = LTERM0_RAW_MODE;
}
}
/** clears input line buffer and switches to regular input mode */
void ltermClearInputLine(struct lterms *lts)
{
struct LtermInput *lti = &(lts->ltermInput);
LTERM_LOG(ltermClearInputLine,40,("\n"));
lti->inputChars = 0;
lti->inputCols = 0;
lti->inputColCharIndex[0] = 0;
lti->inputGlyphs = 0;
lti->inputGlyphCharIndex[0] = 0;
lti->inputGlyphColIndex[0] = 0;
lti->inputCursorGlyph = 0;
if (lts->maxInputMode >= LTERM2_EDIT_MODE)
lti->inputMode = LTERM2_EDIT_MODE;
else
lti->inputMode = lts->maxInputMode;
lti->escapeFlag = 0;
lti->escapeCSIFlag = 0;
lti->escapeCSIArg = 0;
}
/** Processes an input string in canonical or higher mode and returns
* OPCODES ::= LINEDATA ( INPUT (NEWLINE HIDE?)?
* | INPUT META (COMPLETION|NEWLINE HIDE?) )
* if echoable input data was processed.
* (OPCODES is set to zero if raw input data was processed)
* Called from ltermPlainTextInput
* @return 0 on success,
* -1 on error, and
* -2 if pseudo-TTY has been closed.
*/
static int ltermLineInput(struct lterms *lts,
const UNICHAR *buf, int count, int *opcodes)
{
struct LtermInput *lti = &(lts->ltermInput);
UNICHAR uch;
int charIndex, metaInput;
/* Default returned opcodes (maybe overridden) */
*opcodes = LTERM_LINEDATA_CODE | LTERM_INPUT_CODE;
charIndex = 0;
LTERM_LOG(ltermLineInput,30,
("lti->inputMode=%d, inputCursorGlyph=%d\n",
lti->inputMode, lti->inputCursorGlyph));
LTERM_LOGUNICODE(ltermLineInput,31,(buf, count));
LTERM_LOG(ltermLineInput,31,("Glyphs=%d,Cols=%d,Chars=%d\n",
lti->inputGlyphs, lti->inputCols, lti->inputChars));
while (charIndex < count) {
uch = buf[charIndex];
if (uch == U_ESCAPE) {
/* Escape */
lti->escapeFlag = 1;
uch = U_NUL;
} else if (lti->escapeFlag) {
/* Escaped character */
lti->escapeFlag = 0;
switch (uch) {
case U_LBRACKET:
/* Start of escape code sequence */
lti->escapeCSIFlag = 1;
lti->escapeCSIArg = 0;
uch = U_NUL;
break;
default:
uch = U_NUL;
}
} else if (lti->escapeCSIFlag) {
/* Character part of escape code sequence */
if ((uch >= U_ZERO && uch <= U_NINE)) {
/* Process numerical argument to escape code sequence */
lti->escapeCSIArg = lti->escapeCSIArg*10 + (uch - U_ZERO);
uch = U_NUL;
} else {
/* End of escape code sequence */
lti->escapeCSIFlag = 0;
/* SUN arrow key bindings */
switch (uch) {
case U_A_CHAR:
uch = U_CTL_P;
break;
case U_B_CHAR:
uch = U_CTL_N;
break;
case U_C_CHAR:
uch = U_CTL_F;
break;
case U_D_CHAR:
uch = U_CTL_B;
break;
default:
uch = U_NUL;
}
}
}
if ( ((uch >= U_SPACE) && (uch != U_DEL)) ||
((uch == U_TAB) && (lti->inputMode <= LTERM2_EDIT_MODE)) ) {
/* printable character or non-completion mode TAB; insert in buffer */
/* (NEED TO UPDATE THIS CHECK FOR UNICODE PRINTABILITY) */
LTERM_LOG(ltermLineInput,39,("inserting printable character - %c\n",
(char) uch));
/* Insert character */
if (ltermInsertChar(lti, uch) != 0)
return -1;
} else {
/* Control character */
/* Line break control characters */
if ( (uch == U_LINEFEED) ||
(uch == lts->control[TTYDISCARD]) ||
(uch == lts->control[TTYSUSPEND]) ||
(uch == lts->control[TTYINTERRUPT])) {
/* Newline/TTYdiscard/TTYsuspend/TTYinterrupt character */
/* Assert that linebreak character occurs at end of buffer;
* enforced by lterm_write.
*/
assert(charIndex == count-1);
/* Check if meta input line */
metaInput = ltermMetaInput(lts);
if ((uch == lts->control[TTYDISCARD]) && !metaInput
&& (lts->commandNumber == 0)) {
/* Not meta/command line; simply transmit discard character */
if (ltermSendData(lts, lts->control+TTYDISCARD, 1) != 0)
return -1;
} else {
/* Newline behaviour, with hide option */
LTERM_LOG(ltermLineInput,31,("------------ NEWLINE (0x%x)\n\n",
uch));
LTERM_LOGUNICODE(ltermLineInput,31,( lti->inputLine,
lti->inputChars));
/* The NEWLINE code tells ltermReturnInputLine to clear
* the input line buffer after copying it
*/
*opcodes = LTERM_LINEDATA_CODE | LTERM_INPUT_CODE
| LTERM_NEWLINE_CODE;
if (uch == lts->control[TTYDISCARD]) {
*opcodes |= LTERM_HIDE_CODE;
uch = U_LINEFEED; /* essentially newline behaviour otherwise */
}
if (metaInput) {
/* meta input; do not send line */
*opcodes |= LTERM_META_CODE;
} else {
/* Send line and copy to echo buffer */
if (ltermSendLine(lts, uch, (uch != U_LINEFEED),
LTERM_NO_COMPLETION) != 0)
return -1;
}
}
} else if (uch == lts->control[TTYKILL]) {
/* kill line */
ltermClearInputLine(lts);
LTERM_LOG(ltermLineInput,31,("TTYKILL\n"));
} else if ((uch == U_BACKSPACE) ||
(uch == lts->control[TTYERASE])) {
/* erase glyph */
if (ltermDeleteGlyphs(lti, 1) != 0)
return -1;
LTERM_LOG(ltermLineInput,39,("TTYERASE\n"));
} else {
/* other control characters */
if (lti->inputMode >= LTERM2_EDIT_MODE) {
switch (uch) {
case U_NUL: /* Null character; ignore */
break;
case U_CTL_B: /* move cursor backward */
LTERM_LOG(ltermLineInput,32,("^B\n"));
if (lti->inputCursorGlyph > 0) {
lti->inputCursorGlyph--;
}
break;
case U_CTL_F: /* move cursor forward */
LTERM_LOG(ltermLineInput,32,("^F\n"));
if (lti->inputCursorGlyph < lti->inputGlyphs) {
lti->inputCursorGlyph++;
}
break;
case U_CTL_A: /* position cursor at beginning of line */
LTERM_LOG(ltermLineInput,32,("^A\n"));
lti->inputCursorGlyph = 0;
break;
case U_CTL_E: /* position cursor at end of line */
LTERM_LOG(ltermLineInput,32,("^E\n"));
lti->inputCursorGlyph = lti->inputGlyphs;
break;
case U_CTL_K: /* delete to end of line */
LTERM_LOG(ltermLineInput,32,("^K\n"));
if (ltermDeleteGlyphs(lti,-(lti->inputGlyphs-lti->inputCursorGlyph))
!= 0)
return -1;
break;
case U_CTL_L: /* form feed */
case U_CTL_R: /* redisplay */
LTERM_LOG(ltermLineInput,32,("^%c\n", uch+U_ATSIGN));
break;
case U_CTL_D: /* ^D */
case U_CTL_N: /* dowN history */
case U_CTL_P: /* uP history */
case U_CTL_Y: /* yank */
case U_TAB: /* command completion */
/* Assert that completion character occurs at end of buffer;
* enforced by lterm_write.
*/
assert(charIndex == count-1);
metaInput = ltermMetaInput(lts);
if (metaInput) {
/* Meta input command completion */
LTERM_LOG(ltermLineInput,40,
("++++++++++++ meta COMPLETION uch=0x%X\n\n", uch));
if (uch == U_TAB) {
*opcodes = LTERM_LINEDATA_CODE | LTERM_INPUT_CODE
| LTERM_META_CODE
| LTERM_COMPLETION_CODE;
} else {
LTERM_WARNING("ltermLineInput: Warning - meta command completion not yet implemented for uch=0x%x\n", uch);
}
} else if (lti->inputMode >= LTERM3_COMPLETION_MODE) {
/* Completion mode; non-completion TABs already processed */
if (ltermRequestCompletion(lts, uch) != 0)
return -1;
}
break;
}
}
}
}
/* Increment character index */
charIndex++;
}
return 0;
}
/** Check if input line contains a meta delimiter;
* @return 1 if it does, 0 otherwise.
*/
static int ltermMetaInput(struct lterms *lts)
{
struct LtermInput *lti = &(lts->ltermInput);
UNICHAR *delimLoc, *ustr, *ustr2;
LTERM_LOG(ltermMetaInput,40,("\n"));
if (lts->options & LTERM_NOMETA_FLAG)
return 0;
/* Assert that there is at least one free character position in the buffer */
assert(lti->inputChars < MAXCOL);
/* Insert null character at the end of the input buffer */
lti->inputLine[lti->inputChars] = U_NUL;
/* Locate first occurrence of meta delimiter in input line */
delimLoc = ucschr(lti->inputLine, ltermGlobal.metaDelimiter);
if (delimLoc == NULL)
return 0;
for (ustr=lti->inputLine; ustr<delimLoc; ustr++) /* skip spaces/TABs */
if ((*ustr != U_SPACE) && (*ustr != U_TAB)) break;
if (ustr == delimLoc) {
/* Nameless meta command */
LTERM_LOG(ltermMetaInput,41,("Nameless meta command\n"));
return 1;
}
if (!IS_ASCII_LETTER(*ustr)) /* meta command must start with a letter */
return 0;
for (ustr2=ustr+1; ustr2<delimLoc; ustr2++)
if (!IS_ASCII_LETTER(*ustr2) && !IS_ASCII_DIGIT(*ustr2))
return 0;
LTERM_LOG(ltermMetaInput,41,("Named meta command\n"));
return 1;
}
/** Requests command line completion from process corresponding to
* control character UCH.
* @return 0 on success,
* -1 on error
*/
static int ltermRequestCompletion(struct lterms *lts, UNICHAR uch)
{
LTERM_LOG(ltermRequestCompletion,40,
("++++++++++++ COMPLETION REQUEST uch=0x%X\n\n", uch));
if ((uch == U_CTL_D) &&
!(lts->processType == LTERM_TCSH_PROCESS)){
/* If ^D and not TCSH, simply transmit character */
if (ltermSendData(lts, &uch, 1) != 0)
return -1;
return 0;
}
switch (uch) {
case U_TAB:
/* Send line and copy to echo buffer */
if (ltermSendLine(lts, uch, 0, LTERM_TAB_COMPLETION) != 0)
return -1;
break;
case U_CTL_P:
case U_CTL_N:
/* Send line and copy to echo buffer */
if (ltermSendLine(lts, uch, 0, LTERM_HISTORY_COMPLETION) != 0)
return -1;
break;
default:
LTERM_WARNING("ltermCompletionRequest: Warning - command completion not yet implemented for uch=0x%x\n", uch);
}
return 0;
}
/** Deletes glyphs from the input line.
* If COUNT > 0, glyphs are deleted to the left of the cursor.
* If COUNT < 0, glyphs are deleted to the right of the cursor.
* Called from ltermLineInput.
* @return 0 on success, -1 on error.
*/
int ltermDeleteGlyphs(struct LtermInput *lti, int count)
{
int leftGlyph, leftColIndex, leftCharIndex;
int rightGlyph, rightColIndex, rightCharIndex;
int deleteGlyphs, deleteCols, deleteChars, j;
LTERM_LOG(ltermDeleteGlyphs,40,("deleting %d glyphs from glyph %d\n",
count, lti->inputCursorGlyph));
if (count >= 0) {
/* Delete to the left */
deleteGlyphs = count;
/* Limit the number of glyphs deleted to that present to the left */
if (deleteGlyphs > lti->inputCursorGlyph)
deleteGlyphs = lti->inputCursorGlyph;
rightGlyph = lti->inputCursorGlyph;
leftGlyph = rightGlyph - deleteGlyphs;
} else {
/* Delete to the right */
deleteGlyphs = -count;
/* Limit the number of glyphs deleted to that present to the right */
if (deleteGlyphs > (lti->inputGlyphs - lti->inputCursorGlyph))
deleteGlyphs = lti->inputGlyphs - lti->inputCursorGlyph;
leftGlyph = lti->inputCursorGlyph;
rightGlyph = leftGlyph + deleteGlyphs;
}
leftColIndex = lti->inputGlyphColIndex[leftGlyph];
leftCharIndex = lti->inputGlyphCharIndex[leftGlyph];
rightColIndex = lti->inputGlyphColIndex[rightGlyph];
rightCharIndex = lti->inputGlyphCharIndex[rightGlyph];
deleteCols = rightColIndex - leftColIndex;
deleteChars = rightCharIndex - leftCharIndex;
LTERM_LOG(ltermDeleteGlyphs,41,("deleteCols=%d, deleteChars=%d\n",
deleteCols, deleteChars));
LTERM_LOG(ltermDeleteGlyphs,42,("leftGlyph=%d, leftCol=%d, leftChar=%d\n",
leftGlyph, leftColIndex, leftCharIndex));
LTERM_LOG(ltermDeleteGlyphs,42,("rightGlyph=%d, rightCol=%d, rightChar=%d\n",
rightGlyph, rightColIndex, rightCharIndex));
/* Shift portion of input line to the left;
remember that the column/glyph index arrays have an extra element */
for (j = leftCharIndex; j < lti->inputChars-deleteChars; j++)
lti->inputLine[j] = lti->inputLine[j+deleteChars];
for (j = leftColIndex; j <= lti->inputCols-deleteCols; j++)
lti->inputColCharIndex[j] = lti->inputColCharIndex[j+deleteCols]
- deleteChars;
for (j = leftGlyph; j <= lti->inputGlyphs-deleteGlyphs; j++)
lti->inputGlyphColIndex[j] = lti->inputGlyphColIndex[j+deleteGlyphs]
- deleteCols;
lti->inputChars -= deleteChars; /* Decrement character count */
lti->inputCols -= deleteCols; /* Decrement column count */
lti->inputGlyphs -= deleteGlyphs; /* Decrement glyph count */
if (count > 0)
lti->inputCursorGlyph -= deleteGlyphs; /* Reposition glyph cursor */
return 0;
}
/** Transmits COUNT Unicode characters from BUF to child process
* after translating Unicode to UTF8 or Latin1, as appropriate.
* The data is transmitted in smallish chunks so as not to overflow the
* PTY input buffer.
* @return 0 on successful write, -1 on error.
*/
int ltermSendData(struct lterms *lts, const UNICHAR *buf, int count)
{
char ch, ptyBuf[MAXPTYIN];
int remainingChars, chunkSize, success;
assert(lts != NULL);
assert(count >= 0);
LTERM_LOG(ltermSendData,40,("count=%d\n", count));
LTERM_LOGUNICODE(ltermSendData,41,(buf, count));
if ((count == 1) && (*buf < 0x80)) {
/* Optimized code to transmit single ASCII character */
ch = (char) *buf;
if (lts->ptyMode)
#ifndef USE_NSPR_IO
success = (write(lts->pty.ptyFD, &ch, 1) == 1);
#else
assert(0);
#endif
else
success = (WRITE(lts->ltermProcess.processIN, &ch, 1) == 1);
if (!success) {
#if defined(DEBUG) && !defined(USE_NSPR_IO)
int errcode = errno;
perror("ltermSendData");
#else
int errcode = 0;
#endif
LTERM_ERROR("ltermSendData: Error %d in writing to child STDIN\n",
errcode);
return -1;
}
return 0;
}
remainingChars = count;
while (remainingChars > 0) {
/* Convert Unicode to UTF8 */
ucstoutf8(&buf[count-remainingChars], remainingChars,
ptyBuf, MAXPTYIN,
&remainingChars, &chunkSize);
assert(chunkSize > 0);
LTERM_LOG(ltermSendData,42,("remainingChars=%d, chunkSize=%d\n",
remainingChars, chunkSize));
/* Send UTF8 to process */
if (lts->ptyMode)
#ifndef USE_NSPR_IO
success = (write(lts->pty.ptyFD, &ptyBuf,
(SIZE_T) chunkSize) == chunkSize);
#else
assert(0);
#endif
else
success = (WRITE(lts->ltermProcess.processIN, &ptyBuf,
(SIZE_T) chunkSize) == chunkSize);
if (!success) {
#if defined(DEBUG) && !defined(USE_NSPR_IO)
int errcode = errno;
perror("ltermSendData");
#else
int errcode = 0;
#endif
LTERM_ERROR("ltermSendData: Error %d in writing to child STDIN\n",
errcode);
return -1;
}
}
return 0;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,895 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* ltermOutput.c: LTERM PTY output processing
*/
/* public declarations */
#include "lineterm.h"
/* private declarations */
#include "ltermPrivate.h"
static int ltermAppendOutput(struct lterms *lts, const char *cbuf, int count,
UNISTYLE style, int interleaveCheck,
int *interleavedBytes, int rawIncompleteMax,
int *rawIncompleteBytes, char *rawIncompleteBuf);
static int ltermDecode(const char *rawBuf, int n_total,
UNICHAR* decodedBuf, int decodeMax,
int decodeNUL,
int *rawIncompleteBytes);
static int ltermPromptLocate(struct lterms *lts);
/** Processes output from decoded output buffer and returns *opcodes:
* OPCODES ::= SCREENDATA BELL? ( CLEAR
* | INSERT MOVEDOWN?
* | DELETE MOVEDOWN?
* | OUTPUT )
* if ScreenMode data is being returned.
* OPCODES ::= LINEDATA BELL? ( CLEAR
* | OUTPUT NEWLINE?)
* if LineMode data is being returned.
* @return 0 on success and -1 on error.
*/
int ltermProcessOutput(struct lterms *lts, int *opcodes)
{
struct LtermOutput *lto = &(lts->ltermOutput);
UNICHAR uch;
UNISTYLE ustyle;
int charIndex, returnCode, consumedChars, remainingChars, j;
int bellFlag;
LTERM_LOG(ltermProcessOutput,30,("lto->outputMode=%d, cursorChar=%d, Chars=%d\n",
lto->outputMode, lto->outputCursorChar, lto->outputChars));
LTERM_LOG(ltermProcessOutput,32, ("lts->commandNumber=%d\n",
lts->commandNumber));
*opcodes = 0;
charIndex = 0;
bellFlag = 0;
while ((*opcodes == 0) && (charIndex < lto->decodedChars)) {
uch = lto->decodedOutput[charIndex];
ustyle = lto->decodedStyle[charIndex] | lto->styleMask;
consumedChars = 1;
if (uch == U_ESCAPE) {
/* Process escape sequence */
int savedOutputMode = lto->outputMode;
LTERM_LOG(ltermProcessOutput,31,("ESCAPE sequence\n"));
returnCode = ltermProcessEscape(lts, lto->decodedOutput+charIndex,
lto->decodedChars-charIndex,
lto->decodedStyle+charIndex,
&consumedChars, opcodes);
if (returnCode < 0)
return -1;
if (returnCode == 1) {
/* Incomplete escape sequence */
lto->incompleteEscapeSequence = 1;
if (lto->outputMode == LTERM1_SCREEN_MODE)
*opcodes = LTERM_SCREENDATA_CODE | LTERM_OUTPUT_CODE;
else
*opcodes = LTERM_LINEDATA_CODE | LTERM_OUTPUT_CODE;
}
/* Assert that change in output mode is a loop terminating condition */
if (lto->outputMode != savedOutputMode)
assert(*opcodes != 0);
} else if (lto->outputMode == LTERM1_SCREEN_MODE) {
/* Screen mode processing */
if ((uch >= U_SPACE) && (uch != U_DEL)) {
/* Printable non-TAB character */
LTERM_LOG(ltermProcessOutput,39,("Screen mode, printable char - %c\n",
(char) uch));
if (lto->insertMode) {
/* Insert blank character at cursor position */
if (ltermInsDelEraseChar(lts, 1, LTERM_INSERT_CHAR) != 0)
return -1;
}
/* Mark column as being modified */
if ((lto->modifiedCol[lto->cursorRow] == -1) ||
(lto->modifiedCol[lto->cursorRow] > lto->cursorCol))
lto->modifiedCol[lto->cursorRow] = lto->cursorCol;
/* Replace character and style info at current cursor location */
j = lto->cursorRow*lts->nCols + lto->cursorCol;
assert(j < lts->screenSize);
lto->screenChar[j] = uch;
lto->screenStyle[j] = ustyle;
if (lto->cursorCol < lts->nCols-1) {
/* Move cursor right */
lto->cursorCol++;
/* Increase row column count, if necessary */
if (lto->rowCols[lto->cursorRow] < lto->cursorCol)
lto->rowCols[lto->cursorRow] = lto->cursorCol;
} else {
/* Set row column count to maximum value */
lto->rowCols[lto->cursorRow] = lts->nCols;
}
} else {
/* Control character */
switch (uch) {
case U_BACKSPACE: /* Backspace */
LTERM_LOG(ltermProcessOutput,32,("Screen mode, BACKSPACE\n"));
if (lto->cursorCol > 0)
lto->cursorCol--;
break;
case U_BEL: /* Bell */
LTERM_LOG(ltermProcessOutput,32,("************ Screen mode, BELL\n"));
bellFlag = 1;
break;
default:
/* Ignore other control characters (including NULs) */
break;
}
}
} else {
/* Line mode processing */
if ( ((uch >= U_SPACE) && (uch != U_DEL)) ||
(uch == U_TAB)) {
/* Printable/TAB character; replace/insert at current cursor location
or append to end of line */
LTERM_LOG(ltermProcessOutput,39,("Line mode, printable char - %c\n",
(char) uch));
if (lto->outputCursorChar == lto->outputChars) {
/* Append single character to end of line */
if (lto->outputChars+1 > MAXCOLM1) {
/* Output buffer overflow; ignore character */
LTERM_WARNING("ltermProcessOutput: Warning - output line buffer overflow\n");
}
lto->outputLine[lto->outputChars] = uch;
lto->outputStyle[lto->outputChars] = ustyle;
lto->outputChars++; /* Insert character in output line */
lto->outputCursorChar++; /* Reposition cursor */
} else {
/* Replace/insert single character in the middle of line */
if (lto->insertMode) {
/* Insert blank character at cursor position */
if (ltermInsDelEraseChar(lts, 1, LTERM_INSERT_CHAR) != 0)
return -1;
}
/* Overwrite single character in the middle of line */
lto->outputLine[lto->outputCursorChar] = uch;
lto->outputStyle[lto->outputCursorChar] = ustyle;
/* Note modifications */
if (lto->outputCursorChar < lto->outputModifiedChar)
lto->outputModifiedChar = lto->outputCursorChar;
lto->outputCursorChar++; /* Reposition cursor */
}
} else {
/* Control character */
switch (uch) {
case U_BACKSPACE: /* Backspace */
LTERM_LOG(ltermProcessOutput,32,("Line mode, BACKSPACE\n"));
if (lto->outputCursorChar > 0)
lto->outputCursorChar--;
break;
case U_CRETURN: /* Carriage return */
LTERM_LOG(ltermProcessOutput,32,("Line mode, CRETURN\n"));
lto->outputCursorChar = 0;
break;
case U_BEL: /* Bell */
LTERM_LOG(ltermProcessOutput,32,("************ Line mode, BELL\n"));
bellFlag = 1;
break;
case U_CTL_L: /* Formfeed; clear line and return */
LTERM_LOG(ltermProcessOutput,32,("************ Line mode, FORMFEED\n\n"));
ltermClearOutputLine(lts);
*opcodes = LTERM_LINEDATA_CODE | LTERM_CLEAR_CODE;
break;
case U_LINEFEED: /* Newline; return complete line */
LTERM_LOG(ltermProcessOutput,32,("************ Line mode, NEWLINE\n\n"));
*opcodes = LTERM_LINEDATA_CODE
| LTERM_OUTPUT_CODE
| LTERM_NEWLINE_CODE;
break;
default:
/* Ignore other control characters (including NULs) */
break;
}
}
}
/* Increment character index */
charIndex += consumedChars;
}
/* Determine count of unprocessed characters */
remainingChars = lto->decodedChars - charIndex;
if (remainingChars > 0) {
/* Move unprocessed output to beginning of decode buffer */
LTERM_LOG(ltermProcessOutput,32,("Moved %d chars to beginning of decodedOutput\n", remainingChars));
for (j=0; j<remainingChars; j++) {
lto->decodedOutput[j] = lto->decodedOutput[j+charIndex];
lto->decodedStyle[j] = lto->decodedStyle[j+charIndex];
}
}
/* Update remaining decoded character count */
lto->decodedChars = remainingChars;
if (*opcodes == 0) {
/* All output processed; without any special terminating condition */
if (lto->outputMode == LTERM1_SCREEN_MODE) {
/* Full screen mode */
*opcodes = LTERM_SCREENDATA_CODE | LTERM_OUTPUT_CODE;
} else {
/* Line mode */
*opcodes = LTERM_LINEDATA_CODE | LTERM_OUTPUT_CODE;
}
}
/* Set bell code */
if (bellFlag)
*opcodes |= LTERM_BELL_CODE;
if (*opcodes & LTERM_LINEDATA_CODE) {
/* Returning line mode data; check for prompt */
if ((lts->commandNumber == 0) ||
(lto->outputModifiedChar < lto->promptChars)) {
/* If not command line or if "prompt string" may have been modified,
* search for prompt
*/
int promptLen;
LTERM_LOG(ltermProcessOutput,39,("Prompt? modifiedChar=%d, promptChars=%d\n",
lto->outputModifiedChar, lto->promptChars));
/* Reset modification marker */
lto->outputModifiedChar = lto->outputChars;
/* Check if prompt string is present in output */
promptLen = ltermPromptLocate(lts);
if (promptLen > 0) {
/* Prompt string found */
lto->promptChars = promptLen;
if (lts->commandNumber == 0) {
/* Set command number */
/* New command number */
if (lts->lastCommandNum == 0xFFFF)
lts->lastCommandNum = 0;
lts->lastCommandNum++;
lts->commandNumber = lts->lastCommandNum;
LTERM_LOG(ltermProcessOutput,32,
("************ Prompt found; commandNumber=%d\n\n",
lts->commandNumber));
}
} else {
/* No prompt string */
if (lts->commandNumber != 0) {
/* Unset command number and prompt columns */
UNICHAR temLine[2] = {0, LTERM_WRITE_PLAIN_INPUT};
lts->commandNumber = 0;
lto->promptChars = 0;
/* Notify "input thread" by writing null input record */
WRITE(lts->writeBUFFER, temLine, 2*sizeof(UNICHAR));
LTERM_LOG(ltermProcessOutput,32,
("************ No prompt found; not command line\n\n"));
}
}
}
}
LTERM_LOG(ltermProcessOutput,31,("returned opcodes=0x%X\n", *opcodes));
return 0;
}
/** Clears output line buffer */
void ltermClearOutputLine(struct lterms *lts)
{
struct LtermOutput *lto = &(lts->ltermOutput);
LTERM_LOG(ltermClearOutputLine,40,("\n"));
lto->outputChars = 0;
lto->outputCursorChar = 0;
lto->outputModifiedChar = 0;
lto->promptChars = 0;
lts->commandNumber = 0;
}
/** Clears output screen buffer (allocating memory, if first time) */
int ltermClearOutputScreen(struct lterms *lts)
{
struct LtermOutput *lto = &(lts->ltermOutput);
int j;
LTERM_LOG(ltermClearOutputScreen,40,("\n"));
if (lto->screenChar == NULL) {
/* Allocate memory for full screen */
lto->screenChar = (UNICHAR *) MALLOC(lts->screenSize * sizeof(UNICHAR));
if (lto->screenChar == NULL) {
LTERM_ERROR("ltermClearOutputScreen: Error - failed to allocate memory for chars\n");
return -1;
}
assert(lto->screenStyle == NULL);
lto->screenStyle = (UNISTYLE *) MALLOC(lts->screenSize * sizeof(UNISTYLE));
if (lto->screenStyle == NULL) {
LTERM_ERROR("ltermClearOutputScreen: Error - failed to allocate memory for style\n");
return -1;
}
}
lto->cursorRow = lts->nRows - 1;
lto->cursorCol = 0;
for (j=0; j<lts->nRows; j++) {
lto->rowCols[j] = 0;
lto->modifiedCol[j] = -1;
}
return 0;
}
/** Saves current output mode value and switches to stream output mode,
* with specified opcodes and terminator string.
* @return 0 on success and -1 on error.
*/
int ltermSwitchToStreamMode(struct lterms *lts, int streamOpcodes,
const UNICHAR *streamTerminator)
{
struct LtermOutput *lto = &(lts->ltermOutput);
int strLength;
LTERM_LOG(ltermSwitchToStreamMode,40,("streamOpcodes=0x%s\n",streamOpcodes));
if (streamTerminator != NULL) {
/* Save terminator string (may be null) */
strLength = ucslen(streamTerminator);
ucsncpy( lto->streamTerminator, streamTerminator, MAXSTREAMTERM);
LTERM_LOGUNICODE(ltermSwitchToStreamMode,41,(streamTerminator,
(int) strLength));
} else {
/* Null terminator */
strLength = 0;
lto->streamTerminator[0] = U_NUL;
}
if (strLength > MAXSTREAMTERM-1) {
LTERM_ERROR("ltermSwitchToStreamMode: Error - terminator string too long\n");
return -1;
}
if (lts->options & LTERM_NONUL_FLAG) {
/* No decoding of NUL characters */
if (strLength == 0) {
LTERM_ERROR("ltermSwitchToStreamMode: Error - null terminator string not allowed\n");
return -1;
}
} else {
/* Decoding NUL characters */
if (strLength > 0) {
LTERM_ERROR("ltermSwitchToStreamMode: Error - terminator string must be NUL\n");
return -1;
}
}
lto->savedOutputMode = lto->outputMode;
lto->outputMode = LTERM0_STREAM_MODE;
lto->streamOpcodes = streamOpcodes;
return 0;
}
/** Switches to screen output mode.
* @return 0 on success and -1 on error.
*/
int ltermSwitchToScreenMode(struct lterms *lts)
{
struct LtermOutput *lto = &(lts->ltermOutput);
LTERM_LOG(ltermSwitchToScreenMode,40,("\n"));
if (lto->outputMode == LTERM1_SCREEN_MODE) {
/* Switching from line mode to screen mode */
if (ltermClearOutputScreen(lts) != 0)
return -1;
/* Clear styleMask */
lto->styleMask = 0;
}
lto->outputMode = LTERM1_SCREEN_MODE;
return 0;
}
/** Switches to line output mode.
* @return 0 on success and -1 on error.
*/
int ltermSwitchToLineMode(struct lterms *lts)
{
struct LtermOutput *lto = &(lts->ltermOutput);
int j;
LTERM_LOG(ltermSwitchToLineMode,40,("\n"));
if (lto->outputMode == LTERM1_SCREEN_MODE) {
/* Switching from screen mode to line mode */
ltermClearOutputLine(lts);
/* Copy bottom line to line output buffer */
lto->outputChars = lto->rowCols[0];
assert(lto->rowCols[0] < MAXCOL);
for (j=0; j<lto->rowCols[0]; j++) {
lto->outputLine[j] = lto->screenChar[j];
lto->outputStyle[j] = lto->screenStyle[j];
}
/* Clear styleMask */
lto->styleMask = 0;
}
lto->outputMode = LTERM2_LINE_MODE;
return 0;
}
/** Reads data from process STDOUT and/or STDERR using file descriptors
* from the LTERM POLL structure, and converts to Unicode, saving
* incomplete character encodings in corresponding incomplete raw buffers.
* Decoded characters are appended to the decodedOutput buffer,
* with appropriate style settings.
* If READERR is false, STDERR is never read.
* @return the number of decoded characters appended (>=0) if successful,
* -1 if an error occurred during processing, or
* -2 if pseudo-TTY has been closed.
*/
int ltermReceiveData(struct lterms *lts, int readERR)
{
struct LtermOutput *lto = &(lts->ltermOutput);
char temERRBuf[MAXCOL], temOUTBuf[MAXCOL];
int readERRMax, readOUTMax;
int nReadERR, nTotalERR, nReadOUT, nTotalOUT;
int interleavedBytes, n_decoded, n_decoded_tot, j;
LTERM_LOG(ltermReceiveData,30,("\n"));
nTotalERR = 0;
if (readERR && (lto->pollFD[POLL_STDERR].POLL_REVENTS != 0)) {
/* Read data from STDERR */
/* Read maximum number of bytes that will all fit into decodedOutput
when decoded, assuming number of decoded characters will not exceed
the number of encoded bytes */
readERRMax = MAXCOLM1 - lto->decodedChars - lto->rawERRBytes;
/* Reduce by half to leave some space for STDOUT data */
readERRMax = readERRMax / 2;
if (readERRMax <= 0) {
/* Decoded buffer overflow */
LTERM_WARNING("ltermReceiveData: Warning - decoded buffer overflow\n");
/* Non-fatal error recovery; return without reading */
return 0;
}
/* Copy any incomplete raw output to beginning of buffer */
for (j=0; j<lto->rawERRBytes; j++)
temERRBuf[j] = lto->rawERRBuf[j];
/* Read STDERRdata (blocking mode) */
nReadERR = READ(lto->pollFD[POLL_STDERR].fd,
temERRBuf + lto->rawERRBytes, (SIZE_T) readERRMax);
if (nReadERR < 0) {
#if defined(DEBUG) && !defined(USE_NSPR_IO)
int errcode = errno;
/* perror("ltermReceiveData"); */
#else
int errcode = 0;
#endif
LTERM_ERROR( "ltermReceiveData: Error %d in reading from process STDERR\n",
errcode);
return -1;
}
if (nReadERR == 0) {
/* End of file => pseudo-TTY has been closed */
LTERM_LOG(ltermReceiveData,31,("pseudo-TTY has been closed\n"));
/* Suspend LTERM */
lts->suspended = 1;
return -2;
}
LTERM_LOG(ltermReceiveData,32,("Read %d raw bytes from STDERR\n", nReadERR));
nTotalERR = nReadERR + lto->rawERRBytes;
}
nTotalOUT = 0;
if (lto->pollFD[POLL_STDOUT].POLL_REVENTS != 0) {
/* Read data from STDOUT */
/* Read maximum number of bytes that will all fit into decodedOutput
when decoded, assuming number of decoded characters will not exceed
the number of encoded bytes */
readOUTMax = MAXCOLM1 - lto->decodedChars - lto->rawOUTBytes - nTotalERR;
if (readOUTMax <= 0) {
/* Decoded buffer overflow */
LTERM_WARNING("ltermReceiveData: Warning - decoded buffer overflow\n");
/* Non-fatal error recovery; return without reading */
return 0;
}
/* Copy any incomplete raw output to beginning of buffer */
for (j=0; j<lto->rawOUTBytes; j++)
temOUTBuf[j] = lto->rawOUTBuf[j];
/* Read STDOUTdata (blocking mode) */
nReadOUT = READ(lto->pollFD[POLL_STDOUT].fd,
temOUTBuf + lto->rawOUTBytes, (SIZE_T) readOUTMax);
if (nReadOUT < 0) {
#if defined(DEBUG) && !defined(USE_NSPR_IO)
int errcode = errno;
/* perror("ltermReceiveData"); */
#else
int errcode = 0;
#endif
LTERM_ERROR( "ltermReceiveData: Error %d in reading from process STDOUT\n",
errcode);
return -1;
}
if (nReadOUT == 0) {
/* End of file => pseudo-TTY has been closed */
LTERM_LOG(ltermReceiveData,31,("pseudo-TTY has been closed\n"));
/* Suspend LTERM */
lts->suspended = 1;
return -2;
}
LTERM_LOG(ltermReceiveData,32,("Read %d raw bytes from STDOUT\n", nReadOUT));
nTotalOUT = nReadOUT + lto->rawOUTBytes;
}
n_decoded_tot = 0;
if (lts->readERRfirst) {
/* Decode STDERR data first */
interleavedBytes = 0;
n_decoded = ltermAppendOutput(lts, temERRBuf, nTotalERR,
LTERM_STDERR_STYLE,
lts->interleave, &interleavedBytes,
MAXRAWINCOMPLETE,
&(lto->rawERRBytes), lto->rawERRBuf);
if (n_decoded < 0)
return -1;
n_decoded_tot += n_decoded;
/* Decode STDOUT data next */
n_decoded = ltermAppendOutput(lts, temOUTBuf, nTotalOUT,
LTERM_STDOUT_STYLE,
0, NULL,
MAXRAWINCOMPLETE,
&(lto->rawOUTBytes), lto->rawOUTBuf);
if (n_decoded < 0)
return -1;
n_decoded_tot += n_decoded;
if (interleavedBytes > 0) {
/* Decode remaining STDERR data */
n_decoded = ltermAppendOutput(lts, temERRBuf+interleavedBytes,
nTotalERR-interleavedBytes,
LTERM_STDERR_STYLE,
0, NULL,
MAXRAWINCOMPLETE,
&(lto->rawERRBytes), lto->rawERRBuf);
if (n_decoded < 0)
return -1;
n_decoded_tot += n_decoded;
}
} else {
/* Decode STDOUT data first */
interleavedBytes = 0;
n_decoded = ltermAppendOutput(lts, temOUTBuf, nTotalOUT,
LTERM_STDOUT_STYLE,
lts->interleave, &interleavedBytes,
MAXRAWINCOMPLETE,
&(lto->rawOUTBytes), lto->rawOUTBuf);
if (n_decoded < 0)
return -1;
n_decoded_tot += n_decoded;
/* Decode STDERR data next */
n_decoded = ltermAppendOutput(lts, temERRBuf, nTotalERR,
LTERM_STDERR_STYLE,
0, NULL,
MAXRAWINCOMPLETE,
&(lto->rawERRBytes), lto->rawERRBuf);
if (n_decoded < 0)
return -1;
n_decoded_tot += n_decoded;
if (interleavedBytes > 0) {
/* Decode remaining STDOUT data */
n_decoded = ltermAppendOutput(lts, temOUTBuf+interleavedBytes,
nTotalOUT-interleavedBytes,
LTERM_STDOUT_STYLE,
0, NULL,
MAXRAWINCOMPLETE,
&(lto->rawOUTBytes), lto->rawOUTBuf);
if (n_decoded < 0)
return -1;
n_decoded_tot += n_decoded;
}
}
if (n_decoded_tot > 0) {
/* New characters have been decoded; no longer incomplete escape seq. */
lto->incompleteEscapeSequence = 0;
}
return n_decoded_tot;
}
/** Process COUNT bytes raw data from CBUF, converting complete
* character encodings to Unicode, saving RAWINCOMPLETEBYTES in
* RAWINCOMPLETEBUF, whose maximum size is specified by RAWINCOMPLETEMAX.
* If INTERLEAVECHECK, check for starting NEWLINE and other interleavable
* characters, and if found "decode" just those characters and set
* INTERLEAVEDBYTES to the number of bytes consumed on return;
* otherwise INTERLEAVEDBYTES is set to 0.
* The decoded characters are appended to the decodedOutput buffer,
* with style STYLE.
* @return the number of characters appended (>=0) if successful,
* -1 if an error occurred during processing, or
* -2 if pseudo-TTY has been closed.
*/
static int ltermAppendOutput(struct lterms *lts, const char *cbuf, int count,
UNISTYLE style, int interleaveCheck,
int *interleavedBytes, int rawIncompleteMax,
int *rawIncompleteBytes, char *rawIncompleteBuf)
{
struct LtermOutput *lto = &(lts->ltermOutput);
int decodeMax, n_decoded, decodeNUL, j;
LTERM_LOG(ltermAppendOutput,30,("count=%d, style=0x%X, iCheck=%d, rawIncMax=%d\n",
count, style, interleaveCheck, rawIncompleteMax));
if (interleaveCheck && (count > 0) && (cbuf[0] == '\n')) {
/* Raw buffer starts with NEWLINE character; interleave */
assert(lto->decodedChars < MAXCOLM1);
/* "Decode" just the NEWLINE character */
lto->decodedOutput[lto->decodedChars] = U_LINEFEED;
lto->decodedStyle[lto->decodedChars] = LTERM_STDOUT_STYLE;
lto->decodedChars++;
*interleavedBytes = 1;
LTERM_LOG(ltermAppendOutput,32,("INTERLEAVED %d bytes\n",
*interleavedBytes));
return 1;
}
if (interleavedBytes != NULL)
*interleavedBytes = 0;
if (count == 0)
return 0;
/* Decode all complete encoded character sequences */
decodeMax = MAXCOLM1 - lto->decodedChars;
decodeNUL = (lts->options & LTERM_NONUL_FLAG) == 0;
n_decoded = ltermDecode(cbuf, count,
lto->decodedOutput+lto->decodedChars,
decodeMax, decodeNUL,
rawIncompleteBytes);
if (n_decoded < 0)
return -1;
/* Save any incomplete raw byte encodings */
if (*rawIncompleteBytes > rawIncompleteMax) {
LTERM_ERROR("ltermAppendOutput: Error - too many incomplete raw characters\n");
return -1;
}
for (j=0; j<*rawIncompleteBytes; j++)
rawIncompleteBuf[j] = cbuf[j+count-*rawIncompleteBytes];
/* Set decoded character styles */
for (j=lto->decodedChars; j<lto->decodedChars+n_decoded; j++)
lto->decodedStyle[j] = style;
/* Increment decoded character count */
lto->decodedChars += n_decoded;
LTERM_LOG(ltermAppendOutput,32,("Appended %d bytes\n", n_decoded));
return n_decoded;
}
/** Decodes N_TOTAL bytes in RAWBUF, returning upto DECODEMAX Unicode
* characters in DECODEDBUF, leaving *RAWINCOMPLETEBYTES at the end of
* RAWBUF undecoded.
* Any NUL (zero) characters in RAWBUF are skipped, unless
* decodeNUL is true.
* If there is not enough space in DECODEDBUF for all characters to be
* decoded, an error is returned.
* @return the number of Unicoded characters decoded (>=0) or -1 on error.
*/
static int ltermDecode(const char *rawBuf, int n_total,
UNICHAR* decodedBuf, int decodeMax,
int decodeNUL,
int *rawIncompleteBytes)
{
int n_decoded, result;
LTERM_LOG(ltermDecode,40,("\n"));
if (decodeMax < n_total) {
LTERM_ERROR("ltermDecode: Error - decode buffer overflow\n");
return -1;
}
result = utf8toucs(rawBuf, n_total, decodedBuf, decodeMax,
!decodeNUL, rawIncompleteBytes, &n_decoded);
if (result != 0) {
LTERM_WARNING("ltermDecode: Warning - Invalid UTF8 data encountered\n");
}
LTERM_LOG(ltermDecode,41,("result=%d, incomplete=%d, n_decoded=%d\n",
result, rawIncompleteBytes, n_decoded));
LTERM_LOGUNICODE(ltermDecode,42,(decodedBuf, n_decoded));
return n_decoded;
}
/** Search for prompt string in the output line buffer.
* TEMPORARY implementation: assume promptRegexp is just a list of delimiters
* @return the length of the matching prompt string, or
* 0 if there is no match.
*/
static int ltermPromptLocate(struct lterms *lts)
{
struct LtermOutput *lto = &(lts->ltermOutput);
int prefixCount, promptLen;
LTERM_LOG(ltermPromptLocate,49,("lto->outputChars=%d\n",
lto->outputChars));
/* Assert that there is at least one free character in the buffer */
assert(lto->outputChars < MAXCOL);
if (lto->outputChars == 0)
return 0;
/* Insert null character at the end of the output buffer */
lto->outputLine[lto->outputChars] = U_NUL;
/* Determine length of initial non-delimiter prefix */
prefixCount = ucscspn(lto->outputLine, lts->promptRegexp);
if (prefixCount+1 >= lto->outputChars) {
promptLen = 0;
} else {
/* Skip any spaces following the delimiter */
const UNICHAR spaceStr[2] = {U_SPACE, U_NUL};
int spaceCount = ucsspn(lto->outputLine+prefixCount+1, spaceStr);
promptLen = prefixCount + 1 + spaceCount;
LTERM_LOGUNICODE(ltermPromptLocate,41,(lto->outputLine, promptLen));
}
return promptLen;
}

View File

@@ -0,0 +1,560 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* ltermPrivate.h: Line terminal (LTERM) private header file
* LTERM provides a "stream" interface to an XTERM-like terminal,
* using line input/output.
* CPP options:
* LINUX: for Linux2.0/glibc
* SOLARIS: for Solaris2.6
* DEBUG: to enable some debugging output
* NO_PTY: force use of pipes rather than PTY for process
* communication
* MOZILLA_CLIENT: set if embedded in Mozilla
* USE_NSPR_BASE: use basic NSPR API (excluding I/O and process creation)
* USE_NSPR_LOCK: use NSPR lock API instead of Unix mutex API
* USE_NSPR_IO: use NSPR I/O and process API instead of Unix API
* (current implementation of pseudo-TTY is incompatible with
* the NSPR I/O API; set the USE_NSPR_IO option only on platforms
* where PTYSTREAM is not implemented)
*/
#ifndef _LTERMPRIVATE_H
#define _LTERMPRIVATE_H 1
/* Standard C header files */
#ifndef _STRING_H
#include <string.h>
#endif
/* public declarations */
#include "lineterm.h"
#include "tracelog.h"
/* private declarations */
/* Force use of basic NSPR API if MOZILLA_CLIENT or USE_NSPR_IO are defined */
#if defined(MOZILLA_CLIENT) || defined(USE_NSPR_IO)
#define USE_NSPR_BASE 1
#endif
/* pseudo-TTY stream interface */
#ifndef _PTYSTREAM_H
#include "ptystream.h"
#endif
#define LTERM_ERROR TLOG_ERROR
#define LTERM_WARNING TLOG_WARNING
#define LTERM_LOG(procname,level,args) TLOG_PRINT(LTERM_TLOG_MODULE,procname,level,args)
#define LTERM_LOGUNICODE(procname,level,args) TLOG_UNICHAR(LTERM_TLOG_MODULE,procname,level,args)
#ifdef USE_NSPR_BASE /* Use basic NSPR API (excluding I/O) */
#include "nspr.h"
#define assert PR_ASSERT
#define int32 PRInt32
#define getenv PR_GetEnv
#define MALLOC(x) PR_Malloc(x)
#define REALLOC(x,y) PR_Realloc((x),(y))
#define CALLOC(x,y) PR_Calloc((x),(y))
#define FREE(x) PR_Free(x)
#else /* not USE_NSPR_BASE */
#include <assert.h>
#define int32 long
#define MALLOC(x) malloc(x)
#define REALLOC(x,y) realloc((x),(y))
#define CALLOC(x,y) calloc((x),(y))
#define FREE(x) free(x)
#endif /* not USE_NSPR_BASE */
#ifdef USE_NSPR_IO /* Use NSPR I/O API (no PTY implementation) */
#ifdef LINUX
#include <sys/poll.h>
#endif
typedef PRFileDesc *FILEDESC;
#define NULL_FILEDESC 0
#define VALID_FILEDESC(x) (x != 0)
typedef PRFileDesc FILESTREAM;
#define SIZE_T PRInt32
#define WRITE PR_Write
#define READ PR_Read
#define CLOSE(x) (PR_Close(x) != PR_SUCCESS)
#define PIPE(x) (PR_CreatePipe((x),(x)+1) != PR_SUCCESS)
#define POLL(x,y,z) PR_Poll((x),(y),(z))
#define POLLFD PRPollDesc
#define POLL_EVENTS in_flags
#define POLL_REVENTS out_flags
#define POLL_READ PR_POLL_READ
#define PROCESS PRProcess *
#define NULL_PROCESS 0
#define VALID_PROCESS(x) (x != 0)
#else /* not USE_NSPR_IO */
/* system header files */
#include <unistd.h>
#include <signal.h>
/* Diagnostic/debugging files */
#include <stdio.h>
#include <errno.h>
#include <stdarg.h>
#if defined(SOLARIS)
#include <poll.h>
#elif defined(LINUX)
#include <sys/poll.h>
#endif
typedef int FILEDESC;
#define NULL_FILEDESC -1
#define VALID_FILEDESC(x) (x >= 0)
typedef FILE FILESTREAM;
#define SIZE_T size_t
#define WRITE write
#define READ read
#define CLOSE(x) close(x)
#define PIPE(x) pipe(x)
#define POLL(x,y,z) poll((x),(y),(z))
#define POLLFD pollfd
#define POLL_EVENTS events
#define POLL_REVENTS revents
#define POLL_READ POLLIN
#define PROCESS long
#define NULL_PROCESS 0
#define VALID_PROCESS(x) (x > 0)
#endif /* not USE_NSPR_IO */
#ifdef USE_NSPR_LOCK /* Use NSPR lock API */
#define MUTEX_DECLARE(x) PRLock *x
#define MUTEX_INITIALIZE(x) ((x=PR_NewLock()) == NULL)
#define MUTEX_LOCK(x) PR_Lock(x)
#define MUTEX_UNLOCK(x) PR_Unlock(x)
#define MUTEX_DESTROY(x) PR_DestroyLock(x)
#define THREAD_DECLARE(x) PRThread *x
#define THREAD_CREATE ((x=PR_CreateThread(PR_USER_THREAD, (y), (z), \
PR_PRIORITY_NORMAL, PR_GLOBAL_THREAD, \
PR_JOINABLE_THREAD, 0)) == NULL)
#define THREAD_SELF PR_GetCurrentThread
#define THREAD_EQUAL(x,y) ((x) == (y))
#define THREAD_JOIN(x) (PR_JoinThread(x) != PR_SUCCESS)
#else /* not USE_NSPR_LOCK */
#include <pthread.h>
#define MUTEX_DECLARE(x) pthread_mutex_t x
#define MUTEX_INITIALIZE(x) pthread_mutex_init(&(x), NULL)
#define MUTEX_LOCK(x) pthread_mutex_lock(&(x))
#define MUTEX_UNLOCK(x) pthread_mutex_unlock(&(x))
#define MUTEX_DESTROY(x) pthread_mutex_destroy(&(x))
#define THREAD_DECLARE(x) pthread_t x
#define THREAD_CREATE(x,y,z) pthread_create(&(x),NULL,(y),(z))
#define THREAD_SELF pthread_self
#define THREAD_EQUAL(x,y) pthread_equal(x,y)
#define THREAD_JOIN(x) pthread_join((x),NULL)
#endif /* not USE_NSPR_LOCK */
#define MAXTERM 256 /* Maximum number of LTERMs;
* affects static memory "footprint"
*/
#define MAXCOL 4096 /* Maximum columns in line buffer;
* affects static memory "footprint";
* the only limitation on this value is that
* it must fit into a UNICHAR, because of the
* way lterm_write and ltermWrite implement
* the input buffer pipe.
*/
#define MAXROW 1024 /* Maximum rows in screen;
* primarily affects dynamically allocated
* memory
*/
/* The only obvious limitation on the following is that they should be
* significantly less than MAXCOL
*/
#define MAXPROMPT 256 /* Maximum length of prompt regexp+1 */
#define MAXRAWINCOMPLETE 5 /* Maximum incomplete raw buffer size */
#define MAXSTREAMTERM 11 /* Maximum stream terminator buffer size */
#define MAXCOOKIESTR 64 /* Maximum length of cookie string+1 */
#define MAXESCAPEPARAMS 16 /* Maximum no. of numeric ESCAPE parameters */
#define MAXSTRINGPARAM 512 /* Maximum length of string ESCAPE parameters */
#define MAXPTYIN 128 /* 1/2 POSIX minimum MAX_INPUT for PTY */
#define MAXCOLM1 (MAXCOL-1) /* Maximum columns in line buffer - 1 */
#define MAXTTYCONTROL 8 /* Maximum TTY control character list */
#define TTYINTERRUPT 0
#define TTYERASE 1
#define TTYKILL 2
#define TTYEOF 3
#define TTYSUSPEND 4
#define TTYREPRINT 5
#define TTYDISCARD 6
#define TTYWERASE 7
/* input modes */
#define LTERM0_RAW_MODE 0
#define LTERM1_CANONICAL_MODE 1
#define LTERM2_EDIT_MODE 2
#define LTERM3_COMPLETION_MODE 3
/* completion request codes */
#define LTERM_NO_COMPLETION 0
#define LTERM_TAB_COMPLETION 1
#define LTERM_HISTORY_COMPLETION 2
/* output modes */
#define LTERM0_STREAM_MODE 0
#define LTERM1_SCREEN_MODE 1
#define LTERM2_LINE_MODE 2
/* character operation codes */
#define LTERM_INSERT_CHAR 0
#define LTERM_DELETE_CHAR 1
#define LTERM_ERASE_CHAR 2
/* List of characters escaped in XML */
#define LTERM_AMP_ESCAPE 0
#define LTERM_LT_ESCAPE 1
#define LTERM_GT_ESCAPE 2
#define LTERM_QUOT_ESCAPE 3
#define LTERM_APOS_ESCAPE 4
#define LTERM_XML_ESCAPES 5
#define LTERM_PLAIN_ESCAPES 3
/* input buffer pipe header "character" count */
#define PIPEHEADER 2
/* input buffer pipe header components */
#define PHDR_CHARS 0
#define PHDR_TYPE 1
/* LTERM read in/out parameter structure */
struct LtermRead {
UNICHAR *buf; /* Pointer to Unicode character buffer (IN param) */
UNISTYLE *style; /* Pointer to character style buffer (IN param) */
int max_count; /* max. number of characters in buffers (IN param) */
int read_count; /* actual number of characters in buffers */
int opcodes; /* Returned opcodes */
int buf_row; /* row at which to display buffer data */
int buf_col; /* starting column at which to display buffer data */
int cursor_row; /* final cursor row position */
int cursor_col; /* final cursor column position */
};
/* LTERM input structure: managed by lterm_write */
struct LtermInput {
UNICHAR inputBuf[PIPEHEADER+MAXCOL]; /* holds data read from input buffer
* pipe
*/
int inputBufBytes; /* Count of bytes already read in */
int inputMode; /* input mode:
* 0 = raw mode
* 1 = canonical mode
* 2 = edit + canonical mode
* 3 = completion + edit + canonical mode
*/
int escapeFlag; /* processing ESCAPE in line mode */
int escapeCSIFlag; /* processing ESCAPE Code Sequence Introducer */
int escapeCSIArg; /* ESCAPE Code Sequence Argument value */
int inputOpcodes; /* input opcodes */
int clearInputLine; /* true if input line buffer needs to be
* cleared (after echoing) */
UNICHAR inputLine[MAXCOL]; /* input line buffer:
only MAXCOL-1 characters should actually
be inserted in the buffer, to allow
one character padding if necessary */
int inputChars; /* length of input line (characters);
* should never exceed MAXCOL-1,
* to allow for null termination
*/
int inputCols; /* number of displayed columns in input line;
* a column corresponds to a single
* plain text character transmitted to the
* subordinate process, although it may occupy
* multiple character positions, e.g.,
* e.g., &lt represents "<"
*/
int inputGlyphs; /* number of displayed glyphs in input line;
* a glyph corresponds to a logical column
* on the layout, i.e., a single Unicode
* character or an XML element, such as an
* iconic representiion of an URI.
*/
unsigned short inputColCharIndex[MAXCOL]; /* starting character index of
* each column, including the
* cursor column at end of line.
* (inputCols+1 values should be
* defined)
*/
unsigned short inputGlyphCharIndex[MAXCOL]; /* starting character index
* of each glyph, including
* empty glyph at the end of
* the line.
* (inputGlyphs+1 values
* should be defined)
*/
unsigned short inputGlyphColIndex[MAXCOL]; /* starting column index of
* each glyph
* (inputGlyphs+1 values)
*/
int inputCursorGlyph; /* current input cursor glyph number (>=0) */
};
/* LtermOutput poll structure index count and values */
#define POLL_COUNT 3
#define POLL_INPUTBUF 0
#define POLL_STDOUT 1
#define POLL_STDERR 2
/* LTERM output structure: managed by lterm_read */
struct LtermOutput {
struct POLLFD pollFD[POLL_COUNT]; /* output polling structure */
long callbackTag[POLL_COUNT]; /* GTK callback tag for each FD (0 if none) */
int nfds; /* count of "files" to be polled */
int outputMode; /* output mode:
* 0 = full screen mode
* 1 = line mode
* 2 = command line mode
*/
UNICHAR streamTerminator[MAXSTREAMTERM]; /* stream terminator buffer */
int streamOpcodes; /* Stream opcodes */
int savedOutputMode; /* saved output mode (prior to stream mode) */
int insertMode; /* character insert mode */
int automaticNewline; /* automatic newline mode */
UNISTYLE styleMask; /* current output style mask */
char rawOUTBuf[MAXRAWINCOMPLETE]; /* incomplete raw STDOUT buffer */
int rawOUTBytes; /* incomplete raw STDOUT byte count */
char rawERRBuf[MAXRAWINCOMPLETE]; /* incomplete raw STDERR buffer */
int rawERRBytes; /* incomplete raw STDERR byte count */
UNICHAR decodedOutput[MAXCOL]; /* decoded output buffer:
only MAXCOL-1 characters should actually
be inserted in the buffer, to allow
one character padding if necessary */
UNISTYLE decodedStyle[MAXCOL]; /* decoded output style buffer */
int decodedChars; /* decoded character count;
should never exceed MAXCOL-1 */
int incompleteEscapeSequence; /* Incomplete ESCAPE sequence flag */
UNICHAR outputLine[MAXCOL]; /* output line buffer (processed);
only MAXCOL-1 characters should actually
be inserted in the buffer, to allow
one character padding if necessary */
UNISTYLE outputStyle[MAXCOL]; /* output style buffer for each character */
int outputChars; /* length of output line (characters)
should never exceed MAXCOL-1 */
int outputCursorChar; /* output cursor character position (>=0) */
int promptChars; /* prompt character count */
int outputModifiedChar; /* leftmost modified character in output line */
int cursorRow, cursorCol; /* screen cursor row and column */
int rowCols[MAXROW]; /* count of columns in each row (>=0) */
int modifiedCol[MAXROW]; /* first modified column in each row;
-1 if no column has been modified */
UNICHAR *screenChar; /* Screen character array (screenSize long) */
UNISTYLE *screenStyle; /* Screen style array (screenSize long) */
};
/* LTERM process structure: managed by lterm_create, lterm_close */
struct LtermProcess {
PROCESS processID; /* process ID */
FILEDESC processIN; /* process input pipe */
FILEDESC processOUT; /* process output pipe */
FILEDESC processERR; /* process error pipe */
};
/* line terminal (LTERM) structure: managed by lterm_open, lterm_close */
struct lterms {
int opened; /* LTERM opened status flag */
int suspended; /* LTERM suspended flag:
* an LTERM is suspended when an error
* occurs, to prevent further I/O operations
* which have unpredictable results.
* The LTERM still needs to be closed to
* release any resources used by it.
* (a suspended LTERM is still open)
*/
MUTEX_DECLARE(adminMutex); /* LTERM administrative mutex */
MUTEX_DECLARE(outputMutex); /* LTERM output thread mutex */
int adminMutexLocked; /* administrative mutex lock status */
int outputMutexLocked; /* output mutex lock status */
FILEDESC writeBUFFER, readBUFFER; /* input character BUFFER pipe */
int options; /* TTY options */
int ptyMode; /* pseudo-TTY mode flag */
int noTTYEcho; /* no TTY echo flag */
int disabledInputEcho; /* disabled input echo flag */
int processType; /* Process type code */
int maxInputMode; /* maximum allowed input mode value */
int readERRfirst; /* Read STDERR before STDOUT */
int interleave; /* interleave STDERR/STDOUT flag */
UNICHAR control[MAXTTYCONTROL]; /* TTY control characters */
int commandNumber; /* output command number
* (0 if not command line)
*/
unsigned short lastCommandNum; /* last command number */
int completionRequest; /* command completion request code:
* LTERM_NO_COMPLETION, or
* LTERM_TAB_COMPLETION, or
* LTERM_HISTORY_COMPLETION
*/
int completionChars; /* command completion insert count */
int inputBufRecord; /* True if input buffer contains record */
int inputLineBreak; /* True if input line was transmitted
* and plain text copy saved in echo buffer
*/
UNICHAR echoLine[MAXCOL]; /* Plain text of echo line */
int echoChars; /* Count of echo characters */
int nRows; /* Number of rows */
int nCols; /* Number of columns */
long screenSize; /* Screen size, in characters
= nRows*nCols */
UNICHAR promptRegexp[MAXPROMPT]; /* prompt regular expression
JUST A LIST OF DELIMITERS AT PRESENT */
char cookie[MAXCOOKIESTR]; /* cookie string */
struct ptys pty; /* pseudo-tty (PTY) stream info for LTERM */
struct LtermProcess ltermProcess; /* LTERM process structure */
struct LtermInput ltermInput; /* LTERM input structure */
struct LtermOutput ltermOutput; /* LTERM output structure */
};
/* LTERM global variables */
typedef struct {
int initialized; /* Initialization flag */
struct lterms *termList[MAXTERM]; /* List of LTERMS */
MUTEX_DECLARE(listMutex); /* Thread lock to access to LTERM list */
UNICHAR metaDelimiter; /* Meta command delimiter (usually :) */
char escapeChars[LTERM_XML_ESCAPES+1]; /* String of chars escaped in XML */
UNICHAR* escapeSeq[LTERM_XML_ESCAPES]; /* XML character escape sequences */
int escapeLen[LTERM_XML_ESCAPES]; /* XML char. escape sequence lengths */
} LtermGlobal;
extern LtermGlobal ltermGlobal;
/* Visible prototypes */
/* ltermIO.c */
int ltermSendLine(struct lterms *lts, UNICHAR uch,
int echoControl, int completionCode);
int ltermRead(struct lterms *lts, struct LtermRead *ltr, int timeout);
/* ltermInput.c */
int ltermPlainTextInput(struct lterms *lts,
const UNICHAR *buf, int count, int *opcodes);
int ltermCancelCompletion(struct lterms *lts);
int ltermInsertChar(struct LtermInput *lti, UNICHAR uch);
void ltermSwitchToRawMode(struct lterms *lts);
void ltermClearInputLine(struct lterms *lts);
int ltermDeleteGlyphs(struct LtermInput *lti, int count);
int ltermSendData(struct lterms *lts, const UNICHAR *buf, int count);
/* ltermOutput.c */
int ltermProcessOutput(struct lterms *lts, int *opcodes);
int ltermReceiveData(struct lterms *lts, int readERR);
void ltermClearOutputLine(struct lterms *lts);
int ltermClearOutputScreen(struct lterms *lts);
int ltermSwitchToStreamMode(struct lterms *lts, int streamOpcodes,
const UNICHAR *streamTerminator);
int ltermSwitchToScreenMode(struct lterms *lts);
int ltermSwitchToLineMode(struct lterms *lts);
/* ltermEscape.c */
int ltermProcessEscape(struct lterms *lts, const UNICHAR *buf,
int count, const UNISTYLE *style, int *consumed, int *opcodes);
int ltermInsDelEraseChar(struct lterms *lts, int count, int action);
#endif /* _LTERMPRIVATE_H */

View File

@@ -0,0 +1,88 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
/* mozILineTerm.idl: Javascript-accessible interface to LineTerm
*/
#include "nsISupports.idl"
#include "domstubs.idl"
%{C++
class nsIDOMDocument;
%}
[scriptable, uuid(0eb82b00-43a2-11d3-8e76-006008948af5)]
interface mozILineTerm : nsISupports
{
attribute long cursorRow;
attribute long cursorColumn;
attribute boolean echoFlag;
/** Opens LineTerm, a line-oriented terminal interface (without graphics)
* @param command name of command to be executed; usually a shell,
* e.g., "/bin/sh"; if set to null string, the command name is
* determined from the environment variable SHELL
* @param promptRegexp command prompt regular expression (for future use);
* at the moment, any string terminated by one of the characters
* "#$%>?", followed by a space, is assumed to be a prompt
* @param options LineTerm option bits (usually 0; see lineterm.h)
* @param processType command shell type; if set to -1, type is determined
* from the command name
* @param domDoc DOM document object associated with the LineTerm
* (document.cookie will be defined for this document on return)
*/
void Open(in wstring command, in wstring promptRegexp,
in PRInt32 options, in PRInt32 processType,
in nsIDOMDocument domDoc);
/** Closes LineTerm
* @param aCookie document.cookie string for authentication
*/
void Close(in wstring aCookie);
/** Writes string to LineTerm as if the user had typed it (command input)
* @param buf string to be transmitted to LineTerm
* @param aCookie document.cookie string for authentication
*/
void Write(in wstring buf, in wstring aCookie);
/** Read output data string and parameters from LineTerm (command output)
* @param opcodes (output) output data descriptor bits (see lineterm.h)
* @param buf_row (output) row number (>=-1)
(-1 denotes line mode and 0 represents bottom row)
* @param buf_col (output) column number (>=0)
* @param aCookie document.cookie string for authentication
* @return output data string from LineTerm
*/
wstring Read(out PRInt32 opcodes, out PRInt32 buf_row,
out PRInt32 buf_col, in wstring aCookie);
};
%{ C++
#define MOZLINETERM_CID \
{ /* 0eb82b01-43a2-11d3-8e76-006008948af5 */ \
0x0eb82b01, 0x43a2, 0x11d3, \
{0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5} }
extern nsresult
NS_NewLineTerm(mozILineTerm** aLineTerm);
%}

View File

@@ -0,0 +1,122 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozILineTermAux.h: auxiliary interface for LineTerm (not XPCONNECTed)
// This adds some XPCOM-only methods to the XPCOM/XPCONNECT interface
// mozILineTerm (unregistered)
#ifndef mozILineTermAux_h___
#define mozILineTermAux_h___
#include "nsISupports.h"
#include "nscore.h"
#include "nsIObserver.h"
#include "mozILineTerm.h"
/* {0eb82b10-43a2-11d3-8e76-006008948af5} */
#define MOZILINETERMAUX_IID_STR "0eb82b10-43a2-11d3-8e76-006008948af5"
#define MOZILINETERMAUX_IID \
{0x0eb82b10, 0x43a2, 0x11d3, \
{ 0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5 }}
class mozILineTermAux : public mozILineTerm {
public:
NS_DEFINE_STATIC_IID_ACCESSOR(MOZILINETERMAUX_IID)
// mozILineTerm interface
NS_IMETHOD GetCursorRow(PRInt32 *aCursorRow) = 0;
NS_IMETHOD SetCursorRow(PRInt32 aCursorRow) = 0;
NS_IMETHOD GetCursorColumn(PRInt32 *aCursorColumn) = 0;
NS_IMETHOD SetCursorColumn(PRInt32 aCursorColumn) = 0;
NS_IMETHOD Open(const PRUnichar *command,
const PRUnichar *promptRegexp,
PRInt32 options, PRInt32 processType,
nsIDOMDocument *domDoc) = 0;
NS_IMETHOD Close(const PRUnichar* aCookie) = 0;
NS_IMETHOD Write(const PRUnichar *buf, const PRUnichar* aCookie) = 0;
NS_IMETHOD Read(PRInt32 *opcodes,
PRInt32 *buf_row, PRInt32 *buf_col,
const PRUnichar* aCookie,
PRUnichar **_retval) = 0;
// mozILineTermAux interface add ons
// (not scriptable, no authentication cookie required)
/** Opens LineTerm, a line-oriented terminal interface (without graphics)
* @param command name of command to be executed; usually a shell,
* e.g., "/bin/sh"; if set to null string, the command name is
* determined from the environment variable SHELL
* @param promptRegexp command prompt regular expression (for future use);
* at the moment, any string terminated by one of the characters
* "#$%>?", followed by a space, is assumed to be a prompt
* @param options LineTerm option bits (usually 0; see lineterm.h)
* @param processType command shell type; if set to -1, type is determined
* from the command name
* @param domDoc DOM document object associated with the LineTerm
* (document.cookie will be defined for this document on return)
* @param aCookie (output) cookie associated with LineTerm
*/
NS_IMETHOD OpenAux(const PRUnichar *command,
const PRUnichar *promptRegexp,
PRInt32 options, PRInt32 processType,
nsIDOMDocument *domDoc,
nsIObserver* anObserver,
nsString& aCookie) = 0;
/** Suspend/restores LineTerm operation
* @param aSuspend suspension state flag
*/
NS_IMETHOD SuspendAux(PRBool aSuspend) = 0;
/** Closes LineTerm
*/
NS_IMETHOD CloseAux(void) = 0;
/** Close all LineTerms, not just this one
*/
NS_IMETHOD CloseAllAux(void) = 0;
/** Read output data and style strings and parameters from LineTerm
* @param opcodes (output) output data descriptor bits (see lineterm.h)
* @param buf_row (output) row number (>=-1)
(-1 denotes line mode and 0 represents bottom row)
* @param buf_col (output) column number (>=0)
* @param _retval (output) success code
* @param retstyle (output) output style string
* @return output data string from LineTerm
*/
NS_IMETHOD ReadAux(PRInt32 *opcodes,
PRInt32 *buf_row, PRInt32 *buf_col,
PRUnichar **_retval, PRUnichar **retstyle) = 0;
};
// Factory for mozILineTermAux
extern nsresult
NS_NewLineTermAux(mozILineTermAux** aLineTermAux);
#endif /* mozILineTermAux_h___ */

View File

@@ -0,0 +1,86 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
/* mozIXMLTermShell.idl: Javascript-accessible wrapper for mozIXMLTerminal
*/
#include "nsISupports.idl"
#include "domstubs.idl"
#include "mozILineTerm.idl"
%{C++
class nsILineTerm;
class nsIDOMWindow;
%}
[scriptable, uuid(0eb82b30-43a2-11d3-8e76-006008948af5)]
interface mozIXMLTermShell : nsISupports
{
readonly attribute long currentEntryNumber; /* current entry (command) no. */
attribute long history; /* command history buffer count */
attribute wstring prompt; /* HTML prompt string */
/** Initializes XMLterm in specified window
* @param contentWin content window object
* @param URL URL of document to be loaded in the window
* (set to null string if document is already loaded in window)
* @param args argument string to be passed to XMLterm
* (at the moment this just contains any initial input data)
*/
void Init(in nsIDOMWindow contentWin, in wstring URL, in wstring args);
/** Finalizes (closes) XMLterm
*/
void Finalize();
/** Polls for readable data from XMLterm
*/
void Poll();
/** Writes string to terminal as if the user had typed it (command input)
* @param buf string to be transmitted to terminal
* @param aCookie document.cookie string for authentication
*/
void SendText(in wstring buf, in wstring cookie);
/** Opens new XMLterm window with specified args (not yet implemented)
* @param args argument string to be passed to XMLterm
* (at the moment this just contains any initial input data)
*/
void NewXMLTermWindow(in wstring args);
/** Exit browser, closing all windows (not yet implemented)
*/
void Exit();
};
%{C++
#define MOZXMLTERMSHELL_CID \
{ /* 0eb82b31-43a2-11d3-8e76-006008948af5 */ \
0x0eb82b31, 0x43a2, 0x11d3, \
{0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5} }
extern nsresult
NS_NewXMLTermShell(mozIXMLTermShell** aXMLTermShell);
%}

View File

@@ -0,0 +1,78 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozIXMLTermStream.h: interface to display HTML/XML streams as documents
// (unregistered)
#ifndef mozIXMLTermStream_h___
#define mozIXMLTermStream_h___
#include "nscore.h"
#include "nsISupports.h"
#include "nsIDOMDocument.h"
#include "nsIWebShell.h"
#include "nsIPresShell.h"
#include "nsIScriptContext.h"
#include "nsIInputStream.h"
/* {0eb82b40-43a2-11d3-8e76-006008948af5} */
#define MOZIXMLTERMSTREAM_IID_STR "0eb82b40-43a2-11d3-8e76-006008948af5"
#define MOZIXMLTERMSTREAM_IID \
{0x0eb82b40, 0x43a2, 0x11d3, \
{ 0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5 }}
class mozIXMLTermStream : public nsIInputStream
{
public:
NS_DEFINE_STATIC_IID_ACCESSOR(MOZIXMLTERMSTREAM_IID);
// mozIXMLTermStream interface
/** Open stream in specified frame, or in current frame if frameName is null
* @param aDOMWindow parent window
* @param frameName name of child frame in which to display stream, or null
* to display in parent window
* @param contentURL URL of stream content
* @param contentType MIME type of stream content
* @param maxResizeHeight maximum resize height (0=> do not resize)
* @return NS_OK on success
*/
NS_IMETHOD Open(nsIDOMWindow* aDOMWindow,
const char* frameName,
const char* contentURL,
const char* contentType,
PRInt32 maxResizeHeight) = 0;
/** Write Unicode string to stream (blocks until write is completed)
* @param buf string to write
* @return NS_OK on success
*/
NS_IMETHOD Write(const PRUnichar* buf) = 0;
};
#define MOZXMLTERMSTREAM_CID \
{ /* 0eb82b41-43a2-11d3-8e76-006008948af5 */ \
0x0eb82b41, 0x43a2, 0x11d3, \
{0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5} }
extern nsresult
NS_NewXMLTermStream(mozIXMLTermStream** aXMLTermStream);
#endif /* mozIXMLTermStream_h___ */

View File

@@ -0,0 +1,127 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozIXMLTerminal.h: primary interface for XMLterm operations
// (unregistered)
#ifndef mozIXMLTerminal_h___
#define mozIXMLTerminal_h___
#include "nscore.h"
#include "nsISupports.h"
#include "nsIDOMDocument.h"
#include "nsIWebShell.h"
#include "nsIPresShell.h"
#include "nsIScriptContext.h"
#include "mozIXMLTermShell.h"
/* {0eb82b20-43a2-11d3-8e76-006008948af5} */
#define MOZIXMLTERMINAL_IID_STR "0eb82b20-43a2-11d3-8e76-006008948af5"
#define MOZIXMLTERMINAL_IID \
{0x0eb82b20, 0x43a2, 0x11d3, \
{ 0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5 }}
class mozIXMLTerminal : public nsISupports {
public:
NS_DEFINE_STATIC_IID_ACCESSOR(MOZIXMLTERMINAL_IID)
/** Initializes XMLterm in specified web shell
* @param aWebShell web shell in which to embed XMLterm
* @param aXMLTermShell scriptable wrapper shell for XMLterm
* @param URL URL of document to be loaded in the window
* (set to null string if document is already loaded in window)
* @param args argument string to be passed to XMLterm
* (at the moment this just contains any initial input data)
*/
NS_IMETHOD Init(nsIWebShell* aWebShell,
mozIXMLTermShell* aXMLTermShell,
const PRUnichar* aURL,
const PRUnichar* args) = 0;
/** Finalizes (closes) XMLterm
*/
NS_IMETHOD Finalize(void) = 0;
/** Polls for readable data from XMLterm
*/
NS_IMETHOD Poll(void) = 0;
/** Gets current entry (command) number
* @param aNumber (output) current entry number
*/
NS_IMETHOD GetCurrentEntryNumber(PRInt32 *aNumber) = 0;
/** Gets command history buffer count
* @param aHistory (output) history buffer count
*/
NS_IMETHOD GetHistory(PRInt32 *aHistory) = 0;
/** Sets command history buffer count
* @param aHistory history buffer count
*/
NS_IMETHOD SetHistory(PRInt32 aHistory) = 0;
/** Gets prompt string
* @param aPrompt (output) prompt string
*/
NS_IMETHOD GetPrompt(PRUnichar **aPrompt) = 0;
/** Sets prompt string
* @param aPrompt prompt string
*/
NS_IMETHOD SetPrompt(const PRUnichar* aPrompt) = 0;
/** Writes string to terminal as if the user had typed it (without authenitcation)
* @param aString string to be transmitted to terminal
*/
NS_IMETHOD SendTextAux(const nsString& aString) = 0;
/** Writes string to terminal as if the user had typed it (command input)
* @param aString string to be transmitted to terminal
* @param aCookie document.cookie string for authentication
*/
NS_IMETHOD SendText(const nsString& aString, const PRUnichar* aCookie) = 0;
/** Paste data from clipboard into XMLterm at current input line cursor location
*/
NS_IMETHOD Paste() = 0;
/** Gets document associated with XMLterm
* @param aDoc (output) DOM document
*/
NS_IMETHOD GetDocument(nsIDOMDocument** aDoc) = 0;
/** Gets presentation shell with XMLterm
* @param aPresShell (output) presentation shell
*/
NS_IMETHOD GetPresShell(nsIPresShell** aPresShell) = 0;
};
#define MOZXMLTERMINAL_CID \
{ /* 0eb82b21-43a2-11d3-8e76-006008948af5 */ \
0x0eb82b21, 0x43a2, 0x11d3, \
{0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5} }
extern nsresult
NS_NewXMLTerminal(mozIXMLTerminal** aXMLTerminal);
#endif /* mozIXMLTerminal_h___ */

View File

@@ -0,0 +1,681 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozLineTerm.cpp: class implementing mozILineTerm/mozILineTermAux interfaces,
// providing an XPCOM/XPCONNECT wrapper for the LINETERM module
#include "stdio.h"
#include "nspr.h"
#include "nscore.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "prlog.h"
#include "nsIAllocator.h"
#include "nsIServiceManager.h"
#include "nsIPref.h"
#include "nsIPrincipal.h"
#include "nsIDocument.h"
#include "nsIDOMHTMLDocument.h"
#include "mozXMLT.h"
#include "mozXMLTermUtils.h"
#include "mozLineTerm.h"
#include "lineterm.h"
#define MAXCOL 4096 // Maximum columns in line buffer
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_CID(kPrefServiceCID, NS_PREF_CID);
static NS_DEFINE_IID(kILineTermIID, MOZILINETERM_IID);
static NS_DEFINE_IID(kILineTermAuxIID, MOZILINETERMAUX_IID);
static NS_DEFINE_IID(kLineTermCID, MOZLINETERM_CID);
/////////////////////////////////////////////////////////////////////////
// mozLineTerm, mozLineTermAux factories
/////////////////////////////////////////////////////////////////////////
nsresult
NS_NewLineTerm(mozILineTerm** aLineTerm)
{
NS_PRECONDITION(aLineTerm != nsnull, "null ptr");
if (! aLineTerm)
return NS_ERROR_NULL_POINTER;
*aLineTerm = new mozLineTerm();
if (! *aLineTerm)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aLineTerm);
return NS_OK;
}
nsresult
NS_NewLineTermAux(mozILineTermAux** aLineTermAux)
{
NS_PRECONDITION(aLineTermAux != nsnull, "null ptr");
if (! aLineTermAux)
return NS_ERROR_NULL_POINTER;
*aLineTermAux = new mozLineTerm();
if (! *aLineTermAux)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aLineTermAux);
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozLineTerm implementaion
/////////////////////////////////////////////////////////////////////////
PRBool mozLineTerm::mLoggingEnabled = false;
mozLineTerm::mozLineTerm() :
mCursorRow(0),
mCursorColumn(0),
mSuspended(false),
mEchoFlag(true),
mObserver(nsnull),
mCookie(""),
mLastTime(LL_ZERO)
{
NS_INIT_REFCNT();
mLTerm = lterm_new();
}
mozLineTerm::~mozLineTerm()
{
lterm_delete(mLTerm);
mObserver = nsnull;
}
// Implement AddRef and Release
NS_IMPL_ADDREF(mozLineTerm)
NS_IMPL_RELEASE(mozLineTerm)
NS_IMETHODIMP
mozLineTerm::QueryInterface(REFNSIID aIID,void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
//XMLT_LOG(mozLineTerm::QueryInterface,30,("0x%x\n",aIID));
if ( aIID.Equals(kISupportsIID)) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(mozILineTermAux*,this));
} else if ( aIID.Equals(mozILineTerm::GetIID()) ) {
*aInstancePtr = NS_STATIC_CAST(mozILineTerm*,
NS_STATIC_CAST(mozILineTermAux*,this));
} else if ( aIID.Equals(mozILineTermAux::GetIID()) ) {
*aInstancePtr = NS_STATIC_CAST(mozILineTermAux*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
/** Checks if preference settings are secure for LineTerm creation and use
*/
NS_IMETHODIMP mozLineTerm::ArePrefsSecure(PRBool *_retval)
{
nsresult result;
XMLT_LOG(mozLineTerm::ArePrefsSecure,30,("\n"));
if (!_retval)
return NS_ERROR_FAILURE;
*_retval = false;
nsIPref* prefService;
nsServiceManager::GetService(kPrefServiceCID, NS_GET_IID(nsIPref),
(nsISupports**) &prefService);
if (!prefService)
return NS_ERROR_FAILURE;
// Check if Components JS object is secure
PRBool checkXPC;
result = prefService->GetBoolPref("security.checkxpconnect", &checkXPC);
if (NS_FAILED(result))
return NS_ERROR_FAILURE;
if (!checkXPC) {
XMLT_ERROR("mozLineTerm::ArePrefsSecure: Error - Please add the line\n"
" pref(\"security.checkxpcconnect\",true);\n"
"to your preferences file (.mozilla/prefs.js)\n");
*_retval = false;
#if 0 // Temporarily comented out
return NS_OK;
#endif
}
nsCAutoString secString ("security.policy.");
/* Get global policy name. */
char *policyStr;
result = prefService->CopyCharPref("javascript.security_policy", &policyStr);
if (NS_SUCCEEDED(result) && policyStr) {
secString.Append(policyStr);
nsAllocator::Free(policyStr);
} else {
secString.Append("default");
}
secString.Append(".htmldocument.cookie");
char* prefStr = secString.ToNewCString();
XMLT_LOG(mozLineTerm::ArePrefsSecure,32, ("prefStr=%s\n", prefStr));
char *secLevelString;
result = prefService->CopyCharPref(prefStr, &secLevelString);
nsAllocator::Free(prefStr);
if (NS_FAILED(result) || !secLevelString)
return NS_ERROR_FAILURE;
XMLT_LOG(mozLineTerm::ArePrefsSecure,32,
("secLevelString=%s\n", secLevelString));
*_retval = (PL_strcmp(secLevelString, "sameOrigin") == 0);
nsAllocator::Free(secLevelString);
if (!(*_retval)) {
XMLT_ERROR("mozLineTerm::ArePrefsSecure: Error - Please add the line\n"
" pref(\"security.policy.default.htmldocument.cookie\",\"sameOrigin\");\n"
"to your preferences file (.mozilla/prefs.js)\n");
}
return NS_OK;
}
/** Checks document principal to ensure it has LineTerm creation privileges.
* Returns the principal string if the principal is secure,
* and a (zero length) null string if the principal is insecure.
*/
NS_IMETHODIMP mozLineTerm::GetSecurePrincipal(nsIDOMDocument *domDoc,
char** aPrincipalStr)
{
XMLT_LOG(mozLineTerm::GetSecurePrincipal,30,("\n"));
if (!aPrincipalStr)
return NS_ERROR_FAILURE;
*aPrincipalStr = nsnull;
// Get principal string
nsCOMPtr<nsIDocument> doc = do_QueryInterface(domDoc);
if (!doc)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIPrincipal> principal=dont_AddRef(doc->GetDocumentPrincipal());
#if 0 // Temporarily comented out, because ToString is not immplemented
result = principal->ToString(aPrincipalStr);
if (NS_FAILED(result) || !*aPrincipalStr)
return NS_ERROR_FAILURE;
#else
const char temStr[] = "unknown";
PRInt32 temLen = strlen(temStr);
*aPrincipalStr = strncpy((char*) nsAllocator::Alloc(temLen+1),
temStr, temLen+1);
#endif
XMLT_LOG(mozLineTerm::GetSecurePrincipal,32,("aPrincipalStr=%s\n",
*aPrincipalStr));
// Check if principal is secure
PRBool insecure = false;
if (insecure) {
// Return null string
XMLT_ERROR("mozLineTerm::GetSecurePrincipal: Error - "
"Insecure document principal %s\n", *aPrincipalStr);
nsAllocator::Free(*aPrincipalStr);
*aPrincipalStr = (char*) nsAllocator::Alloc(1);
**aPrincipalStr = '\0';
}
return NS_OK;
}
/** Open LineTerm without callback
*/
NS_IMETHODIMP mozLineTerm::Open(const PRUnichar *command,
const PRUnichar *promptRegexp,
PRInt32 options, PRInt32 processType,
nsIDOMDocument *domDoc)
{
if (mSuspended) {
XMLT_ERROR("mozLineTerm::Open: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
nsAutoString aCookie;
return OpenAux(command, promptRegexp, options, processType, domDoc,
nsnull, aCookie);
}
/** Open LineTerm, with an Observer for callback to process new input/output
*/
NS_IMETHODIMP mozLineTerm::OpenAux(const PRUnichar *command,
const PRUnichar *promptRegexp,
PRInt32 options, PRInt32 processType,
nsIDOMDocument *domDoc,
nsIObserver* anObserver,
nsString& aCookie)
{
nsresult result;
XMLT_LOG(mozLineTerm::Open,20,("\n"));
// Ensure that preferences are secure for LineTerm creation and use
PRBool arePrefsSecure;
result = ArePrefsSecure(&arePrefsSecure);
#if 0 // Temporarily comented out
if (NS_FAILED(result) || !arePrefsSecure)
return NS_ERROR_FAILURE;
#endif
// Ensure that document principal is secure for LineTerm creation
char* securePrincipal;
result = GetSecurePrincipal(domDoc, &securePrincipal);
if (NS_FAILED(result))
return NS_ERROR_FAILURE;
if (strlen(securePrincipal) == 0) {
nsAllocator::Free(securePrincipal);
XMLT_ERROR("mozLineTerm::OpenAux: Error - "
"Failed to create LineTerm for insecure document principal\n");
return NS_ERROR_FAILURE;
}
nsCOMPtr<nsIDOMHTMLDocument> domHTMLDoc = do_QueryInterface(domDoc);
if (!domHTMLDoc)
return NS_ERROR_FAILURE;
// Ensure that cookie attribute of document is defined
nsAutoString cookiePrefix ( "xmlterm=" );
nsAutoString cookieStr;
result = domHTMLDoc->GetCookie(cookieStr);
if (NS_SUCCEEDED(result) &&
(cookieStr.Length() > cookiePrefix.Length()) &&
(cookieStr.Find(cookiePrefix) == 0)) {
// Cookie value already defined for document; simply copy it
mCookie = cookieStr;
} else {
// Create random session cookie
nsAutoString cookieValue;
result = mozXMLTermUtils::RandomCookie(cookieValue);
if (NS_FAILED(result))
return result;
mCookie = cookiePrefix;
mCookie += cookieValue;
// Set new cookie value
result = domHTMLDoc->SetCookie(mCookie);
if (NS_FAILED(result))
return result;
}
// Return copy of cookie to caller
aCookie = mCookie;
mObserver = anObserver; // non-owning reference
// Convert cookie to CString
char* cookieCStr = mCookie.ToNewCString();
XMLT_LOG(mozLineTerm::Open,22, ("mCookie=%s\n", cookieCStr));
if (anObserver != nsnull) {
result = lterm_open(mLTerm, NULL, cookieCStr, L"#$%>?", options,
processType, mozLineTerm::Callback, (void *) this);
} else {
result = lterm_open(mLTerm, NULL, cookieCStr, L"#$%>?", options,
processType, NULL, NULL);
}
// Free cookie CString
nsAllocator::Free(cookieCStr);
if (mLoggingEnabled) {
// Log time stamp for LineTerm open operation
nsAutoString timeStamp;
result = mozXMLTermUtils::TimeStamp(0, mLastTime, timeStamp);
if (NS_SUCCEEDED(result)) {
char* temStr = timeStamp.ToNewCString();
fprintf(stderr, "<TS %s> LineTerm %d opened by principal %s\n",
temStr, mLTerm, securePrincipal);
nsAllocator::Free(temStr);
}
}
if (result == 0) {
return NS_OK;
} else {
return NS_ERROR_FAILURE;
}
}
/** GTK-style callback funtion for mozLineTerm object
*/
void mozLineTerm::Callback(gpointer data,
gint source,
GdkInputCondition condition)
{
mozLineTerm* lineTerm = (mozLineTerm*) data;
//XMLT_LOG(mozLineTerm::Callback,50,("\n"));
PR_ASSERT(lineTerm != nsnull);
PR_ASSERT(lineTerm->mObserver != nsnull);
lineTerm->mObserver->Observe((nsISupports*) lineTerm, nsnull, nsnull);
return;
}
/** Suspends (or restores) LineTerm activity depending upon aSuspend
*/
NS_IMETHODIMP mozLineTerm::SuspendAux(PRBool aSuspend)
{
mSuspended = aSuspend;
return NS_OK;
}
/** Close LineTerm (a Finalize method)
*/
NS_IMETHODIMP mozLineTerm::Close(const PRUnichar* aCookie)
{
if (!mCookie.Equals(aCookie)) {
XMLT_ERROR("mozLineTerm::Close: Error - Cookie mismatch\n");
return NS_ERROR_FAILURE;
}
if (mSuspended) {
XMLT_ERROR("mozLineTerm::Close: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
if (lterm_close(mLTerm) == 0) {
return NS_OK;
} else {
return NS_ERROR_FAILURE;
}
mObserver = nsnull;
}
/** Close LineTerm (a Finalize method)
*/
NS_IMETHODIMP mozLineTerm::CloseAux(void)
{
if (lterm_close(mLTerm) == 0) {
return NS_OK;
} else {
return NS_ERROR_FAILURE;
}
mObserver = nsnull;
}
/** Close all LineTerm instances
*/
NS_IMETHODIMP mozLineTerm::CloseAllAux(void)
{
lterm_close_all();
return NS_OK;
}
/** Writes a string to LTERM
*/
NS_IMETHODIMP mozLineTerm::Write(const PRUnichar *buf,
const PRUnichar* aCookie)
{
if (!mCookie.Equals(aCookie)) {
XMLT_ERROR("mozLineTerm::Write: Error - Cookie mismatch\n");
return NS_ERROR_FAILURE;
}
if (mSuspended) {
XMLT_ERROR("mozLineTerm::Write: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
XMLT_LOG(mozLineTerm::Write,30,("\n"));
nsresult result;
UNICHAR ubuf[MAXCOL];
int jLen, retCode;
PRBool newline = false;
jLen = 0;
while ((jLen < MAXCOL-1) && (buf[jLen] != 0)) {
if (buf[jLen] == U_LINEFEED)
newline = true;
ubuf[jLen++] = (UNICHAR) buf[jLen];
}
if (jLen >= MAXCOL-1) {
XMLT_ERROR("mozLineTerm::Write: Error - Buffer overflow\n");
return NS_ERROR_FAILURE;
}
if (mLoggingEnabled && (jLen > 0)) {
/* Log all input to STDERR */
ucsprint(stderr, ubuf, jLen);
nsAutoString timeStamp;
result = mozXMLTermUtils::TimeStamp(60, mLastTime, timeStamp);
if (NS_SUCCEEDED(result) && (timeStamp.Length() > 0)) {
char* temStr = timeStamp.ToNewCString();
fprintf(stderr, "<TS %s>\n", temStr);
nsAllocator::Free(temStr);
} else if (newline) {
fprintf(stderr, "\n");
}
}
retCode = lterm_write(mLTerm, ubuf, jLen, LTERM_WRITE_PLAIN_INPUT);
if (retCode < 0)
return NS_ERROR_FAILURE;
return NS_OK;
}
NS_IMETHODIMP mozLineTerm::Read(PRInt32 *opcodes,
PRInt32 *buf_row, PRInt32 *buf_col,
const PRUnichar* aCookie,
PRUnichar **_retval)
{
if (!mCookie.Equals(aCookie)) {
XMLT_ERROR("mozLineTerm::Read: Error - Cookie mismatch\n");
return NS_ERROR_FAILURE;
}
if (mSuspended) {
XMLT_ERROR("mozLineTerm::Read: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
return ReadAux(opcodes, buf_row, buf_col, _retval, nsnull);
}
/** Reads a line from LTERM and returns it as a string (may be null string)
*/
NS_IMETHODIMP mozLineTerm::ReadAux(PRInt32 *opcodes,
PRInt32 *buf_row, PRInt32 *buf_col,
PRUnichar **_retval, PRUnichar **retstyle)
{
UNICHAR ubuf[MAXCOL];
UNISTYLE ustyle[MAXCOL];
int cursor_row, cursor_col;
int retCode, j;
XMLT_LOG(mozLineTerm::ReadAux,30,("\n"));
retCode = lterm_read(mLTerm, 0, ubuf, MAXCOL-1,
ustyle, opcodes,
buf_row, buf_col, &cursor_row, &cursor_col);
if (retCode < 0)
return NS_ERROR_FAILURE;
if (*opcodes == 0) {
// Return null pointer(s)
*_retval = nsnull;
if (retstyle != nsnull)
*retstyle = nsnull;
} else {
// Return output string
mCursorRow = cursor_row;
mCursorColumn = cursor_col;
XMLT_LOG(mozLineTerm::Read,72,("cursor_col=%d\n", cursor_col));
int allocBytes = sizeof(PRUnichar)*(retCode + 1);
*_retval = (PRUnichar*) nsAllocator::Alloc(allocBytes);
for (j=0; j<retCode; j++)
(*_retval)[j] = (PRUnichar) ubuf[j];
// Insert null string terminator
(*_retval)[retCode] = 0;
if (retstyle != nsnull) {
// Return style array as well
*retstyle = (PRUnichar*) nsAllocator::Alloc(allocBytes);
for (j=0; j<retCode; j++)
(*retstyle)[j] = (PRUnichar) ustyle[j];
// Insert null string terminator
(*retstyle)[retCode] = 0;
}
}
return NS_OK;
}
NS_IMETHODIMP mozLineTerm::GetCursorRow(PRInt32 *aCursorRow)
{
*aCursorRow = mCursorRow;
return NS_OK;
}
NS_IMETHODIMP mozLineTerm::SetCursorRow(PRInt32 aCursorRow)
{
if (mSuspended) {
XMLT_ERROR("mozLineTerm::SetCursorRow: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
return NS_OK; // Do nothing for the moment
}
NS_IMETHODIMP mozLineTerm::GetCursorColumn(PRInt32 *aCursorColumn)
{
*aCursorColumn = mCursorColumn;
return NS_OK;
}
NS_IMETHODIMP mozLineTerm::SetCursorColumn(PRInt32 aCursorColumn)
{
if (mSuspended) {
XMLT_ERROR("mozLineTerm::SetCursorColumn: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
return NS_OK; // Do nothing for the moment
}
NS_IMETHODIMP mozLineTerm::GetEchoFlag(PRBool *aEchoFlag)
{
*aEchoFlag = mEchoFlag;
return NS_OK;
}
NS_IMETHODIMP mozLineTerm::SetEchoFlag(PRBool aEchoFlag)
{
int result;
if (mSuspended) {
XMLT_ERROR("mozLineTerm::SetEchoFlag: Error - LineTerm %d is suspended\n",
mLTerm);
return NS_ERROR_FAILURE;
}
if (aEchoFlag) {
result = lterm_setecho(mLTerm, 1);
} else {
result = lterm_setecho(mLTerm, 0);
}
if (result != 0)
return NS_ERROR_FAILURE;
mEchoFlag = aEchoFlag;
return NS_OK;
}

View File

@@ -0,0 +1,139 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozLineTerm.h: Declaration of mozLineTerm class
// which implements the LineTerm and LineTermAux interfaces.
// and provides an XPCOM/XPCONNECT wrapper to the LINETERM module
#include "nspr.h"
#include "nscore.h"
#include "nsString.h"
#include "nsIServiceManager.h"
#include "nsIDocument.h"
#include "nsIDOMHTMLDocument.h"
#include "mozILineTermAux.h"
#define MAXCOL 4096 // Maximum columns in line buffer
class mozLineTerm : public mozILineTermAux
{
public:
mozLineTerm();
virtual ~mozLineTerm();
// nsISupports interface
NS_DECL_ISUPPORTS
// mozILineTerm interface
NS_IMETHOD GetCursorRow(PRInt32 *aCursorRow);
NS_IMETHOD SetCursorRow(PRInt32 aCursorRow);
NS_IMETHOD GetCursorColumn(PRInt32 *aCursorColumn);
NS_IMETHOD SetCursorColumn(PRInt32 aCursorColumn);
NS_IMETHOD GetEchoFlag(PRBool *aEchoFlag);
NS_IMETHOD SetEchoFlag(PRBool aEchoFlag);
NS_IMETHOD Open(const PRUnichar *command,
const PRUnichar *promptRegexp,
PRInt32 options, PRInt32 processType,
nsIDOMDocument *domDoc);
NS_IMETHOD Close(const PRUnichar* aCookie);
NS_IMETHOD Write(const PRUnichar *buf, const PRUnichar* aCookie);
NS_IMETHOD Read(PRInt32 *opcodes,
PRInt32 *buf_row, PRInt32 *buf_col,
const PRUnichar* aCookie,
PRUnichar **_retval);
// mozILineTermAux interface add ons
// (not scriptable, no authentication cookie required)
NS_IMETHOD OpenAux(const PRUnichar *command,
const PRUnichar *promptRegexp,
PRInt32 options, PRInt32 processType,
nsIDOMDocument *domDoc,
nsIObserver* anObserver,
nsString& aCookie);
NS_IMETHOD SuspendAux(PRBool aSuspend);
NS_IMETHOD CloseAux(void);
NS_IMETHOD CloseAllAux(void);
NS_IMETHOD ReadAux(PRInt32 *opcodes,
PRInt32 *buf_row, PRInt32 *buf_col,
PRUnichar **_retval, PRUnichar **retstyle);
// others
/** GTK event callback function
*/
static void Callback(gpointer data,
gint source,
GdkInputCondition condition);
/** Flag controlling logging of user input to STDERR */
static PRBool mLoggingEnabled;
protected:
/** Checks if Mozilla preference settings are secure
* @param _retval (output) true if settings are secure
*/
NS_IMETHOD ArePrefsSecure(PRBool *_retval);
/** Checks if document principal is secure and returns principal string
* @param domDOC DOM document object
* @param aPrincipalStr (output) document principal string
*/
NS_IMETHOD GetSecurePrincipal(nsIDOMDocument *domDoc,
char** aPrincipalStr);
/** lineterm descriptor index returned by lterm_new (>= 0) */
int mLTerm;
/** current cursor row position */
int mCursorRow;
/** current cursor column position */
int mCursorColumn;
/** flag controlling whether is LineTerm is suspended */
PRBool mSuspended;
/** flag controlling input echo in LineTerm */
PRBool mEchoFlag;
/** non-owning reference to Observer to be notified when data is available
* for reading from LineTerm
*/
nsIObserver* mObserver;
/** cookie string used for authentication (stored in document.cookie) */
nsString mCookie;
/** record of last time when timestamp was displayed in user input log */
PRTime mLastTime;
};

View File

@@ -0,0 +1,67 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLT.h: XMLTerm common header
#ifndef _MOZXMLT_H
#define _MOZXMLT_H 1
// Standard C header files
#ifndef _STRING_H
#include <string.h>
#endif
// public declarations
#include "lineterm.h"
#include "tracelog.h"
// private declarations
#define XMLT_TLOG_MODULE 2
#define XMLT_ERROR TLOG_ERROR
#define XMLT_WARNING TLOG_WARNING
#define XMLT_LOG(procname,level,args) TLOG_PRINT(XMLT_TLOG_MODULE,procname,level,args)
// Tracing versions of NS_IMPL_ADDREF and NS_IMPL_RELEASE
#define XMLT_IMPL_ADDREF(_class) \
NS_IMETHODIMP_(nsrefcnt) _class::AddRef(void) \
{ \
NS_PRECONDITION(PRInt32(mRefCnt) >= 0, "illegal refcnt"); \
++mRefCnt; \
XMLT_WARNING(#_class ":AddRef, mRefCnt=%d\n", mRefCnt); \
return mRefCnt; \
}
#define XMLT_IMPL_RELEASE(_class) \
NS_IMETHODIMP_(nsrefcnt) _class::Release(void) \
{ \
NS_PRECONDITION(0 != mRefCnt, "dup release"); \
--mRefCnt; \
XMLT_WARNING(#_class ":Release, mRefCnt=%d\n", mRefCnt); \
if (mRefCnt == 0) { \
NS_DELETEXPCOM(this); \
return 0; \
} \
return mRefCnt; \
}
#endif /* _MOZXMLT_H */

View File

@@ -0,0 +1,298 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermFactory.cpp: XPCOM factory for mozIXMLTermShell, mozILineTerm
#include "nsCOMPtr.h"
#include "nscore.h"
#include "nspr.h"
#include "nsIComponentManager.h"
#include "nsIServiceManager.h"
#include "nsXPComFactory.h"
#include "mozXMLT.h"
#include "mozLineTerm.h"
#include "mozIXMLTermShell.h"
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIFactoryIID, NS_IFACTORY_IID);
static NS_DEFINE_CID(kComponentManagerCID, NS_COMPONENTMANAGER_CID);
static NS_DEFINE_CID(kXMLTermShellCID, MOZXMLTERMSHELL_CID);
static NS_DEFINE_CID(kLineTermCID, MOZLINETERM_CID);
class XMLTermFactory : public nsIFactory
{
public:
XMLTermFactory(const nsCID &aClass, const char* className, const char* progID);
// nsISupports methods
NS_DECL_ISUPPORTS
// nsIFactory methods
NS_IMETHOD CreateInstance(nsISupports *aOuter,
const nsIID &aIID,
void **aResult);
NS_IMETHOD LockFactory(PRBool aLock);
protected:
virtual ~XMLTermFactory();
protected:
nsCID mClassID;
const char* mClassName;
const char* mProgID;
};
/////////////////////////////////////////////////////////////////////////
// mozXMLTermFactory implementation
/////////////////////////////////////////////////////////////////////////
// Globals, useful to check if safe to unload module
static PRInt32 gLockCnt = 0;
static PRInt32 gInstanceCnt = 0;
XMLTermFactory::XMLTermFactory(const nsCID &aClass,
const char* className,
const char* progID):
mClassID(aClass),
mClassName(className),
mProgID(progID)
{
// Zero reference counter
NS_INIT_REFCNT();
PR_AtomicIncrement(&gInstanceCnt);
}
XMLTermFactory::~XMLTermFactory()
{
NS_ASSERTION(mRefCnt == 0, "non-zero refcnt at destruction");
PR_AtomicDecrement(&gInstanceCnt);
}
NS_IMETHODIMP
XMLTermFactory::QueryInterface(const nsIID &aIID, void **aResult)
{
if (!aResult)
return NS_ERROR_NULL_POINTER;
// Always NULL result, in case of failure
*aResult = nsnull;
if (aIID.Equals(kISupportsIID)) {
*aResult = NS_STATIC_CAST(nsISupports*, this);
} else if (aIID.Equals(kIFactoryIID)) {
*aResult = NS_STATIC_CAST(nsIFactory*, this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
NS_IMPL_ADDREF(XMLTermFactory);
NS_IMPL_RELEASE(XMLTermFactory);
NS_IMETHODIMP
XMLTermFactory::CreateInstance(nsISupports *aOuter,
const nsIID &aIID,
void **aResult)
{
if (!aResult)
return NS_ERROR_NULL_POINTER;
if (aOuter)
return NS_ERROR_NO_AGGREGATION;
*aResult = nsnull;
nsresult rv;
nsISupports *inst = nsnull;
if (mClassID.Equals(kXMLTermShellCID)) {
if (NS_FAILED(rv = NS_NewXMLTermShell((mozIXMLTermShell**) &inst)))
return rv;
} else if (mClassID.Equals(kLineTermCID)) {
if (NS_FAILED(rv = NS_NewLineTerm((mozILineTerm**) &inst)))
return rv;
} else {
return NS_ERROR_NO_INTERFACE;
}
if (! inst)
return NS_ERROR_OUT_OF_MEMORY;
if (NS_FAILED(rv = inst->QueryInterface(aIID, aResult))) {
// We didn't get the right interface.
NS_ERROR("didn't support the interface you wanted");
}
NS_IF_RELEASE(inst);
return rv;
}
NS_IMETHODIMP
XMLTermFactory::LockFactory(PRBool aLock)
{
if (aLock) {
PR_AtomicIncrement(&gLockCnt);
} else {
PR_AtomicDecrement(&gLockCnt);
}
return NS_OK;
}
////////////////////////////////////////////////////////////////////////////
// Exported functions for loading, registering, unregistering, and unloading
////////////////////////////////////////////////////////////////////////////
// Return approptiate factory to the caller
extern "C" NS_EXPORT nsresult
NSGetFactory(nsISupports* aServMgr,
const nsCID &aClass,
const char *aClassName,
const char *aProgID,
nsIFactory **aFactory)
{
static PRBool ltermInitialized = false;
static PRBool xmltermInitialized = false;
if (!ltermInitialized) {
// Initialize all LINETERM operations
// (This initialization needs to be done at factory creation time;
// trying to do it earlier, i.e., at registration time,
// does not work ... something to do with loading of static global
// variables.)
int messageLevel = 8;
char* debugStr = (char*) PR_GetEnv("LTERM_DEBUG");
if (debugStr && (strlen(debugStr) == 1)) {
messageLevel = 98;
debugStr = nsnull;
}
int result = lterm_init(0);
if (result == 0) {
tlog_set_level(LTERM_TLOG_MODULE, messageLevel, debugStr);
}
ltermInitialized = true;
char* logStr = (char*) PR_GetEnv("LTERM_LOG");
if (logStr && (strlen(logStr) > 0)) {
// Enable LineTerm logging
mozLineTerm::mLoggingEnabled = true;
}
}
if (aClass.Equals(kXMLTermShellCID) && !xmltermInitialized) {
// Set initial debugging message level for XMLterm
int messageLevel = 8;
char* debugStr = (char*) PR_GetEnv("XMLT_DEBUG");
if (debugStr && (strlen(debugStr) == 1)) {
messageLevel = 98;
debugStr = nsnull;
}
tlog_set_level(XMLT_TLOG_MODULE, messageLevel, debugStr);
xmltermInitialized = true;
}
if (!aFactory)
return NS_ERROR_NULL_POINTER;
*aFactory = nsnull;
XMLTermFactory* factory = new XMLTermFactory(aClass, aClassName,
aProgID);
if (factory == nsnull)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(factory);
*aFactory = factory;
return NS_OK;
}
extern "C" NS_EXPORT nsresult
NSRegisterSelf(nsISupports* aServMgr , const char* aPath)
{
nsresult result;
nsCOMPtr<nsIServiceManager> servMgr(do_QueryInterface(aServMgr, &result));
if (NS_FAILED(result)) return result;
NS_WITH_SERVICE(nsIComponentManager, compMgr, kComponentManagerCID, &result);
if (NS_FAILED(result)) return result;
printf("Registering lineterm interface\n");
result = compMgr->RegisterComponent(kLineTermCID,
"LineTerm Component",
"component://mozilla/xmlterm/lineterm",
aPath, PR_TRUE, PR_TRUE);
if (NS_FAILED(result)) return result;
printf("Registering xmlterm shell interface\n");
result = compMgr->RegisterComponent(kXMLTermShellCID,
"XMLTerm Shell Component",
"component://mozilla/xmlterm/xmltermshell",
aPath, PR_TRUE, PR_TRUE);
if (NS_FAILED(result)) return result;
return NS_OK;
}
extern "C" NS_EXPORT nsresult
NSUnregisterSelf(nsISupports* aServMgr, const char* aPath)
{
nsresult result;
nsCOMPtr<nsIServiceManager> servMgr(do_QueryInterface(aServMgr, &result));
if (NS_FAILED(result)) return result;
NS_WITH_SERVICE(nsIComponentManager, compMgr, kComponentManagerCID, &result);
if (NS_FAILED(result)) return result;
result = compMgr->UnregisterComponent(kLineTermCID, aPath);
if (NS_FAILED(result)) return result;
result = compMgr->UnregisterComponent(kXMLTermShellCID, aPath);
if (NS_FAILED(result)) return result;
return NS_OK;
}

View File

@@ -0,0 +1,604 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermListeners.cpp: implementation of classes in mozXMLTermListeners.h
#include "nsIServiceManager.h"
#include "mozXMLT.h"
#include "mozXMLTermListeners.h"
#include "nsIDOMKeyEvent.h"
#include "nsIDOMMouseEvent.h"
#include "nsIDOMNSUIEvent.h"
#include "nsIPrivateTextEvent.h"
/////////////////////////////////////////////////////////////////////////
// mozXMLTermKeyListener factory
/////////////////////////////////////////////////////////////////////////
nsresult
NS_NewXMLTermKeyListener(nsIDOMEventListener ** aInstancePtrResult,
mozIXMLTerminal *aXMLTerminal)
{
mozXMLTermKeyListener* listener = new mozXMLTermKeyListener();
if (listener == nsnull) {
return NS_ERROR_OUT_OF_MEMORY;
}
// Save non-owning reference to embedding XMLTerminal object
listener->SetXMLTerminal(aXMLTerminal);
return listener->QueryInterface(nsIDOMEventListener::GetIID(),
(void **) aInstancePtrResult);
}
nsresult
NS_NewXMLTermTextListener(nsIDOMEventListener ** aInstancePtrResult,
mozIXMLTerminal *aXMLTerminal)
{
mozXMLTermTextListener* listener = new mozXMLTermTextListener();
if (listener == nsnull) {
return NS_ERROR_OUT_OF_MEMORY;
}
// Save non-owning reference to embedding XMLTerminal object
listener->SetXMLTerminal(aXMLTerminal);
return listener->QueryInterface(nsIDOMEventListener::GetIID(),
(void **) aInstancePtrResult);
}
nsresult
NS_NewXMLTermMouseListener(nsIDOMEventListener ** aInstancePtrResult,
mozIXMLTerminal *aXMLTerminal)
{
mozXMLTermMouseListener* listener = new mozXMLTermMouseListener();
if (listener == nsnull) {
return NS_ERROR_OUT_OF_MEMORY;
}
// Save non-owning reference to embedding XMLTerminal object
listener->SetXMLTerminal(aXMLTerminal);
return listener->QueryInterface(nsIDOMEventListener::GetIID(),
(void **) aInstancePtrResult);
}
nsresult
NS_NewXMLTermDragListener(nsIDOMEventListener ** aInstancePtrResult,
mozIXMLTerminal *aXMLTerminal)
{
mozXMLTermDragListener* listener = new mozXMLTermDragListener();
if (listener == nsnull) {
return NS_ERROR_OUT_OF_MEMORY;
}
// Save non-owning reference to embedding XMLTerminal object
listener->SetXMLTerminal(aXMLTerminal);
return listener->QueryInterface(nsIDOMEventListener::GetIID(),
(void **) aInstancePtrResult);
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTermKeyListener implementation
/////////////////////////////////////////////////////////////////////////
mozXMLTermKeyListener::mozXMLTermKeyListener()
{
NS_INIT_REFCNT();
}
mozXMLTermKeyListener::~mozXMLTermKeyListener()
{
}
NS_IMPL_ADDREF(mozXMLTermKeyListener)
NS_IMPL_RELEASE(mozXMLTermKeyListener)
NS_IMETHODIMP
mozXMLTermKeyListener::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if (aIID.Equals(nsCOMTypeInfo<nsISupports>::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(nsIDOMKeyListener*,this));
} else if (aIID.Equals(nsIDOMEventListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMEventListener*,this);
} else if (aIID.Equals(nsIDOMKeyListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMKeyListener*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
// Individual key handlers return NS_OK to indicate NOT consumed
// by default, an error is returned indicating event is consumed
NS_IMETHODIMP
mozXMLTermKeyListener::HandleEvent(nsIDOMEvent* aEvent)
{
return NS_OK;
}
// Process KeyDown events (handles control/alt modified key events)
NS_IMETHODIMP
mozXMLTermKeyListener::KeyDown(nsIDOMEvent* aKeyEvent)
{
nsresult result;
nsCOMPtr<nsIDOMKeyEvent> keyEvent;
keyEvent = do_QueryInterface(aKeyEvent);
if (!keyEvent) {
// Non-key event passed to keydown, do not consume it
return NS_OK;
}
PRBool isShift, ctrlKey, altKey;
PRUint32 keyCode;
XMLT_LOG(mozXMLTermKeyListener::KeyDown,50,("\n"));
if (NS_SUCCEEDED(keyEvent->GetKeyCode(&keyCode)) &&
NS_SUCCEEDED(keyEvent->GetShiftKey(&isShift)) &&
NS_SUCCEEDED(keyEvent->GetCtrlKey(&ctrlKey)) &&
NS_SUCCEEDED(keyEvent->GetAltKey(&altKey)) ) {
XMLT_LOG(mozXMLTermKeyListener::KeyDown,52,
("keyCode=0x%x, ctrlKey=%d, altKey=%d\n", keyCode, ctrlKey, altKey));
PRUint32 keyChar = 0;
if (!ctrlKey && !altKey) {
// Not control/alt key event
switch (keyCode) {
case nsIDOMKeyEvent::DOM_VK_LEFT:
keyChar = U_CTL_B;
break;
case nsIDOMKeyEvent::DOM_VK_RIGHT:
keyChar = U_CTL_F;
break;
case nsIDOMKeyEvent::DOM_VK_UP:
keyChar = U_CTL_P;
break;
case nsIDOMKeyEvent::DOM_VK_DOWN:
keyChar = U_CTL_N;
break;
case nsIDOMKeyEvent::DOM_VK_TAB: // Consume TAB to avoid scroll problems
keyChar = 0;
break;
default: // ignore event without consuming
return NS_OK;
}
} else if (ctrlKey == PR_TRUE) {
keyChar = keyCode - 0x40U; // Is this portable?
}
XMLT_LOG(mozXMLTermKeyListener::KeyDown,52,("keyChar=0x%x\n", keyChar));
if ((keyChar > 0) && (keyChar < U_SPACE)) {
// Transmit valid non-null control character
const PRUnichar temUString[] = {keyChar,0};
nsAutoString keyString(temUString);
result = mXMLTerminal->SendTextAux(keyString);
}
}
// Consume key down event
return NS_ERROR_BASE;
}
NS_IMETHODIMP
mozXMLTermKeyListener::KeyUp(nsIDOMEvent* aKeyEvent)
{
return NS_OK;
}
// Handle KeyPress events (non control/alt modified key events)
NS_IMETHODIMP
mozXMLTermKeyListener::KeyPress(nsIDOMEvent* aKeyEvent)
{
nsresult result;
XMLT_LOG(mozXMLTermKeyListener::KeyPress,50,("\n"));
nsCOMPtr<nsIDOMKeyEvent> keyEvent;
keyEvent = do_QueryInterface(aKeyEvent);
if (!keyEvent) {
// Non-key event passed to keydown, do not consume it
return NS_OK;
}
PRUint32 keyCode;
PRBool isShift, ctrlKey, altKey;
if (NS_SUCCEEDED(keyEvent->GetKeyCode(&keyCode)) &&
NS_SUCCEEDED(keyEvent->GetShiftKey(&isShift)) &&
NS_SUCCEEDED(keyEvent->GetCtrlKey(&ctrlKey)) &&
NS_SUCCEEDED(keyEvent->GetAltKey(&altKey)) ) {
PRUint32 keyChar = 0;
result = keyEvent->GetCharCode(&keyChar);
XMLT_LOG(mozXMLTermKeyListener::KeyPress,52,
("keyChar=0x%x, ctrlKey=%d, altKey=%d\n", keyChar, ctrlKey, altKey));
if (ctrlKey == PR_TRUE) {
// Do nothing for Ctrl-Alt key events; just consume then
if (altKey == PR_FALSE) {
// Control character, without Alt
if ((keyChar > 0) && (keyChar < U_SPACE)) {
// Transmit valid non-null control character
const PRUnichar temUString[] = {keyChar,0};
nsAutoString keyString(temUString);
result = mXMLTerminal->SendTextAux(keyString);
}
}
} else {
// Unmodified key event (including TAB/BACKSPACE/RETURN/LINEFEED)
if (keyChar == 0) {
// Key that hasn't been mapped to a character code
switch (keyCode) {
case nsIDOMKeyEvent::DOM_VK_BACK_SPACE:
case nsIDOMKeyEvent::DOM_VK_DELETE:
keyChar = U_BACKSPACE;
break;
case nsIDOMKeyEvent::DOM_VK_TAB:
keyChar = U_TAB;
break;
case nsIDOMKeyEvent::DOM_VK_RETURN:
keyChar = U_LINEFEED;
break;
default: // ignore event without consuming
return NS_OK;
}
}
// Translate Carriage Return to LineFeed (may not be portable??)
if (keyChar == U_CRETURN) keyChar = U_LINEFEED;
if ((keyChar > 0) && (keyChar <= 0xFFFDU)) {
// Transmit valid non-null Unicode character
const PRUnichar temUString[] = {keyChar,0};
nsAutoString keyString(temUString);
result = mXMLTerminal->SendTextAux(keyString);
}
}
}
// Consume key press event
return NS_ERROR_BASE;
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTermTextListener implementation
/////////////////////////////////////////////////////////////////////////
mozXMLTermTextListener::mozXMLTermTextListener()
{
NS_INIT_REFCNT();
}
mozXMLTermTextListener::~mozXMLTermTextListener()
{
}
NS_IMPL_ADDREF(mozXMLTermTextListener)
NS_IMPL_RELEASE(mozXMLTermTextListener)
NS_IMETHODIMP
mozXMLTermTextListener::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if (aIID.Equals(nsCOMTypeInfo<nsISupports>::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(nsIDOMTextListener*,this));
} else if (aIID.Equals(nsIDOMEventListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMEventListener*,this);
} else if (aIID.Equals(nsIDOMTextListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMTextListener*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermTextListener::HandleEvent(nsIDOMEvent* aEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermTextListener::HandleText(nsIDOMEvent* aTextEvent)
{
nsCOMPtr<nsIPrivateTextEvent> textEvent (do_QueryInterface(aTextEvent));
if (!textEvent) {
// Soft failure
return NS_OK;
}
XMLT_LOG(mozXMLTermTextListener::HandleText,50,("\n"));
nsAutoString textStr;
textEvent->GetText(textStr);
// Transmit text to terminal
mXMLTerminal->SendTextAux(textStr);
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTermMouseListener implementation
/////////////////////////////////////////////////////////////////////////
mozXMLTermMouseListener::mozXMLTermMouseListener()
{
NS_INIT_REFCNT();
}
mozXMLTermMouseListener::~mozXMLTermMouseListener()
{
}
NS_IMPL_ADDREF(mozXMLTermMouseListener)
NS_IMPL_RELEASE(mozXMLTermMouseListener)
NS_IMETHODIMP
mozXMLTermMouseListener::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if (aIID.Equals(nsCOMTypeInfo<nsISupports>::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(nsIDOMMouseListener*,this));
} else if (aIID.Equals(nsIDOMEventListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMEventListener*,this);
} else if (aIID.Equals(nsIDOMMouseListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMMouseListener*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::HandleEvent(nsIDOMEvent* aEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::MouseDown(nsIDOMEvent* aMouseEvent)
{
if (!aMouseEvent)
return NS_OK;
nsCOMPtr<nsIDOMMouseEvent> mouseEvent;
mouseEvent = do_QueryInterface(aMouseEvent);
if (!mouseEvent) {
// Non-mouse event passed; do not consume it
return NS_OK;
}
PRUint16 buttonCode = 0;
mouseEvent->GetButton(&buttonCode);
XMLT_LOG(mozXMLTermMouseListener::MouseDown,50,("buttonCode=%d\n",
buttonCode));
if (buttonCode == 2) {
// Middle-mouse button pressed; initiate paste
mXMLTerminal->Paste();
}
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::MouseUp(nsIDOMEvent* aMouseEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::MouseClick(nsIDOMEvent* aMouseEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::MouseDblClick(nsIDOMEvent* aMouseEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::MouseOver(nsIDOMEvent* aMouseEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermMouseListener::MouseOut(nsIDOMEvent* aMouseEvent)
{
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTermDragListener implementation
/////////////////////////////////////////////////////////////////////////
mozXMLTermDragListener::mozXMLTermDragListener()
{
NS_INIT_REFCNT();
}
mozXMLTermDragListener::~mozXMLTermDragListener()
{
}
NS_IMPL_ADDREF(mozXMLTermDragListener)
NS_IMPL_RELEASE(mozXMLTermDragListener)
NS_IMETHODIMP
mozXMLTermDragListener::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if (aIID.Equals(nsCOMTypeInfo<nsISupports>::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(nsIDOMDragListener*,this));
} else if (aIID.Equals(nsIDOMEventListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMEventListener*,this);
} else if (aIID.Equals(nsIDOMDragListener::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDOMDragListener*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermDragListener::HandleEvent(nsIDOMEvent* aEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermDragListener::DragEnter(nsIDOMEvent* aDragEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermDragListener::DragOver(nsIDOMEvent* aDragEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermDragListener::DragExit(nsIDOMEvent* aDragEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermDragListener::DragDrop(nsIDOMEvent* aDragEvent)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTermDragListener::DragGesture(nsIDOMEvent* aDragEvent)
{
return NS_OK;
}

View File

@@ -0,0 +1,172 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermListeners.h: classes for key/text/mouse/drag event listeners
// used by mozXMLTerminal:
// mozXMLTermKeyListener
// mozXMLTermTextListener
// mozXMLTermMouseListener
// mozXMLTermDragListener
#ifndef mozXMLTermListeners_h__
#define mozXMLTermListeners_h__
#include "nsIDOMEvent.h"
#include "nsIDOMKeyListener.h"
#include "nsIDOMTextListener.h"
#include "nsIDOMMouseListener.h"
#include "nsIDOMDragListener.h"
#include "nsCOMPtr.h"
#include "mozIXMLTerminal.h"
/* XMLTerm Key Listener */
class mozXMLTermKeyListener : public nsIDOMKeyListener {
public:
mozXMLTermKeyListener();
virtual ~mozXMLTermKeyListener();
/** Save non-owning reference to containing XMLTerminal object
* @param aXMLTerminal the XMLTerm instance
*/
void SetXMLTerminal(mozIXMLTerminal *aXMLTerminal)
{mXMLTerminal = aXMLTerminal;}
// Interfaces for addref and release and queryinterface
NS_DECL_ISUPPORTS
// nsIDOMEventListener interface
virtual nsresult HandleEvent(nsIDOMEvent* aEvent);
// nsIDOMKeyListener interface
virtual nsresult KeyDown(nsIDOMEvent* aKeyEvent);
virtual nsresult KeyUp(nsIDOMEvent* aKeyEvent);
virtual nsresult KeyPress(nsIDOMEvent* aKeyEvent);
protected:
/** non-owning reference to containing XMLTerminal object (for callback) */
mozIXMLTerminal* mXMLTerminal;
};
/* XMLTerm Text Listener */
class mozXMLTermTextListener : public nsIDOMTextListener {
public:
mozXMLTermTextListener();
virtual ~mozXMLTermTextListener();
/** Save non-owning reference to containing XMLTerminal object
* @param aXMLTerminal the XMLTerm instance
*/
void SetXMLTerminal(mozIXMLTerminal *aXMLTerminal)
{mXMLTerminal = aXMLTerminal;}
// Interfaces for addref and release and queryinterface
NS_DECL_ISUPPORTS
// nsIDOMEventListener interface
virtual nsresult HandleEvent(nsIDOMEvent* aEvent);
// nsIDOMTextListener interface
virtual nsresult HandleText(nsIDOMEvent* aTextEvent);
protected:
/** non-owning reference to containing XMLTerminal object (for callback) */
mozIXMLTerminal* mXMLTerminal;
};
/* XMLTerm Mouse Listener */
class mozXMLTermMouseListener : public nsIDOMMouseListener {
public:
mozXMLTermMouseListener();
virtual ~mozXMLTermMouseListener();
/** Save non-owning reference to containing XMLTerminal object
* @param aXMLTerminal the XMLTerm instance
*/
void SetXMLTerminal(mozIXMLTerminal *aXMLTerminal)
{mXMLTerminal = aXMLTerminal;}
// Interfaces for addref and release and queryinterface
NS_DECL_ISUPPORTS
// nsIDOMEventListener interface
virtual nsresult HandleEvent(nsIDOMEvent* aEvent);
// nsIDOMMouseListener interface
virtual nsresult MouseDown(nsIDOMEvent* aMouseEvent);
virtual nsresult MouseUp(nsIDOMEvent* aMouseEvent);
virtual nsresult MouseClick(nsIDOMEvent* aMouseEvent);
virtual nsresult MouseDblClick(nsIDOMEvent* aMouseEvent);
virtual nsresult MouseOver(nsIDOMEvent* aMouseEvent);
virtual nsresult MouseOut(nsIDOMEvent* aMouseEvent);
protected:
/** non-owning reference to containing XMLTerminal object (for callback) */
mozIXMLTerminal* mXMLTerminal;
};
/* XMLTerm Drag Listener */
class mozXMLTermDragListener : public nsIDOMDragListener {
public:
mozXMLTermDragListener();
virtual ~mozXMLTermDragListener();
/** Save non-owning reference to containing XMLTerminal object
* @param aXMLTerminal the XMLTerm instance
*/
void SetXMLTerminal(mozIXMLTerminal *aXMLTerminal)
{mXMLTerminal = aXMLTerminal;}
// Interfaces for addref and release and queryinterface
NS_DECL_ISUPPORTS
// nsIDOMEventListener interface
virtual nsresult HandleEvent(nsIDOMEvent* aEvent);
// nsIDOMDragListener interface
virtual nsresult DragEnter(nsIDOMEvent* aDragEvent);
virtual nsresult DragOver(nsIDOMEvent* aDragEvent);
virtual nsresult DragExit(nsIDOMEvent* aDragEvent);
virtual nsresult DragDrop(nsIDOMEvent* aDragEvent);
virtual nsresult DragGesture(nsIDOMEvent* aDragEvent);
protected:
/** non-owning reference to containing XMLTerminal object (for callback) */
mozIXMLTerminal* mXMLTerminal;
};
// Factory for XMLTermKeyListener
extern nsresult NS_NewXMLTermKeyListener(nsIDOMEventListener** aInstancePtrResult, mozIXMLTerminal *aXMLTerminal);
// Factory for XMLTermTextListener
extern nsresult NS_NewXMLTermTextListener(nsIDOMEventListener** aInstancePtrResult, mozIXMLTerminal *aXMLTerminal);
// Factory for XMLTermMouseListener
extern nsresult NS_NewXMLTermMouseListener(nsIDOMEventListener** aInstancePtrResult, mozIXMLTerminal *aXMLTerminal);
// Factory for XMLTermDragListener
extern nsresult NS_NewXMLTermDragListener(nsIDOMEventListener** aInstancePtrResult, mozIXMLTerminal *aXMLTerminal);
#endif //mozXMLTermListeners_h__

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,537 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermSession.h: class to manage session input/output display
// NOTE: This class is getting too unwieldy. It should be modularized,
// using a separate class for entries, for example, once the dust
// settles.
#include "nscore.h"
#include "prlog.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "nsIPresShell.h"
#include "nsIDOMNode.h"
#include "nsIDOMDocument.h"
#include "nsIContent.h"
#include "mozXMLT.h"
#include "mozILineTermAux.h"
#include "mozIXMLTerminal.h"
class mozXMLTermSession
{
public:
mozXMLTermSession();
virtual ~mozXMLTermSession();
/** Initializes XMLterm session
* @param aXMLTerminal containing XMLTerminal object
* @param aPresShell presentation shell associated with XMLterm
* @param aDOMDocument DOM document associated with XMLterm
*/
NS_IMETHOD Init(mozIXMLTerminal* aXMLTerminal,
nsIPresShell* aPresShell,
nsIDOMDocument* aDOMDocument);
/** Finalizes (closes) session
*/
NS_IMETHOD Finalize(void);
/** Preprocesses user input before it is transmitted to LineTerm
* @param aString (inout) input data to be preprocessed
* @param consumed (output) true if input data has been consumed
*/
NS_IMETHOD Preprocess(const nsString& aString, PRBool& consumed);
/** Reads all available data from LineTerm and displays it;
* returns when no more data is available.
* @param lineTermAux LineTermAux object to read data from
*/
NS_IMETHOD ReadAll(mozILineTermAux* lineTermAux);
/** Gets current entry (command) number
* @param aNumber (output) current entry number
*/
NS_IMETHOD GetCurrentEntryNumber(PRInt32 *aNumber);
/** Gets command history buffer count
* @param aHistory (output) history buffer count
*/
NS_IMETHOD GetHistory(PRInt32 *aHistory);
/** Sets command history buffer count
* @param aHistory history buffer count
*/
NS_IMETHOD SetHistory(PRInt32 aHistory);
/** Gets prompt string
* @param aPrompt (output) prompt string
*/
NS_IMETHOD GetPrompt(PRUnichar **aPrompt);
/** Sets prompt string
* @param aPrompt prompt string
*/
NS_IMETHOD SetPrompt(const PRUnichar* aPrompt);
protected:
/** ShellML element type (see ShellML documentation),
* implemented as CLASS attribute of HTML elements
*/
enum SessionElementType {
SESSION_ELEMENT = 0,
ENTRY_ELEMENT,
INPUT_ELEMENT,
OUTPUT_ELEMENT,
PROMPT_ELEMENT,
COMMAND_ELEMENT,
STDIN_ELEMENT,
STDOUT_ELEMENT,
STDERR_ELEMENT,
SESSION_ELEMENT_TYPES
};
/** user-generated input event type */
enum SessionEventType {
CLICK_EVENT = 0,
DBLCLICK_EVENT,
SESSION_EVENT_TYPES
};
/** display style of output */
enum OutputDisplayType {
NO_NODE = 0,
PRE_STDOUT_NODE,
PRE_STDERR_NODE,
SPAN_STDOUT_NODE,
SPAN_STDERR_NODE,
SPAN_MIXED_NODE,
OUTPUT_DISPLAY_TYPES
};
/** markup style of output */
enum OutputMarkupType {
PLAIN_TEXT = 0,
HTML_FRAGMENT,
HTML_DOCUMENT,
XML_DOCUMENT
};
/** settings for automatic markup detection */
enum AutoDetectOption {
NO_MARKUP = 0,
FIRST_LINE,
ANY_LINE
};
/** type of output flush action */
enum FlushActionType {
DISPLAY_INCOMPLETE_FLUSH = 0,
SPLIT_INCOMPLETE_FLUSH,
CLEAR_INCOMPLETE_FLUSH,
CLOSE_INCOMPLETE_FLUSH
};
/** type of currently active meta command */
enum MetaCommandType {
NO_META_COMMAND = 0,
STREAM_META_COMMAND,
HTTP_META_COMMAND,
LS_META_COMMAND,
TREE_META_COMMAND,
META_COMMAND_TYPES
};
/** file type for directory display (TEMPORARY) */
enum FileType {
PLAIN_FILE = 0,
DIRECTORY_FILE,
EXECUTABLE_FILE,
FILE_TYPES
};
/** action code for navigating XMLterm DOM document */
enum TreeActionCode {
TREE_MOVE_UP = 1,
TREE_MOVE_DOWN = 2,
TREE_MOVE_LEFT = 3,
TREE_MOVE_RIGHT = 4,
TREE_PRINT_ATTS = 5,
TREE_PRINT_HTML = 6,
TREE_ACTION_CODES = 7
};
/** Displays ("echoes") input text string with style and positions cursor
* @param aString string to be displayed
* @param aStyle style values for string (see lineterm.h)
* @param cursorCol cursor column
*/
NS_IMETHOD DisplayInput(const nsString& aString,
const nsString& aStyle,
PRInt32 cursorCol);
/** Autodetects markup in current output line
* @param aString string to be displayed
* @param aStyle style values for string (see lineterm.h)
* @param firstOutputLine true if this is the first output line
*/
NS_IMETHOD AutoDetectMarkup(const nsString& aString,
const nsString& aStyle,
PRBool firstOutputLine);
/** Initializes display of stream output with specified markup type
* @param streamURL effective URL of stream output
* @param streamMarkupType stream markup stype
*/
NS_IMETHOD InitStream(const nsString& streamURL,
OutputMarkupType streamMarkupType);
/** Breaks output display by flushing and deleting incomplete lines */
NS_IMETHOD BreakOutput(void);
/** Processes output string with specified style
* @param aString string to be processed
* @param aStyle style values for string (see lineterm.h)
* (if it is a null string, STDOUT style is assumed)
* @param newline true if this is a complete line of output
* @param streamOutput true if string represents stream output
*/
NS_IMETHOD ProcessOutput(const nsString& aString,
const nsString& aStyle,
PRBool newline,
PRBool streamOutput);
/** Appends text string to output buffer
* (appended text may need to be flushed for it to be actually displayed)
* @param aString string to be processed
* @param aStyle style values for string (see lineterm.h)
* (if it is a null string, STDOUT style is assumed)
* @param newline true if this is a complete line of output
*/
NS_IMETHOD AppendOutput(const nsString& aString,
const nsString& aStyle,
PRBool newline);
/** Adds markup to LS output (TEMPORARY)
* @param aString string to be processed
* @param aStyle style values for string (see lineterm.h)
* (if it is a null string, STDOUT style is assumed)
*/
NS_IMETHOD AppendLineLS(const nsString& aString,
const nsString& aStyle);
/** Inserts HTML fragment string as child of parentNode, before specified
* child node, or after the last child node
* @param aString HTML fragment string to be inserted
* @param parentNode parent node for HTML fragment
* @param entryNumber entry number (default value = -1)
* (if entryNumber >= 0, all '#' characters in aString
* are substituted by entryNumber)
* @param beforeNode child node before which to insert fragment;
* if null, insert after last child node
* (default value is null)
* @param replace if true, replace beforeNode with inserted fragment
* (default value is false)
*/
NS_IMETHOD InsertFragment(const nsString& aString,
nsCOMPtr<nsIDOMNode>& parentNode,
PRInt32 entryNumber = -1,
nsIDOMNode* beforeNode = nsnull,
PRBool replace = false);
/** Deep refresh of selected attributes for DOM elements
* (WORKAROUND for inserting HTML fragments properly)
* @param domNode DOM node of branch to be refreshed
* @param entryNumber entry number (default value = -1)
* (if entryNumber >= 0, all '#' characters in event
* handler scripts are substituted by entryNumber)
*/
NS_IMETHOD DeepRefreshAttributes(nsCOMPtr<nsIDOMNode>& domNode,
PRInt32 entryNumber = -1);
/** Forces display of data in output buffer
* @param flushAction type of flush action: display, split-off, clear, or
* close incomplete lines
*/
NS_IMETHOD FlushOutput(FlushActionType flushAction);
/** Scrolls document to align bottom and left margin with screen */
NS_IMETHOD ScrollBottomLeft(void);
/** Create a DIV element with attributes NAME="preface", CLASS="preface",
* and ID="preface0", containing an empty text node, and append it as a
* child of the main BODY element. Also make it the current display element.
*/
NS_IMETHOD NewPreface(void);
/** Create and append a new DIV element with attributes NAME="entry",
* CLASS="entry", and ID="entry#" as the last child of the main BODY element,
* where "#" denotes the new entry number obtained by incrementing the
* current entry number.
* Inside the entry element, create a DIV element with attributes
* NAME="input", CLASS="input", and ID="input#" containing two elements,
* named "prompt" and "command", each containing a text node.
* Insert the supplied prompt string into the prompt element's text node.
* @param aPrompt prompt string to be inserted into prompt element
*/
NS_IMETHOD NewEntry(const nsString& aPrompt);
/** Append a BR element as the next child of specified parent.
* @param parentNode parent node for BR element
*/
NS_IMETHOD NewBreak(nsIDOMNode* parentNode);
/** Creates an empty block element with tag name tagName with attributes
* NAME="name", CLASS="name", and ID="name#", and appends it as a child of
* the specified parent. ("#" denotes the specified number)
* Also create an empty text node inside the new block element.
* @param tagName tag name of element
* @param name name and class of element
* (If zero-length string, then no attributes are set)
* @param number numeric suffix for element ID
* (If < 0, no ID attribute is defined)
* @param parentNode parent node for element
* @param blockNode (output) block-level DOM node for created element
* @param textNode (output) child text DOM node of element
*/
NS_IMETHOD NewElementWithText(const nsString& tagName,
const nsString& name, PRInt32 number,
nsIDOMNode* parentNode,
nsCOMPtr<nsIDOMNode>& blockNode,
nsCOMPtr<nsIDOMNode>& textNode);
/** Creates an empty anchor (A) element with tag name tagName with attributes
* CLASS="classAttribute", and ID="classAttribute#", and appends it as a
* child of the specified parent. ("#" denotes the specified number)
* @param classAttribute class attribute of anchor element
* (If zero-length string, then no attributes are set)
* @param number numeric suffix for element ID
* (If < 0, no ID attribute is defined)
* @param parentNode parent node for element
* @param anchorNode (output) DOM node for created anchor element
*/
NS_IMETHOD NewAnchor(const nsString& classAttribute,
PRInt32 number,
nsIDOMNode* parentNode,
nsCOMPtr<nsIDOMNode>& anchorNode);
/** Creates an empty block element with tag name tagName with attributes
* NAME="name", CLASS="name", and ID="name#", and appends it as a child of
* the specified parent. ("#" denotes the specified number)
* @param tagName tag name of element
* @param name name and class of element
* (If zero-length string, then no attributes are set)
* @param number numeric suffix for element ID
* (If < 0, no ID attribute is defined)
* @param parentNode parent node for element
* @param blockNode (output) block-level DOM node for created element
*/
NS_IMETHOD NewElement(const nsString& tagName,
const nsString& name, PRInt32 number,
nsIDOMNode* parentNode,
nsCOMPtr<nsIDOMNode>& blockNode);
/** Creates a new DOM text node, and appends it as a child of the
* specified parent.
* @param parentNode parent node for element
* @param textNode (output) created text DOM node
*/
NS_IMETHOD NewTextNode( nsIDOMNode* parentNode,
nsCOMPtr<nsIDOMNode>& textNode);
/** Add event attributes (onclick, ondblclick, ...) to DOM node
* @param name name of DOM node (supplied as argument to the event handler)
* @param number entry number (supplied as argument to the event handler)
* @param domNode DOM node to be modified
*/
NS_IMETHOD SetEventAttributes(const nsString& name,
PRInt32 number,
nsCOMPtr<nsIDOMNode>& domNode);
/** Sets text content of a DOM node to supplied string
* @param textNode DOM text node to be modified
* @param aString string to be inserted
*/
NS_IMETHOD SetDOMText(nsCOMPtr<nsIDOMNode>& textNode,
const nsString& aString);
/** Checks if node is a text node
* @param aNode DOM node to be checked
* @return true if node is a text node
*/
PRBool IsTextNode(nsIDOMNode *aNode);
/** Checks if node is a text, span, or anchor node
* (i.e., allowed inside a PRE element)
* @param aNode DOM node to be checked
* @return true if node is a text, span or anchor node
*/
PRBool IsPREInlineNode(nsIDOMNode* aNode);
/** Serializes DOM node and its content as an HTML fragment string
* @param aNode DOM node to be serialized
* @param indentString indentation prefix string
* @param htmlString (output) serialized HTML fragment
* @param deepContent if true, serialize children of node as well
* (defaults to false)
* @param insidePREnode set to true if aNode is embedded inside a PRE node
* control formatting
* (defaults to false)
*/
NS_IMETHOD ToHTMLString(nsIDOMNode* aNode,
nsString& indentString,
nsString& htmlString,
PRBool deepContent = false,
PRBool insidePRENode = false);
/** Implements the "tree:" meta command to traverse DOM tree
* @param fileStream file stream for displaying tree traversal output
* @param rootNode root node of DOM tree
* @param currentNode current node for traversal
* @param treeActionCode traversal action type
*/
void TraverseDOMTree(FILE* fileStream,
nsIDOMNode* rootNode,
nsCOMPtr<nsIDOMNode>& currentNode,
TreeActionCode treeActionCode);
/** names of session elements */
static const char* const sessionElementNames[SESSION_ELEMENT_TYPES];
/** names of session events */
static const char* const sessionEventNames[SESSION_EVENT_TYPES];
/** names of meta commands */
static const char* const metaCommandNames[META_COMMAND_TYPES];
/** names of file types (TEMPORARY) */
static const char* const fileTypeNames[FILE_TYPES];
/** names of tree traversal action types */
static const char* const treeActionNames[TREE_ACTION_CODES];
/** object initialization flag */
PRBool mInitialized;
/** non-owning reference to containing XMLTerminal object */
mozIXMLTerminal* mXMLTerminal; // non-owning reference
/** non-owning reference to presentation shell associated with XMLterm */
nsIPresShell* mPresShell; // non-owning reference (??)
/** non-owning reference to DOM document containing XMLterm */
nsIDOMDocument* mDOMDocument; // non-owning reference (??)
/** BODY node of document containing XMLterm */
nsCOMPtr<nsIDOMNode> mBodyNode;
/** XMLterm session node */
nsCOMPtr<nsIDOMNode> mSessionNode;
/** current debug node (TEMPORARY; used for tree traversal) */
nsCOMPtr<nsIDOMNode> mCurrentDebugNode;
/** starting entry node in the history list */
nsCOMPtr<nsIDOMNode> mStartEntryNode;
/** current (and last) entry node in the history list */
nsCOMPtr<nsIDOMNode> mCurrentEntryNode;
/** maximum number of commands allowed to be saved in history list */
PRInt32 mMaxHistory;
/** entry number of first entry in history list */
PRInt32 mStartEntryNumber;
/** entry number of current entry */
PRInt32 mCurrentEntryNumber;
/** flag indicating whether current entry has output data */
PRBool mEntryHasOutput;
/** span node for current command prompt (is this necessary?) */
nsCOMPtr<nsIDOMNode> mPromptSpanNode;
/** span node for current command input (is this necessary?) */
nsCOMPtr<nsIDOMNode> mCommandSpanNode;
/** text node for current command input (is this necessary?) */
nsCOMPtr<nsIDOMNode> mInputTextNode;
/** block-level node for current command output */
nsCOMPtr<nsIDOMNode> mOutputBlockNode;
/** current display element node for command output */
nsCOMPtr<nsIDOMNode> mOutputDisplayNode;
/** current text node for command output */
nsCOMPtr<nsIDOMNode> mOutputTextNode;
/** currently active meta command (if any) */
MetaCommandType mMetaCommandType;
/** currently active display style of output */
OutputDisplayType mOutputDisplayType;
/** currently active markup style of output */
OutputMarkupType mOutputMarkupType;
/** currently active setting for automatic markup detection */
AutoDetectOption mAutoDetect;
/** flag indicating whether a line break needs to be output */
PRBool mLineBreakNeeded;
/** flag marking the first line of output */
PRBool mFirstOutputLine;
/** buffer for incomplete line of PRE text */
nsString mPreTextIncomplete;
/** buffer for complete lines of PRE text */
nsString mPreTextBuffered;
/** copy of PRE text already displayed */
nsString mPreTextDisplayed;
/** prompt string (HTML) */
nsString mPromptHTML;
/** buffer for HTML/XML fragment streams */
nsString mFragmentBuffer;
};

View File

@@ -0,0 +1,326 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermShell.cpp: implementation of mozIXMLTermShell
// providing an XPCONNECT wrapper to the XMLTerminal interface,
// thus allowing easy (and controlled) access from scripts
#include <stdio.h>
#include "nscore.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "nsIDocumentViewer.h"
#include "nsIDocument.h"
#include "nsIWebShell.h"
#include "nsIWebShellWindow.h"
#include "nsIPresShell.h"
#include "nsIPresContext.h"
#include "nsIScriptGlobalObject.h"
#include "nsIServiceManager.h"
#include "nsIAppShellService.h"
#include "nsAppShellCIDs.h"
#include "nsAppCoresCIDs.h"
#include "nsIDOMToolkitCore.h"
#include "nsIDOMDocument.h"
#include "nsIDOMSelection.h"
#include "nsIDOMWindow.h"
#include "mozXMLT.h"
#include "mozXMLTermShell.h"
// Define Class IDs
static NS_DEFINE_IID(kAppShellServiceCID, NS_APPSHELL_SERVICE_CID);
static NS_DEFINE_CID(kToolkitCoreCID, NS_TOOLKITCORE_CID);
// Define Interface IDs
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
/////////////////////////////////////////////////////////////////////////
// mozXMLTermShell factory
/////////////////////////////////////////////////////////////////////////
nsresult
NS_NewXMLTermShell(mozIXMLTermShell** aXMLTermShell)
{
NS_PRECONDITION(aXMLTermShell != nsnull, "null ptr");
if (! aXMLTermShell)
return NS_ERROR_NULL_POINTER;
*aXMLTermShell = new mozXMLTermShell();
if (! *aXMLTermShell)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aXMLTermShell);
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTermShell implementation
/////////////////////////////////////////////////////////////////////////
mozXMLTermShell::mozXMLTermShell() :
mInitialized(PR_FALSE),
mContentWindow(nsnull),
mContentAreaWebShell(nsnull),
mXMLTerminal(nsnull)
{
NS_INIT_REFCNT();
}
mozXMLTermShell::~mozXMLTermShell()
{
if (mInitialized) {
Finalize();
}
}
// Implement AddRef and Release
NS_IMPL_ADDREF(mozXMLTermShell)
NS_IMPL_RELEASE(mozXMLTermShell)
NS_IMETHODIMP
mozXMLTermShell::QueryInterface(REFNSIID aIID,void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if ( aIID.Equals(kISupportsIID)) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(mozIXMLTermShell*,this));
} else if ( aIID.Equals(mozIXMLTermShell::GetIID()) ) {
*aInstancePtr = NS_STATIC_CAST(mozIXMLTermShell*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
return NS_OK;
}
NS_IMETHODIMP mozXMLTermShell::GetCurrentEntryNumber(PRInt32 *aNumber)
{
if (mXMLTerminal) {
return mXMLTerminal->GetCurrentEntryNumber(aNumber);
} else {
return NS_ERROR_NOT_INITIALIZED;
}
}
NS_IMETHODIMP mozXMLTermShell::GetHistory(PRInt32 *aHistory)
{
if (mXMLTerminal) {
return mXMLTerminal->GetHistory(aHistory);
} else {
return NS_ERROR_NOT_INITIALIZED;
}
}
NS_IMETHODIMP mozXMLTermShell::SetHistory(PRInt32 aHistory)
{
if (mXMLTerminal) {
return mXMLTerminal->SetHistory(aHistory);
} else {
return NS_ERROR_NOT_INITIALIZED;
}
}
NS_IMETHODIMP mozXMLTermShell::GetPrompt(PRUnichar **aPrompt)
{
if (mXMLTerminal) {
return mXMLTerminal->GetPrompt(aPrompt);
} else {
return NS_ERROR_NOT_INITIALIZED;
}
}
NS_IMETHODIMP mozXMLTermShell::SetPrompt(const PRUnichar* aPrompt)
{
if (mXMLTerminal) {
return mXMLTerminal->SetPrompt(aPrompt);
} else {
return NS_ERROR_NOT_INITIALIZED;
}
}
// Initialize XMLTermShell
NS_IMETHODIMP
mozXMLTermShell::Init(nsIDOMWindow* aContentWin,
const PRUnichar* URL,
const PRUnichar* args)
{
nsresult result;
XMLT_LOG(mozXMLTermShell::Init,10,("\n"));
if (mInitialized)
return NS_ERROR_ALREADY_INITIALIZED;
if (!aContentWin)
return NS_ERROR_NULL_POINTER;
mContentWindow = aContentWin; // no addref
nsCOMPtr<nsIScriptGlobalObject> globalObj = do_QueryInterface(mContentWindow,
&result);
if (NS_FAILED(result) || !globalObj)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIWebShell> webShell;
globalObj->GetWebShell(getter_AddRefs(webShell));
if (!webShell)
return NS_ERROR_FAILURE;
mContentAreaWebShell = webShell; // SVN: does this assignment addref?
// Create XMLTerminal
nsCOMPtr<mozIXMLTerminal> newXMLTerminal;
result = NS_NewXMLTerminal(getter_AddRefs(newXMLTerminal));
if(!newXMLTerminal)
result = NS_ERROR_OUT_OF_MEMORY;
if (NS_SUCCEEDED(result)) {
// Initialize XMLTerminal with non-owning reference to us
result = newXMLTerminal->Init(mContentAreaWebShell, this, URL, args);
if (NS_SUCCEEDED(result)) {
mXMLTerminal = newXMLTerminal;
}
}
return result;
}
// De-initialize XMLTermShell and free resources
NS_IMETHODIMP
mozXMLTermShell::Finalize(void)
{
XMLT_LOG(mozXMLTermShell::Finalize,10,("\n"));
if (mXMLTerminal) {
// Finalize and release reference to XMLTerm object owned by us
mXMLTerminal->Finalize();
mXMLTerminal = nsnull;
}
mContentAreaWebShell = nsnull;
mContentWindow = nsnull;
mInitialized = PR_FALSE;
return NS_OK;
}
// Poll for readable data from XMLTerminal
NS_IMETHODIMP mozXMLTermShell::Poll(void)
{
if (!mXMLTerminal)
return NS_ERROR_NOT_INITIALIZED;
return mXMLTerminal->Poll();
}
// Send string to LineTerm as if the user had typed it
NS_IMETHODIMP mozXMLTermShell::SendText(const PRUnichar* buf,
const PRUnichar* cookie)
{
if (!mXMLTerminal)
return NS_ERROR_FAILURE;
nsAutoString sendStr (buf);
XMLT_LOG(mozXMLTermShell::SendText,10,("length=%d\n", sendStr.Length()));
return mXMLTerminal->SendText(sendStr, cookie);
}
// Create new XMLTerm window with specified argument string
NS_IMETHODIMP
mozXMLTermShell::NewXMLTermWindow(const PRUnichar* args)
{
nsresult result = NS_OK;
XMLT_LOG(mozXMLTermShell::NewXMLTermWindow,10,("\n"));
// Create the toolkit core instance...
nsIDOMToolkitCore* toolkit = nsnull;
result = nsServiceManager::GetService(kToolkitCoreCID,
nsIDOMToolkitCore::GetIID(),
(nsISupports**)&toolkit);
if (NS_FAILED(result))
return result;
nsAutoString argStr (args);
toolkit->ShowWindowWithArgs( "chrome://xmlterm/content/XMLTermFrame.xul",
nsnull, argStr );
/* Release the toolkit... */
if (nsnull != toolkit) {
nsServiceManager::ReleaseService(kToolkitCoreCID, toolkit);
}
return result;
}
// Exit XMLTerm window
NS_IMETHODIMP
mozXMLTermShell::Exit()
{
nsIAppShellService* appShell = nsnull;
XMLT_LOG(mozXMLTermShell::Exit,10,("\n"));
// Create the Application Shell instance...
nsresult result = nsServiceManager::GetService(kAppShellServiceCID,
nsIAppShellService::GetIID(),
(nsISupports**)&appShell);
if (NS_SUCCEEDED(result)) {
appShell->Shutdown();
nsServiceManager::ReleaseService(kAppShellServiceCID, appShell);
}
return NS_OK;
}

View File

@@ -0,0 +1,81 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermShell.h: declaration of mozXMLTermShell
// which implements mozIXMLTermShell, providing an XPCONNECT wrapper
// to the XMLTerminal interface, thus allowing easy (and controlled)
// access from scripts
#include <stdio.h>
#include "nscore.h"
#include "nspr.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "mozXMLT.h"
#include "mozIXMLTerminal.h"
#include "mozIXMLTermShell.h"
class mozXMLTermShell : public mozIXMLTermShell {
public:
mozXMLTermShell();
virtual ~mozXMLTermShell();
NS_DECL_ISUPPORTS
// mozIXMLTermShell interface
NS_IMETHOD GetCurrentEntryNumber(PRInt32 *aNumber);
NS_IMETHOD GetHistory(PRInt32 *aHistory);
NS_IMETHOD SetHistory(PRInt32 aHistory);
NS_IMETHOD GetPrompt(PRUnichar **aPrompt);
NS_IMETHOD SetPrompt(const PRUnichar* aPrompt);
NS_IMETHOD Init(nsIDOMWindow* aContentWin,
const PRUnichar* URL,
const PRUnichar* args);
NS_IMETHOD Finalize(void);
NS_IMETHOD Poll(void);
NS_IMETHOD SendText(const PRUnichar* buf, const PRUnichar* cookie);
NS_IMETHOD NewXMLTermWindow(const PRUnichar* args);
NS_IMETHOD Exit(void);
protected:
/** object initialization flag */
PRBool mInitialized;
/** non-owning reference to content window for XMLterm */
nsIDOMWindow* mContentWindow;
/** non-owning reference (??) to web shell for content window */
nsIWebShell* mContentAreaWebShell;
/** owning reference to XMLTerminal object created by us */
nsCOMPtr<mozIXMLTerminal> mXMLTerminal;
};

View File

@@ -0,0 +1,568 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermStream.cpp: implementation of mozIXMLTermStream
// to display HTML/XML streams as documents
#include "nscore.h"
#include "prlog.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "nsIAllocator.h"
#include "nsIServiceManager.h"
#include "nsIIOService.h"
#include "nsIDocumentLoader.h"
#include "nsIContentViewer.h"
#include "nsIDocumentViewer.h"
#include "nsIPresContext.h"
#include "nsIPresShell.h"
#include "nsIViewManager.h"
#include "nsIScrollableView.h"
#include "nsIDeviceContext.h"
#include "nsIFrame.h"
#include "nsIScriptContextOwner.h"
#include "nsIScriptGlobalObject.h"
#include "nsIDOMWindow.h"
#include "nsIDOMWindowCollection.h"
#include "nsIDOMElement.h"
#include "nsIDOMNode.h"
#include "nsIDOMNodeList.h"
#include "nsIDOMDocument.h"
#include "nsIDOMHTMLDocument.h"
#include "nsIDocument.h"
#include "nsIURL.h"
#include "nsNeckoUtil.h"
#include "mozXMLT.h"
#include "mozXMLTermUtils.h"
#include "mozXMLTermStream.h"
/////////////////////////////////////////////////////////////////////////
// mozXMLTermStream factory
/////////////////////////////////////////////////////////////////////////
nsresult
NS_NewXMLTermStream(mozIXMLTermStream** aXMLTermStream)
{
NS_PRECONDITION(aXMLTermStream != nsnull, "null ptr");
if (!aXMLTermStream)
return NS_ERROR_NULL_POINTER;
*aXMLTermStream = new mozXMLTermStream();
if (! *aXMLTermStream)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aXMLTermStream);
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTermStream implementation
/////////////////////////////////////////////////////////////////////////
static NS_DEFINE_CID(kIOServiceCID, NS_IOSERVICE_CID);
mozXMLTermStream::mozXMLTermStream() :
mUTF8Buffer(""),
mUTF8Offset(0),
mMaxResizeHeight(0),
mDOMWindow( nsnull ),
mDOMIFrameElement( nsnull ),
mContext( nsnull ),
mLoadGroup( nsnull ),
mChannel( nsnull ),
mStreamListener( nsnull )
{
NS_INIT_REFCNT();
}
mozXMLTermStream::~mozXMLTermStream()
{
}
// Implement AddRef and Release
NS_IMPL_ADDREF(mozXMLTermStream)
NS_IMPL_RELEASE(mozXMLTermStream)
NS_IMETHODIMP
mozXMLTermStream::QueryInterface(REFNSIID aIID,void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if ( aIID.Equals(NS_GET_IID(nsISupports))) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(mozIXMLTermStream*,this));
} else if(aIID.Equals(NS_GET_IID(nsIBaseStream))) {
*aInstancePtr = NS_STATIC_CAST(nsIBaseStream*,this);
} else if(aIID.Equals(NS_GET_IID(nsIInputStream))) {
*aInstancePtr = NS_STATIC_CAST(nsIInputStream*,this);
} else if(aIID.Equals(NS_GET_IID(mozIXMLTermStream))) {
*aInstancePtr = NS_STATIC_CAST(mozIXMLTermStream*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
XMLT_LOG(mozXMLTermStream::QueryInterface,20,("mRefCnt = %d\n", mRefCnt));
return NS_OK;
}
// mozIXMLTermStream interface
/** Open stream in specified frame, or in current frame if frameName is null
* @param aDOMWindow parent window
* @param frameName name of child frame in which to display stream, or null
* to display in parent window
* @param contentURL URL of stream content
* @param contentType MIME type of stream content
* @param maxResizeHeight maximum resize height (0=> do not resize)
* @return NS_OK on success
*/
NS_IMETHODIMP mozXMLTermStream::Open(nsIDOMWindow* aDOMWindow,
const char* frameName,
const char* contentURL,
const char* contentType,
PRInt32 maxResizeHeight)
{
nsresult result;
XMLT_LOG(mozXMLTermStream::Open,20,("contentURL=%s, contentType=%s\n",
contentURL, contentType));
mMaxResizeHeight = maxResizeHeight;
if (frameName && (strlen(frameName) > 0)) {
// Open stream in named subframe of current frame
XMLT_LOG(mozXMLTermStream::Open,22,("frameName=%s\n", frameName));
nsAutoString innerFrameName = frameName;
// Get DOM IFRAME element
nsCOMPtr<nsIDOMDocument> domDoc;
result = aDOMWindow->GetDocument(getter_AddRefs(domDoc));
if (NS_FAILED(result) || !domDoc)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDOMHTMLDocument> domHTMLDoc = do_QueryInterface(domDoc);
if (!domHTMLDoc)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDOMNodeList> nodeList;
result = domHTMLDoc->GetElementsByName(innerFrameName,
getter_AddRefs(nodeList));
if (NS_FAILED(result) || !nodeList)
return NS_ERROR_FAILURE;
PRUint32 count;
nodeList->GetLength(&count);
PR_ASSERT(count==1);
nsCOMPtr<nsIDOMNode> domNode;
result = nodeList->Item(0, getter_AddRefs(domNode));
if (NS_FAILED(result) || !domNode)
return NS_ERROR_FAILURE;
mDOMIFrameElement = do_QueryInterface(domNode);
if (!mDOMIFrameElement)
return NS_ERROR_FAILURE;
// Ensure that it is indeed an IFRAME element
nsAutoString tagName;
result = mDOMIFrameElement->GetTagName(tagName);
if (NS_FAILED(result))
return NS_ERROR_FAILURE;
if (!tagName.EqualsIgnoreCase("iframe"))
return NS_ERROR_FAILURE;
if (mMaxResizeHeight > 0) {
// Set initial IFRAME size to be as wide as the window, but very short
nsAutoString attWidth = "width";
nsAutoString valWidth = "100%";
mDOMIFrameElement->SetAttribute(attWidth,valWidth);
nsAutoString attHeight = "height";
nsAutoString valHeight = "10";
mDOMIFrameElement->SetAttribute(attHeight,valHeight);
}
// Get inner DOM window by looking up the frames list
nsCOMPtr<nsIDOMWindow> innerDOMWindow;
result = mozXMLTermUtils::GetInnerDOMWindow(aDOMWindow, innerFrameName,
getter_AddRefs(innerDOMWindow));
if (NS_FAILED(result) || !innerDOMWindow)
return NS_ERROR_FAILURE;
mDOMWindow = innerDOMWindow;
} else {
// Open stream in current frame
mDOMIFrameElement = nsnull;
mDOMWindow = aDOMWindow;
}
// Get webshell for DOM window
nsCOMPtr<nsIWebShell> webShell;
result = mozXMLTermUtils::ConvertDOMWindowToWebShell(mDOMWindow,
getter_AddRefs(webShell));
if (NS_FAILED(result) || !webShell)
return NS_ERROR_FAILURE;
NS_WITH_SERVICE(nsIIOService, ioService, kIOServiceCID, &result);
if (NS_FAILED(result))
return result;
nsCOMPtr<nsIInputStream> inputStream = this;
nsCOMPtr<nsIURI> uri;
result = NS_NewURI(getter_AddRefs(uri), contentURL, nsnull);
if (NS_FAILED(result))
return result;
result = NS_NewLoadGroup(nsnull, nsnull, nsnull, getter_AddRefs(mLoadGroup));
if (NS_FAILED(result))
return result;
PRInt32 contentLength = 1024; // ??? What's this length
result = ioService->NewInputStreamChannel(uri, contentType, contentLength,
inputStream, mLoadGroup, nsnull,
getter_AddRefs(mChannel));
if (NS_FAILED(result))
return result;
// Determine Class ID for viewing specified mimetype
nsCID classID;
static const char command[] = "view";
nsCAutoString progID = NS_DOCUMENT_LOADER_FACTORY_PROGID_PREFIX;
progID += command;
progID += "/";
progID += contentType;
result = nsComponentManager::ProgIDToCLSID(progID.GetBuffer(),
&classID);
if (NS_FAILED(result))
return result;
nsCOMPtr<nsIDocumentLoaderFactory> docLoaderFactory;
result = nsComponentManager::CreateInstance(classID, nsnull,
NS_GET_IID(nsIDocumentLoaderFactory),
getter_AddRefs(docLoaderFactory));
if (NS_FAILED(result))
return result;
nsCOMPtr<nsIContentViewer> contentViewer;
result = docLoaderFactory->CreateInstance(command,
mChannel,
mLoadGroup,
contentType,
webShell,
nsnull,
getter_AddRefs(mStreamListener),
getter_AddRefs(contentViewer) );
if (NS_FAILED(result))
return result;
nsCOMPtr<nsIContentViewerContainer> contViewContainer =
do_QueryInterface(webShell);
result = contentViewer->SetContainer(contViewContainer);
if (NS_FAILED(result))
return result;
result = webShell->Embed(contentViewer, command, (nsISupports*) nsnull);
if (NS_FAILED(result))
return result;
result = mStreamListener->OnStartRequest(mChannel, mContext);
if (NS_FAILED(result))
return result;
XMLT_LOG(mozXMLTermStream::Open,21,("returning\n"));
return NS_OK;
}
// nsIBaseStream interface
NS_IMETHODIMP mozXMLTermStream::Close(void)
{
nsresult result;
XMLT_LOG(mozXMLTermStream::Close,20,("\n"));
mUTF8Buffer = "";
mUTF8Offset = 0;
PRUint32 sourceOffset = 0;
PRUint32 count = 0;
result = mStreamListener->OnDataAvailable(mChannel, mContext,
this, sourceOffset, count);
if (NS_FAILED(result))
return result;
nsresult status = NS_OK;
nsAutoString errorMsg = "";
result = mStreamListener->OnStopRequest(mChannel, mContext,
status, errorMsg.GetUnicode());
if (NS_FAILED(result))
return result;
if (mMaxResizeHeight && mDOMIFrameElement) {
// Size frame to content
result = SizeToContentHeight(mMaxResizeHeight);
}
mMaxResizeHeight = 0;
// Release interfaces etc
mDOMWindow = nsnull;
mDOMIFrameElement = nsnull;
mContext = nsnull;
mLoadGroup = nsnull;
mChannel = nsnull;
mStreamListener = nsnull;
return NS_OK;
}
/** Adjusts height of frame displaying stream to fit content
* @param maxHeight maximum height of resized frame (pixels)
* (zero value implies no maximum)
*/
NS_IMETHODIMP mozXMLTermStream::SizeToContentHeight(PRInt32 maxHeight)
{
nsresult result;
// Get webshell
nsCOMPtr<nsIWebShell> webShell;
result = mozXMLTermUtils::ConvertDOMWindowToWebShell(mDOMWindow,
getter_AddRefs(webShell));
if (NS_FAILED(result) || !webShell)
return NS_ERROR_FAILURE;
// Get pres context
nsCOMPtr<nsIPresContext> presContext;
result = mozXMLTermUtils::GetWebShellPresContext(webShell,
getter_AddRefs(presContext));
if (NS_FAILED(result) || !presContext)
return NS_ERROR_FAILURE;
// Get scrollable view
nsCOMPtr<nsIScrollableView> scrollableView;
result = mozXMLTermUtils::GetPresContextScrollableView(presContext,
getter_AddRefs(scrollableView));
if (NS_FAILED(result) || !scrollableView)
return NS_ERROR_FAILURE;
// Get device context
nsCOMPtr<nsIDeviceContext> deviceContext;
result = mozXMLTermUtils::GetPresContextDeviceContext(presContext,
getter_AddRefs(deviceContext));
if (NS_FAILED(result) || !deviceContext)
return NS_ERROR_FAILURE;
// Determine twips to pixels conversion factor
float pixelScale;
presContext->GetTwipsToPixels(&pixelScale);
// Get scrollbar dimensions in pixels
float sbWidth, sbHeight;
deviceContext->GetScrollBarDimensions(sbWidth, sbHeight);
PRInt32 scrollBarWidth = PRInt32(sbWidth*pixelScale);
PRInt32 scrollBarHeight = PRInt32(sbHeight*pixelScale);
// Determine webshell size in pixels
PRInt32 shellX, shellY, shellWidth, shellHeight;
result = webShell->GetBounds(shellX, shellY, shellWidth, shellHeight);
// Determine page size in pixels
nscoord contX, contY;
scrollableView->GetContainerSize(&contX, &contY);
PRInt32 pageWidth, pageHeight;
pageWidth = PRInt32((float)contX*pixelScale);
pageHeight = PRInt32((float)contY*pixelScale);
printf("mozXMLTermStream::SizeToContentHeight: scrollbar %d, %d\n",
scrollBarWidth, scrollBarHeight);
printf("mozXMLTermStream::SizeToContentHeight: shell %d, %d\n",
shellWidth, shellHeight);
printf("mozXMLTermStream::SizeToContentHeight: page %d, %d, %e\n",
pageWidth, pageHeight, pixelScale);
if ((pageHeight > shellHeight) || (pageWidth > shellWidth)) {
// Page larger than webshell
nsAutoString attHeight = "height";
nsAutoString attWidth = "width";
nsAutoString attValue = "";
PRInt32 newPageHeight = pageHeight;
PRInt32 excessWidth = (pageWidth+scrollBarWidth - shellWidth);
printf("mozXMLTermStream::SizeToContentHeight: excessWidth %d\n",
excessWidth);
if (excessWidth > 0) {
// Widen IFRAME beyond page width by scrollbar width
attValue = "";
attValue.Append(shellWidth+scrollBarWidth);
mDOMIFrameElement->SetAttribute(attWidth,attValue);
// Recompute page dimensions
scrollableView->GetContainerSize(&contX, &contY);
pageWidth = PRInt32((float)contX*pixelScale);
pageHeight = PRInt32((float)contY*pixelScale);
newPageHeight = pageHeight;
if (excessWidth > scrollBarWidth)
newPageHeight += scrollBarHeight;
printf("mozXMLTermStream::SizeToContentHeight: page2 %d, %d, %d\n",
pageWidth, pageHeight, newPageHeight);
// Reset IFRAME width
attValue = "";
attValue.Append(shellWidth);
mDOMIFrameElement->SetAttribute(attWidth,attValue);
}
// Resize IFRAME height to match page height (subject to a maximum)
if (newPageHeight > maxHeight) newPageHeight = maxHeight;
attValue = "";
attValue.Append(newPageHeight);
mDOMIFrameElement->SetAttribute(attHeight,attValue);
}
return NS_OK;
}
// nsIInputStream interface
NS_IMETHODIMP mozXMLTermStream::Available(PRUint32 *_retval)
{
if (!_retval)
return NS_ERROR_NULL_POINTER;
*_retval = mUTF8Buffer.Length() - mUTF8Offset;
XMLT_LOG(mozXMLTermStream::Available,60,("retval=%d\n", *_retval));
return NS_OK;
}
NS_IMETHODIMP mozXMLTermStream::Read(char* buf, PRUint32 count,
PRUint32* _retval)
{
XMLT_LOG(mozXMLTermStream::Read,60,("count=%d\n", count));
if (!_retval)
return NS_ERROR_NULL_POINTER;
PR_ASSERT(mUTF8Buffer.Length() >= mUTF8Offset);
PRUint32 remCount = mUTF8Buffer.Length() - mUTF8Offset;
if (remCount == 0) {
// Empty buffer
*_retval = 0;
return NS_OK;
}
if (count >= remCount) {
// Return entire remaining buffer
*_retval = remCount;
} else {
// Return only portion of buffer
*_retval = count;
}
// Copy portion of string
mUTF8Buffer.ToCString(buf, *_retval, mUTF8Offset);
mUTF8Offset += *_retval;
XMLT_LOG(mozXMLTermStream::Read,61,("*retval=%d\n", *_retval));
return NS_OK;
}
/** Write Unicode string to stream (blocks until write is completed)
* @param buf string to write
* @return NS_OK on success
*/
NS_IMETHODIMP mozXMLTermStream::Write(const PRUnichar* buf)
{
nsresult result;
XMLT_LOG(mozXMLTermStream::Write,50,("\n"));
if (!buf)
return NS_ERROR_FAILURE;
nsAutoString strBuf ( buf );
// Convert Unicode string to UTF8 and store in buffer
char* utf8Str = strBuf.ToNewUTF8String();
mUTF8Buffer = utf8Str;
nsAllocator::Free(utf8Str);
mUTF8Offset = 0;
PRUint32 sourceOffset = 0;
while (mUTF8Offset < mUTF8Buffer.Length()) {
PRUint32 remCount = mUTF8Buffer.Length() - mUTF8Offset;
result = mStreamListener->OnDataAvailable(mChannel, mContext,
this, sourceOffset, remCount);
if (NS_FAILED(result))
return result;
}
XMLT_LOG(mozXMLTermStream::Write,51,("returning mUTF8Offset=%d\n",
mUTF8Offset));
return NS_OK;
}

View File

@@ -0,0 +1,96 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermStream.h: declaration of mozXMLTermStream
// which implements the mozIXMLTermStream interface
// to display HTML/XML streams as documents
#include "nscore.h"
#include "nspr.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "mozXMLT.h"
#include "mozIXMLTermStream.h"
class mozXMLTermStream : public mozIXMLTermStream
{
public:
mozXMLTermStream();
virtual ~mozXMLTermStream();
// nsISupports interface
NS_DECL_ISUPPORTS
// nsIInputStream interface
NS_IMETHOD Close(void);
NS_IMETHOD Available(PRUint32 *_retval);
NS_IMETHOD Read(char * buf, PRUint32 count, PRUint32 *_retval);
// mozIXMLTermStream interface
// Open stream in specified frame, or in current frame if frameName is null
NS_IMETHOD Open(nsIDOMWindow* aDOMWindow,
const char* frameName,
const char* contentURL,
const char* contentType,
PRInt32 maxResizeHeight);
// Write Unicode string to stream
NS_IMETHOD Write(const PRUnichar* buf);
protected:
/** Adjusts height of frame displaying stream to fit content
* @param maxHeight maximum height of resized frame (pixels)
* (zero value implies no maximum)
*/
NS_IMETHOD SizeToContentHeight(PRInt32 maxHeight);
/** UTF8 data buffer to hold to be read by rendering engine */
nsCString mUTF8Buffer;
/** offset at which to start reading the UTF8 data buffer */
PRInt32 mUTF8Offset;
/** maximum frame height for resizing */
PRInt32 mMaxResizeHeight;
/** DOM window in which to display stream */
nsCOMPtr<nsIDOMWindow> mDOMWindow;
/** Frame element in which to display stream */
nsCOMPtr<nsIDOMElement> mDOMIFrameElement;
/** Context for stream display (what's this??) */
nsCOMPtr<nsISupports> mContext;
/** Load group for stream display (what's this??) */
nsCOMPtr<nsILoadGroup> mLoadGroup;
/** Channel for stream display (what's this??) */
nsCOMPtr<nsIChannel> mChannel;
/** Stream listener object */
nsCOMPtr<nsIStreamListener> mStreamListener;
};

View File

@@ -0,0 +1,454 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermUtils.cpp: XMLTerm utilities implementation
#include "nscore.h"
#include "nspr.h"
#include "prlog.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "nsIContentViewer.h"
#include "nsIDocumentViewer.h"
#include "nsIPresContext.h"
#include "nsIPresShell.h"
#include "nsIDeviceContext.h"
#include "nsIPrincipal.h"
#include "nsIScriptContext.h"
#include "nsIScriptContextOwner.h"
#include "nsIScriptGlobalObject.h"
#include "nsIDOMWindowCollection.h"
#include "nsIDocument.h"
#include "mozXMLT.h"
#include "mozXMLTermUtils.h"
/////////////////////////////////////////////////////////////////////////
/** Gets presentation context for web shell
* @param aWebShell web shell
* @param aPresContext returned presentation context
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::GetWebShellPresContext(nsIWebShell* aWebShell,
nsIPresContext** aPresContext)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::GetWebShellPresContext,30,("\n"));
if (!aPresContext)
return NS_ERROR_FAILURE;
*aPresContext = nsnull;
nsCOMPtr<nsIContentViewer> contViewer;
result = aWebShell->GetContentViewer(getter_AddRefs(contViewer));
if (NS_FAILED(result) || !contViewer)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDocumentViewer> docViewer;
result = contViewer->QueryInterface(NS_GET_IID(nsIDocumentViewer),
(void**)getter_AddRefs(docViewer));
if (NS_FAILED(result) || !docViewer)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIPresContext> presContext;
result = docViewer->GetPresContext(*getter_AddRefs(presContext));
if (NS_FAILED(result) || !presContext)
return NS_ERROR_FAILURE;
*aPresContext = presContext.get();
NS_ADDREF(*aPresContext);
return NS_OK;
}
/** Gets DOM document for web shell
* @param aWebShell web shell
* @param aDOMDocument returned DOM document
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::GetWebShellDOMDocument(nsIWebShell* aWebShell,
nsIDOMDocument** aDOMDocument)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::GetWebShellDOMDocument,30,("\n"));
if (!aDOMDocument)
return NS_ERROR_FAILURE;
*aDOMDocument = nsnull;
nsCOMPtr<nsIContentViewer> contViewer;
result = aWebShell->GetContentViewer(getter_AddRefs(contViewer));
if (NS_FAILED(result) || !contViewer)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDocumentViewer> docViewer;
result = contViewer->QueryInterface(NS_GET_IID(nsIDocumentViewer),
(void**)getter_AddRefs(docViewer));
if (NS_FAILED(result) || !docViewer)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDocument> document;
result = docViewer->GetDocument(*getter_AddRefs(document));
if (NS_FAILED(result) || !document)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDOMDocument> domDocument = do_QueryInterface(document);
if (!domDocument)
return NS_ERROR_FAILURE;
*aDOMDocument = domDocument.get();
NS_ADDREF(*aDOMDocument);
return NS_OK;
}
/** Gets DOM window for web shell
* @param aWebShell web shell
* @param aDOMWindow returned DOM window (frame)
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::ConvertWebShellToDOMWindow(nsIWebShell* aWebShell,
nsIDOMWindow** aDOMWindow)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::ConvertWebShellToDOMWindow,30,("\n"));
if (!aDOMWindow)
return NS_ERROR_FAILURE;
*aDOMWindow = nsnull;
nsCOMPtr<nsIScriptContextOwner> scriptContextOwner =
do_QueryInterface(aWebShell);
if (!scriptContextOwner)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIScriptGlobalObject> scriptGlobalObject;
result = scriptContextOwner->GetScriptGlobalObject(getter_AddRefs(scriptGlobalObject));
if (NS_FAILED(result) || !scriptGlobalObject)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDOMWindow> domWindow = do_QueryInterface(scriptGlobalObject);
if (!domWindow)
return NS_ERROR_FAILURE;
*aDOMWindow = domWindow.get();
NS_ADDREF(*aDOMWindow);
return NS_OK;
}
/** Gets web shell for DOM window
* @param aDOMWindow DOM window (frame)
* @param aWebShell returned web shell
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::ConvertDOMWindowToWebShell(nsIDOMWindow* aDOMWindow,
nsIWebShell** aWebShell)
{
XMLT_LOG(mozXMLTermUtils::ConvertDOMWindowToWebShell,30,("\n"));
nsCOMPtr<nsIScriptGlobalObject> globalObject = do_QueryInterface(aDOMWindow);
if (!globalObject)
return NS_ERROR_FAILURE;
globalObject->GetWebShell(aWebShell);
if (!*aWebShell)
return NS_ERROR_FAILURE;
return NS_OK;
}
/** Locates named inner DOM window (frame) inside outer DOM window
* @param outerDOMWindow outer DOM window (frame)
* @param innerFrameName name of inner frame to be returned
* @param innerDOMWindow returned inner DOM window (frame)
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::GetInnerDOMWindow(nsIDOMWindow* outerDOMWindow,
const nsString& innerFrameName,
nsIDOMWindow** innerDOMWindow)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::GetInnerDOMWindow,30,("\n"));
nsCOMPtr<nsIDOMWindowCollection> innerDOMWindowList;
result = outerDOMWindow->GetFrames(getter_AddRefs(innerDOMWindowList));
if (NS_FAILED(result) || !innerDOMWindowList)
return NS_ERROR_FAILURE;
PRUint32 frameCount = 0;
result = innerDOMWindowList->GetLength(&frameCount);
XMLT_LOG(mozXMLTermUtils::GetInnerDOMWindow,31,("frameCount=%d\n",
frameCount));
result = innerDOMWindowList->NamedItem(innerFrameName, innerDOMWindow);
if (NS_FAILED(result) || !*innerDOMWindow)
return NS_ERROR_FAILURE;
return NS_OK;
}
/** Gets the scrollable view for presentation context
* @param aPresContext presentation context
* @param aScrollableView returned scrollable view
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::GetPresContextScrollableView(nsIPresContext* aPresContext,
nsIScrollableView** aScrollableView)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::GetPresContextScrollableView,30,("\n"));
if (!aScrollableView)
return NS_ERROR_FAILURE;
*aScrollableView = nsnull;
nsCOMPtr<nsIPresShell> presShell;
result = aPresContext->GetShell(getter_AddRefs(presShell));
if (NS_FAILED(result) || !presShell)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIViewManager> viewManager;
result = presShell->GetViewManager(getter_AddRefs(viewManager));
if (NS_FAILED(result) || !viewManager)
return NS_ERROR_FAILURE;
return viewManager->GetRootScrollableView(aScrollableView);
}
/** Gets the device context for presentation context
* @param aPresContext presentation context
* @param aDeviceContext returned device context
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::GetPresContextDeviceContext(nsIPresContext* aPresContext,
nsIDeviceContext** aDeviceContext)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::GetPresContextScrollableView,30,("\n"));
if (!aDeviceContext)
return NS_ERROR_FAILURE;
*aDeviceContext = nsnull;
nsCOMPtr<nsIPresShell> presShell;
result = aPresContext->GetShell(getter_AddRefs(presShell));
if (NS_FAILED(result) || !presShell)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIViewManager> viewManager;
result = presShell->GetViewManager(getter_AddRefs(viewManager));
if (NS_FAILED(result) || !viewManager)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIDeviceContext> deviceContext;
result = viewManager->GetDeviceContext(*getter_AddRefs(deviceContext));
if (NS_FAILED(result) || !deviceContext)
return NS_ERROR_FAILURE;
*aDeviceContext = deviceContext.get();
NS_ADDREF(*aDeviceContext);
return NS_OK;
}
/** Gets the script context for document
* @param aDOMDocument document providing context
* @param aScriptContext returned script context
* @return NS_OK on success
*/
NS_EXPORT nsresult
mozXMLTermUtils::GetScriptContext(nsIDOMDocument* aDOMDocument,
nsIScriptContext** aScriptContext)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::GetScriptContext,20,("\n"));
nsCOMPtr<nsIDocument> doc ( do_QueryInterface(aDOMDocument) );
if (!doc)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIScriptGlobalObject> scriptGlobalObject;
result = doc->GetScriptGlobalObject(getter_AddRefs(scriptGlobalObject));
if (NS_FAILED(result) || !scriptGlobalObject)
return NS_ERROR_FAILURE;
return scriptGlobalObject->GetContext(aScriptContext);
}
/** Executes script in specified document's context.
* @param aDOMDocument document providing context for script execution
* @param aScript string to be executed
* @param aOutput output string produced by script execution
* @return NS_OK if script was valid and got executed properly
*/
NS_EXPORT nsresult
mozXMLTermUtils::ExecuteScript(nsIDOMDocument* aDOMDocument,
const nsString& aScript,
nsString& aOutput)
{
nsresult result;
XMLT_LOG(mozXMLTermUtils::ExecuteScript,20,("\n"));
// Get document principal
nsCOMPtr<nsIDocument> doc = do_QueryInterface(aDOMDocument);
if (!doc)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIPrincipal> docPrincipal=dont_AddRef(doc->GetDocumentPrincipal());
// Get document script context
nsCOMPtr<nsIScriptContext> scriptContext;
result = GetScriptContext(aDOMDocument, getter_AddRefs(scriptContext));
if (NS_FAILED(result) || !scriptContext)
return NS_ERROR_FAILURE;
// Execute script
PRBool isUndefined = PR_FALSE;
nsString outputString = "";
const char* URL = "";
const char* version = "";
result = scriptContext-> EvaluateString(aScript, (void *) nsnull,
docPrincipal, URL, 0, version,
aOutput, &isUndefined);
return result;
}
/** Returns a timestamp string containing the local time, if at least
* deltaSec seconds have elapsed since the last timestamp. Otherwise,
* a null string is returned.
* @param deltaSec minimum elapsed seconds since last timestamp (>=0)
* @param lastTime in/out parameter containing time of last timestamp
* @param aTimeStamp returned timestamp string
* @return NS_OK on success
*/
NS_IMETHODIMP mozXMLTermUtils::TimeStamp(PRInt32 deltaSec, PRTime& lastTime,
nsString& aTimeStamp)
{
static const PRInt32 DATE_LEN = 19;
PRTime deltaTime ;
char dateStr[DATE_LEN+1];
PRTime curTime, difTime;
curTime = PR_Now();
LL_SUB(difTime, curTime, lastTime);
LL_I2L(deltaTime, deltaSec*1000000);
if (LL_CMP(difTime, <, deltaTime)) {
// Not enough time has elapsed for a new time stamp
aTimeStamp = "";
return NS_OK;
}
lastTime = curTime;
// Current local time
PRExplodedTime localTime;
PR_ExplodeTime(curTime, PR_LocalTimeParameters, &localTime);
PRInt32 nWritten = PR_snprintf(dateStr, DATE_LEN+1,
"%02d:%02d:%02d %02d/%02d/%04d",
localTime.tm_hour, localTime.tm_min, localTime.tm_sec,
localTime.tm_mday, localTime.tm_month+1, localTime.tm_year);
if (nWritten != DATE_LEN)
return NS_ERROR_FAILURE;
XMLT_LOG(mozXMLTermUtils::LocalTime,99,("localTime=%s\n", dateStr));
aTimeStamp = dateStr;
return NS_OK;
}
/** Returns a string containing a 11-digit random cookie based upon the
* current local time and the elapsed execution of the program.
* @param aCookie returned cookie string
* @return NS_OK on success
*/
NS_IMETHODIMP mozXMLTermUtils::RandomCookie(nsString& aCookie)
{
// Current local time
PRExplodedTime localTime;
PR_ExplodeTime(PR_Now(), PR_LocalTimeParameters, &localTime);
PRInt32 randomNumberA = localTime.tm_sec*1000000+localTime.tm_usec;
PRIntervalTime randomNumberB = PR_IntervalNow();
XMLT_LOG(mozXMLTermUtils::RandomCookie,30,("ranA=0x%x, ranB=0x%x\n",
randomNumberA, randomNumberB));
PR_ASSERT(randomNumberA >= 0);
PR_ASSERT(randomNumberB >= 0);
static const char cookieDigits[17] = "0123456789abcdef";
char cookie[12];
int j;
for (j=0; j<6; j++) {
cookie[j] = cookieDigits[randomNumberA%16];
randomNumberA = randomNumberA/16;
}
for (j=6; j<11; j++) {
cookie[j] = cookieDigits[randomNumberB%16];
randomNumberB = randomNumberB/16;
}
cookie[11] = '\0';
aCookie = cookie;
return NS_OK;
}

View File

@@ -0,0 +1,145 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTermUtils.h: XMLTerm utilities header
#ifndef _MOZXMLTERMUTILS_H
#define _MOZXMLTERMUTILS_H 1
#include "nscore.h"
#include "nsString.h"
#include "nsIWebShell.h"
#include "nsIDOMWindow.h"
#include "nsIDOMDocument.h"
class mozXMLTermUtils
{
public:
/** Gets presentation context for web shell
* @param aWebShell web shell
* @param aPresContext returned presentation context
* @return NS_OK on success
*/
static NS_EXPORT nsresult
GetWebShellPresContext(nsIWebShell* aWebShell,
nsIPresContext** aPresContext);
/** Gets DOM document for web shell
* @param aWebShell web shell
* @param aDOMDocument returned DOM document
* @return NS_OK on success
*/
static NS_EXPORT nsresult
GetWebShellDOMDocument(nsIWebShell* aWebShell,
nsIDOMDocument** aDOMDocument);
/** Gets DOM window for web shell
* @param aWebShell web shell
* @param aDOMWindow returned DOM window (frame)
* @return NS_OK on success
*/
static NS_EXPORT nsresult
ConvertWebShellToDOMWindow(nsIWebShell* aWebShell,
nsIDOMWindow** aDOMWindow);
/** Gets web shell for DOM window
* @param aDOMWindow DOM window (frame)
* @param aWebShell returned web shell
* @return NS_OK on success
*/
static NS_EXPORT nsresult
ConvertDOMWindowToWebShell(nsIDOMWindow* aDOMWindow,
nsIWebShell** aWebShell);
/** Locates named inner DOM window (frame) inside outer DOM window
* @param outerDOMWindow outer DOM window (frame)
* @param innerFrameName name of inner frame to be returned
* @param innerDOMWindow returned inner DOM window (frame)
* @return NS_OK on success
*/
static NS_EXPORT nsresult
GetInnerDOMWindow(nsIDOMWindow* outerDOMWindow,
const nsString& innerFrameName,
nsIDOMWindow** innerDOMWindow);
/** Gets the scrollable view for presentation context
* @param aPresContext presentation context
* @param aScrollableView returned scrollable view
* @return NS_OK on success
*/
static NS_EXPORT nsresult
GetPresContextScrollableView(nsIPresContext* aPresContext,
nsIScrollableView** aScrollableView);
/** Gets the device context for presentation context
* @param aPresContext presentation context
* @param aDeviceContext returned device context
* @return NS_OK on success
*/
static NS_EXPORT nsresult
GetPresContextDeviceContext(nsIPresContext* aPresContext,
nsIDeviceContext** aDeviceContext);
/** Gets the script context for document
* @param aDOMDocument document providing context
* @param aScriptContext returned script context
* @return NS_OK on success
*/
static NS_EXPORT nsresult
GetScriptContext(nsIDOMDocument* aDOMDocument,
nsIScriptContext** aScriptContext);
/** Executes script in specified document's context.
* @param aDOMDocument document providing context for script execution
* @param aScript string to be executed
* @param aOutput output string produced by script execution
* @return NS_OK if script was valid and got executed properly
*/
static NS_EXPORT nsresult
ExecuteScript(nsIDOMDocument* aDOMDocument,
const nsString& aScript,
nsString& aOutput);
/** Returns a timestamp string containing the local time, if at least
* deltaSec seconds have elapsed since the last timestamp. Otherwise,
* a null string is returned.
* @param deltaSec minimum elapsed seconds since last timestamp (>=0)
* @param lastTime in/out parameter containing time of last timestamp
* @param aTimeStamp returned timestamp string
* @return NS_OK on success
*/
static NS_EXPORT nsresult
TimeStamp(PRInt32 deltaSec, PRTime& lastTime,
nsString& aTimeStamp);
/** Returns a string containing a 11-digit random cookie based upon the
* current local time and the elapsed execution of the program.
* @param aCookie returned cookie string
* @return NS_OK on success
*/
static NS_EXPORT nsresult
RandomCookie(nsString& aCookie);
};
#endif /* _MOZXMLTERMUTILS_H */

View File

@@ -0,0 +1,770 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTerminal.cpp: implementation of mozIXMLTerminal interface
// to manage all XMLTerm operations.
// Creates a new mozXMLTermSession object to manage session input/output.
// Creates a mozLineTermAux object to access LineTerm operations.
// Creates key/text/mouse/drag listener objects to handle user events.
#include "nscore.h"
#include "nspr.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "nsIDocument.h"
#include "nsIDOMHTMLDocument.h"
#include "nsIDocumentViewer.h"
#include "nsIDocumentLoaderObserver.h"
#include "nsIObserver.h"
#include "nsIPresContext.h"
#include "nsIDOMEventReceiver.h"
#include "nsIDOMEventListener.h"
#include "nsIServiceManager.h"
#include "nsISupportsPrimitives.h"
#include "nsWidgetsCID.h"
#include "nsIClipboard.h"
#include "nsITransferable.h"
#include "mozXMLT.h"
#include "mozXMLTermUtils.h"
#include "mozXMLTerminal.h"
////////////////////////////////////////////////////////////////////////
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIXMLTerminalIID, MOZIXMLTERMINAL_IID);
static NS_DEFINE_IID(kXMLTerminalCID, MOZXMLTERMINAL_CID);
static NS_DEFINE_CID(kCClipboardCID, NS_CLIPBOARD_CID);
static NS_DEFINE_CID(kCTransferableCID, NS_TRANSFERABLE_CID);
/////////////////////////////////////////////////////////////////////////
// mozXMLTerminal factory
/////////////////////////////////////////////////////////////////////////
nsresult
NS_NewXMLTerminal(mozIXMLTerminal** aXMLTerminal)
{
NS_PRECONDITION(aXMLTerminal != nsnull, "null ptr");
if (!aXMLTerminal)
return NS_ERROR_NULL_POINTER;
*aXMLTerminal = new mozXMLTerminal();
if (! *aXMLTerminal)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aXMLTerminal);
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozXMLTerminal implementation
/////////////////////////////////////////////////////////////////////////
mozXMLTerminal::mozXMLTerminal() :
mInitialized(PR_FALSE),
mCookie(""),
mCommand(""),
mPromptExpr(""),
mFirstInput(""),
mXMLTermShell(nsnull),
mWebShell(nsnull),
mPresShell(nsnull),
mDOMDocument(nsnull),
mXMLTermSession(nsnull),
mLineTermAux(nsnull),
mKeyListener(nsnull),
mTextListener(nsnull),
mMouseListener(nsnull),
mDragListener(nsnull)
{
NS_INIT_REFCNT();
}
mozXMLTerminal::~mozXMLTerminal()
{
if (mInitialized) {
Finalize();
}
}
// Implement AddRef and Release
NS_IMPL_ADDREF(mozXMLTerminal)
NS_IMPL_RELEASE(mozXMLTerminal)
NS_IMETHODIMP
mozXMLTerminal::QueryInterface(REFNSIID aIID,void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if ( aIID.Equals(kISupportsIID)) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(mozIXMLTerminal*,this));
} else if ( aIID.Equals(mozIXMLTerminal::GetIID()) ) {
*aInstancePtr = NS_STATIC_CAST(mozIXMLTerminal*,this);
} else if (aIID.Equals(nsIDocumentLoaderObserver::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIDocumentLoaderObserver*,this);
} else if (aIID.Equals(nsIObserver::GetIID())) {
*aInstancePtr = NS_STATIC_CAST(nsIObserver*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
XMLT_LOG(mozXMLTerminal::QueryInterface,20,("mRefCnt = %d\n", mRefCnt));
return NS_OK;
}
NS_IMETHODIMP mozXMLTerminal::GetCurrentEntryNumber(PRInt32 *aNumber)
{
if (mXMLTermSession) {
return mXMLTermSession->GetCurrentEntryNumber(aNumber);
} else {
return NS_ERROR_FAILURE;
}
}
NS_IMETHODIMP mozXMLTerminal::GetHistory(PRInt32 *aHistory)
{
if (mXMLTermSession) {
return mXMLTermSession->GetHistory(aHistory);
} else {
return NS_ERROR_FAILURE;
}
}
NS_IMETHODIMP mozXMLTerminal::SetHistory(PRInt32 aHistory)
{
if (mXMLTermSession) {
return mXMLTermSession->SetHistory(aHistory);
} else {
return NS_ERROR_FAILURE;
}
}
NS_IMETHODIMP mozXMLTerminal::GetPrompt(PRUnichar **aPrompt)
{
if (mXMLTermSession) {
return mXMLTermSession->GetPrompt(aPrompt);
} else {
return NS_ERROR_FAILURE;
}
}
NS_IMETHODIMP mozXMLTerminal::SetPrompt(const PRUnichar* aPrompt)
{
if (mXMLTermSession) {
return mXMLTermSession->SetPrompt(aPrompt);
} else {
return NS_ERROR_FAILURE;
}
}
// Initialize by starting load of Init page for XMLTerm
NS_IMETHODIMP mozXMLTerminal::Init(nsIWebShell* aWebShell,
mozIXMLTermShell* aXMLTermShell,
const PRUnichar* aURL,
const PRUnichar* args)
{
XMLT_LOG(mozXMLTerminal::Init,20,("\n"));
if (!aWebShell)
return NS_ERROR_NULL_POINTER;
if (mWebShell)
return NS_ERROR_ALREADY_INITIALIZED;
mWebShell = aWebShell; // containing webshell; no addref
mXMLTermShell = aXMLTermShell; // containing xmlterm shell; no addref
nsresult result = NS_OK;
// NOTE: Need to parse args string!!!
mCommand = "";
mPromptExpr = "";
mFirstInput = args;
// Initialization completed
mInitialized = PR_TRUE;
if ((aURL != nsnull) && (*aURL != 0)) {
// Load URL and activate XMLTerm after loading
XMLT_LOG(mozXMLTerminal::Init,22,("setting DocLoaderObs\n"));
// About to create owning reference to this
result = mWebShell->SetDocLoaderObserver((nsIDocumentLoaderObserver*)this);
if (NS_FAILED(result))
return NS_ERROR_FAILURE;
XMLT_LOG(mozXMLTerminal::Init,22,("done setting DocLoaderObs\n"));
// Load initial XMLterm background document
nsAutoString urlString(aURL);
result = mWebShell->LoadURL(urlString.GetUnicode());
if (NS_FAILED(result))
return NS_ERROR_FAILURE;
} else {
// Document already loaded; activate XMLTerm
result = Activate();
if (NS_FAILED(result))
return NS_ERROR_FAILURE;
}
XMLT_LOG(mozXMLTerminal::Init,21,("exiting\n"));
return result;
}
// De-initialize XMLTerminal
NS_IMETHODIMP mozXMLTerminal::Finalize(void)
{
if (mXMLTermSession) {
// Finalize XMLTermSession object and delete it (it is not ref. counted)
mXMLTermSession->Finalize();
delete mXMLTermSession;
mXMLTermSession = nsnull;
}
if (mDOMDocument) {
// Release any event listeners for the document
nsCOMPtr<nsIDOMEventReceiver> eventReceiver;
nsresult result = mDOMDocument->QueryInterface(nsIDOMEventReceiver::GetIID(), getter_AddRefs(eventReceiver));
if (NS_SUCCEEDED(result) && eventReceiver) {
if (mKeyListener) {
eventReceiver->RemoveEventListenerByIID(mKeyListener,
nsIDOMKeyListener::GetIID());
mKeyListener = nsnull;
}
if (mTextListener) {
eventReceiver->RemoveEventListenerByIID(mTextListener,
nsIDOMTextListener::GetIID());
mTextListener = nsnull;
}
if (mMouseListener) {
eventReceiver->RemoveEventListenerByIID(mMouseListener,
nsIDOMMouseListener::GetIID());
mMouseListener = nsnull;
}
if (mDragListener) {
eventReceiver->RemoveEventListenerByIID(mDragListener,
nsIDOMDragListener::GetIID());
mDragListener = nsnull;
}
}
mDOMDocument = nsnull;
}
if (mLineTermAux) {
// Finalize and release reference to LineTerm object owned by us
mLineTermAux->CloseAux();
mLineTermAux = nsnull;
}
if (mWebShell) {
// Stop observing document loading
mWebShell->SetDocLoaderObserver((nsIDocumentLoaderObserver *)nsnull);
mWebShell = nsnull;
}
mPresShell = nsnull;
mXMLTermShell = nsnull;
mInitialized = PR_FALSE;
return NS_OK;
}
/** Activates XMLterm and instantiates LineTerm;
* called at the the end of Init page loading.
*/
NS_IMETHODIMP mozXMLTerminal::Activate(void)
{
nsresult result = NS_OK;
#if 0
// TEMPORARY: Testing mozIXMLTermStream
nsAutoString streamData = "<HTML><HEAD><TITLE>Stream Title</TITLE>"
"<SCRIPT language='JavaScript'>"
"function clik(){ dump('click\\n');return(false);}"
"</SCRIPT></HEAD>"
"<BODY><B>Stream Body "
"<SPAN STYLE='color: blue' onClick='return clik();'>Clik</SPAN></B><BR>"
"<TABLE WIDTH=720><TR><TD WIDTH=700 BGCOLOR=maroon>&nbsp;</TABLE>"
"<BR>ABCD<BR>EFGH<BR>JKLM<BR>"
"</BODY></HTML>";
nsCOMPtr<mozIXMLTermStream> stream;
result = NS_NewXMLTermStream(getter_AddRefs(stream));
if (NS_FAILED(result)) {
fprintf(stderr, "mozXMLTerminal::Activate: Failed to create stream\n");
return result;
}
nsCOMPtr<nsIDOMWindow> outerDOMWindow;
result = mozXMLTermUtils::ConvertWebShellToDOMWindow(mWebShell,
getter_AddRefs(outerDOMWindow));
if (NS_FAILED(result) || !outerDOMWindow)
return NS_ERROR_FAILURE;
result = stream->Open(outerDOMWindow, "iframe1", "chrome://dummy",
"text/html", 800);
if (NS_FAILED(result)) {
fprintf(stderr, "mozXMLTerminal::Activate: Failed to open stream\n");
return result;
}
result = stream->Write(streamData.GetUnicode());
if (NS_FAILED(result)) {
fprintf(stderr, "mozXMLTerminal::Activate: Failed to write to stream\n");
return result;
}
result = stream->Close();
if (NS_FAILED(result)) {
fprintf(stderr, "mozXMLTerminal::Activate: Failed to close stream\n");
return result;
}
#endif
XMLT_LOG(mozXMLTerminal::Activate,20,("\n"));
if (!mInitialized)
return NS_ERROR_NOT_INITIALIZED;
PR_ASSERT(mWebShell != nsnull);
if ((mDOMDocument != nsnull) || (mPresShell != nsnull))
return NS_ERROR_FAILURE;
// Get reference to DOMDocument
nsCOMPtr<nsIDOMDocument> domDocument;
result = mozXMLTermUtils::GetWebShellDOMDocument(mWebShell,
getter_AddRefs(domDocument));
if (NS_FAILED(result) || !domDocument)
return NS_ERROR_FAILURE;
// Get reference to presentation shell
if (mPresShell != nsnull)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIPresContext> presContext;
result = mozXMLTermUtils::GetWebShellPresContext(mWebShell,
getter_AddRefs(presContext));
if (NS_FAILED(result) || !presContext)
return NS_ERROR_FAILURE;
nsCOMPtr<nsIPresShell> presShell;
result = presContext->GetShell(getter_AddRefs(presShell));
if (NS_FAILED(result) || !presShell)
return NS_ERROR_FAILURE;
// Save references to DOMDocument and presentation shell
// (SVN: Should these be addref'ed and released in the destructor?)
mDOMDocument = domDocument; // no addref
mPresShell = presShell; // no addref
// Instantiate and initialize XMLTermSession object
mXMLTermSession = new mozXMLTermSession();
if (!mXMLTermSession) {
return NS_ERROR_OUT_OF_MEMORY;
}
result = mXMLTermSession->Init(this, mPresShell, mDOMDocument);
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to initialize XMLTermSession\n");
return NS_ERROR_FAILURE;
}
// Instantiate LineTerm
XMLT_LOG(mozXMLTerminal::Activate,22,("instantiating lineterm\n"));
result = NS_NewLineTermAux(getter_AddRefs(mLineTermAux));
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to instantiate LineTermAux\n");
return result;
}
// Open LineTerm to execute command
// Non-owning reference to this; delete LineTerm before deleting self
PRInt32 options = LTERM_NOSTDERR_FLAG;
XMLT_LOG(mozXMLTerminal::Activate,22,("Opening LineTerm\n"));
nsCOMPtr<nsIObserver> anObserver = this;
#ifdef NO_CALLBACK
anObserver = nsnull;
#endif
nsAutoString cookie;
result = mLineTermAux->OpenAux(mCommand.GetUnicode(),
mPromptExpr.GetUnicode(),
options, LTERM_DETERMINE_PROCESS,
mDOMDocument, anObserver, cookie);
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to open LineTermAux\n");
return result;
}
XMLT_LOG(mozXMLTerminal::Activate,22,("Opened LineTerm\n"));
// Save cookie
mCookie = cookie;
if (mFirstInput.Length() > 0) {
// Send first input command line
result = SendTextAux(mFirstInput);
if (NS_FAILED(result))
return result;
}
// Get the DOM event receiver for document
nsCOMPtr<nsIDOMEventReceiver> eventReceiver;
result = mDOMDocument->QueryInterface(nsIDOMEventReceiver::GetIID(),
getter_AddRefs(eventReceiver));
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to get DOM receiver\n");
return result;
}
// Create a key listener
result = NS_NewXMLTermKeyListener(getter_AddRefs(mKeyListener), this);
if (NS_OK != result) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to get key listener\n");
return result;
}
// Register the key listener with the DOM event receiver
result = eventReceiver->AddEventListenerByIID(mKeyListener,
nsIDOMKeyListener::GetIID());
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to register key listener\n");
return result;
}
// Create a text listener
result = NS_NewXMLTermTextListener(getter_AddRefs(mTextListener), this);
if (NS_OK != result) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to get text listener\n");
return result;
}
// Register the text listener with the DOM event receiver
result = eventReceiver->AddEventListenerByIID(mTextListener,
nsIDOMTextListener::GetIID());
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to register text listener\n");
return result;
}
// Create a mouse listener
result = NS_NewXMLTermMouseListener(getter_AddRefs(mMouseListener), this);
if (NS_OK != result) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to get mouse listener\n");
return result;
}
// Register the mouse listener with the DOM event receiver
result = eventReceiver->AddEventListenerByIID(mMouseListener,
nsIDOMMouseListener::GetIID());
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to register mouse listener\n");
return result;
}
// Create a drag listener
result = NS_NewXMLTermDragListener(getter_AddRefs(mDragListener), this);
if (NS_OK != result) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to get drag listener\n");
return result;
}
// Register the drag listener with the DOM event receiver
result = eventReceiver->AddEventListenerByIID(mDragListener,
nsIDOMDragListener::GetIID());
if (NS_FAILED(result)) {
XMLT_WARNING("mozXMLTerminal::Activate: Warning - Failed to register drag listener\n");
return result;
}
return NS_OK;
}
// Transmit string to LineTerm (use saved cookie)
NS_IMETHODIMP mozXMLTerminal::SendTextAux(const nsString& aString)
{
return SendText(aString, mCookie.GetUnicode());
}
// Transmit string to LineTerm
NS_IMETHODIMP mozXMLTerminal::SendText(const nsString& aString,
const PRUnichar* aCookie)
{
nsresult result;
if (!mLineTermAux)
return NS_ERROR_FAILURE;
// Preprocess string and check if it is to be consumed
PRBool consumed = false;
result = mXMLTermSession->Preprocess(aString, consumed);
if (!consumed) {
result = mLineTermAux->Write(aString.GetUnicode(), aCookie);
if (NS_FAILED(result)) {
// Close LineTerm
mLineTermAux->Close(aCookie);
return NS_ERROR_FAILURE;
}
}
return NS_OK;
}
// Paste data from clipboard to terminal
NS_IMETHODIMP mozXMLTerminal::Paste()
{
nsresult result;
nsAutoString pasteString;
XMLT_LOG(mozXMLTerminal::Paste,20,("\n"));
// Get Clipboard service
NS_WITH_SERVICE (nsIClipboard, clipboard, kCClipboardCID, &result);
if ( NS_FAILED(result) )
return result;
// Generic transferable for getting clipboard data
nsCOMPtr<nsITransferable> trans;
result = nsComponentManager::CreateInstance(kCTransferableCID, nsnull,
nsITransferable::GetIID(),
(void**) getter_AddRefs(trans));
if (NS_FAILED(result) || !trans)
return NS_ERROR_FAILURE;
// DataFlavors to get out of transferable
trans->AddDataFlavor(kHTMLMime);
trans->AddDataFlavor(kTextMime);
// Get data from clipboard
result = clipboard->GetData(trans);
if (NS_FAILED(result))
return result;
char* bestFlavor = nsnull;
nsCOMPtr<nsISupports> genericDataObj;
PRUint32 objLen = 0;
result = trans->GetAnyTransferData(&bestFlavor,
getter_AddRefs(genericDataObj), &objLen);
if (NS_FAILED(result))
return result;
nsAutoString flavor ( bestFlavor );
char* temCStr = flavor.ToNewCString();
XMLT_LOG(mozXMLTerminal::Paste,20,("flavour=%s\n", temCStr));
nsAllocator::Free(temCStr);
if (flavor.Equals(kHTMLMime)) {
nsCOMPtr<nsISupportsWString> textDataObj ( do_QueryInterface(genericDataObj) );
if (textDataObj && objLen > 0) {
PRUnichar* text = nsnull;
textDataObj->ToString ( &text );
pasteString.SetString ( text, objLen / 2 );
result = SendTextAux(pasteString);
}
} else if (flavor.Equals(kTextMime)) {
nsCOMPtr<nsISupportsString> textDataObj ( do_QueryInterface(genericDataObj) );
if (textDataObj && objLen > 0) {
char* text = nsnull;
textDataObj->ToString ( &text );
pasteString.SetString ( text, objLen );
result = SendTextAux(pasteString);
}
}
nsAllocator::Free(bestFlavor);
return NS_OK;
}
// Poll for readable data from LineTerm
NS_IMETHODIMP mozXMLTerminal::Poll(void)
{
if (!mLineTermAux)
return NS_ERROR_NOT_INITIALIZED;
XMLT_LOG(mozXMLTerminal::Poll,20,("\n"));
return mXMLTermSession->ReadAll(mLineTermAux);
}
// Handle callback from LineTerm when new input/output needs to be displayed
NS_IMETHODIMP mozXMLTerminal::Observe(nsISupports *aSubject,
const PRUnichar *aTopic,
const PRUnichar *someData)
{
nsCOMPtr<mozILineTermAux> lineTermAux = do_QueryInterface(aSubject);
PR_ASSERT(lineTermAux != nsnull);
return mXMLTermSession->ReadAll(lineTermAux);
}
// Returns document associated with XMLTerminal
NS_IMETHODIMP mozXMLTerminal::GetDocument(nsIDOMDocument** aDoc)
{
if (!aDoc)
return NS_ERROR_NULL_POINTER;
*aDoc = nsnull;
NS_PRECONDITION(mDOMDocument, "bad state, null mDOMDocument");
if (!mDOMDocument)
return NS_ERROR_NOT_INITIALIZED;
return mDOMDocument->QueryInterface(nsIDOMDocument::GetIID(),
(void **)aDoc);
}
// Returns presentation shell associated with XMLTerm
NS_IMETHODIMP mozXMLTerminal::GetPresShell(nsIPresShell** aPresShell)
{
if (!aPresShell)
return NS_ERROR_NULL_POINTER;
*aPresShell = nsnull;
NS_PRECONDITION(mPresShell, "bad state, null mPresShell");
if (!mPresShell)
return NS_ERROR_NOT_INITIALIZED;
return mPresShell->QueryInterface(nsIPresShell::GetIID(),
(void **)aPresShell);
}
// nsIDocumentLoaderObserver methods
NS_IMETHODIMP
mozXMLTerminal::OnStartDocumentLoad(nsIDocumentLoader* loader, nsIURI* aURL,
const char* aCommand)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTerminal::OnEndDocumentLoad(nsIDocumentLoader* loader, nsIChannel* channel,
nsresult aStatus,
nsIDocumentLoaderObserver * aObserver)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTerminal::OnStartURLLoad(nsIDocumentLoader* loader,
nsIChannel* channel,
nsIContentViewer* aViewer)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTerminal::OnProgressURLLoad(nsIDocumentLoader* loader,
nsIChannel* channel, PRUint32 aProgress,
PRUint32 aProgressMax)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTerminal::OnStatusURLLoad(nsIDocumentLoader* loader,
nsIChannel* channel, nsString& aMsg)
{
return NS_OK;
}
NS_IMETHODIMP
mozXMLTerminal::OnEndURLLoad(nsIDocumentLoader* loader,
nsIChannel* channel, nsresult aStatus)
{
XMLT_LOG(mozXMLTerminal::OnEndURLLoad,20,("\n"));
// Activate XMLTerm
Activate();
return NS_OK;
}
NS_IMETHODIMP
mozXMLTerminal::HandleUnknownContentType(nsIDocumentLoader* loader,
nsIChannel* channel,
const char *aContentType,
const char *aCommand )
{
return NS_OK;
}

View File

@@ -0,0 +1,153 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozXMLTerminal.h: declaration of mozXMLTerminal
// which implements the mozIXMLTerminal interface
// to manage all XMLterm operations.
#include "nscore.h"
#include "nspr.h"
#include "nsCOMPtr.h"
#include "nsString.h"
#include "mozXMLT.h"
#include "mozILineTermAux.h"
#include "mozIXMLTerminal.h"
#include "mozXMLTermSession.h"
#include "mozXMLTermListeners.h"
#include "mozIXMLTermStream.h"
class mozXMLTerminal : public mozIXMLTerminal,
public nsIDocumentLoaderObserver,
public nsIObserver
{
public:
mozXMLTerminal();
virtual ~mozXMLTerminal();
// nsISupports interface
NS_DECL_ISUPPORTS
// mozIXMLTerminal interface
NS_IMETHOD Init(nsIWebShell* aWebShell,
mozIXMLTermShell* aXMLTermShell,
const PRUnichar* aURL,
const PRUnichar* args);
NS_IMETHOD Finalize(void);
NS_IMETHOD Poll(void);
NS_IMETHOD GetCurrentEntryNumber(PRInt32 *aNumber);
NS_IMETHOD GetHistory(PRInt32 *aHistory);
NS_IMETHOD SetHistory(PRInt32 aHistory);
NS_IMETHOD GetPrompt(PRUnichar **aPrompt);
NS_IMETHOD SetPrompt(const PRUnichar* aPrompt);
NS_IMETHOD SendTextAux(const nsString& aString);
NS_IMETHOD SendText(const nsString& aString, const PRUnichar* aCookie);
NS_IMETHOD Paste();
NS_IMETHOD GetDocument(nsIDOMDocument** aDoc);
NS_IMETHOD GetPresShell(nsIPresShell** aPresShell);
// nsIDocumentLoaderObserver interface
NS_IMETHOD OnStartDocumentLoad(nsIDocumentLoader* loader, nsIURI* aURL,
const char* aCommand);
NS_IMETHOD OnEndDocumentLoad(nsIDocumentLoader* loader, nsIChannel* channel,
nsresult aStatus,
nsIDocumentLoaderObserver * aObserver);
NS_IMETHOD OnStartURLLoad(nsIDocumentLoader* loader, nsIChannel* channel,
nsIContentViewer* aViewer);
NS_IMETHOD OnProgressURLLoad(nsIDocumentLoader* loader, nsIChannel* channel, PRUint32 aProgress,
PRUint32 aProgressMax);
NS_IMETHOD OnStatusURLLoad(nsIDocumentLoader* loader, nsIChannel* channel,
nsString& aMsg);
NS_IMETHOD OnEndURLLoad(nsIDocumentLoader* loader, nsIChannel* channel,
nsresult aStatus);
NS_IMETHOD HandleUnknownContentType(nsIDocumentLoader* loader,
nsIChannel* channel,
const char *aContentType,
const char *aCommand );
// nsIObserver interface
NS_IMETHOD Observe(nsISupports *aSubject, const PRUnichar *aTopic,
const PRUnichar *someData);
// Others
NS_IMETHOD Activate(void);
protected:
/** object initialization flag */
PRBool mInitialized;
/** cookie string used for authentication (stored in document.cookie) */
nsString mCookie;
nsString mCommand;
nsString mPromptExpr;
/** initial input string to be sent to LineTerm */
nsString mFirstInput;
/** non-owning reference to containing XMLTermShell object */
mozIXMLTermShell* mXMLTermShell;
/** non-owning reference to containing web shell */
nsIWebShell* mWebShell;
/** non-owning (??) reference to presentation shell for XMLterm */
nsIPresShell* mPresShell;
/** non-owning (??) reference to DOM document containing XMLterm */
nsIDOMDocument* mDOMDocument;
/** XMLTermSession object created by us (not reference counted) */
mozXMLTermSession* mXMLTermSession;
/** owning reference to LineTermAux object created by us */
nsCOMPtr<mozILineTermAux> mLineTermAux;
/** owning referencing to key listener object created by us */
nsCOMPtr<nsIDOMEventListener> mKeyListener;
/** owning referencing to text listener object created by us */
nsCOMPtr<nsIDOMEventListener> mTextListener;
/** owning referencing to mouse listener object created by us */
nsCOMPtr<nsIDOMEventListener> mMouseListener;
/** owning referencing to drag listener object created by us */
nsCOMPtr<nsIDOMEventListener> mDragListener;
};

View File

@@ -0,0 +1,512 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* ptystream.c: pseudo-TTY stream implementation
* CPP options:
* LINUX: for Linux2.0/glibc
* SOLARIS: for Solaris2.6
* NOERRMSG: for suppressing all error messages
* DEBUG: for printing some debugging output to STDERR
*/
/* system header files */
#include <termios.h>
#include <signal.h>
#include <sys/types.h>
#include <sys/fcntl.h>
#ifdef LINUX
#define __USE_BSD 1
#include <sys/ioctl.h>
#endif
#include <unistd.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
/* public declarations */
#include "ptystream.h"
/* private declarations */
static int openPTY(struct ptys *ptyp, int noblock);
static int attachToTTY(struct ptys *ptyp, int errfd, int noecho);
static int setTTYAttr(int ttyFD, int noecho);
static void pty_error(const char *errmsg, const char *errmsg2);
/* parameters */
#define C_CTL_C '\003' /* ^C */
#define C_CTL_D '\004' /* ^D */
#define C_CTL_H '\010' /* ^H */
#define C_CTL_O '\017' /* ^O */
#define C_CTL_Q '\021' /* ^Q */
#define C_CTL_R '\022' /* ^R */
#define C_CTL_S '\023' /* ^S */
#define C_CTL_U '\025' /* ^U */
#define C_CTL_V '\026' /* ^V */
#define C_CTL_W '\027' /* ^W */
#define C_CTL_Y '\031' /* ^Y */
#define C_CTL_Z '\032' /* ^Z */
#define C_CTL_BSL '\034' /* ^\ */
/* Disable special character functions */
#ifdef _POSIX_VDISABLE
#define VDISABLE _POSIX_VDISABLE
#else
#define VDISABLE 255
#endif
#define PTYCHAR1 "pqrstuvwxyzPQRSTUVWXYZ"
#define PTYCHAR2 "0123456789abcdef"
/* creates a new pseudo-TTY */
int pty_create(struct ptys *ptyp, char *const argv[],
int errfd, int noblock, int noecho, int noexport, int debug)
{
pid_t child_pid;
int errfd2;
if (!ptyp) {
pty_error("pty_create: NULL value for PTY structure", NULL);
return -1;
}
/* Set debug flag */
ptyp->debug = debug;
#ifdef DEBUG
if (ptyp->debug)
fprintf(stderr, "00-pty_create: errfd=%d, noblock=%d, noecho=%d, noexport=%d\n",
errfd, noblock, noecho, noexport);
#endif
/* Open PTY */
if (openPTY(ptyp, noblock) == -1) return -1;
/* Set default TTY size */
if (pty_resize(ptyp, 24, 80, 0, 0) != 0)
return -1;
if (errfd >= -1) {
/* No STDERR pipe */
ptyp->errpipeFD = -1;
errfd2 = errfd;
} else {
/* Create pipe to handle STDERR output */
int pipeFD[2];
if (pipe(pipeFD) == -1) {
pty_error("pty_create: STDERR pipe creation failed", NULL);
return -1;
}
/* Copy pipe file descriptors */
ptyp->errpipeFD = pipeFD[0];
errfd2 = pipeFD[1];
}
/* Fork a child process (VFORK) */
child_pid = vfork();
if (child_pid < 0) {
pty_error("pty_create: vfork failed", NULL);
return -1;
}
ptyp->pid = child_pid;
#ifdef DEBUG
if (ptyp->debug)
fprintf(stderr, "00-pty_create: Fork child pid = %d, initially attached to %s\n",
child_pid, ttyname(0));
#endif
if (child_pid == 0) {
/* Child process */
/* Attach child to slave TTY */
if (attachToTTY(ptyp, errfd2, noecho) == -1) return -1;
/* Set default signal handling */
signal(SIGINT, SIG_DFL);
signal(SIGQUIT, SIG_DFL);
signal(SIGCHLD, SIG_DFL);
/* Set ignore signal handling */
signal(SIGTSTP, SIG_IGN);
signal(SIGTTIN, SIG_IGN);
signal(SIGTTOU, SIG_IGN);
if (argv != NULL) {
/* Execute specified command with arguments */
if (noexport)
execve(argv[0], argv, NULL);
else
execvp(argv[0], argv);
pty_error("Error in executing command ", argv[0]);
return -1;
} else {
/* Execute $SHELL or /bin/sh by default */
char *shell = (char *) getenv("SHELL");
if ((shell == NULL) || (*shell == '\0'))
shell = "/bin/sh";
if (noexport)
execle(shell, shell, NULL, NULL);
else
execlp(shell, shell, NULL);
pty_error("pty_create: Error in executing command ", shell);
return -1;
}
}
if (errfd < -1) {
/* Close write end of STDERR pipe in parent process */
close(errfd2);
}
/* Return from parent */
return 0;
}
/* closes a pseudo-TTY */
int pty_close(struct ptys *ptyp)
{
if (!ptyp) {
pty_error("pty_close: NULL value for PTY structure", NULL);
return -1;
}
kill(ptyp->pid, SIGKILL);
ptyp->pid = 0;
close(ptyp->ptyFD);
ptyp->ptyFD = -1;
if (ptyp->errpipeFD >= 0) {
close(ptyp->errpipeFD);
ptyp->errpipeFD = -1;
}
return 0;
}
/* resizes a pseudo-TTY */
int pty_resize(struct ptys *ptyp, int rows, int cols,
int xpix, int ypix)
{
struct winsize wsize;
if (!ptyp) {
pty_error("pty_resize: NULL value for PTY structure", NULL);
return -1;
}
if (ioctl(ptyp->ptyFD, TIOCGWINSZ, &wsize ) == -1) {
pty_error("pty_resize: Failed to get TTY window size", NULL);
return -1;
}
/* Set TTY window size */
wsize.ws_row = (unsigned short) rows;
wsize.ws_col = (unsigned short) cols;
wsize.ws_xpixel = (unsigned short) xpix;
wsize.ws_ypixel = (unsigned short) ypix;
if (ioctl(ptyp->ptyFD, TIOCSWINSZ, &wsize ) == -1) {
pty_error("pty_resize: Failed to set TTY window size", NULL);
return -1;
}
return 0;
}
static int openPTY(struct ptys *ptyp, int noblock)
{
char ptyName[PTYNAMELEN+1], ttyName[PTYNAMELEN+1];
int plen, tlen, ptyFD, letIndex, devIndex;
(void) strncpy(ptyName, "/dev/pty??", PTYNAMELEN+1);
(void) strncpy(ttyName, "/dev/tty??", PTYNAMELEN+1);
plen = strlen(ptyName);
tlen = strlen(ttyName);
assert(ptyp != NULL);
assert(plen <= PTYNAMELEN);
assert(tlen <= PTYNAMELEN);
ptyFD = -1;
letIndex = 0;
while (PTYCHAR1[letIndex] && (ptyFD == -1)) {
ttyName[tlen - 2] =
ptyName[plen - 2] = PTYCHAR1 [letIndex];
devIndex = 0;
while (PTYCHAR2[devIndex] && (ptyFD == -1)) {
ttyName [tlen - 1] =
ptyName [plen - 1] = PTYCHAR2 [devIndex];
if ((ptyFD = open(ptyName, O_RDWR)) >= 0) {
if (access(ttyName, R_OK | W_OK) != 0) {
close(ptyFD);
ptyFD = -1;
}
}
devIndex++;
}
letIndex++;
}
if (ptyFD == -1) {
pty_error("openPTY: Unable to open pseudo-tty", NULL);
return -1;
}
if (noblock) {
/* Set non-blocking mode */
fcntl(ptyFD, F_SETFL, O_NDELAY);
}
strncpy(ptyp->ptydev, ptyName, PTYNAMELEN+1);
strncpy(ptyp->ttydev, ttyName, PTYNAMELEN+1);
ptyp->ptyFD = ptyFD;
#ifdef DEBUG
if (ptyp->debug)
fprintf(stderr, "00-openPTY: Opened pty %s on fd %d\n", ptyName, ptyFD);
#endif
return 0;
}
/* attaches new process to slave TTY */
static int attachToTTY(struct ptys *ptyp, int errfd, int noecho)
{
int ttyFD, fd, fdMax;
pid_t sid;
gid_t gid;
unsigned int ttyMode = 0622;
assert(ptyp != NULL);
/* Create new session */
sid = setsid();
#ifdef DEBUG
if (ptyp->debug)
fprintf(stderr, "00-attachToTTY: Returned %d from setsid\n", sid);
#endif
if (sid < 0) {
#ifndef NOERRMSG
perror("attachToTTY");
#endif
return -1;
}
if ((ttyFD = open(ptyp->ttydev, O_RDWR)) < 0) {
pty_error("attachToTTY: Unable to open slave tty ", ptyp->ttydev );
return -1;
}
#ifdef DEBUG
if (ptyp->debug)
fprintf(stderr,"00-attachToTTY: Attaching process %d to TTY %s on fd %d\n",
getpid(), ptyp->ttydev, ttyFD);
#endif
/* Change TTY ownership and permissions*/
gid = getgid();
fchown(ttyFD, getuid(), gid);
fchmod(ttyFD, ttyMode);
/* Set TTY attributes (this actually seems to be harmful; so commented out!)
*/
/* if (setTTYAttr(ttyFD, noecho) == -1) return -1; */
/* Redirect to specified descriptor or to PTY */
if (errfd >= 0) {
/* Redirect STDERR to specified file descriptor */
if (dup2(errfd, 2) == -1) {
pty_error("attachToTTY: Failed dup2 for specified stderr", NULL);
return -1;
}
} else {
/* Redirect STDERR to PTY */
if (dup2(ttyFD, 2) == -1) {
pty_error("attachToTTY: Failed dup2 for default stderr", NULL);
return -1;
}
}
/* Redirect STDIN and STDOUT to PTY */
if (dup2(ttyFD, 0) == -1) {
pty_error("attachToTTY: Failed dup2 for stdin", NULL);
return -1;
}
if (dup2(ttyFD, 1) == -1) {
pty_error("attachToTTY: Failed dup2 for stdout", NULL);
return -1;
}
/* Close all other file descriptors in child process */
fdMax = sysconf(_SC_OPEN_MAX);
for (fd = 3; fd < fdMax; fd++)
close(fd);
/* Set process group */
tcsetpgrp(0, sid);
/* close(open(ptyp->ttydev, O_RDWR, 0)); */
return 0;
}
/* sets slave TTY attributes (NOT USED) */
static int setTTYAttr(int ttyFD, int noecho)
{
struct termios tios;
/* Get TTY attributes */
if (tcgetattr(ttyFD, &tios ) == -1) {
#ifndef NOERRMSG
perror("setTTYAttr");
#endif
pty_error("setTTYattr: Failed to get TTY attributes", NULL);
return -1;
}
/* TERMIOS settings for TTY */
tios.c_cc[VINTR] = C_CTL_C;
tios.c_cc[VQUIT] = C_CTL_BSL;
tios.c_cc[VERASE] = C_CTL_H;
tios.c_cc[VKILL] = C_CTL_U;
tios.c_cc[VEOF] = C_CTL_D;
tios.c_cc[VEOL] = VDISABLE;
tios.c_cc[VEOL2] = VDISABLE;
#ifdef SOLARIS
tios.c_cc[VSWTCH] = VDISABLE;
#endif
tios.c_cc[VSTART] = C_CTL_Q;
tios.c_cc[VSTOP] = C_CTL_S;
tios.c_cc[VSUSP] = C_CTL_Z;
tios.c_cc[VREPRINT] = C_CTL_R;
tios.c_cc[VDISCARD] = C_CTL_O;
tios.c_cc[VWERASE] = C_CTL_W;
tios.c_cc[VLNEXT] = C_CTL_V;
tios.c_cc[VMIN] = 1; /* Wait for at least 1 char of input */
tios.c_cc[VTIME] = 0; /* Wait indefinitely (block) */
/* Input modes */
tios.c_iflag &= ~IUCLC; /* Disable map of upper case input to lower*/
tios.c_iflag &= ~IGNBRK; /* Do not ignore break */
tios.c_iflag &= ~BRKINT; /* Do not signal interrupt on break either */
/* Output modes */
tios.c_oflag &= ~OPOST; /* Disable output postprocessing */
tios.c_oflag &= ~ONLCR; /* Disable mapping of NL to CR-NL on output */
tios.c_oflag &= ~OLCUC; /* Disable map of lower case output to upper */
/* No output delays */
tios.c_oflag &= ~(NLDLY|CRDLY|TABDLY|BSDLY|VTDLY|FFDLY);
/* control modes */
tios.c_cflag |= (CS8 | CREAD);
/* line discipline modes */
if (noecho)
tios.c_lflag &= ~(ECHO | ECHOE | ECHOK | ECHOKE | ECHONL | ECHOPRT |
ECHOCTL); /* Disable echo */
else
tios.c_lflag |= (ECHO | ECHOE | ECHOK | ECHOKE | ECHONL | ECHOPRT |
ECHOCTL); /* Enable echo */
tios.c_lflag |= ISIG; /* Enable signals */
tios.c_lflag |= ICANON; /* Enable erase/kill and eof processing */
/* NOTE: tcsh does not echo to be turned off if TERM=xterm;
setting TERM=dumb allows echo to be turned off,
but command completion is turned off as well */
/* Set TTY attributes */
cfsetospeed (&tios, B38400);
cfsetispeed (&tios, B38400);
if (tcsetattr(ttyFD, TCSADRAIN, &tios ) == -1) {
#ifndef NOERRMSG
perror("setTTYAttr");
#endif
pty_error("setTTYattr: Failed to set TTY attributes", NULL);
return -1;
}
return 0;
}
/* displays an error message, optionally concatenated with another */
static void pty_error(const char *errmsg, const char *errmsg2) {
#ifndef NOERRMSG
if (errmsg != NULL) {
if (errmsg2 != NULL) {
fprintf(stderr, "%s%s\n", errmsg, errmsg2);
} else {
fprintf(stderr, "%s\n", errmsg);
}
}
#endif
}

View File

@@ -0,0 +1,92 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* ptystream.h: pseudo-TTY stream header
* (used by ltermPrivate.h)
*/
#ifndef _PTYSTREAM_H
#define _PTYSTREAM_H 1
#ifdef __cplusplus
extern "C" {
#endif
#define PTYNAMELEN 10 /* Length of PTY/TTY device name: /dev/pty?? */
struct ptys { /* PTY structure */
int ptyFD; /* PTY file descriptor (bi-directional) */
int errpipeFD; /* stderr pipe file descriptor (-1, if none) */
long pid; /* PTY child PID */
int debug; /* Debugging flag */
char ptydev[PTYNAMELEN+1]; /* PTY (master) name */
char ttydev[PTYNAMELEN+1]; /* TTY (slave) name */
};
/* creates a new pseudo-TTY (PTY) and also a new process attached to
* it to execute the command line contained in array ARGV.
* The PTY details are stored in the PTY structure PTYP.
* ERRFD is the file descriptor to which the STDERR output of the
* child process is directed.
* If ERRFD == -1, then the STDERR output is redirected to STDOUT.
* If ERRFD == -2, then a new pipe is created and STDERR is redirected
* through it.
* If NOBLOCK is true, enable non-blocking I/O on PTY.
* If NOECHO is true, tty echoing is turned off.
* If NOEXPORT is true, then the current environment is not exported
* to the new process.
* If DEBUG is true, debugging messages are printed to STDERR.
* Returns 0 on success and -1 on error.
*/
int pty_create(struct ptys *ptyp, char *const argv[],
int errfd, int noblock, int noecho, int noexport, int debug);
/* resizes the PTY, returning 0 on success and -1 on error */
int pty_resize(struct ptys *ptyp, int rows, int cols,
int xpix, int ypix);
/* closes the PTY and kills the associated child process, if still alive.
* Also close STDERR pipe, if open.
* Returns 0 on success and -1 on error.
*/
int pty_close(struct ptys *ptyp);
#ifdef __cplusplus
}
#endif
#endif /* _PTYSTREAM_H */

View File

@@ -0,0 +1,205 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* tracelog.c: Tracing/logging module implementation
*/
/* public declarations */
#include <stdlib.h>
#include <stdarg.h>
#include "unistring.h"
#include "tracelog.h"
/* private declarations */
/* TRACELOG global variable structure */
TlogGlobal tlogGlobal;
/** Initializes all TRACELOG operations and sets filestream for trace/log
* output. Setting filestream to NULL suppresses all output.
* (documented in tracelog.h)
*/
void tlog_init(FILE* fileStream)
{
int imodule;
fprintf(stderr, "tlog_init:\n");
/* Error output stream */
tlogGlobal.errorStream = fileStream;
/* Debugging is disabled initially */
tlogGlobal.debugOn = 0;
for (imodule=0; imodule<TLOG_MAXMODULES; imodule++) {
tlogGlobal.messageLevel[imodule] = 0;
tlogGlobal.functionList[imodule] = NULL;
}
}
/** Sets TRACELOG display levels for module IMODULE
* (documented in tracelog.h)
* @return 0 on success, or -1 on error.
*/
int tlog_set_level(int imodule, int messageLevel, const char *functionList)
{
int j;
fprintf(stderr, "tlog_set_level:%d, %d\n", imodule, messageLevel);
if ((imodule < 0) || (imodule >= TLOG_MAXMODULES))
return -1;
/* Message level */
tlogGlobal.messageLevel[imodule] = messageLevel;
if (messageLevel > 0) {
tlog_warning("tlog_set_level: module %d, messageLevel=%d\n",
imodule, messageLevel);
}
/* Free function list string */
free(tlogGlobal.functionList[imodule]);
if (functionList == NULL) {
tlogGlobal.functionList[imodule] = NULL;
} else {
/* Duplicate function list string */
int slen = strlen(functionList);
char *stem;
if (slen > 1000) slen = 1000;
stem = malloc((unsigned int) slen+3);
strncpy(&stem[1], functionList, (unsigned int) slen);
stem[0] = ':';
stem[slen+1] = ':';
stem[slen+2] = '\0';
tlogGlobal.functionList[imodule] = stem;
if (messageLevel > 0) {
tlog_warning("tlog_set_level: module %d, functionList=\"%s\"\n",
imodule, tlogGlobal.functionList[imodule]);
}
}
/* Turn on debugging only if needed */
tlogGlobal.debugOn = 0;
if (tlogGlobal.errorStream != NULL) {
for (j=0; j<TLOG_MAXMODULES; j++) {
if ((tlogGlobal.messageLevel[j] > 0) ||
(tlogGlobal.functionList != NULL))
tlogGlobal.debugOn = 1;
}
}
return 0;
}
/** Determines whether trace/log message is to be displayed for specified
* module at specified message level.
* @return 1 (true) if message should be displayed, 0 otherwise
*/
int tlog_test(int imodule, char *procstr, int level)
{
if (tlogGlobal.errorStream == NULL)
return 0;
if ((imodule < 0) || (imodule >= TLOG_MAXMODULES))
return 0;
if ( (level%10 <= tlogGlobal.messageLevel[imodule]%10) &&
( (level <= tlogGlobal.messageLevel[imodule]) ||
((tlogGlobal.functionList[imodule] != NULL) &&
( (strstr(tlogGlobal.functionList[imodule],procstr) != NULL) ||
(strstr(procstr,tlogGlobal.functionList[imodule]) != NULL)) ) )) {
/* Display message */
fprintf(tlogGlobal.errorStream, "%s%2d: ", procstr, level);
return 1;
}
return 0;
}
/** Displays an error message on the TRACELOG filestream */
void tlog_message(const char *format, ...)
{
va_list ap; /* pointer to variable length argument list */
if (tlogGlobal.errorStream == NULL)
return;
va_start(ap, format); /* make ap point to first unnamed arg */
vfprintf(tlogGlobal.errorStream, format, ap);
va_end(ap); /* clean up */
return;
}
/** Displays a warning message on the TRACELOG filestream */
void tlog_warning(const char *format, ...)
{
va_list ap; /* pointer to variable length argument list */
if ((tlogGlobal.errorStream == NULL) || !tlogGlobal.debugOn)
return;
va_start(ap, format); /* make ap point to first unnamed arg */
vfprintf(tlogGlobal.errorStream, format, ap);
va_end(ap); /* clean up */
return;
}
#ifdef _UNISTRING_H
#define MAXCOL 1024 /* Maximum columns in line buffer */
/** Displays an Unicode message on the TRACELOG filestream */
void tlog_unichar(const UNICHAR *buf, int count)
{
if (tlogGlobal.errorStream == NULL)
return;
fprintf(tlogGlobal.errorStream, "U(%d): ", count);
ucsprint(tlogGlobal.errorStream, buf, count);
fprintf(tlogGlobal.errorStream, "\n");
}
#endif

View File

@@ -0,0 +1,154 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* tracelog.h: Tracing/logging module header
* CPP options:
* DEBUG: to enable debugging output
* _UNISTRING_H: for unicode messages compatible with "unistring.h"
*/
#ifndef _TRACELOG_H
#define _TRACELOG_H 1
#include <stdio.h>
#include <string.h>
/* Trace/log macros (to be used after call to tlog_init to initialize):
* TLOG_ERROR: error message macro, e.g.,
* TLOG_ERROR(format, val1, val2);
* TOG_WARNING: warning message macro, e.g.,
* TLOG_WARNING(format, val1, val2);
* TLOG_PRINT: message logging macro, e.g., (no terminating semicolon)
* TLOG_PRINT(10,(format, val1, val2));
* (if UNISTRING module is being used)
* TLOG_UNICHAR: Unicode string logging macro, e.g., (no terminating semicolon)
* TLOG_UNICHAR(10,(label,str,count));
*/
/* Max. number of modules recognized by TRACELOG */
# define TLOG_MAXMODULES 50
#ifdef __cplusplus
extern "C" {
#endif
/* Initializes all TRACELOG operations;
* needs to be called before any other trace/log calls.
*
* FILESTREAM is the file stream to be used to print messages.
*
* Normally, only error messages are sent to FILESTREAM.
* If FILESTREAM is null, all output, including error output, is suppressed.
*/
void tlog_init(FILE* fileStream);
/** Set diagnostic message display level for module no. IMODULE.
* (0 <= IMODULE < TLOG_MAXMODULES)
*
* MESSAGELEVEL (>=0) specifies the diagnostic message display level:
* only diagnostic messages with level values >= MESSAGELEVEL are printed
* (For example, level 10, 11, ...: outermost level;
* level 20, 21, ...: next inner level;
* ...
* level 50, 51, ...: innermost level)
*
* The message SUBLEVEL threshold is defined as MESSAGELEVEL%10
* (ranging from 0 to 9).
* Only those diagnostic messages with sublevel values >= SUBLEVEL threshold
* are displayed
* Usually, the SUBLEVEL threshold values are interpreted as
* 0 => print single message per selected procedure.
* 1...9 => print only messages upto selected sublevel.
*
* Setting MESSAGELEVEL to zero and FUNCTIONLIST to null for all modules
* disables debugging and printing of warning messages.
* (This is the initial configuration following the call to lterm_init.)
* Setting MESSAGELEVEL to 1 for atleast one module enables debugging and
* causes warning messages for all modules to be printed.
*
* FUNCTIONLIST is a colon-separated string of function names, e.g.,
* "func_a:func_b".
* Trace/log messages for functions in this list are always output
* if debugging is enabled provided the sublevel values exceed the threshold,
* regardless of full message level values.
* If FUNCTIONLIST contains a single method name without a class name, or a
* class name without a method name, then the missing portion is assumed
* to be wild-carded.
*
* Returns 0 on success, -1 otherwise (i.e., for invalid module numbers)
*/
int tlog_set_level(int imodule, int messageLevel, const char *functionList);
int tlog_test(int imodule, char *procname, int level);
void tlog_message(const char *format, ...);
void tlog_warning(const char *format, ...);
/* TRACELOG global variables */
typedef struct {
FILE *errorStream; /* file stream for logging */
int debugOn;
int messageLevel[TLOG_MAXMODULES];
char *functionList[TLOG_MAXMODULES]; /* list of functions to be debugged */
} TlogGlobal;
extern TlogGlobal tlogGlobal;
#ifdef __cplusplus
}
#endif
#define TLOG_ERROR tlog_message
#define TLOG_WARNING tlog_warning
#define TLOG_PRINT(imodule,procname,level,args) \
do { \
if (tlogGlobal.debugOn && tlog_test(imodule,":" #procname ":",level)) { \
tlog_message args; \
} \
} while(0)
#ifdef _UNISTRING_H
void tlog_unichar(const UNICHAR *buf, int count);
#define TLOG_UNICHAR(imodule,procname,level,args) \
do { \
if (tlogGlobal.debugOn && tlog_test(imodule,":" #procname ":",level)) { \
tlog_unichar args; \
} \
} while(0)
#endif
#endif /* _TRACELOG_H */

View File

@@ -0,0 +1,186 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* unistring.c: Unicode string operations implementation */
/* public declarations */
#include "unistring.h"
/* private declarations */
/** Encodes Unicode string US with NUS characters into UTF8 string S with
* upto NS characters, returning the number of REMAINING Unicode characters
* and the number of ENCODED Utf8 characters
*/
void ucstoutf8(const UNICHAR* us, int nus, char* s, int ns,
int* remaining, int* encoded)
{
int j, k;
j = 0;
k = 0;
while ((j < ns) && (k < nus)) {
UNICHAR uch = us[k++];
if (uch < 0x0080) {
s[j++] = uch;
} else if (uch < 0x0800) {
if (j >= ns-1) break;
s[j++] = ((uch & 0x07C0) >> 6) | 0xC0;
s[j++] = (uch & 0x003F) | 0x80;
} else {
if (j >= ns-2) break;
s[j++] = ((uch & 0xF000) >> 12) | 0xE0;
s[j++] = ((uch & 0x0FC0) >> 6) | 0x80;
s[j++] = (uch & 0x003F) | 0x80;
}
}
if (remaining)
*remaining = nus - k;
if (encoded)
*encoded = j;
}
/** Decodes UTF8 string S with NS characters to Unicode string US with
* upto NUS characters, returning the number of REMAINING Utf8 characters
* and the number of DECODED Unicode characters.
* If skipNUL is non-zero, NUL input characters are skipped.
* returns 0 if successful,
* -1 if an error occurred during decoding
*/
int utf8toucs(const char* s, int ns, UNICHAR* us, int nus,
int skipNUL, int* remaining, int* decoded)
{
int j, k;
int retcode = 0;
j = 0;
k = 0;
while ((j < ns) && (k < nus)) {
char ch = s[j];
if (0x80 & ch) {
if (0x40 & ch) {
if (0x20 & ch) {
/* consume 3 */
if (j >= ns-2) break;
if ( (s[j+1] & 0x40) || !(s[j+1] & 0x80) ||
(s[j+2] & 0x40) || !(s[j+2] & 0x80) ) {
retcode = -1;
}
us[k++] = ((ch & 0x0F) << 12)
| ((s[j+1] & 0x3F) << 6)
| ( s[j+2] & 0x3F);
j += 3;
} else {
/* consume 2 */
if (j >= ns-1) break;
if ( (s[j+1] & 0x40) || !(s[j+1] & 0x80) ) {
retcode = -1;
}
us[k++] = ((ch & 0x1F) << 6)
| ( s[j+1] & 0x3F);
j += 2;
}
} else {
/* consume 1 (error) */
retcode = -1;
j++;
}
} else {
/* consume 1 */
if (ch || !skipNUL) {
us[k++] = ch;
}
j++;
}
}
if (remaining)
*remaining = ns - j;
if (decoded)
*decoded = k;
return retcode;
}
/** Prints Unicode string US with NUS characters to file stream STREAM,
* escaping non-printable ASCII characters and all non-ASCII characters
*/
void ucsprint(FILE* stream, const UNICHAR* us, int nus)
{
static const char hexDigits[17] = "0123456789abcdef";
UNICHAR uch;
int k;
for (k=0; k<nus; k++) {
uch = us[k];
if (uch < U_SPACE) {
/* ASCII control character */
fprintf(stream, "^%c", (char) uch+U_ATSIGN);
} else if (uch == U_CARET) {
/* Caret */
fprintf(stream, "^^");
} else if (uch < U_DEL) {
/* Printable ASCII character */
fprintf(stream, "%c", (char) uch);
} else {
/* DEL or non-ASCII character */
char esc_str[8]="&#0000;";
int j;
for (j=5; j>1; j--) {
esc_str[j] = hexDigits[uch%16];
uch = uch / 16;
}
fprintf(stream, "%s", esc_str);
}
}
}

View File

@@ -0,0 +1,277 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* unistring.h: Unicode string operations header
* (used by lineterm.h)
* CPP options:
* HAVE_WCSWCS: define is function wcswcs is available
* HAVE_WCSSTR: define is function wcsstr is available
*/
#ifndef _UNISTRING_H
#define _UNISTRING_H 1
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _WCHAR_H
#include "wchar.h"
#endif
#ifndef _STDIO_H
#include "stdio.h"
#endif
/* Unicode character type:
* Uses the wchar_t implementation for moment.
* Later we might implement a 16-bit UNICHAR type to save space
*/
typedef wchar_t UNICHAR;
/* Unicode string functions:
* use the wchar_t implementation for moment
*/
/** Encodes Unicode string US with NUS characters into UTF8 string S with
* upto NS characters, returning the number of REMAINING Unicode characters
* and the number of ENCODED Utf8 characters
*/
void ucstoutf8(const UNICHAR* us, int nus, char* s, int ns,
int* remaining, int* encoded);
/** Decodes UTF8 string S with NS characters to Unicode string US with
* upto NUS characters, returning the number of REMAINING Utf8 characters
* and the number of DECODED Unicode characters.
* If skipNUL is non-zero, NUL input characters are skipped.
* returns 0 if successful,
* -1 if an error occurred during decoding
*/
int utf8toucs(const char* s, int ns, UNICHAR* us, int nus,
int skipNUL, int* remaining, int* decoded);
/** Prints Unicode string US with NUS characters to file stream STREAM,
* escaping non-printable ASCII characters and all non-ASCII characters
*/
void ucsprint(FILE* stream, const UNICHAR* us, int nus);
#define ucscpy wcscpy
#define ucsncpy wcsncpy
#define ucscat wcscat
#define ucsncat wcsncat
#define ucscmp wcscmp
#define ucsncmp wcsncmp
#define ucschr wcschr
#define ucsrchr wcsrchr
#define ucsspn wcsspn
#define ucscspn wcscspn
#define ucspbrk wcspbrk
#ifdef HAVE_WCSWCS
#define ucsucs wcswcs
#else
#ifdef HAVE_WCSSTR
#define ucsucs wcsstr
#endif
#endif
#define ucslen wcslen
#define ucstok wcstok
/* unsigned short constants */
#define U_NUL 0x00U
#define U_CTL_A 0x01U
#define U_CTL_B 0x02U
#define U_CTL_C 0x03U
#define U_CTL_D 0x04U
#define U_CTL_E 0x05U
#define U_CTL_F 0x06U
#define U_BEL 0x07U /* ^G */
#define U_BACKSPACE 0x08U /* ^H */
#define U_TAB 0x09U /* ^I */
#define U_LINEFEED 0x0AU /* ^J */
#define U_CTL_K 0x0BU
#define U_CTL_L 0x0CU
#define U_CRETURN 0x0DU /* ^M */
#define U_CTL_N 0x0EU
#define U_CTL_O 0x0FU
#define U_CTL_P 0x10U
#define U_CTL_Q 0x11U
#define U_CTL_R 0x12U
#define U_CTL_S 0x13U
#define U_CTL_T 0x14U
#define U_CTL_U 0x15U
#define U_CTL_V 0x16U
#define U_CTL_W 0x17U
#define U_CTL_X 0x18U
#define U_CTL_Y 0x19U
#define U_CTL_Z 0x1AU
#define U_ESCAPE 0x1BU /* escape */
#define U_SPACE 0x20U /* space */
#define U_EXCLAMATION 0x21U /* ! */
#define U_DBLQUOTE 0x22U /* " */
#define U_NUMBER 0x23U /* # */
#define U_DOLLAR 0x24U /* $ */
#define U_PERCENT 0x25U /* % */
#define U_AMPERSAND 0x26U /* & */
#define U_SNGLQUOTE 0x27U /* ' */
#define U_LPAREN 0x28U /* ( */
#define U_RPAREN 0x29U /* ) */
#define U_STAR 0x2AU /* * */
#define U_PLUS 0x2BU /* + */
#define U_COMMA 0x2CU /* , */
#define U_DASH 0x2DU /* - */
#define U_PERIOD 0x2EU /* . */
#define U_SLASH 0x2FU /* / */
#define U_ZERO 0x30U /* 0 */
#define U_ONE 0x31U /* 1 */
#define U_TWO 0x32U /* 2 */
#define U_THREE 0x33U /* 3 */
#define U_FOUR 0x34U /* 4 */
#define U_FIVE 0x35U /* 5 */
#define U_SIX 0x36U /* 6 */
#define U_SEVEN 0x37U /* 7 */
#define U_EIGHT 0x38U /* 8 */
#define U_NINE 0x39U /* 9 */
#define U_COLON 0x3AU /* : */
#define U_SEMICOLON 0x3BU /* ; */
#define U_LESSTHAN 0x3CU /* < */
#define U_EQUALS 0x3DU /* = */
#define U_GREATERTHAN 0x3EU /* > */
#define U_QUERYMARK 0x3FU /* ? */
#define U_ATSIGN 0x40U /* @ */
#define U_A_CHAR 0x41U /* A */
#define U_B_CHAR 0x42U /* B */
#define U_C_CHAR 0x43U /* C */
#define U_D_CHAR 0x44U /* D */
#define U_E_CHAR 0x45U /* E */
#define U_F_CHAR 0x46U /* F */
#define U_G_CHAR 0x47U /* G */
#define U_H_CHAR 0x48U /* H */
#define U_I_CHAR 0x49U /* I */
#define U_J_CHAR 0x4AU /* J */
#define U_K_CHAR 0x4BU /* K */
#define U_L_CHAR 0x4CU /* L */
#define U_M_CHAR 0x4DU /* M */
#define U_N_CHAR 0x4EU /* N */
#define U_O_CHAR 0x4FU /* O */
#define U_P_CHAR 0x50U /* P */
#define U_Q_CHAR 0x51U /* Q */
#define U_R_CHAR 0x52U /* R */
#define U_S_CHAR 0x53U /* S */
#define U_T_CHAR 0x54U /* T */
#define U_U_CHAR 0x55U /* U */
#define U_V_CHAR 0x56U /* V */
#define U_W_CHAR 0x57U /* W */
#define U_X_CHAR 0x58U /* X */
#define U_Y_CHAR 0x59U /* Y */
#define U_Z_CHAR 0x5AU /* Z */
#define U_LBRACKET 0x5BU /* [ */
#define U_BACKSLASH 0x5CU /* \ */
#define U_RBRACKET 0x5DU /* ] */
#define U_CARET 0x5EU /* ^ */
#define U_UNDERSCORE 0x5FU /* _ */
#define U_BACKQUOTE 0x60U /* ` */
#define U_a_CHAR 0x61U /* a */
#define U_b_CHAR 0x62U /* b */
#define U_c_CHAR 0x63U /* c */
#define U_d_CHAR 0x64U /* d */
#define U_e_CHAR 0x65U /* e */
#define U_f_CHAR 0x66U /* f */
#define U_g_CHAR 0x67U /* g */
#define U_h_CHAR 0x68U /* h */
#define U_i_CHAR 0x69U /* i */
#define U_j_CHAR 0x6AU /* j */
#define U_k_CHAR 0x6BU /* k */
#define U_l_CHAR 0x6CU /* l */
#define U_m_CHAR 0x6DU /* m */
#define U_n_CHAR 0x6EU /* n */
#define U_o_CHAR 0x6FU /* o */
#define U_p_CHAR 0x70U /* p */
#define U_q_CHAR 0x71U /* q */
#define U_r_CHAR 0x72U /* r */
#define U_s_CHAR 0x73U /* s */
#define U_t_CHAR 0x74U /* t */
#define U_u_CHAR 0x75U /* u */
#define U_v_CHAR 0x76U /* v */
#define U_w_CHAR 0x77U /* w */
#define U_x_CHAR 0x78U /* x */
#define U_y_CHAR 0x79U /* y */
#define U_z_CHAR 0x7AU /* z */
#define U_LCURLY 0x7BU /* { */
#define U_VERTBAR 0x7CU /* | */
#define U_RCURLY 0x7DU /* } */
#define U_TILDE 0x7EU /* ~ */
#define U_DEL 0x7FU /* delete */
#define U_LATIN1LO 0xA0U /* lowest Latin1 extension character */
#define U_NOBRKSPACE 0xA0U /* no-break space */
#define U_LATIN1HI 0xFFU /* highest Latin1 extension character */
#define IS_ASCII_LETTER(x) ( (((x) >= U_A_CHAR) && ((x) <= U_Z_CHAR)) || \
(((x) >= U_a_CHAR) && ((x) <= U_z_CHAR)) )
#define IS_ASCII_DIGIT(x) ( ((x) >= U_ZERO) && ((x) <= U_NINE) )
#ifdef __cplusplus
}
#endif
#endif /* _UNISTRING_H */

View File

@@ -0,0 +1 @@
config --- Configuration info and Make rules

View File

@@ -0,0 +1,47 @@
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# autoconf.mk: autoconf info for stand-alone LineTerm only
# C compiler
CC = gcc
# C++ compiler
CXX = c++
# Library archive creation command
AR = ar cr $@
OS_INCLUDES =
OS_CFLAGS =
OS_CXXFLAGS =
OS_LDFLAGS =

View File

@@ -0,0 +1,93 @@
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# config.mk: config info for stand-alone LineTerm only
# Options
# DEBUG: debug option
# OS details
OS_ARCH := $(subst /,_,$(shell uname -s))
OS_RELEASE := $(shell uname -r)
ifneq (,$(filter Linux SunOS,$(OS_ARCH)))
OS_VERS := $(suffix $(OS_RELEASE))
OS_RELEASE := $(basename $(OS_RELEASE))
endif
OS_CONFIG := $(OS_ARCH)$(OS_RELEASE)
ifeq ($(OS_ARCH),Linux)
LIB_SUFFIX = a
RANLIB = /usr/bin/ranlib
endif
ifeq ($(OS_CONFIG),SunOS5)
LIB_SUFFIX = a
RANLIB = /bin/true
endif
# C++ compiler
CCC = $(CXX)
# OS flags
OS_CFLAGS += $(PLATFORM_FLAGS)
OS_CXXFLAGS += $(PLATFORM_FLAGS)
OS_LDFLAGS +=
# Object directory
OBJDIR = lib
# Library directory
LIBS_DIR = -L$(topsrcdir)/dist/$(OBJDIR)
# Distribution includes
LOCAL_INCLUDES += -I$(topsrcdir)/dist/include
# NSPR libraries
NSPR_LIBS = -lnspr3
#
# Debug option
#
ifdef DEBUG
OPTIMIZER = -g
DEFINES += -DDEBUG
else
OPTIMIZER =
endif
INCLUDES = $(LOCAL_INCLUDES) $(OS_INCLUDES)
CFLAGS = $(OPTIMIZER) $(OS_CFLAGS) $(DEFINES) $(INCLUDES)
CXXFLAGS = $(OPTIMIZER) $(OS_CXXFLAGS) $(DEFINES) $(INCLUDES)
LDFLAGS = $(OS_LDFLAGS)

View File

@@ -0,0 +1,157 @@
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# rules.mk: Make rules for stand-alone LineTerm only
# CAUTION: Dependency checking is very limited.
# For compilation, the only dependencies are on *.h files in the current
# directory and in the distribution include directory.
# When creating executables, there is additional dependency on
# all *.a files in the distribution object directory.
ifndef LIBRARY
ifdef LIBRARY_NAME
LIBRARY := lib$(LIBRARY_NAME).$(LIB_SUFFIX)
endif # LIBRARY_NAME
endif # LIBRARY
ifdef PROGRAM
PROGRAM := $(addprefix $(OBJDIR)/, $(PROGRAM))
endif
ifdef SIMPLE_PROGRAMS
SIMPLE_PROGRAMS := $(addprefix $(OBJDIR)/, $(SIMPLE_PROGRAMS))
endif
ifdef LIBRARY
LIBRARY := $(addprefix $(OBJDIR)/, $(LIBRARY))
endif
ifndef OBJS
OBJS = $(CSRCS:.c=.o) $(CPPSRCS:.cpp=.o)
endif
OBJS := $(addprefix $(OBJDIR)/, $(OBJS))
ifdef DIRS
LOOP_OVER_DIRS = \
@for d in $(DIRS); do \
if test -f $$d/Makefile; then \
set -e; \
echo "cd $$d; $(MAKE) $@"; \
oldDir=`pwd`; \
cd $$d; $(MAKE) $@; cd $$oldDir; \
set +e; \
else \
echo "Skipping non-directory $$d..."; \
fi; \
done
endif
ifndef PROGOBJS
PROGOBJS = $(OBJS)
endif
# Targets
all: export libs progs
export: $(EXPORTS)
ifneq (,$(EXPORTS))
+for x in $^; do \
rm $(topsrcdir)/dist/include/$$x; \
echo ln -s `pwd`/$$x $(topsrcdir)/dist/include/$$x; \
ln -s `pwd`/$$x $(topsrcdir)/dist/include/$$x; \
done
endif
+$(LOOP_OVER_DIRS)
libs: $(LIBRARY)
+$(LOOP_OVER_DIRS)
progs: $(SIMPLE_PROGRAMS)
+$(LOOP_OVER_DIRS)
clean:
-rm $(OBJDIR)/*
+$(LOOP_OVER_DIRS)
#
# Turn on C++ linking if we have any .cpp files
#
ifdef CPPSRCS
CPP_PROG_LINK = 1
endif
# Create single executable program (with limited dependency checking)
$(PROGRAM): $(PROGOBJS) $(wildcard $(topsrcdir)/dist/$(OBJDIR)/*.a)
ifeq ($(CPP_PROG_LINK),1)
$(CCC) -o $@ $(PROGOBJS) $(LDFLAGS) $(LIBS_DIR) $(LIBS))
else
$(CC) -o $@ $(PROGOBJS) $(LDFLAGS) $(LIBS_DIR) $(LIBS)
endif
# Create multiple simple executable programs (with limited dependency checking)
$(SIMPLE_PROGRAMS): $(OBJDIR)/%: $(OBJDIR)/%.o \
$(wildcard $(topsrcdir)/dist/$(OBJDIR)/*.a)
ifeq ($(CPP_PROG_LINK),1)
$(CCC) -o $@ $< $(LDFLAGS) $(LIBS_DIR) $(LIBS))
else
$(CC) -o $@ $< $(LDFLAGS) $(LIBS_DIR) $(LIBS)
endif
# Create library and export it
$(LIBRARY): $(OBJS)
$(AR) $(OBJS)
$(RANLIB) $@
-rm $(topsrcdir)/dist/$@
ln -s `pwd`/$@ $(topsrcdir)/dist/$@
# Compilation rules (with limited dependency checking)
$(OBJDIR)/%.o: %.c $(wildcard *.h) $(wildcard $(topsrcdir)/dist/include/*.h)
$(CC) -o $@ -c $(CFLAGS) $<
$(OBJDIR)/%.o: %.cpp $(wildcard *.h) $(wildcard $(topsrcdir)/dist/include/*.h)
$(CCC) -o $@ -c $(CXXFLAGS) $<
# Recognized suffixes
.SUFFIXES:
.SUFFIXES: .a .o .c .cpp .h .pl .class .java .html .mk .in
# Always recognized targets
.PHONY: all clean clobber clobber_all export install libs
# OS configuration
os_config:
@echo "OS_ARCH = $(OS_ARCH), OS_CONFIG=$(OS_CONFIG)"
@echo "OS_RELEASE=$(OS_RELEASE), OS_VERS=$(OS_VERS)"

View File

@@ -0,0 +1,102 @@
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# xmlterm_config.mk: XMLTERM-specific configuration options
# Options
# STAND_ALONE: compile outside Mozilla/NSPR environment
# DEBUG: debug option
# NO_WORKAROUND: disables workarounds to expose bugs
# USE_GTK_WIDGETS use GTK widget library
# USE_NSPR_BASE: use basic NSPR API (excluding I/O and process creation)
# USE_NSPR_IO: use NSPR I/O and process API instead of Unix API
# NO_PTY: force use of pipes rather than PTY for process communication
# NO_CALLBACK: do not use GTK callbacks to handle LineTerm output
# (use polling instead)
ifdef NO_WORKAROUND
DEFINES += -DNO_WORKAROUND
endif
#
# OS dependent options
#
ifneq (,$(filter-out Linux2.0 Linux2.2 SunOS5,$(OS_CONFIG)))
# Unsupported platform for PTY; use pipes for process communication
NO_PTY = 1
endif
ifeq ($(OS_ARCH),Linux)
DEFINES += -DLINUX -DHAVE_WCSSTR
endif
ifeq ($(OS_CONFIG),SunOS5)
DEFINES += -DSOLARIS -DHAVE_WCSWCS
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),gtk)
USE_GTK_WIDGETS = 1
endif
#
# Netscape Portable Runtime options
#
ifndef STAND_ALONE
# Use NSPR base
USE_NSPR_BASE = 1
endif
ifdef USE_GTK_WIDGETS
DEFINES += -DUSE_GTK_WIDGETS
else
# No callback
NO_CALLBACK = 1
endif
ifdef USE_NSPR_IO
DEFINES += -DUSE_NSPR_IO
USE_NSPR_BASE = 1
NO_CALLBACK = 1
endif
ifdef USE_NSPR_BASE
DEFINES += -DUSE_NSPR_BASE
LIBS += $(NSPR_LIBS)
endif
ifdef NO_PTY
DEFINES += -DNO_PTY
endif
ifdef NO_CALLBACK
DEFINES += -DNO_CALLBACK
endif

View File

@@ -0,0 +1 @@
dist --- Include and library files for LineTerm only

View File

@@ -0,0 +1,9 @@
Known bugs
----------
10 Nov 1999
1. Command line completion output duplicates command line
2. Early use of "xls -i" does not scroll properly

View File

@@ -0,0 +1,31 @@
"Finalize tree" to break XPCOM cycles and have clean shutdowns
--------------------------------------------------------------
XMLterm class embedding hierarchy
=================================
mozXMLTermShell (or ../geckoterm/mozGeckoTerm)
|
|
mozXMLTerminal
+-----------------+----------------+
| | |
mozXMLTermSession mozLineTermAux mozXMLTermListeners
| |
| |
mozXMLTermStream... (lineterm)
We would like to have clean shutdowns of an XMLterm, since we are using
external resources, e.g., a shell process or an rlogin process. However, the
XPCOM reference counting can hinder shutdowns, if there cycles. To avoid
that, the XMLterm interfaces have a Finalize or Close method. A shutdown
event triggers a call to the Finalize method of the root interface in the
"Finalize tree". When the Finalize method of any interface is called, it
first calls the Finalize methods of any child nodes in the Finalize tree, then
releases all the XPCOM references it owns, de-initializes itself and quietly
waits for its reference count to go to zero. In this "closed" state of the
interface, any attempts use it result in an error return.
The destructor of an object simply checks if all its interfaces have been
finalized, and calls the Finalize methods for any that have not been.
--

View File

@@ -0,0 +1,60 @@
XMLterm installation instructions for Linux binaries
----------------------------------------------------
*NOTE* This work in progress. User beware!
*NOTE* Check the XMLterm web site <http://xmlterm.org> for updates.
19 Nov 1999
1. First obtain the Mozilla Linux binary tar file
ftp://ftp.mozilla.org/pub/mozilla/releases/m11/mozilla-i686-pc-linux-gnu-M11.tar.gz"
and untar it in any convenient location. This will create a
directory named "package" containing the binaries.
2. Untar the XMLterm binary tar file "xmlterm-i686-pc-linux-gnu-M11.tar.gz"
in the "package" directory created above.
3. Type the following command in the "package" directory:
./mozilla chrome://xmlterm/content/xmlterm.html
This should create an XMLTerm in the browser window. Then click on
that window with the mouse to shift focus and start typing UNIX
commands.
**NOTE**
The command prompt is assumed to be terminated by one of the characters
"#$%>?", followed by a space. If this is not the case, many features will
not work. This restriction will be relaxed in the future.
4. To use the stand-alone XMLterm executable called "xmlterm",
type the following command in the "package" directory:
./run-mozilla.sh xmlterm
(The Mozilla component registry may need to be updated by running the
full browser using step 3 at least once before running "xmlterm".)
5. The command line can be edited using EMACS-style key bindings.
Command completion should also work with TCSH and BASH, as should history
recall.
6. By default, blue coloring is used to indicate clickable display elements.
Note that the prompt and the input command line are clickable.
(Of course, the appearance of XMLterm is completely configurable
using the CSS stylesheet chrome://xmlterm/skin/default/xmlterm.css)
After typing one or two commands, click on the prompt string of any previous
command to see what happens! Then click again on the same prompt string.
Also click on "Hide all output" button at the top of the document.
Clicking on a previous command line (to the right of the prompt) re-executes
the command.
7. The sample Perl script "xls", the iconic/hypertext version of the Unix
"ls" command, is also installed in the "package" directory. Adding
the "package" directory to your path should enable you to use the "xls"
command.
--

View File

@@ -0,0 +1,28 @@
Implementation issues
---------------------
16 Sep 1999
- Slowness due to DOM reflows
- Cursor positioning problems
- Scrolling problems
- Finding a slot in the "Tasks/Tools" menu on the browser menu bar
for an XMLterm menu with the following options:
shell
rlogin
telnet
About XMLterm
This needs to be done using XUL overlays.
- Drag and drop implementation; integrating XMLterm with Gnome/KDE/CDE
- Full screen implementation; determining screen size
- Inline floating frames to display stream output
--

View File

@@ -0,0 +1,602 @@
MOZILLA PUBLIC LICENSE
Version 1.1
---------
1. Definitions.
1.0.1. "Commercial Use" means distribution or otherwise making
the Covered Code available to a third party.
1.1. ''Contributor'' means each entity that creates or
contributes to the creation of Modifications.
1.2. ''Contributor Version'' means the combination of the
Original Code, prior Modifications used by a Contributor, and the
Modifications made by that particular Contributor.
1.3. ''Covered Code'' means the Original Code or Modifications or
the combination
of the Original Code and Modifications, in each case including
portions thereof.
1.4. ''Electronic Distribution Mechanism'' means a mechanism
generally
accepted in the software development community for the electronic
transfer of data.
1.5. ''Executable'' means Covered Code in any form other than
Source Code.
1.6. ''Initial Developer'' means the individual or entity
identified as the Initial Developer in the Source Code
notice required by Exhibit A.
1.7. ''Larger Work'' means a work which combines Covered Code or
portions thereof with code not governed by the terms of this
License.
1.8. ''License'' means this document.
1.8.1. "Licensable" means having the right to grant, to the
maximum extent possible, whether at the time of the initial grant
or subsequently acquired, any and all of the rights conveyed
herein.
1.9. ''Modifications'' means any addition to or deletion from the
substance or structure of either the Original Code or any
previous Modifications. When Covered Code is released as a series
of files, a Modification is: A. Any addition to or deletion from
the contents of a file containing Original Code or previous
Modifications.
B. Any new file that contains any part of the Original Code
or previous Modifications.
1.10. ''Original Code'' means Source Code of computer software
code which is described in the Source Code notice required by
Exhibit A as Original Code, and which, at the time of its release
under this License is not already Covered Code governed by this
License.
1.10.1. "Patent Claims" means any patent claim(s), now owned or
hereafter acquired, including without limitation, method,
process, and apparatus claims, in any patent Licensable by
grantor.
1.11. ''Source Code'' means the preferred form of the Covered
Code for making modifications to it, including all modules it
contains, plus any associated interface definition files, scripts
used to control compilation and installation of an Executable, or
source code differential comparisons against either the Original
Code or another well known, available Covered Code of the
Contributor's choice. The Source Code can be in a compressed or
archival form, provided the appropriate decompression or
de-archiving software is widely available for no charge.
1.12. "You'' (or "Your") means an individual or a legal entity
exercising rights under, and complying with all of the terms of,
this License or a future version of this License issued under
Section 6.1. For legal entities, "You'' includes any entity which
controls, is controlled by, or is under common control with
You. For purposes of this definition, "control'' means (a) the
power, direct or indirect, to cause the direction or management
of such entity, whether by contract or otherwise, or (b)
ownership of more than fifty percent (50%) of the outstanding
shares or beneficial ownership of such entity.
2. Source Code License.
2.1. The Initial Developer Grant. The Initial Developer hereby
grants You a world-wide, royalty-free, non-exclusive license,
subject to third party intellectual property claims: (a) under
intellectual property rights (other than patent or trademark)
Licensable by Initial Developer to use, reproduce, modify,
display, perform, sublicense and distribute the Original Code (or
portions thereof) with or without Modifications, and/or as part
of a Larger Work; and
(b) under Patents Claims infringed by the making, using or
selling of Original Code, to make, have made, use, practice,
sell, and offer for sale, and/or otherwise dispose of the
Original Code (or portions thereof).
(c) the licenses granted in this Section 2.1(a) and (b) are
effective on the date Initial Developer first distributes
Original Code under the terms of this License.
(d) Notwithstanding Section 2.1(b) above, no patent license
is granted: 1) for code that You delete from the Original
Code; 2) separate from the Original Code; or 3) for
infringements caused by: i) the modification of the Original
Code or ii) the combination of the Original Code with other
software or devices.
2.2. Contributor Grant. Subject to third party intellectual
property claims, each Contributor hereby grants You a world-wide,
royalty-free, non-exclusive license
(a) under intellectual property rights (other than patent or
trademark) Licensable by Contributor, to use, reproduce,
modify, display, perform, sublicense and distribute the
Modifications created by such Contributor (or portions
thereof) either on an unmodified basis, with other
Modifications, as Covered Code and/or as part of a Larger
Work; and
(b) under Patent Claims infringed by the making, using, or
selling of Modifications made by that Contributor either
alone and/or in combination with its Contributor Version (or
portions of such combination), to make, use, sell, offer for
sale, have made, and/or otherwise dispose of: 1)
Modifications made by that Contributor (or portions
thereof); and 2) the combination of Modifications made by
that Contributor with its Contributor Version (or portions
of such combination).
(c) the licenses granted in Sections 2.2(a) and 2.2(b) are
effective on the date Contributor first makes Commercial Use
of the Covered Code.
(d) Notwithstanding Section 2.2(b) above, no patent license
is granted: 1) for any code that Contributor has deleted from the
Contributor Version; 2) separate from the Contributor Version; 3) for
infringements caused by: i) third party modifications of Contributor
Version or ii) the combination of Modifications made by that
Contributor with other software (except as part of the Contributor
Version) or other devices; or 4) under Patent Claims infringed by
Covered Code in the absence of Modifications made by that Contributor.
3. Distribution Obligations.
3.1. Application of License. The Modifications which You create
or to which You contribute are governed by the terms of this
License, including without limitation Section 2.2. The Source
Code version of Covered Code may be distributed only under the
terms of this License or a future version of this License
released under Section 6.1, and You must include a copy of this
License with every copy of the Source Code You distribute. You
may not offer or impose any terms on any Source Code version that
alters or restricts the applicable version of this License or the
recipients' rights hereunder. However, You may include an
additional document offering the additional rights described in
Section 3.5.
3.2. Availability of Source Code. Any Modification which You
create or to which You contribute must be made available in
Source Code form under the terms of this License either on the
same media as an Executable version or via an accepted Electronic
Distribution Mechanism to anyone to whom you made an Executable
version available; and if made available via Electronic
Distribution Mechanism, must remain available for at least twelve
(12) months after the date it initially became available, or at
least six (6) months after a subsequent version of that
particular Modification has been made available to such
recipients. You are responsible for ensuring that the Source Code
version remains available even if the Electronic Distribution
Mechanism is maintained by a third party.
3.3. Description of Modifications. You must cause all Covered
Code to which You contribute to contain a file documenting the
changes You made to create that Covered Code and the date of any
change. You must include a prominent statement that the
Modification is derived, directly or indirectly, from Original
Code provided by the Initial Developer and including the name of
the Initial Developer in (a) the Source Code, and (b) in any
notice in an Executable version or related documentation in which
You describe the origin or ownership of the Covered Code.
3.4. Intellectual Property Matters (a) Third Party Claims. If
Contributor has knowledge that a license under a third
party's intellectual property rights is required to exercise
the rights granted by such Contributor under Sections 2.1 or
2.2, Contributor must include a text file with the Source
Code distribution titled "LEGAL'' which describes the claim
and the party making the claim in sufficient detail that a
recipient will know whom to contact. If Contributor obtains
such knowledge after the Modification is made available as
described in Section 3.2, Contributor shall promptly modify
the LEGAL file in all copies Contributor makes available
thereafter and shall take other steps (such as notifying
appropriate mailing lists or newsgroups) reasonably
calculated to inform those who received the Covered Code
that new knowledge has been obtained.
(b) Contributor APIs. If Contributor's Modifications
include an application programming interface and Contributor
has knowledge of patent licenses which are reasonably
necessary to implement that API, Contributor must also
include this information in the LEGAL file.
(c) Representations. Contributor represents that,
except as disclosed pursuant to Section 3.4(a) above,
Contributor believes that Contributor's Modifications are
Contributor's original creation(s) and/or Contributor has
sufficient rights to grant the rights conveyed by this
License.
3.5. Required Notices. You must duplicate the notice in Exhibit
A in each file of the Source Code. If it is not possible to put
such notice in a particular Source Code file due to its
structure, then You must include such notice in a location (such
as a relevant directory) where a user would be likely to look for
such a notice. If You created one or more Modification(s) You
may add your name as a Contributor to the notice described in
Exhibit A. You must also duplicate this License in any
documentation for the Source Code where You describe recipients'
rights or ownership rights relating to Covered Code. You may
choose to offer, and to charge a fee for, warranty, support,
indemnity or liability obligations to one or more recipients of
Covered Code. However, You may do so only on Your own behalf,
and not on behalf of the Initial Developer or any
Contributor. You must make it absolutely clear than any such
warranty, support, indemnity or liability obligation is offered
by You alone, and You hereby agree to indemnify the Initial
Developer and every Contributor for any liability incurred by the
Initial Developer or such Contributor as a result of warranty,
support, indemnity or liability terms You offer.
3.6. Distribution of Executable Versions. You may distribute
Covered Code in Executable form only if the requirements of
Section 3.1-3.5 have been met for that Covered Code, and if You
include a notice stating that the Source Code version of the
Covered Code is available under the terms of this License,
including a description of how and where You have fulfilled the
obligations of Section 3.2. The notice must be conspicuously
included in any notice in an Executable version, related
documentation or collateral in which You describe recipients'
rights relating to the Covered Code. You may distribute the
Executable version of Covered Code or ownership rights under a
license of Your choice, which may contain terms different from
this License, provided that You are in compliance with the terms
of this License and that the license for the Executable version
does not attempt to limit or alter the recipient's rights in the
Source Code version from the rights set forth in this License. If
You distribute the Executable version under a different license
You must make it absolutely clear that any terms which differ
from this License are offered by You alone, not by the Initial
Developer or any Contributor. You hereby agree to indemnify the
Initial Developer and every Contributor for any liability
incurred by the Initial Developer or such Contributor as a result
of any such terms You offer.
3.7. Larger Works. You may create a Larger Work by combining
Covered Code with other code not governed by the terms of this
License and distribute the Larger Work as a single product. In
such a case, You must make sure the requirements of this License
are fulfilled for the Covered Code.
4. Inability to Comply Due to Statute or Regulation.
If it is impossible for You to comply with any of the terms of
this License with respect to some or all of the Covered Code due
to statute, judicial order, or regulation then You must: (a)
comply with the terms of this License to the maximum extent
possible; and (b) describe the limitations and the code they
affect. Such description must be included in the LEGAL file
described in Section 3.4 and must be included with all
distributions of the Source Code. Except to the extent
prohibited by statute or regulation, such description must be
sufficiently detailed for a recipient of ordinary skill to be
able to understand it.
5. Application of this License.
This License applies to code to which the Initial Developer has
attached the notice in Exhibit A and to related Covered Code.
6. Versions of the License.
6.1. New Versions. Netscape Communications Corporation
(''Netscape'') may publish revised and/or new versions of the
License from time to time. Each version will be given a
distinguishing version number.
6.2. Effect of New Versions. Once Covered Code has been
published under a particular version of the License, You may
always continue to use it under the terms of that version. You
may also choose to use such Covered Code under the terms of any
subsequent version of the License published by Netscape. No one
other than Netscape has the right to modify the terms applicable
to Covered Code created under this License.
6.3. Derivative Works. If You create or use a modified version
of this License (which you may only do in order to apply it to
code which is not already Covered Code governed by this License),
You must (a) rename Your license so that the phrases ''Mozilla'',
''MOZILLAPL'', ''MOZPL'', ''Netscape'', "MPL", ''NPL'' or any
confusingly similar phrase do not appear in your license (except
to note that your license differs from this License) and (b)
otherwise make it clear that Your version of the license contains
terms which differ from the Mozilla Public License and Netscape
Public License. (Filling in the name of the Initial Developer,
Original Code or Contributor in the notice described in Exhibit A
shall not of themselves be deemed to be modifications of this
License.)
7. DISCLAIMER OF WARRANTY.
COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS'' BASIS,
WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE
IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR
NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE
OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE
DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY
OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING,
REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN
ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS
AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
8. TERMINATION.
8.1. This License and the rights granted hereunder will
terminate automatically if You fail to comply with terms herein
and fail to cure such breach within 30 days of becoming aware of
the breach. All sublicenses to the Covered Code which are
properly granted shall survive any termination of this
License. Provisions which, by their nature, must remain in effect
beyond the termination of this License shall survive.
8.2. If You initiate litigation by asserting a patent
infringement claim (excluding declatory judgment actions) against
Initial Developer or a Contributor (the Initial Developer or
Contributor against whom You file such action is referred to as
"Participant") alleging that:
(a) such Participant's Contributor Version directly or indirectly
infringes any patent, then any and all rights granted by such
Participant to You under Sections 2.1 and/or 2.2 of this License
shall, upon 60 days notice from Participant terminate
prospectively, unless if within 60 days after receipt of notice
You either: (i) agree in writing to pay Participant a mutually
agreeable reasonable royalty for Your past and future use of
Modifications made by such Participant, or (ii) withdraw Your
litigation claim with respect to the Contributor Version against
such Participant. If within 60 days of notice, a reasonable
royalty and payment arrangement are not mutually agreed upon in
writing by the parties or the litigation claim is not withdrawn,
the rights granted by Participant to You under Sections 2.1
and/or 2.2 automatically terminate at the expiration of the 60
day notice period specified above.
(b) any software, hardware, or device, other than such
Participant's Contributor Version, directly or indirectly
infringes any patent, then any rights granted to You by such
Participant under Sections 2.1(b) and 2.2(b) are revoked
effective as of the date You first made, used, sold, distributed,
or had made, Modifications made by that Participant.
8.3. If You assert a patent infringement claim against
Participant alleging that such Participant's Contributor Version
directly or indirectly infringes any patent where such claim is
resolved (such as by license or settlement) prior to the
initiation of patent infringement litigation, then the reasonable
value of the licenses granted by such Participant under Sections
2.1 or 2.2 shall be taken into account in determining the amount
or value of any payment or license.
8.4. In the event of termination under Sections 8.1 or 8.2
above, all end user license agreements (excluding distributors
and resellers) which have been validly granted by You or any
distributor hereunder prior to termination shall survive
termination.
9. LIMITATION OF LIABILITY.
UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT
(INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE
INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF
COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE
TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR
CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT
LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER
FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES
OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE
POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL
NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING
FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW
PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE
EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES,
SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
10. U.S. GOVERNMENT END USERS.
The Covered Code is a ''commercial item,'' as that term is
defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of
''commercial computer software'' and ''commercial computer
software documentation,'' as such terms are used in 48
C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and
48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all
U.S. Government End Users acquire Covered Code with only those
rights set forth herein.
11. MISCELLANEOUS.
This License represents the complete agreement concerning subject
matter hereof. If any provision of this License is held to be
unenforceable, such provision shall be reformed only to the
extent necessary to make it enforceable. This License shall be
governed by California law provisions (except to the extent
applicable law, if any, provides otherwise), excluding its
conflict-of-law provisions. With respect to disputes in which at
least one party is a citizen of, or an entity chartered or
registered to do business in the United States of America, any
litigation relating to this License shall be subject to the
jurisdiction of the Federal Courts of the Northern District of
California, with venue lying in Santa Clara County, California,
with the losing party responsible for costs, including without
limitation, court costs and reasonable attorneys' fees and
expenses. The application of the United Nations Convention on
Contracts for the International Sale of Goods is expressly
excluded. Any law or regulation which provides that the language
of a contract shall be construed against the drafter shall not
apply to this License.
12. RESPONSIBILITY FOR CLAIMS.
As between Initial Developer and the Contributors, each party is
responsible for claims and damages arising, directly or
indirectly, out of its utilization of rights under this License
and You agree to work with Initial Developer and Contributors to
distribute such responsibility on an equitable basis. Nothing
herein is intended or shall be deemed to constitute any admission
of liability.
13. MULTIPLE-LICENSED CODE.
Initial Developer may designate portions of the Covered Code as
?Multiple-Licensed?. ?Multiple-Licensed? means that the Initial
Developer permits you to utilize portions of the Covered Code
under Your choice of the NPL or the alternative licenses, if any,
specified by the Initial Developer in the file described in
Exhibit A.
EXHIBIT A -Mozilla Public License.
``The contents of this file are subject to the Mozilla Public
License Version 1.1 (the "License"); you may not use this file
except in compliance with the License. You may obtain a copy of
the License at http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS
IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
implied. See the License for the specific language governing
rights and limitations under the License.
The Original Code is ______________________________________.
The Initial Developer of the Original Code is
________________________. Portions created by
______________________ are Copyright (C) ______
_______________________. All Rights Reserved.
Contributor(s): ______________________________________.
Alternatively, the contents of this file may be used under the
terms of the _____ license (the ?[___] License?), in which case
the provisions of [______] License are applicable instead of
those above. If you wish to allow use of your version of this
file only under the terms of the [____] License and not to allow
others to use your version of this file under the MPL, indicate
your decision by deleting the provisions above and replace them
with the notice and other provisions required by the [___]
License. If you do not delete the provisions above, a recipient
may use your version of this file under either the MPL or the
[___] License."
[NOTE: The text of this Exhibit A may differ slightly from the
text of the notices in the Source Code files of the Original
Code. You should use the text of this Exhibit A rather than the
text found in the Original Code Source Code for Your
Modifications.]
----------------------------------------
AMENDMENTS
The Netscape Public License Version 1.1 ("NPL") consists of the
Mozilla Public License Version 1.1 with the following Amendments,
including Exhibit A-Netscape Public License. Files identified
with "Exhibit A-Netscape Public License" are governed by the
Netscape Public License Version 1.1.
Additional Terms applicable to the Netscape Public License.
I. Effect. These additional terms described in this Netscape
Public License -- Amendments shall apply to the Mozilla
Communicator client code and to all Covered Code under this
License.
II. ''Netscape's Branded Code'' means Covered Code that
Netscape distributes and/or permits others to distribute
under one or more trademark(s) which are controlled by
Netscape but which are not licensed for use under this
License.
III. Netscape and logo. This License does not grant any
rights to use the trademarks "Netscape'', the "Netscape N
and horizon'' logo or the "Netscape lighthouse" logo,
"Netcenter", "Gecko", "Java" or "JavaScript", "Smart
Browsing" even if such marks are included in the Original
Code or Modifications.
IV. Inability to Comply Due to Contractual Obligation.
Prior to licensing the Original Code under this License,
Netscape has licensed third party code for use in Netscape's
Branded Code. To the extent that Netscape is limited
contractually from making such third party code available
under this License, Netscape may choose to reintegrate such
code into Covered Code without being required to distribute
such code in Source Code form, even if such code would
otherwise be considered ''Modifications'' under this
License.
V. Use of Modifications and Covered Code by Initial
Developer. V.1. In General. The obligations of Section 3
apply to Netscape, except to the extent specified in this
Amendment, Section V.2 and V.3.
V.2. Other Products. Netscape may include Covered Code
in products other than the Netscape's Branded Code
which are released by Netscape during the two (2) years
following the release date of the Original Code,
without such additional products becoming subject to
the terms of this License, and may license such
additional products on different terms from those
contained in this License.
V.3. Alternative Licensing. Netscape may license the
Source Code of Netscape's Branded Code, including
Modifications incorporated therein, without such
Netscape Branded Code becoming subject to the terms of
this License, and may license such Netscape Branded
Code on different terms from those contained in this
License.
VI. Litigation. Notwithstanding the limitations of Section
11 above, the provisions regarding litigation in Section
11(a), (b) and (c) of the License shall apply to all
disputes relating to this License.
EXHIBIT A-Netscape Public License.
''The contents of this file are subject to the Netscape
Public License Version 1.1 (the "License"); you may not use
this file except in compliance with the License. You may
obtain a copy of the License at http://www.mozilla.org/NPL/
Software distributed under the License is distributed on an
"AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
or implied. See the License for the specific language
governing rights and limitations under the License.
The Original Code is Mozilla Communicator client code,
released March 31, 1998.
The Initial Developer of the Original Code is Netscape
Communications Corporation. Portions created by Netscape
are Copyright (C) 1998-1999 Netscape Communications
Corporation. All Rights Reserved.
Contributor(s): ______________________________________.
Alternatively, the contents of this file may be used under
the terms of the _____ license (the ?[___] License?), in
which case the provisions of [______] License are applicable
instead of those above. If you wish to allow use of your
version of this file only under the terms of the [____]
License and not to allow others to use your version of this
file under the NPL, indicate your decision by deleting the
provisions above and replace them with the notice and other
provisions required by the [___] License. If you do not
delete the provisions above, a recipient may use your
version of this file under either the NPL or the [___]
License."
Copyright © 1998 The Mozilla Organization.

View File

@@ -0,0 +1,36 @@
Portability issues
---------------------
16 Sep 1999
Much of the XMLterm code is cross-platform. Implementation features that
affect portability at the moment are:
1. Main event handling:
By default, the present implementation of XMLterm directly uses a GTK
call to set up a handler for XMLterm output events. This can be disabled
by setting NO_CALLBACK=1 in the make command line, and calling the
method mozIXMLTermShell::Poll() frequently to poll for readable output
from LineTerm.
(A better event/callback mechanism needs to be implemented.)
2. pseudo-TTY (PTY) operations:
The PTY interface for XMLterm is currently implemented only for
two platforms, Linux and Solaris. At some point, the PTY interface
should be ported to most Unix platforms. On platforms where PTY
operations are not implemented, the cross-platform NSPR process mechanism
is used to create a "slave" process. However, this process uses NSPR
pipes for communication, which prevents the use of terminal control
characters such as the most usefule Control-C. (Is there a way around
this restriction?)
What about Windows? It should be possible to use XMLterm even under Windows,
using the NSPR process/pipe functions for communication and
using the Cygwin utilities to simulate the Unix environment.
3. The lightweight GeckoTerm uses GTK.
4. The "unistring" module uses wchar functions which do not always have
the same names.
--

View File

@@ -0,0 +1,12 @@
doc --- Some implementation notes and documentation
This directory contains some rudimentary documentation and notes.
See the README file in the "base" directory (../base/README) for a brief
overview of XMLterm code architecture
For a discussion of XMLterm from the user's point of view, check the XMLterm
home page at <http://xmlterm.org>.
Eventually, an XMLterm project page at mozilla.org
<http://www.mozilla.org/projects/not-ready-yet/> will contain a description
of XMLterm architecture from a Mozilla developer's point of view.

View File

@@ -0,0 +1,22 @@
12 Sep 1999
Appending each output line separately, separated by <BR> elements, to a
displayed HTML document seems to be rather slow. See the file
base/mozXMLTermSession.cpp
As a workaround, multiple output lines are batched into a single <PRE>
element. This will basically only work for plain text output, without markup.
To disable this workaround and expose the "bug", create the XMLterm libraries
as described in the INSTALL file. Then execute the following to make the
"buggy" libraries:
cd base
rm mozXMLTermSession.o
make NO_WORKAROUND=1 mozXMLTermSession.o
make libs
(If you are using the "gterm" executable, you will need to re-make it as
well)
Now execute any command which produces several lines of output in an
XMLterm window.

View File

@@ -0,0 +1,19 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/

View File

@@ -0,0 +1,31 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/

View File

@@ -0,0 +1,109 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/geckoterm directory (stand alone XMLterm)
ifdef STAND_ALONE
DEPTH = ..
topsrcdir = ..
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
# Debug option
DEBUG = 1
# Program
PROGRAM = xmlterm
# Exported header files
EXPORTS = mozISimpleContainer.h
# Defines
DEFINES = $(TK_CFLAGS)
# C++ source files
CPPSRCS = nsSetupRegistry.cpp \
mozSimpleContainer.cpp \
mozGeckoTerm.cpp \
nsTimer.cpp \
$(NULL)
# Libraries to be linked
GTK_GLUE = -lgtksuperwin
XP_DIST_LIBS = \
-lraptorgfx \
-lmozjs \
-lxpcom \
$(JSJ_LIB) \
$(NULL)
XP_NS_UNDERBAR_CRAP = \
$(MOZ_NECKO_UTIL_LIBS) \
$(MOZ_TIMER_LIBS) \
$(MOZ_WIDGET_SUPPORT_LIBS) \
$(NULL)
XP_LIBS = \
$(XP_NS_UNDERBAR_CRAP) \
$(XP_DIST_LIBS) \
$(NSPR_LIBS) \
$(NULL)
ifdef DYNAMIC_LINK
# NOTE: a soft link needs to be created for libxmlterm.so in dist/bin
XMLTERM_LIBS = -lxmlterm
else
# Statically link the entire XMLTERM library
XMLTERM_LIBS = ../base/libxmlterm.a
endif
LIBS = \
$(GTK_GLUE) \
$(XP_LIBS) \
$(TK_LIBS) \
$(XMLTERM_LIBS) \
$(NULL)
include $(topsrcdir)/config/config.mk
include ../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,24 @@
geckoterm --- Stand-alone version of XMLterm using Gecko
This directory contains the files used to create the stand-alone XMLterm
executable, which runs independent of the browser. This would be the preferred
way to use XMLterm, so that it runs as a separate process and will not
crash if the browser does.
28 Nov 1999
FILES
=====
mozGeckoTerm.cpp Main program for stand-alone "xmlterm" executable
Uses GTK to create window
Uses mozIXMLTerminal to create XMLterm
Uses mozISimpleContainer for web shell container
mozISimpleContainer.h Simple WebShell container interface
mozSimpleContainer.cpp Implementation of mozISimpleContainer
nsSetupRegistry.cpp Just a copy of viewer's nSetupRegistry
nsTimer.cpp Implementation of timers using Gtk timer facility
--

View File

@@ -0,0 +1,3 @@
# Mozilla User Preferences
// This is a generated file!

View File

@@ -0,0 +1,5 @@
# Mozilla User Preferences
// This is a generated file!
pref("security.checkxpconnect", true);
pref("security.policy.default.htmldocument.cookie", "sameOrigin");

View File

@@ -0,0 +1,337 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozGeckoTerm.cpp: Stand-alone implementation of XMLterm using GTK
// and the Mozilla Layout engine
#include "stdio.h"
#include <gtk/gtk.h>
#if 0 // USE_SUPERWIN
#include "gtkmozarea.h"
#include "gdksuperwin.h"
#endif // USE_SUPERWIN
#include "nscore.h"
#include "nsCOMPtr.h"
#include "nsRepository.h"
#include "nsIComponentManager.h"
#include "nsIServiceManager.h"
#include "nsIEventQueueService.h"
#include "nsIPref.h"
#include "mozXMLTermUtils.h"
#include "mozISimpleContainer.h"
#include "mozIXMLTerminal.h"
#include "mozIXMLTermStream.h"
#define XMLTERM_DLL "libxmlterm"MOZ_DLL_SUFFIX
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIEventQueueServiceIID, NS_IEVENTQUEUESERVICE_IID);
static NS_DEFINE_IID(kEventQueueServiceCID, NS_EVENTQUEUESERVICE_CID);
static NS_DEFINE_IID(kIPrefIID, NS_IPREF_IID);
static NS_DEFINE_CID(kPrefCID, NS_PREF_CID);
static NS_DEFINE_IID(kLineTermCID, MOZLINETERM_CID);
static NS_DEFINE_IID(kXMLTermShellCID, MOZXMLTERMSHELL_CID);
extern "C" void NS_SetupRegistry();
nsCOMPtr<mozISimpleContainer> gSimpleContainer = nsnull;
nsCOMPtr<mozIXMLTerminal> gXMLTerminal = nsnull;
/** Processes thread events */
static void event_processor_callback(gpointer data,
gint source,
GdkInputCondition condition)
{
nsIEventQueue *eventQueue = (nsIEventQueue*)data;
eventQueue->ProcessPendingEvents();
//fprintf(stderr, "event_processor_callback:\n");
return;
}
static void event_processor_configure(GtkWidget *window,
GdkEvent *event,
GtkWidget *termWidget)
{
GtkAllocation *alloc = &GTK_WIDGET(termWidget)->allocation;
//fprintf(stderr, "event_processor_configure:\n");
// Resize web shell window
gSimpleContainer->Resize(alloc->width, alloc->height);
return;
}
/** Cleans up and exits */
static gint event_processor_quit(gpointer data,
gint source,
GdkInputCondition condition)
{
fprintf(stderr, "event_processor_quit:\n");
if (gXMLTerminal) {
// Finalize XMLTerm and release owning reference to it
gXMLTerminal->Finalize();
gXMLTerminal = nsnull;
}
// Delete reference to container
gSimpleContainer = nsnull;
gtk_main_quit();
return TRUE;
}
int main( int argc, char *argv[] )
{
GtkWidget *mainWin = NULL;
GtkWidget *vertBox = NULL;
GtkWidget *horBox = NULL;
GtkWidget *testButton = NULL;
#if 0 // USE_SUPERWIN
GdkSuperWin *termWidget = NULL;
GtkWidget *mozArea;
#else // USE_SUPERWIN
GtkWidget *termWidget = NULL;
#endif // !USE_SUPERWIN
nsIEventQueue *mEventQueue = nsnull;
nsresult result = NS_OK;
// Set up registry
NS_SetupRegistry();
// Register XMLTermShell and LineTerm interfaces
result = nsComponentManager::RegisterComponentLib(kLineTermCID,NULL,NULL,
XMLTERM_DLL, PR_FALSE, PR_FALSE);
printf("mozGeckoTerm: registered LineTerm, result=0x%x\n", result);
result = nsComponentManager::RegisterComponentLib(kXMLTermShellCID,NULL,NULL,
XMLTERM_DLL, PR_FALSE, PR_FALSE);
printf("mozGeckoTerm: registered XMLTermShell, result=0x%x\n", result);
// Get the event queue service
NS_WITH_SERVICE(nsIEventQueueService, eventQService,
kEventQueueServiceCID, &result);
if (NS_FAILED(result)) {
NS_ASSERTION("Could not obtain event queue service", PR_FALSE);
return result;
}
// Get the event queue for the thread.
result = eventQService->GetThreadEventQueue(PR_GetCurrentThread(),
&mEventQueue);
if (!mEventQueue) {
// Create the event queue for the thread
result = eventQService->CreateThreadEventQueue();
if (NS_FAILED(result)) {
NS_ASSERTION("Could not create the thread event queue", PR_FALSE);
return result;
}
// Get the event queue for the thread
result = eventQService->GetThreadEventQueue(PR_GetCurrentThread(), &mEventQueue);
if (NS_FAILED(result)) {
NS_ASSERTION("Could not obtain the thread event queue", PR_FALSE);
return result;
}
}
// Creat pref object
nsCOMPtr<nsIPref> mPref = nsnull;
result = nsComponentManager::CreateInstance(kPrefCID, NULL,
kIPrefIID, getter_AddRefs(mPref));
if (NS_FAILED(result)) {
NS_ASSERTION("Failed to create nsIPref object", PR_FALSE);
return result;
}
mPref->StartUp();
mPref->ReadUserPrefs();
// Initialize GTK library
gtk_set_locale();
gtk_init(&argc, &argv);
gdk_rgb_init();
mainWin = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size( GTK_WINDOW(mainWin), 600, 400);
gtk_window_set_title(GTK_WINDOW(mainWin), "XMLterm");
// VBox top level
vertBox = gtk_vbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(mainWin), vertBox);
gtk_widget_show(vertBox);
// HBox for toolbar
horBox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vertBox), horBox, FALSE, FALSE, 0);
testButton = gtk_button_new_with_label("Test");
gtk_box_pack_start (GTK_BOX (horBox), testButton, FALSE, FALSE, 0);
gtk_widget_show(testButton);
gtk_widget_show(horBox);
#if 0 // USE_SUPERWIN
gtk_window_set_policy(GTK_WINDOW(mainWin), PR_TRUE, PR_TRUE, PR_FALSE);
mozArea = gtk_mozarea_new();
gtk_container_add(GTK_CONTAINER(mainWin), mozArea);
gtk_widget_realize(GTK_WIDGET(mozArea));
termWidget = GTK_MOZAREA(mozArea)->superwin;
#else // USE_SUPERWIN
// XMLterm layout widget
termWidget = gtk_layout_new(NULL, NULL);
GTK_WIDGET_SET_FLAGS(termWidget, GTK_CAN_FOCUS);
gtk_widget_set_app_paintable(termWidget, TRUE);
gtk_box_pack_start(GTK_BOX(vertBox), termWidget, TRUE, TRUE, 0);
gtk_widget_show_all(termWidget);
gtk_widget_show(mainWin);
#endif // !USE_SUPERWIN
// Configure event handler
gtk_signal_connect_after( GTK_OBJECT(mainWin), "configure_event",
GTK_SIGNAL_FUNC(event_processor_configure),
termWidget);
// Cleanup and exit when window is deleted
gtk_signal_connect( GTK_OBJECT(mainWin), "delete_event",
GTK_SIGNAL_FUNC(event_processor_quit),
NULL);
// Check for input in the events queue file descriptor
gdk_input_add(mEventQueue->GetEventQueueSelectFD(),
GDK_INPUT_READ,
event_processor_callback,
mEventQueue);
// Create simple container
result = NS_NewSimpleContainer(getter_AddRefs(gSimpleContainer));
if (NS_FAILED(result) || !gSimpleContainer) {
return result; // Exit main program
}
// Determine window dimensions
GtkAllocation *alloc = &GTK_WIDGET(termWidget)->allocation;
// Initialize container to hold a web shell
result = gSimpleContainer->Init((nsNativeWidget *) termWidget,
alloc->width, alloc->height, mPref);
if (NS_FAILED(result)) {
return result; // Exit main program
}
// Get reference to web shell embedded in a simple container
nsCOMPtr<nsIWebShell> webShell;
result = gSimpleContainer->GetWebShell(*getter_AddRefs(webShell));
if (NS_FAILED(result) || !webShell) {
return result; // Exit main program
}
#if 0
// TEMPORARY: Testing mozIXMLTermStream
nsAutoString streamData = "<HTML><HEAD><TITLE>Stream Title</TITLE>"
"<SCRIPT language='JavaScript'>"
"function clik(){ dump('click\\n');return(false);}"
"</SCRIPT></HEAD>"
"<BODY><B>Stream Body "
"<SPAN STYLE='color: blue' onClick='return clik();'>Clik</SPAN></B>"
"</BODY></HTML>";
nsCOMPtr<mozIXMLTermStream> stream;
result = NS_NewXMLTermStream(getter_AddRefs(stream));
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to create stream\n");
return result;
}
nsCOMPtr<nsIDOMWindow> outerDOMWindow;
result = mozXMLTermUtils::ConvertWebShellToDOMWindow(webShell,
getter_AddRefs(outerDOMWindow));
if (NS_FAILED(result) || !outerDOMWindow)
return NS_ERROR_FAILURE;
result = stream->Open(outerDOMWindow, nsnull, "chrome://dummy", "text/html",
0);
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to open stream\n");
return result;
}
result = stream->Write(streamData.GetUnicode());
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to write to stream\n");
return result;
}
result = stream->Close();
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to close stream\n");
return result;
}
#else
// Load initial XMLterm document
result = gSimpleContainer->LoadURL(
"chrome://xmlterm/content/xmlterm.html");
if (NS_FAILED(result))
return result;
#endif
#if 0
// Create an XMLTERM and attach to web shell
result = NS_NewXMLTerminal(getter_AddRefs(gXMLTerminal));
if(!gXMLTerminal)
result = NS_ERROR_OUT_OF_MEMORY;
if (NS_SUCCEEDED(result)) {
result = gXMLTerminal->Init(webShell, nsnull, nsnull);
}
#endif
// Discard reference to web shell
webShell = nsnull;
// GTK event loop
gtk_main();
NS_IF_RELEASE(mEventQueue);
return 0;
}

View File

@@ -0,0 +1,318 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozGeckoTerm.cpp: Stand-alone implementation of XMLterm using GTK
// and the Mozilla Layout engine
#include "stdio.h"
#include <gtk/gtk.h>
#include "nscore.h"
#include "nsCOMPtr.h"
#include "nsRepository.h"
#include "nsIComponentManager.h"
#include "nsIServiceManager.h"
#include "nsIEventQueueService.h"
#include "nsIPref.h"
#include "mozXMLTermUtils.h"
#include "mozISimpleContainer.h"
#include "mozIXMLTerminal.h"
#include "mozIXMLTermStream.h"
#define XMLTERM_DLL "libxmlterm"MOZ_DLL_SUFFIX
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIEventQueueServiceIID, NS_IEVENTQUEUESERVICE_IID);
static NS_DEFINE_IID(kEventQueueServiceCID, NS_EVENTQUEUESERVICE_CID);
static NS_DEFINE_IID(kIPrefIID, NS_IPREF_IID);
static NS_DEFINE_CID(kPrefCID, NS_PREF_CID);
static NS_DEFINE_IID(kLineTermCID, MOZLINETERM_CID);
static NS_DEFINE_IID(kXMLTermShellCID, MOZXMLTERMSHELL_CID);
extern "C" void NS_SetupRegistry();
nsCOMPtr<mozISimpleContainer> gSimpleContainer = nsnull;
nsCOMPtr<mozIXMLTerminal> gXMLTerminal = nsnull;
/** Processes thread events */
static void event_processor_callback(gpointer data,
gint source,
GdkInputCondition condition)
{
nsIEventQueue *eventQueue = (nsIEventQueue*)data;
eventQueue->ProcessPendingEvents();
//fprintf(stderr, "event_processor_callback:\n");
return;
}
static void event_processor_configure(GtkWidget *window,
GdkEvent *event,
GtkWidget *termWidget)
{
GtkAllocation *alloc = &GTK_WIDGET(termWidget)->allocation;
//fprintf(stderr, "event_processor_configure:\n");
// Resize web shell window
gSimpleContainer->Resize(alloc->width, alloc->height);
return;
}
/** Cleans up and exits */
static gint event_processor_quit(gpointer data,
gint source,
GdkInputCondition condition)
{
fprintf(stderr, "event_processor_quit:\n");
if (gXMLTerminal) {
// Finalize XMLTerm and release owning reference to it
gXMLTerminal->Finalize();
gXMLTerminal = nsnull;
}
// Delete reference to container
gSimpleContainer = nsnull;
gtk_main_quit();
return TRUE;
}
int main( int argc, char *argv[] )
{
GtkWidget *mainWin = NULL;
GtkWidget *vertBox = NULL;
GtkWidget *horBox = NULL;
GtkWidget *testButton = NULL;
GtkWidget *termWidget = NULL;
nsIEventQueue *mEventQueue = nsnull;
nsresult result = NS_OK;
// Set up registry
NS_SetupRegistry();
// Register XMLTermShell and LineTerm interfaces
result = nsComponentManager::RegisterComponentLib(kLineTermCID,NULL,NULL,
XMLTERM_DLL, PR_FALSE, PR_FALSE);
printf("mozGeckoTerm: registered LineTerm, result=0x%x\n", result);
result = nsComponentManager::RegisterComponentLib(kXMLTermShellCID,NULL,NULL,
XMLTERM_DLL, PR_FALSE, PR_FALSE);
printf("mozGeckoTerm: registered XMLTermShell, result=0x%x\n", result);
// Get the event queue service
NS_WITH_SERVICE(nsIEventQueueService, eventQService,
kEventQueueServiceCID, &result);
if (NS_FAILED(result)) {
NS_ASSERTION("Could not obtain event queue service", PR_FALSE);
return result;
}
// Get the event queue for the thread.
result = eventQService->GetThreadEventQueue(PR_GetCurrentThread(),
&mEventQueue);
if (!mEventQueue) {
// Create the event queue for the thread
result = eventQService->CreateThreadEventQueue();
if (NS_FAILED(result)) {
NS_ASSERTION("Could not create the thread event queue", PR_FALSE);
return result;
}
// Get the event queue for the thread
result = eventQService->GetThreadEventQueue(PR_GetCurrentThread(), &mEventQueue);
if (NS_FAILED(result)) {
NS_ASSERTION("Could not obtain the thread event queue", PR_FALSE);
return result;
}
}
// Creat pref object
nsCOMPtr<nsIPref> mPref = nsnull;
result = nsComponentManager::CreateInstance(kPrefCID, NULL,
kIPrefIID, getter_AddRefs(mPref));
if (NS_FAILED(result)) {
NS_ASSERTION("Failed to create nsIPref object", PR_FALSE);
return result;
}
mPref->StartUp();
mPref->ReadUserPrefs();
// Initialize GTK library
gtk_set_locale();
gtk_init(&argc, &argv);
gdk_rgb_init();
mainWin = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size( GTK_WINDOW(mainWin), 600, 400);
gtk_window_set_title(GTK_WINDOW(mainWin), "XMLterm");
// VBox top level
vertBox = gtk_vbox_new(FALSE, 0);
gtk_container_add(GTK_CONTAINER(mainWin), vertBox);
gtk_widget_show(vertBox);
// HBox for toolbar
horBox = gtk_hbox_new(FALSE, 0);
gtk_box_pack_start(GTK_BOX(vertBox), horBox, FALSE, FALSE, 0);
testButton = gtk_button_new_with_label("Test");
gtk_box_pack_start (GTK_BOX (horBox), testButton, FALSE, FALSE, 0);
gtk_widget_show(testButton);
gtk_widget_show(horBox);
// XMLterm layout widget
termWidget = gtk_layout_new(NULL, NULL);
GTK_WIDGET_SET_FLAGS(termWidget, GTK_CAN_FOCUS);
gtk_widget_set_app_paintable(termWidget, TRUE);
gtk_box_pack_start(GTK_BOX(vertBox), termWidget, TRUE, TRUE, 0);
gtk_widget_show_all(termWidget);
gtk_widget_show(mainWin);
// Configure event handler
gtk_signal_connect_after( GTK_OBJECT(mainWin), "configure_event",
GTK_SIGNAL_FUNC(event_processor_configure),
termWidget);
// Cleanup and exit when window is deleted
gtk_signal_connect( GTK_OBJECT(mainWin), "delete_event",
GTK_SIGNAL_FUNC(event_processor_quit),
NULL);
// Check for input in the events queue file descriptor
gdk_input_add(mEventQueue->GetEventQueueSelectFD(),
GDK_INPUT_READ,
event_processor_callback,
mEventQueue);
// Create simple container
result = NS_NewSimpleContainer(getter_AddRefs(gSimpleContainer));
if (NS_FAILED(result) || !gSimpleContainer) {
return result; // Exit main program
}
// Determine window dimensions
GtkAllocation *alloc = &GTK_WIDGET(termWidget)->allocation;
// Initialize container it to hold a web shell
result = gSimpleContainer->Init((nsNativeWidget *) termWidget,
alloc->width, alloc->height, mPref);
if (NS_FAILED(result)) {
return result; // Exit main program
}
// Get reference to web shell embedded in a simple container
nsCOMPtr<nsIWebShell> webShell;
result = gSimpleContainer->GetWebShell(*getter_AddRefs(webShell));
if (NS_FAILED(result) || !webShell) {
return result; // Exit main program
}
#if 0
// TEMPORARY: Testing mozIXMLTermStream
nsAutoString streamData = "<HTML><HEAD><TITLE>Stream Title</TITLE>"
"<SCRIPT language='JavaScript'>"
"function clik(){ dump('click\\n');return(false);}"
"</SCRIPT></HEAD>"
"<BODY><B>Stream Body "
"<SPAN STYLE='color: blue' onClick='return clik();'>Clik</SPAN></B>"
"</BODY></HTML>";
nsCOMPtr<mozIXMLTermStream> stream;
result = NS_NewXMLTermStream(getter_AddRefs(stream));
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to create stream\n");
return result;
}
nsCOMPtr<nsIDOMWindow> outerDOMWindow;
result = mozXMLTermUtils::ConvertWebShellToDOMWindow(webShell,
getter_AddRefs(outerDOMWindow));
if (NS_FAILED(result) || !outerDOMWindow)
return NS_ERROR_FAILURE;
result = stream->Open(outerDOMWindow, nsnull, "chrome://dummy", "text/html",
0);
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to open stream\n");
return result;
}
result = stream->Write(streamData.GetUnicode());
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to write to stream\n");
return result;
}
result = stream->Close();
if (NS_FAILED(result)) {
fprintf(stderr, "mozGeckoTerm: Failed to close stream\n");
return result;
}
#else
// Load initial XMLterm document
result = gSimpleContainer->LoadURL(
"chrome://xmlterm/content/xmlterm.html");
if (NS_FAILED(result))
return result;
#endif
#if 0
// Create an XMLTERM and attach to web shell
result = NS_NewXMLTerminal(getter_AddRefs(gXMLTerminal));
if(!gXMLTerminal)
result = NS_ERROR_OUT_OF_MEMORY;
if (NS_SUCCEEDED(result)) {
result = gXMLTerminal->Init(webShell, nsnull, nsnull);
}
#endif
// Discard reference to web shell
webShell = nsnull;
// GTK event loop
gtk_main();
NS_IF_RELEASE(mEventQueue);
return 0;
}

View File

@@ -0,0 +1,134 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozISimpleContainer.h: a simple WebShell container interface
// for use in simple programs using the layout engine
// (unregistered interface)
#ifndef mozISimpleContainer_h___
#define mozISimpleContainer_h___
#include "nscore.h"
#include "nsISupports.h"
#include "nsIWebShell.h"
#include "nsIPref.h"
#include "nsIPresShell.h"
#include "nsIDOMDocument.h"
/* starting interface: mozISimpleContainer */
/* {0eb82bF0-43a2-11d3-8e76-006008948af5} */
#define MOZISIMPLE_CONTAINER_IID_STR "0eb82bF0-43a2-11d3-8e76-006008948af5"
#define MOZISIMPLE_CONTAINER_IID \
{0x0eb82bF0, 0x43a2, 0x11d3, \
{ 0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5 }}
class mozISimpleContainer : public nsIWebShellContainer {
public:
NS_DEFINE_STATIC_IID_ACCESSOR(MOZISIMPLE_CONTAINER_IID)
// nsIWebShellContainer interface
NS_IMETHOD WillLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
nsLoadType aReason) = 0;
NS_IMETHOD BeginLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL) = 0;
NS_IMETHOD ProgressLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
PRInt32 aProgress,
PRInt32 aProgressMax) = 0;
NS_IMETHOD EndLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
nsresult aStatus) = 0;
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
PRBool aVisible,
nsIWebShell *&aNewWebShell) = 0;
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName,
nsIWebShell*& aResult) = 0;
NS_IMETHOD ContentShellAdded(nsIWebShell* aChildShell,
nsIContent* frameNode) = 0;
NS_IMETHOD CreatePopup(nsIDOMElement* aElement,
nsIDOMElement* aPopupContent,
PRInt32 aXPos, PRInt32 aYPos,
const nsString& aPopupType,
const nsString& anAnchorAlignment,
const nsString& aPopupAlignment,
nsIDOMWindow* aWindow, nsIDOMWindow** outPopup) = 0;
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell,
PRBool& aFocusTaken) = 0;
// other
/** Initializes simple container for native window widget
* @param aNativeWidget native window widget (e.g., GtkWidget)
* @param width window width (pixels)
* @param height window height (pixels)
* @param aPref preferences object
*/
NS_IMETHOD Init(nsNativeWidget aNativeWidget,
PRInt32 width, PRInt32 height,
nsIPref* aPref) = 0;
/** Resizes container to new dimensions
* @param width new window width (pixels)
* @param height new window height (pixels)
*/
NS_IMETHOD Resize(PRInt32 aWidth, PRInt32 aHeight) = 0;
/** Loads specified URL into container
* @param aURL URL string
*/
NS_IMETHOD LoadURL(const char* aURL) = 0;
/** Gets web shell in container
* @param aWebShell (output) web shell object
*/
NS_IMETHOD GetWebShell(nsIWebShell*& aWebShell) = 0;
/** Gets DOM document in container
* @param aDocument (output) DOM document
*/
NS_IMETHOD GetDocument(nsIDOMDocument*& aDocument) = 0;
/** Gets presentation shell associated with container
* @param aPresShell (output) presentation shell
*/
NS_IMETHOD GetPresShell(nsIPresShell*& aPresShell) = 0;
};
#define MOZSIMPLE_CONTAINER_CID \
{ /* 0eb82bF1-43a2-11d3-8e76-006008948af5 */ \
0x0eb82bF1, 0x43a2, 0x11d3, \
{0x8e, 0x76, 0x00, 0x60, 0x08, 0x94, 0x8a, 0xf5} }
extern nsresult
NS_NewSimpleContainer(mozISimpleContainer** aSimpleContainer);
#endif /* mozISimpleContainer_h___ */

View File

@@ -0,0 +1,396 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozSimpleContainer.cpp: Implements mozISimpleContainer
// which provides a WebShell container for use in simple programs
// using the layout engine
#include "nscore.h"
#include "nsCOMPtr.h"
#include "nsRepository.h"
#include "nsISupports.h"
#include "nsIWebShell.h"
#include "nsIDOMDocument.h"
#include "nsIDocumentViewer.h"
#include "nsIPresContext.h"
#include "nsIPresShell.h"
#include "nsIDocument.h"
#include "mozSimpleContainer.h"
// Define Class IDs
static NS_DEFINE_IID(kWebShellCID, NS_WEB_SHELL_CID);
// Define Interface IDs
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIWebShellIID, NS_IWEB_SHELL_IID);
static NS_DEFINE_IID(kIDOMDocumentIID, NS_IDOMDOCUMENT_IID);
static NS_DEFINE_IID(kIDocumentViewerIID, NS_IDOCUMENT_VIEWER_IID);
/////////////////////////////////////////////////////////////////////////
// mozSimpleContainer factory
/////////////////////////////////////////////////////////////////////////
nsresult
NS_NewSimpleContainer(mozISimpleContainer** aSimpleContainer)
{
NS_PRECONDITION(aSimpleContainer != nsnull, "null ptr");
if (!aSimpleContainer)
return NS_ERROR_NULL_POINTER;
*aSimpleContainer = new mozSimpleContainer();
if (! *aSimpleContainer)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aSimpleContainer);
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////
// mozSimpleContainer implementation
/////////////////////////////////////////////////////////////////////////
mozSimpleContainer::mozSimpleContainer() :
mWebShell(nsnull)
{
NS_INIT_REFCNT();
}
mozSimpleContainer::~mozSimpleContainer()
{
mWebShell = nsnull;
}
#define NS_IMPL_ADDREF_TRACE(_class) \
NS_IMETHODIMP_(nsrefcnt) _class::AddRef(void) \
{ \
NS_PRECONDITION(PRInt32(mRefCnt) >= 0, "illegal refcnt"); \
++mRefCnt; \
fprintf(stderr, "mozSimpleContainer:AddRef, mRefCnt=%d\n", mRefCnt); \
return mRefCnt; \
}
#define NS_IMPL_RELEASE_TRACE(_class) \
NS_IMETHODIMP_(nsrefcnt) _class::Release(void) \
{ \
NS_PRECONDITION(0 != mRefCnt, "dup release"); \
--mRefCnt; \
fprintf(stderr, "mozSimpleContainer:Release, mRefCnt=%d\n", mRefCnt); \
if (mRefCnt == 0) { \
NS_DELETEXPCOM(this); \
return 0; \
} \
return mRefCnt; \
}
// Implement AddRef and Release
NS_IMPL_ADDREF(mozSimpleContainer)
NS_IMPL_RELEASE(mozSimpleContainer)
NS_IMETHODIMP
mozSimpleContainer::QueryInterface(REFNSIID aIID,void** aInstancePtr)
{
if (aInstancePtr == NULL) {
return NS_ERROR_NULL_POINTER;
}
// Always NULL result, in case of failure
*aInstancePtr = NULL;
if ( aIID.Equals(kISupportsIID)) {
*aInstancePtr = NS_STATIC_CAST(nsISupports*,
NS_STATIC_CAST(mozISimpleContainer*,this));
} else if ( aIID.Equals(mozISimpleContainer::GetIID()) ) {
*aInstancePtr = NS_STATIC_CAST(mozISimpleContainer*,this);
} else if ( aIID.Equals(nsIWebShellContainer::GetIID()) ) {
*aInstancePtr = NS_STATIC_CAST(nsIWebShellContainer*,this);
} else {
return NS_ERROR_NO_INTERFACE;
}
NS_ADDREF_THIS();
fprintf(stderr, "mozSimpleContainer::QueryInterface, mRefCnt = %d\n", mRefCnt);
return NS_OK;
}
/** Initializes simple container for native window widget
* @param aNativeWidget native window widget (e.g., GtkWidget)
* @param width window width (pixels)
* @param height window height (pixels)
* @param aPref preferences object
*/
NS_IMETHODIMP mozSimpleContainer::Init(nsNativeWidget aNativeWidget,
PRInt32 width, PRInt32 height,
nsIPref* aPref)
{
// Create web shell and show it
nsresult result = nsRepository::CreateInstance(kWebShellCID, nsnull,
kIWebShellIID,
getter_AddRefs(mWebShell));
if (NS_FAILED(result) || !mWebShell) {
fprintf(stderr, "Failed to create create web shell\n");
return NS_ERROR_FAILURE;
}
mWebShell->Init(aNativeWidget, 0, 0, width, height);
mWebShell->SetContainer(this);
if (aPref) {
mWebShell->SetPrefs(aPref);
}
mWebShell->Show();
return NS_OK;
}
NS_IMETHODIMP mozSimpleContainer::WillLoadURL(nsIWebShell* aShell, const PRUnichar* aURL, nsLoadType aReason)
{
return NS_OK;
}
NS_IMETHODIMP mozSimpleContainer::BeginLoadURL(nsIWebShell* aShell, const PRUnichar* aURL)
{
return NS_OK;
}
NS_IMETHODIMP mozSimpleContainer::ProgressLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL, PRInt32 aProgress, PRInt32 aProgressMax)
{
return NS_OK;
}
NS_IMETHODIMP mozSimpleContainer::EndLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
nsresult aStatus)
{
nsCOMPtr<nsIDOMSelection> selection;
nsresult result;
if (aShell == mWebShell.get()) {
nsCOMPtr<nsIDOMDocument> domDoc;
nsCOMPtr<nsIPresShell> presShell;
result = GetDocument(*getter_AddRefs(domDoc));
if (NS_FAILED(result) || !domDoc) return result;
result = GetPresShell(*getter_AddRefs(presShell));
if (NS_FAILED(result) || !presShell) return result;
}
return NS_OK;
}
NS_IMETHODIMP mozSimpleContainer::NewWebShell(PRUint32 aChromeMask,
PRBool aVisible,
nsIWebShell*& aNewWebShell)
{
aNewWebShell = nsnull;
return NS_ERROR_FAILURE;
}
NS_IMETHODIMP mozSimpleContainer::FindWebShellWithName(const PRUnichar* aName,
nsIWebShell*& aResult)
{
aResult = nsnull;
nsString aNameStr(aName);
nsIWebShell *aWebShell;
if (NS_OK == GetWebShell(aWebShell)) {
const PRUnichar *name;
if (NS_OK == aWebShell->GetName(&name)) {
if (aNameStr.Equals(name)) {
aResult = aWebShell;
NS_ADDREF(aResult);
return NS_OK;
}
}
}
if (NS_OK == aWebShell->FindChildWithName(aName, aResult)) {
if (nsnull != aResult) {
return NS_OK;
}
}
return NS_OK;
}
NS_IMETHODIMP
mozSimpleContainer::ContentShellAdded(nsIWebShell* aChildShell,
nsIContent* frameNode)
{
return NS_OK;
}
NS_IMETHODIMP
mozSimpleContainer::CreatePopup(nsIDOMElement* aElement,
nsIDOMElement* aPopupContent,
PRInt32 aXPos, PRInt32 aYPos,
const nsString& aPopupType,
const nsString& anAnchorAlignment,
const nsString& aPopupAlignment,
nsIDOMWindow* aWindow, nsIDOMWindow** outPopup)
{
return NS_OK;
}
NS_IMETHODIMP
mozSimpleContainer::FocusAvailable(nsIWebShell* aFocusedWebShell,
PRBool& aFocusTaken)
{
return NS_OK;
}
/** Resizes container to new dimensions
* @param width new window width (pixels)
* @param height new window height (pixels)
*/
NS_IMETHODIMP mozSimpleContainer::Resize(PRInt32 aWidth, PRInt32 aHeight)
{
if (!mWebShell) return NS_ERROR_FAILURE;
mWebShell->SetBounds(0, 0, aWidth, aHeight);
return NS_OK;
}
/** Loads specified URL into container
* @param aURL URL string
*/
NS_IMETHODIMP mozSimpleContainer::LoadURL(const char* aURL)
{
if (!mWebShell) return NS_ERROR_FAILURE;
nsString aStr(aURL);
mWebShell->LoadURL(aStr.GetUnicode());
return NS_OK;
}
/** Gets web shell in container
* @param aWebShell (output) web shell object
*/
NS_IMETHODIMP mozSimpleContainer::GetWebShell(nsIWebShell*& aWebShell)
{
aWebShell = mWebShell.get();
NS_IF_ADDREF(aWebShell); // Add ref'ed; needs to be released
return NS_OK;
}
/** Gets DOM document in container
* @param aDocument (output) DOM document
*/
NS_IMETHODIMP mozSimpleContainer::GetDocument(nsIDOMDocument*& aDocument)
{
aDocument = nsnull;
if (mWebShell) {
nsIContentViewer* contViewer;
mWebShell->GetContentViewer(&contViewer);
if (nsnull != contViewer) {
nsIDocumentViewer* docViewer;
if (NS_OK == contViewer->QueryInterface(kIDocumentViewerIID,
(void**) &docViewer))
{
nsIDocument* vDoc;
docViewer->GetDocument(vDoc);
if (nsnull != vDoc) {
nsIDOMDocument* vDOMDoc;
if (NS_OK == vDoc->QueryInterface(kIDOMDocumentIID,
(void**) &vDOMDoc))
{
aDocument = vDOMDoc; // Add ref'ed; needs to be released
}
NS_RELEASE(vDoc);
}
NS_RELEASE(docViewer);
}
NS_RELEASE(contViewer);
}
}
return NS_OK;
}
/** Gets presentation shell associated with container
* @param aPresShell (output) presentation shell
*/
NS_IMETHODIMP mozSimpleContainer::GetPresShell(nsIPresShell*& aPresShell)
{
aPresShell = nsnull;
nsIPresShell* presShell = nsnull;
if (mWebShell) {
nsIContentViewer* contViewer = nsnull;
mWebShell->GetContentViewer(&contViewer);
if (nsnull != contViewer) {
nsIDocumentViewer* docViewer = nsnull;
contViewer->QueryInterface(kIDocumentViewerIID, (void**) &docViewer);
if (nsnull != docViewer) {
nsIPresContext* presContext;
docViewer->GetPresContext(presContext);
if (nsnull != presContext) {
presContext->GetShell(&presShell); // Add ref'ed
aPresShell = presShell;
NS_RELEASE(presContext);
}
NS_RELEASE(docViewer);
}
NS_RELEASE(contViewer);
}
}
return NS_OK;
}

View File

@@ -0,0 +1,100 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is XMLterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*/
// mozSimpleContainer.h: declaration of mozSimpleContainer class
// implementing mozISimpleContainer,
// which provides a WebShell container for use in simple programs
// using the layout engine
#include "nscore.h"
#include "nsCOMPtr.h"
#include "mozISimpleContainer.h"
class mozSimpleContainer : public mozISimpleContainer {
public:
mozSimpleContainer();
virtual ~mozSimpleContainer();
// nsISupports
NS_DECL_ISUPPORTS
// nsIWebShellContainer interface
NS_IMETHOD WillLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
nsLoadType aReason);
NS_IMETHOD BeginLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL);
NS_IMETHOD ProgressLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
PRInt32 aProgress,
PRInt32 aProgressMax);
NS_IMETHOD EndLoadURL(nsIWebShell* aShell,
const PRUnichar* aURL,
nsresult aStatus);
NS_IMETHOD NewWebShell(PRUint32 aChromeMask,
PRBool aVisible,
nsIWebShell *&aNewWebShell);
NS_IMETHOD FindWebShellWithName(const PRUnichar* aName,
nsIWebShell*& aResult);
NS_IMETHOD ContentShellAdded(nsIWebShell* aChildShell,
nsIContent* frameNode);
NS_IMETHOD CreatePopup(nsIDOMElement* aElement,
nsIDOMElement* aPopupContent,
PRInt32 aXPos, PRInt32 aYPos,
const nsString& aPopupType,
const nsString& anAnchorAlignment,
const nsString& aPopupAlignment,
nsIDOMWindow* aWindow, nsIDOMWindow** outPopup);
NS_IMETHOD FocusAvailable(nsIWebShell* aFocusedWebShell,
PRBool& aFocusTaken);
// other
NS_IMETHOD Init(nsNativeWidget aNativeWidget,
PRInt32 width, PRInt32 height,
nsIPref* aPref);
NS_IMETHOD Resize(PRInt32 aWidth, PRInt32 aHeight);
NS_IMETHOD LoadURL(const char* aURL);
NS_IMETHOD GetWebShell(nsIWebShell*& aWebShell);
NS_IMETHOD GetDocument(nsIDOMDocument*& aDocument);
NS_IMETHOD GetPresShell(nsIPresShell*& aPresShell);
protected:
/** owning reference to web shell created by us */
nsCOMPtr<nsIWebShell> mWebShell;
};

View File

@@ -0,0 +1,23 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.mozilla.org/NPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
* the License for the specific language governing rights and limitations
* under the License.
*
* The Original Code is Mozilla Communicator client code.
*
* The Initial Developer of the Original Code is Netscape Communications
* Corporation. Portions created by Netscape are Copyright (C) 1998
* Netscape Communications Corporation. All Rights Reserved.
*/
// nsSetupRegistry.cpp: Just a copy of viewer's nSetupRegistry
#include "../../../webshell/tests/viewer/nsSetupRegistry.cpp"

View File

@@ -0,0 +1,198 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
*
* The contents of this file are subject to the Netscape Public License
* Version 1.0 (the "NPL"); you may not use this file except in
* compliance with the NPL. You may obtain a copy of the NPL at
* http://www.mozilla.org/NPL/
*
* Software distributed under the NPL is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
* for the specific language governing rights and limitations under the
* NPL.
*
* The Initial Developer of this code under the NPL is Netscape
* Communications Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
* Reserved.
*/
#include "nsITimer.h"
#include "nsITimerCallback.h"
#include "nsCRT.h"
#include "prlog.h"
#include <stdio.h>
#include <limits.h>
#include <gtk/gtk.h>
static NS_DEFINE_IID(kITimerIID, NS_ITIMER_IID);
extern "C" gint nsTimerExpired(gpointer aCallData);
/*
* Implementation of timers using Gtk timer facility
*/
class TimerImpl : public nsITimer {
public:
public:
TimerImpl();
virtual ~TimerImpl();
virtual nsresult Init(nsTimerCallbackFunc aFunc,
void *aClosure,
// PRBool aRepeat,
PRUint32 aDelay);
virtual nsresult Init(nsITimerCallback *aCallback,
// PRBool aRepeat,
PRUint32 aDelay);
NS_DECL_ISUPPORTS
virtual void Cancel();
virtual PRUint32 GetDelay() { return mDelay; }
virtual void SetDelay(PRUint32 aDelay) { mDelay=aDelay; };
virtual void* GetClosure() { return mClosure; }
void FireTimeout();
private:
nsresult Init(PRUint32 aDelay);
PRUint32 mDelay;
nsTimerCallbackFunc mFunc;
void *mClosure;
nsITimerCallback *mCallback;
// PRBool mRepeat;
TimerImpl *mNext;
guint mTimerId;
};
void TimerImpl::FireTimeout()
{
if (mFunc != NULL) {
(*mFunc)(this, mClosure);
}
else if (mCallback != NULL) {
mCallback->Notify(this); // Fire the timer
}
// Always repeating here
// if (mRepeat)
// mTimerId = gtk_timeout_add(aDelay, nsTimerExpired, this);
}
TimerImpl::TimerImpl()
{
// printf("TimerImple::TimerImpl called for %p\n", this);
NS_INIT_REFCNT();
mFunc = NULL;
mCallback = NULL;
mNext = NULL;
mTimerId = 0;
mDelay = 0;
mClosure = NULL;
}
TimerImpl::~TimerImpl()
{
//printf("TimerImpl::~TimerImpl called for %p\n", this);
Cancel();
NS_IF_RELEASE(mCallback);
}
nsresult
TimerImpl::Init(nsTimerCallbackFunc aFunc,
void *aClosure,
// PRBool aRepeat,
PRUint32 aDelay)
{
//printf("TimerImpl::Init called with func + closure for %p\n", this);
mFunc = aFunc;
mClosure = aClosure;
// mRepeat = aRepeat;
// This is ancient debug code that is making it impossible to have timeouts
// greater than 10 seconds. -re
// if ((aDelay > 10000) || (aDelay < 0)) {
// printf("Timer::Init() called with bogus value \"%d\"! Not enabling timer.\n",
// aDelay);
// return Init(aDelay);
// }
mTimerId = gtk_timeout_add(aDelay, nsTimerExpired, this);
return Init(aDelay);
}
nsresult
TimerImpl::Init(nsITimerCallback *aCallback,
// PRBool aRepeat,
PRUint32 aDelay)
{
//printf("TimerImpl::Init called with callback only for %p\n", this);
mCallback = aCallback;
NS_ADDREF(mCallback);
// mRepeat = aRepeat;
// This is ancient debug code that is making it impossible to have timeouts
// greater than 10 seconds. -re
// if ((aDelay > 10000) || (aDelay < 0)) {
// printf("Timer::Init() called with bogus value \"%d\"! Not enabling timer.\n",
// aDelay);
// return Init(aDelay);
// }
mTimerId = gtk_timeout_add(aDelay, nsTimerExpired, this);
return Init(aDelay);
}
nsresult
TimerImpl::Init(PRUint32 aDelay)
{
//printf("TimerImpl::Init called with delay %d only for %p\n", aDelay, this);
mDelay = aDelay;
// NS_ADDREF(this);
return NS_OK;
}
NS_IMPL_ISUPPORTS(TimerImpl, kITimerIID)
void
TimerImpl::Cancel()
{
//printf("TimerImpl::Cancel called for %p\n", this);
TimerImpl *me = this;
if (mTimerId)
gtk_timeout_remove(mTimerId);
}
NS_GFXNONXP nsresult NS_NewTimer(nsITimer** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
TimerImpl *timer = new TimerImpl();
if (nsnull == timer) {
return NS_ERROR_OUT_OF_MEMORY;
}
return timer->QueryInterface(kITimerIID, (void **) aInstancePtrResult);
}
gint nsTimerExpired(gpointer aCallData)
{
//printf("nsTimerExpired for %p\n", aCallData);
TimerImpl* timer = (TimerImpl *)aCallData;
timer->FireTimeout();
return 0;
}

View File

@@ -0,0 +1,8 @@
#!/bin/csh
set echo
cd ../base
make
cd ../geckoterm
rm xmlterm; make xmlterm

View File

@@ -0,0 +1,65 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/linetest directory
ifdef STAND_ALONE
DEPTH = ..
topsrcdir = ..
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
# Debug option
DEBUG = 1
# Program
SIMPLE_PROGRAMS = lterm ptytest testunistr
# Defines
DEFINES =
# Libraries to be linked
LIBS = -lncurses -lxmlterm -lpthread
include $(topsrcdir)/config/config.mk
include ../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1 @@
linetest --- Test programs (for LineTerm only)

View File

@@ -0,0 +1,557 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* lterm.c: Test driver for LINETERM using NCURSES
* CPP options:
* LINUX: for Linux2.0/glibc
* SOLARIS: for Solaris2.6
*/
#include <stdio.h>
#include <signal.h>
#include <sys/types.h>
#include <fcntl.h>
#include <unistd.h>
#include <termios.h>
#include <assert.h>
#include "curses.h"
#define _REENTRANT
#include <pthread.h>
#ifdef SOLARIS
#include <stropts.h>
#include <poll.h>
#endif
#ifdef LINUX
#include <sys/ioctl.h>
#include <sys/poll.h>
typedef unsigned int nfds_t;
#endif
#include "lineterm.h"
#include "tracelog.h"
#define MAXPROMPT 256 /* Maximum length of prompt regexp */
#define MAXCOL 4096 /* Maximum columns in line buffer */
/* (0,0) is upper lefthand corner of window */
/* Character attributes
A_NORMAL Normal display (no highlight)
A_STANDOUT Best highlighting mode of the terminal.
A_UNDERLINE Underlining
A_REVERSE Reverse video
A_BLINK Blinking
A_DIM Half bright
A_BOLD Extra bright or bold
A_PROTECT Protected mode
A_INVIS Invisible or blank mode
A_ALTCHARSET Alternate character set
A_CHARTEXT Bit-mask to extract a character
COLOR_PAIR(n) Color-pair number n
*/
/* GLOBAL VARIABLES */
static int lineFlag = 0;
static int ptyFlag = 1;
static int debugFlag = 0;
static int ltermNumber = -1;
static SCREEN *termScreen = NULL;
static char *ttyDevice;
static char *errDevice;
static struct termios tios; /* TERMIOS structure */
static void finish(int sig);
static pthread_t output_handler_thread_ID;
static void *output_handler(void *arg);
static void input_handler(int *plterm);
int main(int argc, char *argv[]) {
FILE *inFile, *outFile;
UNICHAR uregexp[MAXPROMPT+1];
int argNo, options, processType, retValue;
int remaining, decoded;
int messageLevel;
char *promptStr;
char **commandArgs;
char *defaultCommand[] = {(char *)getenv("SHELL"), "-i", NULL};
/* Process command line arguments */
lineFlag = 0;
ptyFlag = 1;
debugFlag = 0;
processType = LTERM_DETERMINE_PROCESS;
ttyDevice = NULL;
errDevice = NULL;
promptStr = "#$%>?"; /* JUST A LIST OF DELIMITERS AT PRESENT */
lineFlag = 1; /* Temporary */
argNo = 1;
while (argNo < argc) {
if ((strcmp(argv[argNo],"-h") == 0)||(strcmp(argv[argNo],"-help") == 0)) {
fprintf(stderr, "Usage: %s [-help] [-line] [-nopty] [-debug] [-tcsh / -bash] [-tty /dev/ttyname] [-err /dev/ttyname] [-prompt <prompt>] <command> ...\n", argv[0]);
exit(0);
} else if (strcmp(argv[argNo],"-line") == 0) {
lineFlag = 1;
argNo++;
} else if (strcmp(argv[argNo],"-nopty") == 0) {
ptyFlag = 0;
argNo++;
} else if (strcmp(argv[argNo],"-debug") == 0) {
debugFlag = 1;
argNo++;
} else if (strcmp(argv[argNo],"-bash") == 0) {
processType = LTERM_BASH_PROCESS;
argNo++;
} else if (strcmp(argv[argNo],"-tcsh") == 0) {
processType = LTERM_TCSH_PROCESS;
argNo++;
} else if (strcmp(argv[argNo],"-tty") == 0) {
argNo++;
if (argNo < argc) {
ttyDevice = argv[argNo];
argNo++;
}
} else if (strcmp(argv[argNo],"-err") == 0) {
argNo++;
if (argNo < argc) {
errDevice = argv[argNo];
argNo++;
}
} else if (strcmp(argv[argNo],"-prompt") == 0) {
argNo++;
if (argNo < argc) {
promptStr = argv[argNo];
argNo++;
}
} else
break;
}
if (argNo < argc) {
/* Execute specified command */
commandArgs = argv + argNo;
} else {
/* Execute default shell */
commandArgs = defaultCommand;
}
/* Convert prompt string to Unicode */
retValue = utf8toucs(promptStr, strlen(promptStr), uregexp, MAXPROMPT,
0, &remaining, &decoded);
if ((retValue < 0) || (remaining > 0)) {
fprintf(stderr, "lterm: Error in decoding prompt string\n");
exit(1);
}
assert(decoded <= MAXPROMPT);
uregexp[decoded] = U_NUL;
if (debugFlag) {
messageLevel = 98;
} else {
messageLevel = 1;
}
if (errDevice != NULL) {
/* Redirect debug STDERR output to specified device */
int errfd = -1;
if ( (errfd = open(errDevice, O_WRONLY)) == -1)
perror("lterm");
if (dup2(errfd, 2) == -1) {
fprintf(stderr, "lterm: Failed dup2 for specified stderr\n");
exit(-1);
}
fprintf(stderr, "\n\nlterm: Echoing %s output to %s\n",
argv[0], errDevice);
}
signal(SIGINT, finish); /* Interrupt handler */
if (lineFlag) {
/* Line mode */
/* Get terminal attributes */
if (tcgetattr(0, &tios) == -1) {
fprintf(stderr, "lterm: Failed to get TTY attributes\n");
exit(-1);
}
/* Disable signals, canonical mode processing, and echo */
tios.c_lflag &= ~(ISIG | ICANON | ECHO );
/* set MIN=1 and TIME=0 */
tios.c_cc[VMIN] = 1;
tios.c_cc[VTIME] = 0;
/* Set terminal attributes */
if (tcsetattr(0, TCSAFLUSH, &tios) == -1) {
fprintf(stderr, "lterm: Failed to set TTY attributes\n");
exit(-1);
}
} else {
/* Screen mode */
if (ttyDevice == NULL) {
/* Initialize screen on controlling TTY */
initscr();
} else {
/* Initialize screen on specified TTY */
if (errDevice != NULL)
fprintf(stderr, "lterm-00: Opening xterm %s\n", ttyDevice);
inFile = fopen( ttyDevice, "r");
outFile = fopen( ttyDevice, "w");
termScreen = newterm("xterm", outFile, inFile);
set_term(termScreen);
}
/* NCURSES screen settings */
cbreak(); /* set terminal to raw (non-canonical) mode */
noecho(); /* Disable terminal echo */
nonl(); /* Do not translate newline */
intrflush(stdscr, FALSE); /* Flush input on interrupt */
keypad(stdscr, TRUE); /* Enable user keypad */
#ifdef NCURSES_MOUSE_VERSION
mousemask(BUTTON1_CLICKED, NULL); /* Capture Button1 click events */
#endif
clear(); /* Clear screen */
}
/* Initialize LTERM operations */
lterm_init(messageLevel);
if (errDevice != NULL) {
tlog_message("lterm-00: Testing tlog_message\n");
tlog_warning("lterm-00: Testing tlog_warning\n");
fprintf(stderr, "lterm-00: ");
tlog_unichar(uregexp, ucslen(uregexp));
}
if (errDevice != NULL)
fprintf(stderr, "lintest-00: Opening LTERM to execute %s\n", commandArgs[0]);
options = 0;
if (!ptyFlag) options |= LTERM_NOPTY_FLAG;
// options |= LTERM_NOSTDERR_FLAG;
ltermNumber = lterm_new();
retValue = lterm_open(ltermNumber, commandArgs, NULL, uregexp,
options, processType, NULL, NULL);
if (retValue < 0) {
fprintf(stderr, "lterm: Error %d in opening LTERM\n", retValue);
exit(1);
}
/* Create output handler thread */
retValue = pthread_create(&output_handler_thread_ID, NULL,
output_handler, (void *) &ltermNumber);
if (retValue != 0) {
fprintf(stderr, "lterm: Error %d in creating OUTPUT_HANDLER thread\n",
retValue);
finish(0);
}
if (errDevice != NULL)
fprintf(stderr, "lterm-00: Created OUTPUT_HANDLER thread\n");
/* Process input */
input_handler(&ltermNumber);
/* Join output handler thread */
if (errDevice != NULL)
fprintf(stderr, "lterm-00: Joining OUTPUT_HANDLER thread\n");
retValue = pthread_join(output_handler_thread_ID, NULL);
if (retValue != 0) {
fprintf(stderr, "lterm: Error %d in joining OUTPUT_HANDLER thread\n",
retValue);
finish(0);
}
finish(0);
}
void finish(int sig)
{
if (!lineFlag) {
endwin(); /* Close window */
if (termScreen != NULL)
delscreen(termScreen);
}
if (ltermNumber >= 0) {
/* Close and delete LTERM */
lterm_delete(ltermNumber);
}
if (errDevice != NULL)
fprintf(stderr, "finished-00: Finished\n");
exit(0);
}
/** Output an Unicode message to specified file descriptor. */
void writeUnicode(int fd, const UNICHAR *buf, int count)
{
char str[MAXCOL];
int j, k;
k = 0;
for (j=0; j<count; j++) {
if (k >= MAXCOL-4) {
if (MAXCOL >= 4) {
str[MAXCOL-4] = '.';
str[MAXCOL-3] = '.';
str[MAXCOL-2] = '.';
}
k = MAXCOL-1;
break;
}
/* TEMPORARY IMPLEMENTATION: just truncate Unicode to byte characters */
str[k++] = buf[j];
}
if (k == 0) return;
if (write(fd, str, k) != k) {
fprintf(stderr, "writeUnicode: Error in writing to FD %d\n", fd);
exit(-1);
}
}
/** Output an Unicode message to specified output stream
* if NOCONTROL is true, control characters are converted to printable
* characters before output
*/
void printUnicode(FILE *outStream, const UNICHAR *buf, int count, int noControl)
{
char str[MAXCOL];
int j, k;
k = 0;
for (j=0; j<count; j++) {
if (k >= MAXCOL-4) {
if (MAXCOL >= 4) {
str[MAXCOL-4] = '.';
str[MAXCOL-3] = '.';
str[MAXCOL-2] = '.';
}
k = MAXCOL-1;
break;
}
if (!noControl && ((buf[j] < U_SPACE) || (buf[j] == U_DEL)) ) {
/* Control character */
str[k++] = U_CARET;
str[k++] = buf[j]+U_ATSIGN;
} else {
/* Printable character */
/* TEMPORARY IMPLEMENTATION: just truncate Unicode to byte characters */
str[k++] = buf[j];
}
}
/* Insert terminating null character and display string */
str[k++] = '\0';
fprintf(outStream, "%s\n", str);
}
void input_handler(int *plterm)
{
char ch;
UNICHAR uch;
int n_written;
if (lineFlag) {
for (;;) {
/* Read a character from TTY (raw mode) */
ch = getchar();
if (ch == 0) {
fprintf(stderr, "input_handler-00: NUL character read; terminating\n");
break;
}
uch = (UNICHAR) ch;
n_written = lterm_write(*plterm, &uch, 1, LTERM_WRITE_PLAIN_INPUT);
/* Exit loop if TTY has been closed */
if (n_written == -2) {
if (errDevice != NULL)
fprintf(stderr, "input_handler-00: pseudo-TTY has been closed\n", *plterm);
break;
}
if (n_written < 0) {
fprintf(stderr, "input_handler: Error %d return from lterm_write\n",
n_written);
return;
}
}
}
/* Close LTERM */
if (errDevice != NULL)
fprintf(stderr, "input_handler-00: Closing LTERM %d\n", *plterm);
/* Close and delete LTERM */
lterm_delete(*plterm);
*plterm = -1;
}
void *output_handler(void *arg)
{
int *plterm = (int *) arg;
int timeout = -1;
UNICHAR buf[MAXCOL];
UNISTYLE style[MAXCOL];
int n_read, opcodes, buf_row, buf_col, cursor_row, cursor_col;
int xmax, ymax, x, y, c;
MEVENT mev;
if (errDevice != NULL)
fprintf(stderr, "output_handler-00: thread ID = %d, LTERM=%d\n",
pthread_self(), *plterm);
if (!lineFlag) {
/* Get screen size */
getmaxyx(stdscr, ymax, xmax);
if (errDevice != NULL)
fprintf(stderr, "output_handler-00: screen xmax = %d, ymax = %d\n",
xmax,ymax);
}
for (;;) {
n_read = lterm_read(*plterm, timeout, buf, MAXCOL,
style, &opcodes,
&buf_row, &buf_col, &cursor_row, &cursor_col);
if (n_read == -1) {
fprintf(stderr, "output_handler: Error %d return from lterm_read\n",
n_read);
return NULL;
}
/* Exit loop if TTY has been closed;
* leave it to input handler to close the LTERM.
*/
if (n_read == -2) {
if (errDevice != NULL)
fprintf(stderr, "output_handler: pseudo-TTY has been closed\n");
break;
}
if (debugFlag) {
fprintf(stderr, "output_handler-00: n_read=%d, opcodes=%x, buf_row/col=%d/%d, cursor_row/col=%d/%d\n",
n_read, opcodes, buf_row, buf_col, cursor_row, cursor_col);
fprintf(stderr, "output_handler-00: U(%d): ", n_read);
printUnicode(stderr, buf, n_read, 1);
fprintf(stderr, "\n");
}
if (opcodes & LTERM_STREAMDATA_CODE) {
/* Stream data */
if (debugFlag)
fprintf(stderr, "output_handler-00: STREAMDATA\n");
} else if (opcodes & LTERM_SCREENDATA_CODE) {
/* Screen data */
if (debugFlag)
fprintf(stderr, "output_handler-00: SCREENDATA\n");
} else if (opcodes & LTERM_LINEDATA_CODE) {
/* Line data */
if (debugFlag)
fprintf(stderr, "output_handler-00: LINEDATA\n");
if (lineFlag) {
int j;
write(1, "\033[2K", 4);
write(1, "\r", 1);
if (opcodes & LTERM_META_CODE)
write(1, "META", 4);
writeUnicode(1, buf, n_read);
for (j=0; j< (n_read-cursor_col); j++)
write(1, "\033[D", 3);
if (opcodes & LTERM_BELL_CODE)
write(1, "\007", 1);
if (opcodes & LTERM_CLEAR_CODE)
write(1, "\033[H\033[2J", 7);
if (opcodes & LTERM_NEWLINE_CODE)
write(1, "\n", 1);
}
} else if (opcodes != 0) {
fprintf(stderr, "output_handler: invalid opcodes %x\n", opcodes);
}
}
return NULL;
}

View File

@@ -0,0 +1,366 @@
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "MPL"); you may not use this file
* except in compliance with the MPL. You may obtain a copy of
* the MPL at http://www.mozilla.org/MPL/
*
* Software distributed under the MPL is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the MPL for the specific language governing
* rights and limitations under the MPL.
*
* The Original Code is lineterm.
*
* The Initial Developer of the Original Code is Ramalingam Saravanan.
* Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
* Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the
* terms of the GNU General Public License (the "GPL"), in which case
* the provisions of the GPL are applicable instead of
* those above. If you wish to allow use of your version of this
* file only under the terms of the GPL and not to allow
* others to use your version of this file under the MPL, indicate
* your decision by deleting the provisions above and replace them
* with the notice and other provisions required by the GPL.
* If you do not delete the provisions above, a recipient
* may use your version of this file under either the MPL or the
* GPL.
*/
/* ptytest.c: Test driver for ptystream.c
* CPP options:
* LINUX: for Linux2.0/glibc
* SOLARIS: for Solaris2.6
*/
#include <stdio.h>
#include <termios.h>
#include <signal.h>
#include <sys/types.h>
#include <fcntl.h>
#include <unistd.h>
#ifdef SOLARIS
#include <stropts.h>
#include <poll.h>
#endif
#ifdef LINUX
#include <sys/ioctl.h>
#include <sys/poll.h>
typedef unsigned int nfds_t;
#endif
#include "ptystream.h"
static struct termios tios; /* TERMIOS structure */
void pipeTest(int argc, char *argv[]);
void ptyTest(int argc, char *argv[]);
int echofd = -1;
int main(int argc, char *argv[]) {
if (argc < 4) {
fprintf(stderr, "Usage: %s pty|pipe <echo-tty-name>|'' <shell-path> ...\n",
argv[0]);
exit(-1);
}
/* Get terminal attributes */
if (tcgetattr(0, &tios) == -1) {
fprintf(stderr, "Failed to get TTY attributes\n");
exit(-1);
}
/* Disable signals, canonical mode processing, and echo */
tios.c_lflag &= ~(ISIG | ICANON | ECHO );
/* set MIN=1 and TIME=0 */
tios.c_cc[VMIN] = 1;
tios.c_cc[VTIME] = 0;
/* Set terminal attributes */
if (tcsetattr(0, TCSAFLUSH, &tios) == -1) {
fprintf(stderr, "Failed to set TTY attributes\n");
exit(-1);
}
if (strlen(argv[2]) > 0) {
/* Open TTY for echoing */
if ( (echofd = open(argv[2], O_WRONLY)) == -1)
perror("ptytest");
fprintf(stderr, "Echoing %s output to %s\n", argv[1], argv[2]);
write( echofd, "Echoing PTYTEST output ...\n", 27);
}
fprintf(stderr, "Type Control-@ (NUL) to terminate input\n");
if (strcmp(argv[1],"pipe") == 0) {
pipeTest(argc-3, argv+3);
} else {
ptyTest(argc-3, argv+3);
}
if (echofd >= 0) close(echofd);
exit(0);
}
/* sends raw terminal input/output to a shell through a pseudo-TTY */
void ptyTest(int argc, char *argv[])
{
struct pollfd pollFD[2];
nfds_t nfds = 2;
struct ptys ptyStruc;
unsigned char ch;
int ptyFD, pollCode;
ssize_t n_read, n_written;
char temstr[3] = "^@";
/* Create a PTY */
if (pty_create(&ptyStruc,argv,-1,0,0,0,1) == -1) {
fprintf(stderr, "PTY creation failed\n");
exit(-1);
}
ptyFD = ptyStruc.ptyFD;
/* fprintf(stderr, "Polling for input on fd=0 (%s) and fd=%d\n",
ttyname(0), ptyFD ); */
/* Set up polling to read from parent STDIN and child STDOUT */
pollFD[0].fd = 0;
pollFD[0].events = POLLIN;
pollFD[1].fd = ptyFD;
pollFD[1].events = POLLIN;
while ( (pollCode=poll(pollFD,nfds,-1)) >= 0) {
if (pollCode == 0) continue;
pollCode = 0;
if (pollFD[0].revents != 0) {
/* Read character from parent STDIN and write to child STDIN */
ch = getchar();
/* Exit poll loop if a null (Control-@) is read */
if (ch == 0) break;
if (write(ptyFD, &ch, 1) != 1) {
fprintf(stderr, "Error in writing to child STDIN\n");
exit(-1);
}
}
if (pollFD[1].revents != 0) {
/* Read character from child STDOUT and write to parent STDOUT */
if ( (n_read=read(ptyFD, &ch, 1)) < 0) {
fprintf(stderr, "Error in reading from child STDOUT\n");
if (echofd >= 0) close(echofd);
exit(-1);
}
if (n_read == 0) { /* End of file */
if (echofd >= 0) close(echofd);
exit(0);
}
if (echofd >= 0) {
/* Echo output to another TTY */
if (ch == 0x7F) {
write(echofd, "\\DEL", 4);
} else if (ch == 0x1B) {
write(echofd, "\\ESC", 4);
} else if (ch < 0x20) {
temstr[1]= ch+'@';
write(echofd, temstr, 2);
} else {
write(echofd, &ch, 1);
}
}
if (write(1, &ch, 1) != 1) {
fprintf(stderr, "Error in writing to parent STDOUT\n");
exit(-1);
}
/*
if (ioctl(1, I_FLUSH, FLUSHRW) == -1) {
fprintf(stderr, "Error return from ioctl\n");
exit(-1);
}
*/
}
}
if (pollCode != 0) {
fprintf(stderr, "Error return from poll\n");
exit(-1);
}
/* Close PTY */
pty_close(&ptyStruc);
}
/* sends raw terminal input/output to a shell through a pipe */
void pipeTest(int argc, char *argv[])
{
struct pollfd pollFD[2];
nfds_t nfds = 2;
pid_t child_pid = -1; /* child process id */
unsigned char ch;
int pipeFD[2], pipeIN, pipeOUT, procIN, procOUT;
int pollCode;
ssize_t n_read, n_written;
char temstr[3] = "^@";
/* Create process input pipe (assumed unidirectional) */
if (pipe(pipeFD) == -1) {
fprintf(stderr, "Input pipe creation failed\n");
exit(-1);
}
#ifdef DEBUG
fprintf(stderr,"Created input pipe: %d %d\n", pipeFD[0], pipeFD[1]);
#endif
procIN = pipeFD[0];
pipeIN = pipeFD[1];
/* Create process output pipe (assumed unidirectional) */
if (pipe(pipeFD) == -1) {
fprintf(stderr, "Output pipe creation failed\n");
exit(-1);
}
#ifdef DEBUG
fprintf(stderr,"Created output pipe: %d %d\n", pipeFD[0], pipeFD[1]);
#endif
pipeOUT = pipeFD[0];
procOUT = pipeFD[1];
/* Fork a child process */
child_pid = fork();
if (child_pid < 0) {
fprintf(stderr, "Fork failed\n");
exit(-1);
}
#ifdef DEBUG
fprintf(stderr, "Fork child process %d\n", child_pid);
#endif
if (child_pid == 0) {
/* Child process */
if (dup2(procIN, 0) == -1) {
fprintf(stderr, "Dup2 failed for stdin of child\n");
exit(-1);
}
if (dup2(procOUT, 1) == -1) {
fprintf(stderr, "Dup2 failed for stdout of child\n");
exit(-1);
}
execvp(argv[0], argv);
fprintf(stderr, "Exec failed for command %s\n", argv[0]);
exit(-1);
}
/* Set up polling to read from parent STDIN and child STDOUT */
pollFD[0].fd = 0;
pollFD[0].events = POLLIN;
pollFD[1].fd = pipeOUT;
pollFD[1].events = POLLIN;
while ( (pollCode=poll(pollFD,nfds,-1)) >= 0) {
if (pollFD[0].revents != 0) {
/* Read character from parent STDIN and write to child STDIN */
ch = getchar();
/* Exit poll loop if a null (Control-@) is read */
if (ch == 0) break;
if (write(pipeIN, &ch, 1) != 1) {
fprintf(stderr, "Error in writing to child STDIN\n");
exit(-1);
}
}
if (pollFD[1].revents != 0) {
/* Read character from child STDOUT and write to parent STDOUT */
if ( (n_read=read(pipeOUT, &ch, 1)) < 0) {
fprintf(stderr, "Error in reading from child STDOUT\n");
if (echofd >= 0) close(echofd);
exit(-1);
}
if (n_read == 0) { /* End of file */
if (echofd >= 0) close(echofd);
exit(0);
}
if (echofd >= 0) {
/* Echo output to another TTY */
if (ch == 0x7F) {
write(echofd, "\\DEL", 4);
} else if (ch == 0x1B) {
write(echofd, "\\ESC", 4);
} else if (ch < 0x20) {
temstr[1]= ch+'@';
write(echofd, temstr, 2);
} else {
write(echofd, &ch, 1);
}
}
if (write(1, &ch, 1) != 1) {
fprintf(stderr, "Error in writing to parent STDOUT\n");
exit(-1);
}
/*
if (ioctl(1, I_FLUSH, FLUSHRW) == -1) {
fprintf(stderr, "Error return from ioctl\n");
exit(-1);
}
*/
}
}
if (kill(child_pid, SIGKILL) == -1) {
fprintf(stderr, "Error return from kill\n");
exit(-1);
}
if (pollCode != 0) {
fprintf(stderr, "Error return from poll\n");
exit(-1);
}
/* Close pipes (assumed unidirectional) */
close(pipeIN);
close(pipeOUT);
close(procIN);
close(procOUT);
}

View File

@@ -0,0 +1,7 @@
#!/bin/csh
set echo
pushd ../base
make STAND_ALONE=1 export libs
popd
make STAND_ALONE=1 $*

View File

@@ -0,0 +1,32 @@
/* Move cursor and display string */
x = 2;
y = 4;
/* if (scanf("%d %d", &y, &x) == EOF) break; */
/* Display string at specified location and advance cursor */
mvaddnstr(y, x, "test 1", 6);
attron(A_BOLD);
mvaddnstr(y, x+6, "test2 ", 6);
attroff(A_BOLD);
refresh();
for (;;) {
c = getch();
if (c == KEY_MOUSE) {
if (getmouse(&mev) == OK) {
move(mev.y, mev.x);
addnstr("MEV ", 4);
refresh();
/* Delete top line, and move up (if +1, insert top line, move down) */
move(0,0);
insdelln(-1);
}
}
}

View File

@@ -0,0 +1,138 @@
/* testunistr.c: Test driver for Unicode strings module unistring.c */
/* public declarations */
#include "unistring.h"
#include "assert.h"
int main(int argc, char *argv[])
{
int argNo, ucs16_opt, utf8_opt, j;
int result, remaining, encoded, decoded;
if (argc < 2) {
printf("Usage: %s (-ucs16 <unicode-hex-string>|-utf8 <utf8-hex-string>|<ascii-chars>)\n",
argv[0]);
exit(1);
}
ucs16_opt = 0;
utf8_opt = 0;
argNo = 1;
if (argc > 1) {
argNo = 2;
if (strcmp(argv[1],"-ucs16") == 0) {
ucs16_opt = 1;
} else if (strcmp(argv[1],"-utf8") == 0) {
utf8_opt = 1;
}
}
if (ucs16_opt) {
char* tems = argv[argNo];
int nus = strlen(argv[argNo])/4;
int ns = 3*nus;
UNICHAR* us = (UNICHAR*) malloc((nus+1)*sizeof(UNICHAR));
unsigned char* s = (unsigned char*) malloc(ns+1);
char temus[5] = {0,0,0,0,0};
for (j=0; j<nus; j++) {
temus[0] = tems[4*j];
temus[1] = tems[4*j+1];
temus[2] = tems[4*j+2];
temus[3] = tems[4*j+3];
sscanf(temus, "%x", &us[j]);
}
us[nus] = U_NUL;
ucsprint(stderr, us, nus);
fprintf(stderr, "\n");
ucstoutf8(us, nus, s, ns, &remaining, &encoded);
assert(encoded <= ns);
ns = encoded;
s[ns] = '\0';
printf("UTF8(%d)=0x", ns);
for (j=0; j<ns; j++) {
printf("%02x",s[j]);
}
printf(", remaining=%d\n", remaining);
result = utf8toucs(s, ns, us, nus, 0, &remaining, &decoded);
assert(decoded <= nus);
us[decoded] = U_NUL;
printf("UCS(%d)=0x", decoded);
for (j=0; j<decoded; j++) {
printf("%04x",us[j]);
}
printf(", remaining=%d, result=%d\n", remaining, result);
free(us);
free(s);
} else {
char* tems = argv[argNo];
int ns, nus;
char* s;
UNICHAR* us;
ns = (utf8_opt) ? strlen(argv[argNo])/2 : strlen(argv[argNo]);
s = (char*) malloc(ns+1);
nus = ns;
us = (UNICHAR*) malloc((nus+1)*sizeof(UNICHAR));
if (utf8_opt) {
char temstr[3] = {0,0,0};
int ival;
for (j=0; j<ns; j++) {
temstr[0] = tems[2*j];
temstr[1] = tems[2*j+1];
sscanf(temstr, "%x", &ival);
s[j] = (unsigned char) ival;
}
} else {
for (j=0; j<ns; j++)
s[j] = tems[j];
}
s[ns] = '\0';
result = utf8toucs(s, ns, us, nus, 0, &remaining, &decoded);
assert(decoded <= nus);
nus = decoded;
us[nus] = U_NUL;
printf("UCS(%d)=0x", nus);
for (j=0; j<nus; j++) {
printf("%04x",us[j]);
}
printf(", remaining=%d, result=%d\n", remaining, result);
ucstoutf8(us, nus, s, ns, &remaining, &encoded);
assert(encoded <= ns);
s[encoded] = '\0';
if (utf8_opt) {
printf("UTF8(%d)=0x", encoded);
for (j=0; j<encoded; j++)
printf("%02x", s[j]);
printf(", remaining=%d\n", remaining);
} else {
printf("UTF8(%d)='%s', remaining=%d\n", encoded, s, remaining);
}
free(us);
free(s);
}
return 0;
}

View File

@@ -0,0 +1,34 @@
#!/bin/csh
# makemake: Dumb script to make Makefile from Makefile.in
# (recursively, if -r is specified)
# Usage: makemake [-r]
if ($# == 0) then
set makelist = (./Makefile.in)
else
set makelist = (`find . -name Makefile.in -print`)
endif
foreach makefile ($makelist)
set dir=${makefile:h}
pushd $dir
set wd=`pwd`
echo $wd
set top_srcdir = ""
while (${wd:t} != "mozilla")
if ("$top_srcdir" == "") then
set top_srcdir = ".."
else
set top_srcdir = "../$top_srcdir"
endif
set wd=${wd:h}
end
/bin/cp Makefile.in Makefile
globsub @srcdir@ @srcdir@ . Makefile
globsub @top_srcdir@ @top_srcdir@ $top_srcdir Makefile
popd
end

View File

@@ -0,0 +1,45 @@
/* DocStream.c: Display complete HTML document using IFRAME */
#include <stdio.h>
int main(void)
{
char ch;
/* XMLTerm escape sequence signalling start of a HTML document */
printf("\033{0;1S\007");
printf(" <HTML><BODY> \
<FORM> \
<IMG align=center src='chrome://navigator/skin/animthrob_single.gif'> \
<B>Please click a button</B> <BR> \
<INPUT ID='button-b#' TYPE=button VALUE='Bold' \
onClick=\"return clickXMLTerm('sendln','#','b')\"> \
<INPUT ID='button-e#' TYPE=button VALUE='Emphasis' \
onClick=\"return clickXMLTerm('sendln',#,'e')\"> \
<INPUT ID='button-q#' TYPE=button VALUE='Quit' \
onClick=\"return clickXMLTerm('sendln',#,'q')\"> \
<BR></FORM> \
</BODY></HTML>");
/* XMLTerm escape sequence signalling end of stream */
printf("%c", '\0');
while((ch = getchar())){ /* Poll for data generated by button click events */
switch (ch) {
case 'b':
printf("\033{S\007<B>Hello World!</B><BR> %c", '\0');
break;
case 'e':
printf("\033{S\007<EM>Hello World!</EM><BR> %c", '\0');
break;
case 'q':
return 0;
break;
default:
break;
}
}
return 0;
}

View File

@@ -0,0 +1,40 @@
/* HelloWorld.c: Simple demo program for "pagelets" */
#include <stdio.h>
int main(void)
{
char ch;
printf("\033{S\007"); /* XMLTerm escape sequence signalling start of HTML */
printf("<FORM> \
<IMG align=center src='chrome://navigator/skin/animthrob_single.gif'> \
<B>Please click a button</B> <BR> \
<INPUT ID='button-b#' TYPE=button VALUE='Bold' \
onClick=\"return clickXMLTerm('sendln','#','b')\"> \
<INPUT ID='button-e#' TYPE=button VALUE='Emphasis' \
onClick=\"return clickXMLTerm('sendln',#,'e')\"> \
<INPUT ID='button-q#' TYPE=button VALUE='Quit' \
onClick=\"return clickXMLTerm('sendln',#,'q')\"> \
<BR></FORM>");
printf("%c", '\0'); /* XMLTerm escape sequence signalling end of HTML */
while((ch = getchar())){ /* Poll for data generated by button click events */
switch (ch) {
case 'b':
printf("\033{S\007<B>Hello World!</B><BR> %c", '\0');
break;
case 'e':
printf("\033{S\007<EM>Hello World!</EM><BR> %c", '\0');
break;
case 'q':
return 0;
break;
default:
break;
}
}
return 0;
}

View File

@@ -0,0 +1,67 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/tests directory
ifdef STAND_ALONE
DEPTH = ..
topsrcdir = ..
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
# Debug option
DEBUG = 1
# C Sources
CSRCS = escape.c teststream.c HelloWorld.c DocStream.c
# Program
SIMPLE_PROGRAMS = escape teststream HelloWorld DocStream
# Defines
DEFINES =
# Libraries to be linked
LIBS =
include $(topsrcdir)/config/config.mk
include ../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1 @@
tests --- Test programs for XMLterm

View File

@@ -0,0 +1,56 @@
/* escape.c: Generates XMLterm/LineTerm escape sequences */
#include <stdio.h>
int main(int argc, char *argv[])
{
int nparam, j;
char *param1, *param2, *param3, *code, *sparam;
param1 = NULL;
param2 = NULL;
param3 = NULL;
code = NULL;
sparam = "";
nparam = 0;
for (j=1; j<argc; j++) {
if ((*argv[j] >= '0') && (*argv[j] <= '9')) {
if (j == 1) {
param1 = argv[j];
nparam = 1;
} else if (j == 2) {
param2 = argv[j];
nparam = 2;
} else if (j == 3) {
param3 = argv[j];
nparam = 3;
}
} else if (code == NULL) {
code = argv[j];
} else {
sparam = argv[j];
}
}
if (code == NULL) {
fprintf(stderr, "Usage: %s [<param1> [<param2> [<param3>]]] <code-character> [<string-param>] \n", argv[0]);
return 1;
}
if (nparam == 0) {
fprintf(stderr, "ESC{%s%sBEL\n", code, sparam);
fprintf(stdout, "\033{%s%s\007", code, sparam);
} else if (nparam == 1) {
fprintf(stderr, "ESC{%s%s%sBEL\n", param1, code, sparam);
fprintf(stdout, "\033{%s%s%s\007", param1, code, sparam);
} else if (nparam == 2) {
fprintf(stderr, "ESC{%s;%s%s%sBEL\n", param1, param2, code, sparam);
fprintf(stdout, "\033{%s;%s%s%s\007", param1, param2, code, sparam);
} else {
fprintf(stderr, "ESC{%s;%s;%s%s%sBEL\n", param1, param2, param3, code, sparam);
fprintf(stdout, "\033{%s;%s;%s%s%s\007", param1, param2, param3, code, sparam);
}
return 0;
}

View File

@@ -0,0 +1,20 @@
/* teststream.c: Test driver to generate escaped stream data */
#include <stdio.h>
int main(int argc, char *argv[]) {
if (argc < 2) {
fprintf(stderr, "Usage: %s <data-string> [<terminator-string>]\n",argv[0]);
return 1;
}
if (argc > 2) {
/* fprintf(stderr, "{ESCS%sBEL%s%s", argv[2], argv[1], argv[2]); */
fprintf(stdout, "\033{S%s\007%s%s", argv[2], argv[1], argv[2]);
} else {
fprintf(stdout, "\033{S\007%s%c", argv[1], '\0');
}
return 0;
}

View File

@@ -0,0 +1,84 @@
#!/usr/bin/perl
# xls: an XMLterm wrapper for the UNIX "ls" command
# Usage: xls [-c|--cols] [-h|help] [-i||--iconic] [-w|--window]
use Cwd;
use Getopt::Long;
Getopt::Long::config('bundling');
$options = "@ARGV";
&GetOptions("cols|c=i", "help|h!", "iconic|i!", "window|w!");
if ($opt_help) {
print "Usage: xls [-c|--cols] [-i|--iconic] [-w|--window]\n";
exit;
}
# Icon details
#$imgdir="chrome://xmlterm/skin/default/images"
$imgdir = "file:/usr/share/pixmaps/mc";
($img{'directory'}, $img{'executable'}, $img{'plainfile'}) =
('i-directory.png', 'i-executable.png', 'i-regular.png');
$ncols = 5;
$ncols = $opt_cols if ($opt_cols);
print "\e{S\a"; # HTML stream escape sequence
print "<TABLE FRAME=none BORDER=0>";
print "<COLGROUP COLSPAN=$ncols WIDTH=1*>";
$dir = cwd();
$rowimg = "";
$rowtxt = "";
$nfile = 0;
foreach $file (glob("$dir/*")) { # for each file in current directory
if (-d $file) { # directory
$filetype = "directory";
$sendtxt = "cd $file; xls $options";
$sendimg = "file:/usr/share/pixmaps/mc/i-directory.png";
} elsif (-x $file) { # executable
$filetype = "executable";
$sendtxt = "$file";
} else { # plain file
$filetype = "plainfile";
$sendtxt = "";
}
@comps = split(m./.,$file);
$tail = $comps[$#comps]; # file name
if ($opt_window) {
$sendcmd = "createln";
} else {
$sendcmd = "sendln";
}
$clickcmd = qq%onclick="return clickXMLTerm('$sendcmd',-1,'$sendtxt')"%;
$rowimg .= "<TD><IMG SRC='$imgdir/$img{$filetype}' $clickcmd>";
$rowtxt .= "<TD><SPAN CLASS='$filetype' $clickcmd>";
$rowtxt .= "$tail</SPAN>";
$nfile++;
if (($nfile % $ncols) == 0) { # print complete table row
print "<TR>$rowimg" if ($opt_iconic) ;
print "<TR>$rowtxt";
$rowimg = "";
$rowtxt = "";
}
}
if (length($rowtxt) != 0) {
print "<TR>$rowimg" if ($opt_iconic) ;
print "<TR>$rowtxt";
}
print "</TABLE>";
print "\000"; # Terminate HTML stream

View File

@@ -0,0 +1,81 @@
#!/bin/csh
# xls.csh: a C-shell XMLterm wrapper for the UNIX "ls" command
# Usage: xls.csh [-i] [-x]
set files=(`/bin/ls -d $cwd/*`)
set ncols=4
##set echocmd="/usr/bin/echo"
set echocmd="/bin/echo -e"
set iconic=0
set create=0
set options=""
foreach arg ($*)
switch ($arg)
case "-i":
set iconic=1
set options=($options $arg)
breaksw
case "-c":
set create=1
set options=($options $arg)
breaksw
endsw
end
$echocmd '\033{S\007\c'
$echocmd '<TABLE FRAME=none BORDER=0>'
$echocmd "<COLGROUP COLSPAN=$ncols WIDTH=1*>"
set rowimg=""
set rowtxt=""
set nfile=0
foreach file ($files)
if (-d $file) then #directory
set filetype="directory"
set sendtxt="cd $file; xls $options"
set sendimg="file:/usr/share/pixmaps/mc/i-directory.png"
# set sendimg="chrome://xmlterm/skin/default/images/ficon3.gif"
else if (-x $file) then #executable
set filetype="executable"
set sendtxt="$file"
set sendimg="file:/usr/share/pixmaps/mc/i-executable.png"
else #plain file
set filetype="plainfile"
set sendtxt=""
set sendimg="file:/usr/share/pixmaps/mc/i-regular.png"
endif
set tail=${file:t}
if ($create) then
set cmd="createln"
else
set cmd="sendln"
endif
set clickcmd="onclick="'"'"return clickXMLTerm('$cmd',-1,'$sendtxt')"'"'
set rowimg="${rowimg}<TD><IMG SRC='$sendimg' $clickcmd>"
set rowtxt="${rowtxt}<TD><SPAN CLASS='$filetype' $clickcmd>"
set rowtxt="${rowtxt}$tail<SPAN/>"
@ nfile++
if (($nfile % $ncols) == 0) then
if ($iconic) $echocmd "<TR>$rowimg"
$echocmd "<TR>$rowtxt"
set rowimg=""
set rowtxt=""
endif
end
if ("$rowtxt" != "") then
if ($iconic) $echocmd "<TR>$rowimg"
$echocmd "<TR>$rowtxt"
endif
$echocmd '</TABLE>'
$echocmd '\000\c'

View File

@@ -0,0 +1,57 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/ui directory
ifdef STAND_ALONE
DEPTH = .
topsrcdir = .
VPATH = .
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../..
topsrcdir = @top_srcdir@
VPATH = @srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
DIRS = content skin
include $(topsrcdir)/config/config.mk
include ../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1 @@
ui --- User Interface stuff for XMLterm

View File

@@ -0,0 +1,61 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/ui/content directory
ifdef STAND_ALONE
DEPTH = .
topsrcdir = .
VPATH = .
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../../..
topsrcdir = @top_srcdir@
VPATH = @srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
include $(topsrcdir)/config/config.mk
include ../../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk
EXPORT_RESOURCE_CONTENT = \
$(srcdir)/xmlterm.html \
$(NULL)
install::
$(INSTALL) $(EXPORT_RESOURCE_CONTENT) $(DIST)/bin/chrome/xmlterm/content/default

View File

@@ -0,0 +1,5 @@
content --- XUL, Javascript, and HTML for user interface
xmlterm.html XMLterm startup file containing HTML and Javascript
Uses mozIXMLTermShell to create XMLterm
Uses ../skin/xmlterm.css for stylesheets

View File

@@ -0,0 +1,239 @@
<!-- xmlterm.html: XMLterm startup page -->
<HTML>
<HEAD>
<TITLE>XMLterm Test Page</TITLE>
<LINK TITLE="DefaultStyle" REL="stylesheet" TYPE="text/css"
HREF="chrome://xmlterm/skin/xmlterm.css">
<SCRIPT language="JavaScript">
// Control display of all output elements
function DisplayAllOutput(flag) {
var outputElements = document.getElementsByName("output");
for (i=0; i<outputElements.length; i++) {
var outputElement = outputElements[i];
outputElement.style.display = (flag) ? "block" : "none";
}
var promptElements = document.getElementsByName("prompt");
for (i=0; i<promptElements.length; i++) {
promptElement = promptElements[i];
promptElement.style.setProperty("text-decoration",
(flag) ? "none" : "underline", "")
}
return (false);
}
// Click handler
function clickXMLTerm(name, number, arg) {
dump("clickXMLTerm("+name+","+number+","+arg+")\n");
//dump("clickXMLTerm:document.cookie="+document.cookie+"\n");
if (name === "prompt") {
var outputElement = document.getElementById("output"+number);
var promptElement = document.getElementById("prompt"+number);
//dump(promptElement.style.getPropertyValue("text-decoration"));
if (outputElement.style.display == "none") {
outputElement.style.display = "block";
promptElement.style.setProperty("text-decoration","none","");
} else {
outputElement.style.display = "none";
promptElement.style.setProperty("text-decoration","underline","");
}
} else if (name === "command") {
var commandElement = document.getElementById(name+number);
var command = commandElement.firstChild.data;
dump("command = "+command+"\n\n");
window.xmltermshell.SendText("\025"+command+"\n", document.cookie);
} else {
if ((number >= 0) &&
(window.xmltermshell.currentEntryNumber != number)) {
dump("NOT CURRENT COMMAND\n");
return (false);
}
if (name == "directory") {
var command = "ls: "+arg;
dump("command = "+command+"\n\n");
window.xmltermshell.SendText("\025"+command+"\n", document.cookie);
} else if (name == "executable") {
var command = arg;
dump("command = "+command+"\n\n");
window.xmltermshell.SendText("\025"+command+"\n", document.cookie);
} else if (name == "send") {
dump("send = "+arg+"\n");
window.xmltermshell.SendText(arg, document.cookie);
} else if (name == "sendln") {
dump("sendln = "+arg+"\n\n");
window.xmltermshell.SendText("\025"+arg+"\n", document.cookie);
} else if (name == "createln") {
dump("createln = "+arg+"\n\n");
xmltermshell.NewXMLTermWindow(arg+"\n");
}
}
return (false);
}
// Double Click handler
function dblclickXMLTerm(name, number, arg) {
dump("dblclickXMLTerm("+name+","+number+","+arg+")\n");
return (false);
}
// Set history buffer size
function SetHistory() {
var field = document.getElementById('HistoryValue');
dump("SetHistory "+field.value+"\n");
xmltermshell.history = field.value;
field.value = xmltermshell.history;
return (false);
}
// Set prompt
function SetPrompt() {
var field = document.getElementById('PromptValue');
dump("SetPrompt "+field.value+"\n");
xmltermshell.prompt = field.value;
return (false);
}
// Create new XMLTerm window
function CreateXMLTermWindow(firstcommand) {
xmltermshell.NewXMLTermWindow(firstcommand);
return (false);
}
// onLoad event handler
function LoadHandler() {
dump("xmlterm: LoadHandler ... "+window.xmltermshell+"\n");
if (window.xmltermshell) {
// XMLTerm already initialized
return (false);
}
dump("Trying to make an XMLTerm Shell through the component manager...\n");
var xmltshell = Components.classes["component://mozilla/xmlterm/xmltermshell"].createInstance();
dump("Interface xmltshell1 = " + xmltshell + "\n");
xmltshell = xmltshell.QueryInterface(Components.interfaces.mozIXMLTermShell);
dump("Interface xmltshell2 = " + xmltshell + "\n");
if (!xmltshell) {
dump("Failed to create XMLTerm shell\n");
window.close();
return;
}
// Store the XMLTerm shell in the window
window.xmltermshell = xmltshell;
// Content window same as current window
var contentWindow = window;
// Initialize XMLTerm shell in content window with argvals
window.xmltermshell.Init(contentWindow, "", "");
//dump("LoadHandler:"+document.cookie+"\n");
dump("contentWindow="+contentWindow+"\n");
dump("document="+document+"\n");
dump("documentElement="+document.documentElement+"\n");
// Set focus to appropriate frame
contentWindow.focus();
//contentWindow.xmltermshell = xmltermshell;
//dump(contentWindow.xmltermshell);
return (false);
dump("[Main] "+window+"\n");
dump(window.screenX+", "+window.screenY+"\n");
dump(window.scrollX+", "+window.scrollY+"\n");
dump(window.pageXOffset+", "+window.pageYOffset+"\n");
dump("IFRAME checks\n");
var iframe = document.getElementById('iframe1');
dump("iframe="+iframe+"\n");
frames=document.frames;
dump("frames="+frames+"\n");
dump("frames.length="+frames.length+"\n");
framewin = frames[0];
dump("framewin="+framewin+"\n");
dump("framewin.document="+framewin.document+"\n");
dump(framewin.screenX+", "+framewin.screenY+"\n");
dump(framewin.scrollX+", "+framewin.scrollY+"\n");
dump(framewin.pageXOffset+", "+framewin.pageYOffset+"\n");
var body = framewin.document.getElementsByTagName("BODY")[0];
dump("body="+body+"\n");
var height= body.scrollHeight;
dump("height="+height+"\n");
// iframe.height = 800;
// iframe.width = 700;
// framewin.sizeToContent();
framewin.xmltshell = xmltshell;
dump(framewin.xmltshell+"\n");
dump("xmlterm: LoadHandler completed\n");
return (false);
}
</SCRIPT>
</HEAD>
<BODY onLoad="return LoadHandler();">
<TABLE FRAME=none BORDER=0>
<TBODY>
<TR><TD ALIGN=center>
<FORM NAME="XMLTERM form">
<INPUT TYPE="button" VALUE="Show all output"
onClick="return DisplayAllOutput(true);">
<INPUT TYPE="button" VALUE="Hide all output"
onClick="return DisplayAllOutput(false);">
<INPUT TYPE="button" VALUE="New XMLterm"
onClick="return CreateXMLTermWindow('');">
<BR>
History Buffer Size:
<INPUT TYPE="text" ID="HistoryValue" VALUE="">
<INPUT TYPE="button" VALUE="Set" onClick="return SetHistory();">
</FORM>
</TABLE>
<!--
<IFRAME NAME="iframe1" SRC="file:///home/svn/xmlterm/doc/web/tem2.html"
FRAMEBORDER=0 WIDTH="20" HEIGHT=60>
</IFRAME>
-->
<DIV CLASS="session" ID="session">
</DIV>
</BODY>
</HTML>

View File

@@ -0,0 +1,66 @@
#!gmake
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "MPL"); you may not use this file
# except in compliance with the MPL. You may obtain a copy of
# the MPL at http://www.mozilla.org/MPL/
#
# Software distributed under the MPL is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the MPL for the specific language governing
# rights and limitations under the MPL.
#
# The Original Code is lineterm.
#
# The Initial Developer of the Original Code is Ramalingam Saravanan.
# Portions created by Ramalingam Saravanan <svn@xmlterm.org> are
# Copyright (C) 1999 Ramalingam Saravanan. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the
# terms of the GNU General Public License (the "GPL"), in which case
# the provisions of the GPL are applicable instead of
# those above. If you wish to allow use of your version of this
# file only under the terms of the GPL and not to allow
# others to use your version of this file under the MPL, indicate
# your decision by deleting the provisions above and replace them
# with the notice and other provisions required by the GPL.
# If you do not delete the provisions above, a recipient
# may use your version of this file under either the MPL or the
# GPL.
#
# makefile for xmlterm/ui/skin directory
ifdef STAND_ALONE
DEPTH = .
topsrcdir = .
VPATH = .
srcdir = .
include $(topsrcdir)/config/autoconf.mk
else
DEPTH = ../../../..
topsrcdir = @top_srcdir@
VPATH = @srcdir@
srcdir = @srcdir@
include $(DEPTH)/config/autoconf.mk
endif
include $(topsrcdir)/config/config.mk
include ../../config/xmlterm_config.mk
include $(topsrcdir)/config/rules.mk
EXPORT_RESOURCE_SKIN = \
$(srcdir)/xmlterm.css \
$(NULL)
EXPORT_RESOURCE_TOOLBAR = \
$(srcdir)/images/ficon.gif \
$(NULL)
install::
$(INSTALL) $(EXPORT_RESOURCE_SKIN) $(DIST)/bin/chrome/xmlterm/skin/default
$(INSTALL) $(EXPORT_RESOURCE_TOOLBAR) $(DIST)/bin/chrome/xmlterm/skin/default/images

View File

@@ -0,0 +1,5 @@
skin --- CSS stylesheets and images for user interface
xmlterm.css Stylesheet for XMLterm startup file ../content/xmlterm.html

View File

@@ -0,0 +1 @@
images --- Icons and images for user interface

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

View File

@@ -0,0 +1,19 @@
/* xmlterm.css: XMLterm default style sheet */
BODY { font-family: monaco, courier, elite, monospace;
background-color: #FFFFFF;
}
DIV, PRE, SPAN { margin: 0; padding-top: 0; padding-bottom: 0 }
PRE { font-family: monaco;
line-height: 120% }
/* Input components */
SPAN.prompt { color: blue }
SPAN.command { color: blue }
/* Directory display */
SPAN.plainfile { font-family: monaco}
SPAN.directory { font-family: monaco; color: blue; cursor: hand }
SPAN.executable { font-family: monaco; color: blue; cursor: hand }

View File

@@ -1,105 +0,0 @@
/*
The contents of this file are subject to the Mozilla Public
License Version 1.1 (the "License"); you may not use this file
except in compliance with the License. You may obtain a copy of
the License at http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS
IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
implied. See the License for the specific language governing
rights and limitations under the License.
The Original Code is mozilla.org code.
The Initial Developer of the Original Code is Sun Microsystems,
Inc. Portions created by Sun are
Copyright (C) 1999 Sun Microsystems, Inc. All
Rights Reserved.
Contributor(s):
*/
#ifndef __JavaDOMGlobals_h__
#define __JavaDOMGlobals_h__
#include "jni.h"
#include "prclist.h"
#include "nsError.h"
#ifdef ERROR
#undef ERROR
#endif
class nsISupports;
class nsIDOMNode;
struct PRLogModuleInfo;
struct PRLock;
class JavaDOMGlobals {
public:
static jclass attrClass;
static jclass cDataSectionClass;
static jclass commentClass;
static jclass documentClass;
static jclass documentFragmentClass;
static jclass documentTypeClass;
static jclass domImplementationClass;
static jclass elementClass;
static jclass entityClass;
static jclass entityReferenceClass;
static jclass namedNodeMapClass;
static jclass nodeClass;
static jclass nodeListClass;
static jclass notationClass;
static jclass processingInstructionClass;
static jclass textClass;
static jfieldID nodePtrFID;
static jfieldID nodeListPtrFID;
static jfieldID domImplementationPtrFID;
static jfieldID nodeTypeAttributeFID;
static jfieldID nodeTypeCDataSectionFID;
static jfieldID nodeTypeCommentFID;
static jfieldID nodeTypeDocumentFragmentFID;
static jfieldID nodeTypeDocumentFID;
static jfieldID nodeTypeDocumentTypeFID;
static jfieldID nodeTypeElementFID;
static jfieldID nodeTypeEntityFID;
static jfieldID nodeTypeEntityReferenceFID;
static jfieldID nodeTypeNotationFID;
static jfieldID nodeTypeProcessingInstructionFID;
static jfieldID nodeTypeTextFID;
static jclass domExceptionClass;
static jmethodID domExceptionInitMID;
static jclass runtimeExceptionClass;
static jmethodID runtimeExceptionInitMID;
static const char* const DOM_EXCEPTION_MESSAGE[];
typedef enum ExceptionType { EXCEPTION_RUNTIME,
EXCEPTION_DOM } ExceptionType;
static PRLogModuleInfo* log;
static PRCList garbage;
static PRLock* garbageLock;
static PRInt32 javaMaxInt;
static void Initialize(JNIEnv *env);
static void Destroy(JNIEnv *env);
static jobject CreateNodeSubtype(JNIEnv *env,
nsIDOMNode *node);
static void AddToGarbage(nsISupports* domObject);
static void TakeOutGarbage();
static void ThrowException(JNIEnv *env,
const char * message = NULL,
nsresult rv = NS_OK,
ExceptionType exceptionType = EXCEPTION_RUNTIME);
};
#endif /* __JavaDOMGlobals_h__ */