Compare commits

..

2875 Commits

Author SHA1 Message Date
troy%netscape.com
1afe654efd Block work on improved shrink wrapping
git-svn-id: svn://10.0.0.236/branches/TABLE_REWORK_BRANCH@56478 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-23 05:44:55 +00:00
(no author)
99eff8e223 This commit was manufactured by cvs2svn to create branch
'TABLE_REWORK_BRANCH'.

git-svn-id: svn://10.0.0.236/branches/TABLE_REWORK_BRANCH@55969 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:29:35 +00:00
danm%netscape.com
b5781d5136 deathgrip the event listener manager in HandleEvent. partial fix for bug 21397. r:hyatt a:chofmann
git-svn-id: svn://10.0.0.236/trunk@55968 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:29:34 +00:00
danm%netscape.com
c4c022f347 deathgrip chrome event handler in HandleDOMEvent. partial fix for bug 21397. r:hyatt a:chofmann
git-svn-id: svn://10.0.0.236/trunk@55967 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:28:16 +00:00
rhp%netscape.com
c5754fd621 Fix for crasher in mail display - Bug #21436 r: valeski - Approval: chofmann
git-svn-id: svn://10.0.0.236/trunk@55966 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:25:50 +00:00
syd%netscape.com
a90bf72a3b Partial fix for 18083. Grab page size preference from user and use it to
compute page size for layout. Previously, it was assumed that page was
8x10, ignoring user choice made in the printer dialog. r=dcone, a=chofmann.


git-svn-id: svn://10.0.0.236/trunk@55965 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:16:17 +00:00
dbragg%netscape.com
e0965c1072 Added xpinstall:res:skin dir to fix bug #21559 r=dveditz a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55964 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:13:00 +00:00
dbragg%netscape.com
44fe1931e7 Fix for bug 21559 r=dveditz a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55963 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:11:47 +00:00
dbragg%netscape.com
bcb253d821 Fix for bug #21559 a=chofmann et al r=dveditz
git-svn-id: svn://10.0.0.236/trunk@55962 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 02:10:59 +00:00
sspitzer%netscape.com
c7deef58ae fix #21178, crashing when printing on linux.
r=syd,erik a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55961 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 01:54:48 +00:00
mjudge%netscape.com
d72f2ab06c forgot newline at end of file. causing warning
git-svn-id: svn://10.0.0.236/trunk@55960 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 01:41:27 +00:00
mjudge%netscape.com
89a77df4bd 2 files mcluskey reviewed, saari also. fix for keybindings pageup/down. ya
git-svn-id: svn://10.0.0.236/trunk@55959 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 01:38:17 +00:00
mjudge%netscape.com
1f72cdf182 2 xul files updated reviewed by saari and mcluskey(sp)
git-svn-id: svn://10.0.0.236/trunk@55958 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 01:37:15 +00:00
karnaze%netscape.com
b46ebb9cae fix windows bustage.
git-svn-id: svn://10.0.0.236/trunk@55957 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 01:02:11 +00:00
briano%netscape.com
80de098422 Final portion of the fix for bug 20882. Just a cleaner way of doing what is already being done.
git-svn-id: svn://10.0.0.236/trunk@55956 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 00:56:50 +00:00
akkana%netscape.com
9491f9c3a6 Fixing build bustage on Linux
git-svn-id: svn://10.0.0.236/trunk@55955 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 00:55:37 +00:00
alecf%netscape.com
485df3bbf4 fix some bustage on stricter compilers
(just syntactic residue)


git-svn-id: svn://10.0.0.236/trunk@55954 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 00:27:33 +00:00
alecf%netscape.com
81585a34d8 fix unix bustage once and for all
git-svn-id: svn://10.0.0.236/trunk@55953 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 00:24:33 +00:00
alecf%netscape.com
2472063f36 argh, back that out, it makes it even worse
git-svn-id: svn://10.0.0.236/trunk@55952 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 00:14:56 +00:00
alecf%netscape.com
6a98427539 fix unix bustage
git-svn-id: svn://10.0.0.236/trunk@55951 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-14 00:01:55 +00:00
mscott%netscape.com
713ec6e9e3 Bug #21364....our gfx text control frame's were leaking the underlying html documents. Leak was fixed using a nsCOMPtr.
r=travis,buster
a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55950 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:36:17 +00:00
buster%netscape.com
b0b0fcbf47 checking in work around for crasher bug 21571. This may also fix some hard-to-reproduce crashers on joki's bug list.
see the bug report for the gory details.
r=rods
a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55949 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:33:17 +00:00
mjudge%netscape.com
3385a09d75 adding new export for browserBindings.xul r =saari
git-svn-id: svn://10.0.0.236/trunk@55948 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:25:29 +00:00
mjudge%netscape.com
1e8a3a110f adding new file for browser pageup/down/ keybindings.
git-svn-id: svn://10.0.0.236/trunk@55947 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:23:15 +00:00
briano%netscape.com
c351bdb38e Since configure is now working properly wrt this fix (bug 20882), this can now safely go in as well. a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55946 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:17:07 +00:00
briano%netscape.com
f96dbfc87b Automated update
git-svn-id: svn://10.0.0.236/trunk@55945 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:16:16 +00:00
briano%netscape.com
024a3fce2d Build fix for Solaris 2.3 (yes, really). No effect on other platforms. a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55944 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:14:13 +00:00
davidm%netscape.com
7bb84238de #ifdef out code for controller. Checkin to unblock mjudge and other
r= mjudge


git-svn-id: svn://10.0.0.236/trunk@55943 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:13:33 +00:00
briano%netscape.com
c6d00331d3 Fix for Greg Noel's (GregNoel@san.rr.com) non-srcdir build problem. a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55942 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:10:16 +00:00
dougt%netscape.com
8efe8bcc68 Added an assert and return so that eventQs only get
processed on the owning thread.  This fixes at least
18005 and 17065.  r=damn@netscape.com, a=chofmann.


git-svn-id: svn://10.0.0.236/trunk@55941 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 23:05:31 +00:00
ducarroz%netscape.com
f55b31ca34 Fix for bug 21606. Don't autocomplete an empty string. R=putterman
git-svn-id: svn://10.0.0.236/trunk@55940 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:59:01 +00:00
karnaze%netscape.com
6ffe908f39 incremental cell map, columns. Bugs 12122, 21544. r=troy,hyatt a=hofmann
git-svn-id: svn://10.0.0.236/trunk@55939 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:56:31 +00:00
ducarroz%netscape.com
2d6a83bc0f Fix for bug 21314. Let PL_Base64Decode do the right job. R=warren
git-svn-id: svn://10.0.0.236/trunk@55938 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:49:12 +00:00
rginda%netscape.com
09cb8a8254 Simple get/set test.
git-svn-id: svn://10.0.0.236/trunk@55937 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:47:31 +00:00
pollmann%netscape.com
b78c738e4a Bug 20315: Make non-iso charsets work in frameset documents. Fix 2/2: Propagate charset info from parent frames to children r=ftang a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55936 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:45:06 +00:00
pollmann%netscape.com
89f8ed5563 Bug 20315: Make non-iso charsets work in frameset documents. Fix 1/2: Propagate charset info through webshell reloads r=ftang a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55935 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:41:09 +00:00
shaver%netscape.com
58b99ebb6d fix JS component loader by reimplementing nsGenericModule (r=dveditz,slamm;a=leaf)
git-svn-id: svn://10.0.0.236/trunk@55934 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:33:11 +00:00
rginda%netscape.com
bee383e96d Adding IRC Client to core package on unix and windows.
r=dveditz, a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55933 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:28:53 +00:00
sgehani%netscape.com
44332cf660 Fix for file replace on restart problem on the Mac.
b = 6410
r = dveditz, ssu
a = chofmann


git-svn-id: svn://10.0.0.236/trunk@55932 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:25:31 +00:00
jefft%netscape.com
fb8e28c9c4 fixed bug 20312, 21546 -- Get Pop3 Messages stall; r=ducarroz, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55931 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 22:03:14 +00:00
ftang%netscape.com
17cbeb77e7 fix bug 21234 r=buster reset the hint charset source after access it from the meta charset reload
git-svn-id: svn://10.0.0.236/trunk@55930 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 21:00:47 +00:00
sdagley%netscape.com
3000b1086d Implement Flash() method of nsWindow on Mac in support of #18518. r=brade.amusil a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55929 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 19:17:35 +00:00
despotdaemon%netscape.com
faf3f4fe4d Pseudo-automatic update of changes made by german@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@55928 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 16:04:50 +00:00
bienvenu%netscape.com
43df393342 fix problem applying multiple imap filter hits r=mscott,a=chofmann 21435
git-svn-id: svn://10.0.0.236/trunk@55927 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 02:24:13 +00:00
mcafee%netscape.com
35f90e65d1 Ignore Generated Files
git-svn-id: svn://10.0.0.236/trunk@55926 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 01:44:29 +00:00
rginda%netscape.com
8070111007 Added printStatus function to shell.js
Added some catchguard tests


git-svn-id: svn://10.0.0.236/trunk@55925 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-13 00:37:01 +00:00
duncan%be.com
7f42ef6e64 Fix minor BeOS build breakage.
r=dveditz


git-svn-id: svn://10.0.0.236/trunk@55924 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 20:32:26 +00:00
despotdaemon%netscape.com
af242334cb Pseudo-automatic update of changes made by newt@pobox.com.
git-svn-id: svn://10.0.0.236/trunk@55923 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 20:28:36 +00:00
tbogard%aol.net
933fcf7691 Implemented changes to nsIDocShellTreeItem and nsIDocShellTreeNode interfaces. FindChildWithName and FindItemWithName. Work to fix bug 21287. r=shaver a=shaver.
git-svn-id: svn://10.0.0.236/trunk@55922 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 10:16:15 +00:00
tbogard%aol.net
2e299693a9 Implemented changes to nsIDocShellTreeItem and nsIDocShellTreeNode. FindItemWithName and FindChildWithName. Work to fix bug 21287. r=shaver a=shaver.
git-svn-id: svn://10.0.0.236/trunk@55921 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 10:15:26 +00:00
tbogard%aol.net
0807b27f4a Added a parameter to FindChildWithName to know if it should recurse through the children. Also added a parameter to specify the calling treeItem to avoid circular recursion. Work to fix bug 21287. r=shaver a=shaver.
git-svn-id: svn://10.0.0.236/trunk@55920 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 10:14:41 +00:00
tbogard%aol.net
847ca747b9 Added the ability to find a docshellTreeItem with the given name per the API. Work to fix bug 21287. r=shaver a=shaver.
git-svn-id: svn://10.0.0.236/trunk@55919 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 10:13:00 +00:00
tbogard%aol.net
4503d0b854 Removed nsIDocShellContainer.idl, added nsIDocShellTreeOwner.idl.
git-svn-id: svn://10.0.0.236/trunk@55918 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 10:10:36 +00:00
tbogard%aol.net
1eb50dbb5a Removed nsIDocShellContainer since it is no longer used and is replaced by nsIDocShellTreeNode.
git-svn-id: svn://10.0.0.236/trunk@55917 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 09:04:04 +00:00
tbogard%aol.net
17e69911b9 added files: mozilla/docshell/base/nsIDocShellTreeOwner.idl
git-svn-id: svn://10.0.0.236/trunk@55916 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 08:54:37 +00:00
tbogard%aol.net
51a5a2178c removed files: mozilla/docshell/base/nsIDocShellContainer.idl
git-svn-id: svn://10.0.0.236/trunk@55915 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 08:54:02 +00:00
tbogard%aol.net
a7f2f7297e Added nsIDocShellTreeItem.idl to the build removed nsIDocShellContainer.idl from the build.r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55914 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 08:52:03 +00:00
tbogard%aol.net
7dd0882349 Adding a new interface.
git-svn-id: svn://10.0.0.236/trunk@55913 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 08:47:00 +00:00
mccabe%netscape.com
2db3a56287 Fix to 21512.
Added big note saying 'please disable security before trying to run
this' so nobody gets frustrated.

Updated sample component progid reference to actually match the .cpp.
Now the page actually works!  (John Morrison
<3jrgm@qlink.queensu.ca> caught this in mozilla.xpcom)

Thanks to Rick Bradley <roundeye@bellsouth.net> for pointing me to the
problem, and for encouraging me to add a note.

r=mccabe.  Not part of the build.


git-svn-id: svn://10.0.0.236/trunk@55912 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 05:41:29 +00:00
beard%netscape.com
c060132cb3 not used by anything in the default build. r=rginda, a=leaf
git-svn-id: svn://10.0.0.236/trunk@55911 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 02:52:37 +00:00
leaf%mozilla.org
cd242b3880 removing pics from the build process; no bug number. r=cyeh a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55910 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 01:29:04 +00:00
leaf%mozilla.org
39b8a113bc starting to remove pics from the build; no bug number. patch from neeti,
r=cyeh,leaf, a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55909 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 01:27:44 +00:00
bienvenu%netscape.com
c9b94e3585 fix for stop in mailnews,r=mscott,a=chofmann 18242
git-svn-id: svn://10.0.0.236/trunk@55908 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-12 01:23:26 +00:00
rjc%netscape.com
caad17c5c1 Fix PDT+ bug # 21236: don't null out mResponseContext, as it needs to be valid for the life of the channel. (Its a nsCOMPtr, so it'll automatically release when it falls out of scope.)
git-svn-id: svn://10.0.0.236/trunk@55907 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 21:24:50 +00:00
waterson%netscape.com
9d54abd105 Bug 20724. Atomize short attribute values to avoid string allocation and copying overhead. r=hyatt, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55906 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 18:16:22 +00:00
idk%eng.sun.com
29ac9e98a4 fix for 20686
one character fix.
changed return value from -1 to 0


git-svn-id: svn://10.0.0.236/trunk@55905 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 09:08:40 +00:00
rjc%netscape.com
b1a59b34b6 Fix PDT+ bug # 21245: add sorting support for <treecolgroup> trags. Review: hyatt, putterman. Approval: chofmann.
git-svn-id: svn://10.0.0.236/trunk@55904 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 08:17:31 +00:00
briano%netscape.com
b968087d92 Automated update
git-svn-id: svn://10.0.0.236/trunk@55903 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 06:04:16 +00:00
briano%netscape.com
ab9b4eea01 Okay, the AIX breakage showed what was wrong with my initial bug 20882 change.
Linux and Solaris (using gcc) didn't have any problems, so I didn't notice
I was ending up with -DD_INO=\"d_ino\" when I really wanted -DD_INO=d_ino.
This fixes that problem.  Still will have no effect on the "official" builds
until the related code changes go in.


git-svn-id: svn://10.0.0.236/trunk@55902 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 06:02:54 +00:00
hyatt%netscape.com
c324cc9a00 Fix for the crash in SendFocusBlur.
git-svn-id: svn://10.0.0.236/trunk@55901 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 05:42:18 +00:00
briano%netscape.com
36ac6160d7 I reacted prematurely to the wrong problem. Backing out my last change for now.
git-svn-id: svn://10.0.0.236/trunk@55900 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 05:34:59 +00:00
briano%netscape.com
05ee546aab Oops. AIX needs this part of the fix for bug 20882 as well.
git-svn-id: svn://10.0.0.236/trunk@55899 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 05:25:03 +00:00
briano%netscape.com
628b5a327a Automated update
git-svn-id: svn://10.0.0.236/trunk@55898 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 02:45:46 +00:00
briano%netscape.com
c495b6f2e3 Initial change to fix bug 20882. Defines D_INO and HAVE_VA_LIST_AS_ARRAY as appropriate. Won't affect builds until the actual code changes are checked in after M12. a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55897 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 02:33:31 +00:00
sdagley%netscape.com
504d65b327 Checking in fur's fix for #21162 - throbber animation not stoping. Also major speed improvment on NT and Mac. a=brendan
git-svn-id: svn://10.0.0.236/trunk@55896 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 02:25:00 +00:00
alecf%netscape.com
b45d74d4d2 fix #18420 - deleting last item makes tree jump to top
fix was to scroll up one line during the frame destruction process.
To do this, we had to set up the content chain for the row just before the content node was deleted.
r=hyatt
a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55895 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 02:08:07 +00:00
ducarroz%netscape.com
0e27256814 Fix for bug 21411 (PDT+). Cell doesn't have anymore a child node (by default) are they are now box. Don't check for it. R=hangas
git-svn-id: svn://10.0.0.236/trunk@55894 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 02:08:03 +00:00
hangas%netscape.com
b540121b9c Fixed 21350, styles lost for common dialogs. Most importantly buttons had lost appearance. r=alecf a=jar&chofmann
git-svn-id: svn://10.0.0.236/trunk@55893 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 01:54:31 +00:00
jj%netscape.com
96f6a637ae #21182: bulk added 57 files/directories found under dist/viewer but omitted by the installer + reordered lines for better clarity. a=cyeh
git-svn-id: svn://10.0.0.236/trunk@55892 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 01:47:08 +00:00
hyatt%netscape.com
206c576508 Fix for PDT+ bug #20493 (mail compose widget now remembers email addresses). r=travis
git-svn-id: svn://10.0.0.236/trunk@55891 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 01:43:03 +00:00
akkana%netscape.com
ef0b5871a1 18033, 19981:
Adjust inputBindings keyset so that it can be overlaid with
  platformGlobalOverlay.xul.  Rewrite emacs keybindings in the
  unix overlay to track mjudge's latest changes. r=mjudge, a=jar


git-svn-id: svn://10.0.0.236/trunk@55890 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 01:28:07 +00:00
saari%netscape.com
6166390376 fix for PDT+ bug 19268. Add css rules to prevent scrollbars from stealing focus. r = hyatt
git-svn-id: svn://10.0.0.236/trunk@55889 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 01:19:16 +00:00
slamm%netscape.com
69a77612e3 Remove sidebar library files. Using a JS module instead now. bug #21070. r=jj a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55888 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:47:03 +00:00
rogerl%netscape.com
0a6117621f Fixed test of enumerated property to use isNaN - a previous bug fix in
enumerated types stopped it from returning anything but strings here.


git-svn-id: svn://10.0.0.236/trunk@55887 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:44:02 +00:00
rogerl%netscape.com
18e2c469eb Removed tests invalidated by new argument rules - java.lang.String is
preferred over java.lang.Double when coming from a Java Object and both
Double & Float have constructors that take a String - only the DataType
toString doesn't return the correct value for the test. (See Christine's
comment).


git-svn-id: svn://10.0.0.236/trunk@55886 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:42:43 +00:00
akkana%netscape.com
0a027ef185 Add a get() to fix build bustage
git-svn-id: svn://10.0.0.236/trunk@55885 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:37:11 +00:00
idk%eng.sun.com
63871c1621 21259
PlugletManager.getValue removed


git-svn-id: svn://10.0.0.236/trunk@55884 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:35:20 +00:00
mjudge%netscape.com
0c869fbdc6 meant to use the define. sorry
git-svn-id: svn://10.0.0.236/trunk@55883 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:35:10 +00:00
mjudge%netscape.com
29a679225a fix for vc5.0 bustage. wierd. bill law will follow up
git-svn-id: svn://10.0.0.236/trunk@55882 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:19:17 +00:00
idk%eng.sun.com
bc74704a55 21291
add on.


git-svn-id: svn://10.0.0.236/trunk@55881 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:09:16 +00:00
idk%eng.sun.com
828f199f1f 21291
org.mozilla.util.Debug renamed to
org.mozilla.util.DebugPluglet
Tests updated


git-svn-id: svn://10.0.0.236/trunk@55880 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:08:00 +00:00
hyatt%netscape.com
142b602c9a Fix for PDT bug #21247. r=saari, mjudge
git-svn-id: svn://10.0.0.236/trunk@55879 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:06:29 +00:00
mjudge%netscape.com
78a1c7b0e7 massive changes a=jar.hoffman, r=akkana
git-svn-id: svn://10.0.0.236/trunk@55878 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-11 00:02:08 +00:00
rods%netscape.com
6a13d9018d not using scaled pixels to twips
b=21293 r=dcone


git-svn-id: svn://10.0.0.236/trunk@55877 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:59:27 +00:00
sgehani%netscape.com
eec8017035 *** NOT PART OF BUILD ***
Ported install script templates for browser xpi package.
b = 21261
r = ssu
a = chofmann


git-svn-id: svn://10.0.0.236/trunk@55876 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:45:44 +00:00
sgehani%netscape.com
989e73d3d7 *** NOT PART OF BUILD ***
Ported perl scripts and install script templates to build Unix .xpis.
b = 21261
r = ssu
a = chofmann


git-svn-id: svn://10.0.0.236/trunk@55875 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:44:37 +00:00
jefft%netscape.com
1a11f42023 fixed bug 20312 -- [DOGFOOD] [PDT+] Mozilla Mail stalls on specified popmail spool; we failed in handling empty line & dot in the middle of a message; r=bienvenu,mscott a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55874 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:42:44 +00:00
sgehani%netscape.com
53ccb20483 Updated unix manifest to produce a working build.
b = 21261
r = ssu
a = chofmann


git-svn-id: svn://10.0.0.236/trunk@55873 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:40:49 +00:00
jefft%netscape.com
61cd4d00a4 fixed bug 20312 -- [DOGFOOD] [PDT+] Mozilla Mail stalls on specified popmail spool; we failed in handling empty line & dot in the middle of a message; r=bienvenu,mscott a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55872 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:37:04 +00:00
bienvenu%netscape.com
a6d5ab0a18 fix file truncation on windows, was breaking pop filters, r=dougt, a=chofmann 20634
git-svn-id: svn://10.0.0.236/trunk@55871 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:33:30 +00:00
jfrancis%netscape.com
af51a3ae47 fixes for bug 21030. again. really.
21030: html mail reply won't quote original message
r=kin; a=brendan


git-svn-id: svn://10.0.0.236/trunk@55870 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 23:16:02 +00:00
sfraser%netscape.com
a945951480 Fix for bug 21189; first node's content was duplicated with timer-based notifications on. Fix by vidur, r=smfr, a=brendan. Also work around a problem with LL_CMP macros on compilers that don't use long long (NSPR bug 21428).
git-svn-id: svn://10.0.0.236/trunk@55869 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 22:47:39 +00:00
despotdaemon%netscape.com
6d4433d5b4 Pseudo-automatic update of changes made by endico@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@55868 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 22:46:08 +00:00
slamm%netscape.com
224dcfd32b Reorder 'Build Time' and 'Guilty' column headers so that their descriptive text is beneath them.
git-svn-id: svn://10.0.0.236/trunk@55866 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 21:57:46 +00:00
buster%netscape.com
8354ebec04 bug 21378
r=rods
a=chofmann

changed CanUndo and CanRedo to return the right value.  They were returning the opposite of what they ought to have returned.


git-svn-id: svn://10.0.0.236/trunk@55865 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 21:43:52 +00:00
hangas%netscape.com
0ecef6293a Fix headers over results pane in address book. Bug 21340. r=ducarroz, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55864 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 21:15:10 +00:00
waterson%netscape.com
cc504ba0d1 Bug 20691. Fire OnStopRequest() on a callback so as to avoid re-entrancy problems. r=mscott, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55863 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 21:02:47 +00:00
waterson%netscape.com
1f6f03d26d Bug 20691. Add timer_s.lib so that we can use NS_NewTimer(). r=mscott, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55862 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:59:46 +00:00
waterson%netscape.com
abd7542a33 Bug 20691. Add NetworkModular[Debug].shlb so we can get NS_NewTimer(). r=mscott, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55861 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:58:08 +00:00
ftang%netscape.com
2426564a47 fix bug 21205. Make nsMacTSMMessagePump a singleton so it won't install and remove TSM AEHandler when modle dialogbox appShell create/destroy. r=pinkerton/waterson
git-svn-id: svn://10.0.0.236/trunk@55860 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:37:50 +00:00
blizzard%redhat.com
94bdfd96ef Implement nsIWidget::Flash() for unix. This is part of bug #18518. r=pavlov,a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55859 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:23:21 +00:00
beard%netscape.com
59b22cff6c added ASCII annotation of fields.
git-svn-id: svn://10.0.0.236/trunk@55858 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:23:16 +00:00
briano%netscape.com
f9a5876d9f Automated update
git-svn-id: svn://10.0.0.236/trunk@55857 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:15:45 +00:00
cls%seawood.org
ea6abb3de2 Remove unnecessary options from DSO_LDOPTS for AIX. r=jdunn
git-svn-id: svn://10.0.0.236/trunk@55856 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 20:10:57 +00:00
rogerl%netscape.com
d02bcc7362 Updated tests to account for new LiveConnect behaviour for JS array type
as input argumnet - it used to be handled as any other JS object, but there
are now new rules for arrays, invalidating portions of these tests.


git-svn-id: svn://10.0.0.236/trunk@55855 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 19:56:23 +00:00
danm%netscape.com
f63c611cd5 release the PresShell in HandleEventUsingKeyset earlier, so it won't outlive its ViewManager if the window is deleted. another fix for bug 20193. r:hyatt a:chofmann
git-svn-id: svn://10.0.0.236/trunk@55854 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 19:31:54 +00:00
kin%netscape.com
9b0d9085aa Fix for bug #18622 (UMR in nsLineLayout::CanPlaceFrame)
nsLineLayout::ReflowFrame() now sets some of the psd flags before
calling aFrame->Reflow().
r=troy@netscape.com,norris@netscape.com  a=chofmann@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55853 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 18:41:43 +00:00
pavlov%netscape.com
64692d9456 fix mem leak when typing r=slamm a=leaf
git-svn-id: svn://10.0.0.236/trunk@55852 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 18:08:49 +00:00
rbs%maths.uq.edu.au
5c7ccdf2f5 [NOT PART OF THE DEFAULT BUILD]. Changed MathML namescape to the new officially published namespace.
git-svn-id: svn://10.0.0.236/trunk@55851 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 13:29:27 +00:00
rbs%maths.uq.edu.au
3ba6bb1158 [NOT PART OF THE DEFAULT BUILD]. Applied a patch of Shyjan Mahamud to return the bounding metrics in a uniform XP manner (bug 19024).
git-svn-id: svn://10.0.0.236/trunk@55850 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 13:17:03 +00:00
rbs%maths.uq.edu.au
7db2c3e16f [NOT PART OF THE DEFAULT BUILD]. *Changes to bring MathML in sync with layout (added aPresShell on factory routines). *Postfixed atoms with underscore to avoid conflicts with reserved names in C++ and math.h
git-svn-id: svn://10.0.0.236/trunk@55849 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 13:07:59 +00:00
rbs%maths.uq.edu.au
63749e1875 [NOT PART OF THE DEFAULT BUILD]. *Changes to bring the MathML code in sync with layout (this will clear bugs 19398 and 20858). *Postfixed atoms with underscore. *Major revamps to launch the support of embellished operators.
git-svn-id: svn://10.0.0.236/trunk@55848 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 13:02:23 +00:00
rbs%maths.uq.edu.au
48dd7c0e78 [NOT PART OF THE DEFAULT BUILD]. *Postfixed all atoms with underscore to avoid conflicts with predefined names in C++ and math.h. *Changed MathML namescape to the new officially published namespace.
git-svn-id: svn://10.0.0.236/trunk@55847 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 12:47:24 +00:00
karnaze%netscape.com
43ad4d5101 new regression test
git-svn-id: svn://10.0.0.236/trunk@55846 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 12:45:36 +00:00
mcafee%netscape.com
3ef0b5bddd \n on a printf.
git-svn-id: svn://10.0.0.236/trunk@55845 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 07:59:11 +00:00
law%netscape.com
f6869e82d6 18518; Add nsIWidget::Flash with null default implementation in nsBaseWidget and real functionality in Windows version of nsWindow; r=syd@netscape.com, a=chofmann@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55844 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 07:20:51 +00:00
mcafee%netscape.com
079e07a0a2 Moving bloaturls.txt to mozilla/build so that it can be exported to dist and is part of the default module (21320). bloaturls.txt is the file that drives the bloaty tinderbox test. a=chofmann, r=slamm
git-svn-id: svn://10.0.0.236/trunk@55843 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 06:31:58 +00:00
warren%netscape.com
b58a3dc6a6 Fixed up printing of bad leak/bloat values.
git-svn-id: svn://10.0.0.236/trunk@55842 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 05:17:56 +00:00
chuang%netscape.com
9f13914779 PDT+Bug 21230 Change in Edit AB Card not saved to address book database. r=bienvenu, a=chofmann.
git-svn-id: svn://10.0.0.236/trunk@55841 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 04:40:59 +00:00
warren%netscape.com
e9f618e116 Fix for leak/bloat stats going negative. a=jar
git-svn-id: svn://10.0.0.236/trunk@55840 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 04:27:52 +00:00
rickg%netscape.com
0abfa57047 This fixes PDT+Bug:20228. The essential problem was the lack of refcounting on tokenizers. Also fixed unchecked
dereferences in expattokenizer. r=kmcclusk; a=chofmann.


git-svn-id: svn://10.0.0.236/trunk@55839 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 04:01:26 +00:00
vidur%netscape.com
7ddd31965b Fix for bug 21271. Check if the current context is the head context in HTMLContentSink::CloseHTML, even though the parser shouldn't let that happen. Fixes crash in Channels dropdown. A=jar R=pollmann.
git-svn-id: svn://10.0.0.236/trunk@55838 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 03:36:50 +00:00
karnaze%netscape.com
4cf56cb8b9 new regression tests
git-svn-id: svn://10.0.0.236/trunk@55837 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 02:29:27 +00:00
pinkerton%netscape.com
f5f1bfbb66 fix for page scrolling to scroll (one page - height of one line), not 80% of the page as before. bug 21348, r=evaughan,sfraser. a=brendan.
git-svn-id: svn://10.0.0.236/trunk@55836 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 02:14:35 +00:00
selmer%netscape.com
39c81e6a36 bug 12288 shift-click (only PDT+ hack portion of fix) r=alecf a=chofmann,jar
git-svn-id: svn://10.0.0.236/trunk@55835 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 01:38:33 +00:00
slamm%netscape.com
91b948026e cd back to tinderbox directory to move who.dat.$$ to who.dat.
git-svn-id: svn://10.0.0.236/trunk@55834 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 01:11:10 +00:00
varada%netscape.com
da12438e7e fix for bug #5435 UDP requirement that netscape communicator be part of the program folder name
git-svn-id: svn://10.0.0.236/trunk@55833 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 00:52:43 +00:00
saari%netscape.com
072f9f11f5 Helping to fix 19114 by making a strong ref weak. Potential fix for 19268 by making scrollbars not steal focus. r=hyatt a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55832 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 00:51:50 +00:00
ssu%netscape.com
5399053fa1 fixing bug #19165. Seamonkey now installs the required msvcrt.dll and
msvcirt.dll files.  Older versions of these files were causing seamonkey
to crash at startup.  r=sgehani. a=cyeh.


git-svn-id: svn://10.0.0.236/trunk@55830 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 00:23:46 +00:00
cmanske%netscape.com
6c6ee14d9d Found 3 more dialogs with missing CSS lines just as with the NamedAnchor Dialog covered by bug 21222 a=chofmann, r=brade
git-svn-id: svn://10.0.0.236/trunk@55829 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-10 00:02:32 +00:00
varada%netscape.com
c1175067d7 cleaning up
git-svn-id: svn://10.0.0.236/trunk@55828 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 23:53:03 +00:00
varada%netscape.com
9b31b01640 fix for bug #5001 should have been there in the first place - bad dog!
git-svn-id: svn://10.0.0.236/trunk@55827 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 23:52:07 +00:00
norris%netscape.com
396cb6ad29 Remove unused member variable.
git-svn-id: svn://10.0.0.236/trunk@55826 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 23:37:18 +00:00
varada%netscape.com
bc7a07fc3e copying only the bmps and nsetup32 directories and not the makefile to the template
git-svn-id: svn://10.0.0.236/trunk@55825 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 23:34:18 +00:00
varada%netscape.com
20082f719f the inf txt and exe files should be on the same directory as the the shell
git-svn-id: svn://10.0.0.236/trunk@55824 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 23:33:15 +00:00
varada%netscape.com
2bad26f150 removing cd and network directories from the template
git-svn-id: svn://10.0.0.236/trunk@55823 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 23:32:14 +00:00
kmcclusk%netscape.com
dfefa3f9af Reduced image cache size from 2Mb to 1Mb. bug 19114. r=buster@netscape.com. approved by chofmann@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55822 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:59:57 +00:00
kin%netscape.com
c5faa05ac6 Fix for bug #21317: UMR: nsCAutoString::=(nsCAutoString const&)
Added nsCAutoString& operator=(nsCAutoString&).
r=rickg@netscape.com a=chofmann@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55821 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:53:52 +00:00
erik%netscape.com
3bc497b41c bug 8801; added some code to pick up font size prefs from prefs file(s);
r=ftang; a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55820 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:44:47 +00:00
ftang%netscape.com
6cccc8adfc implement Mac GFX w/ langGroup. From now we will use the correct CJK font depend on the document charset. Howerver, it have not listen to the pref yet. r=erik. a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55819 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:44:34 +00:00
ftang%netscape.com
236069891b fix bug 19358 r=jfrancis add IME force commit for Undo,SelectAll and Paste
git-svn-id: svn://10.0.0.236/trunk@55818 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:37:36 +00:00
ftang%netscape.com
607ad6701a fix bug 19358. r=jfrancis . Forece commit when we Undo, SelectAll or Paste
git-svn-id: svn://10.0.0.236/trunk@55817 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:35:17 +00:00
cmanske%netscape.com
c6e18b6ab7 Fixed bugs 21077 and 21222. Removed unused files and entries in MANIFEST files. a=chofmann r=brade
git-svn-id: svn://10.0.0.236/trunk@55816 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:26:54 +00:00
cmanske%netscape.com
81456654a1 Part of fix for bug 21077. a=chofmann r=brade
git-svn-id: svn://10.0.0.236/trunk@55815 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:26:49 +00:00
akkana%netscape.com
52cc206f36 18409: Don't add newlines when converting copied text, or in any
other case of html-to-text conversion except when the formatted
flag is set.  Set mPreFormatted for style white-space: pre
as well as for moz-pre-wrap. r=pinkerton, a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55814 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:08:12 +00:00
beard%netscape.com
cfddb992ee fixes case where an InterpretedFunction has both a closure and needs an activation.
git-svn-id: svn://10.0.0.236/trunk@55813 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 22:05:09 +00:00
jdunn%netscape.com
4fca64717e nsCOMPtr is supposed to wrap interface references and not class references
r= chofmann@netscape.com danm@netscape.com
# 20193


git-svn-id: svn://10.0.0.236/trunk@55812 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 21:44:16 +00:00
troy%netscape.com
6e46435b1d b=19198, a=chofmann. Fixed RecoverStateFrom() to use the update conbined area when
invalidating. This fixes a regression introduced in version 3.308


git-svn-id: svn://10.0.0.236/trunk@55811 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 21:40:37 +00:00
mcafee%netscape.com
21e078823e /usr/bonsaitools not needed for client tinderbox machines. r=slamm
git-svn-id: svn://10.0.0.236/trunk@55810 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 21:13:03 +00:00
hangas%netscape.com
f2724c2ff8 Fixing regression 21285 (broken select addresses dialog because of api change in backend). r=alecf
git-svn-id: svn://10.0.0.236/trunk@55809 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 21:12:43 +00:00
jfrancis%netscape.com
26e8a2307e fixes for bug 21158 and 21030.
21158: aplying text style deletes text
21030: html mail reply won't quote original message
r=kin; a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55808 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 21:12:16 +00:00
joki%netscape.com
c31311ba6f fix 21337, set modifier keys for generated events. r:brendan a:brendan
git-svn-id: svn://10.0.0.236/trunk@55807 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 21:02:09 +00:00
varada%netscape.com
d29bd37163 cleaning up rshell.ini
git-svn-id: svn://10.0.0.236/trunk@55806 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 20:56:06 +00:00
pinkerton%netscape.com
ecc5dfb4b0 Partial fix for bug 18409. I wasn't actually ever converting the CRLF to LF. now i am. also fixes a memory leak.
r=akkana a=chofmann.


git-svn-id: svn://10.0.0.236/trunk@55805 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 19:50:50 +00:00
slamm%netscape.com
090fcb3c8f Remove "Rebuild Guilty List" link. The list is built everytime a build is processed. Also, re-enable buffering the script output. That should help improve throughput.
git-svn-id: svn://10.0.0.236/trunk@55804 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 19:45:01 +00:00
slamm%netscape.com
1a5079d1e3 Fix empty guilty list in tinderbox page (bug #7637). Add comments. Move some code into functions.
git-svn-id: svn://10.0.0.236/trunk@55803 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 19:28:39 +00:00
erik%netscape.com
5c304f97bf bug 7586; need to convert font name from prefs file from UTF-8 to Unicode
so that non-ASCII font names will work on Windows; r=ftang; a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55800 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 19:20:06 +00:00
ftang%netscape.com
c007a0cb70 fix bug 19358. r=erik,pierre,pinkerton. Move the support of nsIKBStateControl from nsMacWindow to nsWindow. Remove unnecessary ResetInputState in mouse click. That is already been replaced by xp code. Clean up casting compilation error after change the class hier.
git-svn-id: svn://10.0.0.236/trunk@55799 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 17:56:41 +00:00
despotdaemon%netscape.com
831c6bfb9e Pseudo-automatic update of changes made by dwhoward@earthling.net.
git-svn-id: svn://10.0.0.236/trunk@55798 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 17:25:25 +00:00
buster%netscape.com
be158e5272 bug 21187
fixed the webshell leak in <textarea> and <input type=text|password>
the problem was the new nsWebShell::SetDocument() call was indirectly
causing nsHTMLDocument to instantiate a parser and fire off a parse.
bad circular references ensued. The fix is to use the "aCommand" param
to pass a hint to the nsHTMLDocument, telling it there's no need to
involve a parser.

in the simple case, we no longer leak webshells.  That is, if you open
mozilla.exe, look at a page (whether it has a text control on it or
not), and shut down the app, no webshell is leaked.  If I browse around,
sometimes we still leak a webshell somewhere.  I haven't figured out
exactly where that is yet.  A guess is history, which is in the process
of being reworked anyway.

r=mscott
a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55797 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 07:21:34 +00:00
buster%netscape.com
25d1324f5d bug 21187
fixed the webshell leak in <textarea> and <input type=text|password>
the problem was the new nsWebShell::SetDocument() call was indirectly causing nsHTMLDocument to instantiate a parser
and fire off a parse.  bad circular references ensued.  The fix is to use the "aCommand" param to pass a hint
to the nsHTMLDocument, telling it there's no need to involve a parser.

in the simple case, we no longer leak webshells.  That is, if you open mozilla.exe, look at a page (whether it has a text
control on it or not), and shut down the app, no webshell is leaked.  If I browse around, sometimes we still leak a webshell
somewhere.  I haven't figured out exactly where that is yet.  A guess is history, which is in the process of being reworked
anyway.

r=mscott
a=chofmann


git-svn-id: svn://10.0.0.236/trunk@55796 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 07:18:38 +00:00
valeski%netscape.com
b75d99c004 r=rhp. 21242 adjusted pipe buffer params for FTP Async file transfers. URI dispatching had aggrivated this bug. Now file viewing via FTP works.
git-svn-id: svn://10.0.0.236/trunk@55795 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 06:41:05 +00:00
valeski%netscape.com
5d12f78ef8 r=rhp. 21195. a=jevering. adjusted pipe buffer params for FTP OpenInputSTream. URI dispatching had aggrivated this bug. Now file downloads via FTP work.
git-svn-id: svn://10.0.0.236/trunk@55794 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 06:20:50 +00:00
sspitzer%netscape.com
b8e383026e check in a comment that let's us non-mac guru's know which project builds this project. pretty annoying that a file under mozilla:gfx:src:mac gets built by mozilla:netwerk:util:macbuild:netwerkUtil.mcp, if you ask me.
git-svn-id: svn://10.0.0.236/trunk@55793 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 03:40:22 +00:00
vidur%netscape.com
2d4baee02f Partial fix for bug 20645. Rather than just assert on error state, bail out with an error code. Real fix still due from the parser guys, but we don't crash anymore. a=chofmann r=rickg
git-svn-id: svn://10.0.0.236/trunk@55792 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 03:10:22 +00:00
briano%netscape.com
13076f014b QNX-specific build bustage fix. va_list is an array on QNX, so assignments need to use array notation.
git-svn-id: svn://10.0.0.236/trunk@55791 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 03:09:56 +00:00
briano%netscape.com
ce2cc76fc2 Build fix. Some compilers try to interpret the #0xx in the unused #defines
as octal values, so the ones that contain 8's and 9's make the compilers unhappy.


git-svn-id: svn://10.0.0.236/trunk@55790 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 02:59:40 +00:00
dougt%netscape.com
1131f006d6 fix for 19133. r=waterson, a=brendan.
git-svn-id: svn://10.0.0.236/trunk@55789 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 02:28:43 +00:00
bienvenu%netscape.com
dcd55638ce fix imap reply quoting, r=mscott,a=chofmann 21217
git-svn-id: svn://10.0.0.236/trunk@55788 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 02:19:30 +00:00
sspitzer%netscape.com
c2a1156e3a remove C++ style comments.
git-svn-id: svn://10.0.0.236/trunk@55787 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 01:59:34 +00:00
sspitzer%netscape.com
a9ac48d020 fix for 15483. return an error when we are about to return the default value for a pref that hasn't been initialized. r=putterman. mail sent to netscape.public.mozilla.xpfe and to various XUL / JS authors who may be affected by this change.
git-svn-id: svn://10.0.0.236/trunk@55786 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 01:49:19 +00:00
akkana%netscape.com
cbd61feda9 21208: Fix pasting of unicode. r=pinkerton, a=brendan
git-svn-id: svn://10.0.0.236/trunk@55785 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 01:35:48 +00:00
briano%netscape.com
46da1618bb Build fix. This is a C file, so C++ comments are actually _wrong_ on platforms using competent native compilers.
git-svn-id: svn://10.0.0.236/trunk@55784 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 01:31:23 +00:00
rhp%netscape.com
59909e378d Fix for possible memory overrun - Bug #:20564 - r: jefft
git-svn-id: svn://10.0.0.236/trunk@55782 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 01:11:52 +00:00
idk%eng.sun.com
a8b311c760 Followup bug 19559
Make pluglets using SuperWin


git-svn-id: svn://10.0.0.236/trunk@55781 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 00:58:30 +00:00
pavlov%netscape.com
03c20d1e01 fix for 20496 r=mcafee a=leaf
git-svn-id: svn://10.0.0.236/trunk@55780 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 00:54:55 +00:00
danm%netscape.com
99c4caf811 close window on receipt of close event, as well as destroy. synchs with recent changes to gtk/mac/win windows. fixes bug 20811. r:troy a:chofmann
git-svn-id: svn://10.0.0.236/trunk@55779 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 00:47:46 +00:00
rogerl%netscape.com
2fba19da79 smaller faster better - it'll probably burn up on entry.
git-svn-id: svn://10.0.0.236/trunk@55778 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 00:26:09 +00:00
shaver%netscape.com
44195d4a3a fix leaf of registryName (#21068, r=beard, a=leaf)
git-svn-id: svn://10.0.0.236/trunk@55777 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-09 00:01:46 +00:00
jdunn%netscape.com
8872d98f17 Include nsJARURI.cpp and nsJARChannel.cpp in the unix build
r= warren, chofmann


git-svn-id: svn://10.0.0.236/trunk@55776 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 23:47:11 +00:00
blizzard%redhat.com
add4ae6745 fix for bug #21169. fix problems with resizing and showing the gtkmozilla widget when embedding it. r=pavlov, a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55775 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 23:07:13 +00:00
rickg%netscape.com
53f36f30cd unintentionally commited. Backing out
git-svn-id: svn://10.0.0.236/trunk@55774 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 23:05:14 +00:00
despotdaemon%netscape.com
d588c49e49 Pseudo-automatic update of changes made by pp@ludusdesign.com.
git-svn-id: svn://10.0.0.236/trunk@55773 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 23:03:49 +00:00
despotdaemon%netscape.com
f3d79059c0 Pseudo-automatic update of changes made by pp@ludusdesign.com.
git-svn-id: svn://10.0.0.236/trunk@55772 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 23:01:51 +00:00
norris%netscape.com
cecf6e4a28 Fix bug 16672 "[DOGFOOD] JavaScript in HTML email message may read local files"
This fix uses the data: protocol to load the text of the mail message,
meaning there's no need for a temporary file. It encodes the data in base
64 so that we don't have to worry about escaping double quotes, ampersands, etc.

r=rhp@netscape.com.

Also fix JavaScript error. r=putterman@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55771 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 23:00:22 +00:00
rickg%netscape.com
9e042dd8f4 fixed bug 21146; r=buster; a=chofmann.
git-svn-id: svn://10.0.0.236/trunk@55770 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:54:08 +00:00
dougt%netscape.com
c9f292ae14 fix for 20964. r=sfraser a=chofmann
git-svn-id: svn://10.0.0.236/trunk@55769 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:50:15 +00:00
norris%netscape.com
6c64d3eef2 Add list of inapplicable tests for rhino.
git-svn-id: svn://10.0.0.236/trunk@55768 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:42:18 +00:00
despotdaemon%netscape.com
585a18d18e Pseudo-automatic update of changes made by pp@ludusdesign.com.
git-svn-id: svn://10.0.0.236/trunk@55767 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:30:33 +00:00
Jerry.Kirk%Nexwarecorp.com
5d87289302 Fixing drawing problems of toolbars under Photon ONLY.
The toolbars were not drawing properly, and were being clipped out by
incorrect clip rects that were part of the graphic context. I cleared
the Multiclip part of the GC when the a drawing surface is selected.
Fixing Photon, r=kedl a=leaf


git-svn-id: svn://10.0.0.236/trunk@55766 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:28:15 +00:00
rginda%netscape.com
c3389c553d Fixing stupid mistake.
git-svn-id: svn://10.0.0.236/trunk@55765 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:26:19 +00:00
rginda%netscape.com
b7fb654fc5 Turned off automatic fslash insertion for shellpath (it now takes a full exe name)
Added --noexitmunge option for systems that don't report the exitcode/exitsignal "properly"


git-svn-id: svn://10.0.0.236/trunk@55764 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 22:21:41 +00:00
hyatt%netscape.com
1587680a3d Fix for caret problems in Ender text fields. r=saari
git-svn-id: svn://10.0.0.236/trunk@55761 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 20:55:45 +00:00
hyatt%netscape.com
43b6924a32 Fix for the two crashers: 21180 and 21163, r=saari
git-svn-id: svn://10.0.0.236/trunk@55760 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 20:18:16 +00:00
pavlov%netscape.com
890403cbf7 #ifdef DEBUG_CLIPBOARD a printf a=leaf
git-svn-id: svn://10.0.0.236/trunk@55759 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 20:00:28 +00:00
hyatt%netscape.com
8b74bb1667 Adding treepopup support to the thread pane.
git-svn-id: svn://10.0.0.236/trunk@55758 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 11:34:58 +00:00
hyatt%netscape.com
9a91bb81d5 Adding tree popup routines.
git-svn-id: svn://10.0.0.236/trunk@55757 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 11:31:31 +00:00
hyatt%netscape.com
ad9344c946 treecolgroups and treecols didn't quite have the right rules. Fixing.
git-svn-id: svn://10.0.0.236/trunk@55756 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 11:31:12 +00:00
hyatt%netscape.com
e58378dccf Implementing support for popupanchor and popupalign.
git-svn-id: svn://10.0.0.236/trunk@55755 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 11:30:47 +00:00
hyatt%netscape.com
803b71ef81 Fixing Mac crasher. r=saari
git-svn-id: svn://10.0.0.236/trunk@55754 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 10:16:56 +00:00
syd%netscape.com
b940d79526 Added xp_core.h to files that get disted. r=amusil a=sdagley
git-svn-id: svn://10.0.0.236/trunk@55753 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 09:27:07 +00:00
waterson%netscape.com
44af9f8dc9 Fix eager inline closetag on <keyset>. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55752 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 09:10:41 +00:00
hyatt%netscape.com
2e9da7699f Fix for 21139, r=waterson
git-svn-id: svn://10.0.0.236/trunk@55751 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 09:01:06 +00:00
waterson%netscape.com
8b025929f6 What a dumbass! I should've 'cvs diff'-ed before checking that in. Landed some random local mods in my tree. Sorry!
git-svn-id: svn://10.0.0.236/trunk@55750 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 08:08:39 +00:00
waterson%netscape.com
0e1753ad3a Bug 17680. Only need to add template builders on nodes that are more than -two- levels in from an overlay root. The first ply will be set up in nsXULDocument::OverlayForwardReference::Merge().
git-svn-id: svn://10.0.0.236/trunk@55749 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 07:59:12 +00:00
sdagley%netscape.com
fafc5636c1 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@55748 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 07:56:17 +00:00
syd%netscape.com
afa3d3cd7c More fleshing out nsSound for Linux, mirrors windows implementation that
works, replacing call to PlaySound() in Win32 with call to esd sound daemon.
Currently doesn't play, but I will fix that shortly. r=alecf


git-svn-id: svn://10.0.0.236/trunk@55747 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 07:43:39 +00:00
fur%netscape.com
15a02bd1bb Fix #12367. Don't crash evaluating 'foo.constructor' if foo is a JavaObject.
r:none


git-svn-id: svn://10.0.0.236/trunk@55746 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 07:41:35 +00:00
alecf%netscape.com
c222ee0416 fix for #18420 - scrolling screws up when selection changes
fix oncontentinserted and oncontentremoved so that mTopFrame is set correctly, and don't be over-zealous about destroying frames.
r=hyatt (well, really written mostly by hyatt and digested by me)


git-svn-id: svn://10.0.0.236/trunk@55745 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 07:20:25 +00:00
waterson%netscape.com
0f170515eb Bug 21033. Delete broadcast listeners in Slots dtor. thanks beard!
git-svn-id: svn://10.0.0.236/trunk@55744 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 07:18:59 +00:00
waterson%netscape.com
8457a544b0 Bug 20714. Use static names for roots.
git-svn-id: svn://10.0.0.236/trunk@55743 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:58:00 +00:00
waterson%netscape.com
e4df3888e3 Bug 20714. Get rid of prefs 'special' JSRuntime. Never, EVER cross the beams. r=brendan
git-svn-id: svn://10.0.0.236/trunk@55742 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:49:04 +00:00
varada%netscape.com
d2f12fe684 check for bug #7924 autorun.inf points to seamonkey32e.exe when the cdshell is not selected
git-svn-id: svn://10.0.0.236/trunk@55741 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:45:16 +00:00
alecf%netscape.com
4b790c8861 fix bustage so I can check in
git-svn-id: svn://10.0.0.236/trunk@55740 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:44:18 +00:00
fur%netscape.com
1e228e93e0 Move OnHeadersAvailable() after processing of server's "Not Modified" response,
so that the cached HTTP headers can be substituted for the 304 response headers.


git-svn-id: svn://10.0.0.236/trunk@55739 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:37:28 +00:00
fur%netscape.com
d500130ed8 Need to reset pointers within segment after realloc, since segment base
may have changed.


git-svn-id: svn://10.0.0.236/trunk@55738 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:28:44 +00:00
rginda%netscape.com
1af24d307c Fix for unix bustage, r=scc@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55737 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:14:33 +00:00
varada%netscape.com
58eb0d520f fix for bug #21086 removing the check for CD and Network since the latter has been removed
git-svn-id: svn://10.0.0.236/trunk@55736 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:10:13 +00:00
hyatt%netscape.com
2bb806a610 Fixing bustage on wensleydale.
git-svn-id: svn://10.0.0.236/trunk@55735 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 06:04:10 +00:00
fur%netscape.com
0ed5b2154b It turns out that PR_Now() has only one second resolution on the Mac, hence it's unsuitable for computing download rates for the cache. Thanks to sdagley for pointing this out.
git-svn-id: svn://10.0.0.236/trunk@55734 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:46:31 +00:00
mcafee%netscape.com
611f907a2e BloatyTest was getting killed before it was finishing (I think), upping kill time to 5 min.
git-svn-id: svn://10.0.0.236/trunk@55733 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:30:12 +00:00
scc%netscape.com
32ad1437d2 Changes to make observer lists hold only weak references. This code is disabled by default; enabled by the symbol |NS_WEAK_OBSERVERS|. The code will remain disabled until two underlying ownership bugs are fixed: hanging the wallet service from something permanent, and finding the observer someone is registering through XPConnect that does not support weak references. bug#=18682; r=dp
git-svn-id: svn://10.0.0.236/trunk@55732 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:24:14 +00:00
dougt%netscape.com
b80e941838 turning on nsIFile for windows. 13320
git-svn-id: svn://10.0.0.236/trunk@55731 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:14:54 +00:00
warren%netscape.com
19c88edad4 Fixed leak on shutdown. Bug#21118
git-svn-id: svn://10.0.0.236/trunk@55730 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:14:52 +00:00
dveditz%netscape.com
360bd398f3 Bug 20043, attempting to install an older file should not abort rest of install
git-svn-id: svn://10.0.0.236/trunk@55729 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:09:17 +00:00
morse%netscape.com
fa04a5ff42 fix bug 21083, multiple cookies being ignored, r=valeski
git-svn-id: svn://10.0.0.236/trunk@55728 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:07:31 +00:00
rgoodger%ihug.co.nz
9bf44ed131 fixing 21130, js error with cookietree onselect.
git-svn-id: svn://10.0.0.236/trunk@55727 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:07:03 +00:00
tbogard%aol.net
f01bf79f81 fix for 21113
git-svn-id: svn://10.0.0.236/trunk@55726 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:01:06 +00:00
tbogard%aol.net
a0be83af64 Fix for 21113.
git-svn-id: svn://10.0.0.236/trunk@55725 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:00:51 +00:00
hyatt%netscape.com
37849accbb Let's not make CTRL-B to a copy now... heh. r=me
git-svn-id: svn://10.0.0.236/trunk@55724 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 05:00:26 +00:00
hyatt%netscape.com
ed448bc490 Adding a test input bindings.xul file. r=saari
git-svn-id: svn://10.0.0.236/trunk@55723 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:59:17 +00:00
hyatt%netscape.com
a0ece36ce6 Removing xulkey. It's not done right. Adding inputBindings.xul for input control
support.


git-svn-id: svn://10.0.0.236/trunk@55722 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:58:54 +00:00
hyatt%netscape.com
f73d070bdf Fixing MAC menu accelerators. r=saari
git-svn-id: svn://10.0.0.236/trunk@55721 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:58:23 +00:00
hyatt%netscape.com
cba391ac74 Modifications to support the command dispatcher. r=saari
git-svn-id: svn://10.0.0.236/trunk@55720 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:58:05 +00:00
tbogard%aol.net
4f5266923d Added some methods to nsIDocShellTreeItem... It now understands the concept of being of the chrome or content type. Added convenience methods to traverse up the tree with a restriction of same item type.
git-svn-id: svn://10.0.0.236/trunk@55719 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:57:23 +00:00
hyatt%netscape.com
aba17d157e Massive rewrite of the key binding system and the command dispatcher. Key
bindings are now fully hierarchical.  In addition, DOM windows, input fields
and textareas can pull their key bindings from a separate XUL file.  This
allows configurable key bindings.

Massive rewrite of the command dispatcher system.  The command dispatcher now
deals with DOM windows in addition to DOM elements.  It now tracks both
successfully and works in conjunction with the new focus/blur architecture.

r=saari


git-svn-id: svn://10.0.0.236/trunk@55718 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:56:56 +00:00
fur%netscape.com
d50cb261de Fix mac build bustage. Use LL* macros with int64 types
git-svn-id: svn://10.0.0.236/trunk@55717 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:56:15 +00:00
tbogard%aol.net
811976b56b Replaced includes and references to nsIScriptContextOwner with nsIScriptGlobalObjectOwner.
git-svn-id: svn://10.0.0.236/trunk@55716 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:54:33 +00:00
hyatt%netscape.com
2c134c2abf Massive rewrite of the focus/blur architecture. Things should behave better
now. r=saari


git-svn-id: svn://10.0.0.236/trunk@55715 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:54:29 +00:00
hyatt%netscape.com
44972576e3 Making menu titles work again. Making menu accelerators work again. r=saari
git-svn-id: svn://10.0.0.236/trunk@55714 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:52:42 +00:00
troy%netscape.com
2ea5ceca9c Changed to respect 'z-index' of 'auto' and call SetViewAutoZIndex()
git-svn-id: svn://10.0.0.236/trunk@55713 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:49:20 +00:00
mscott%netscape.com
a49bbb28e9 fix memory leak for webshell! Bug #21126 --> ftp was broken with mail window up
r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@55712 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:33:44 +00:00
amusil%netscape.com
4ce3a6b853 Adding id's to the tab widgets so that they can be overlayed.
git-svn-id: svn://10.0.0.236/trunk@55711 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:16:50 +00:00
fur%netscape.com
72c9eb90d8 Fix usual bustage due to not including header with an nsCOMPtr type
git-svn-id: svn://10.0.0.236/trunk@55710 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:08:48 +00:00
fur%netscape.com
6201f3cc96 + Fix unix build bustage: Add explicit casts to XPIDLCString rvalues.
+ Fixed warnings


git-svn-id: svn://10.0.0.236/trunk@55709 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:04:26 +00:00
briano%netscape.com
1c1c8ceac0 Change for QNX 4 to work around their extremely limited compiler and linker, which aren't capable of creating an object from a lib as we're doing here with jsmath.o.
git-svn-id: svn://10.0.0.236/trunk@55708 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 04:03:24 +00:00
briano%netscape.com
19c5c7d1b9 QNX-specific build bustage fix. Also excludes NTO just in case both are defined under Neutrino.
git-svn-id: svn://10.0.0.236/trunk@55707 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:58:40 +00:00
vidur%netscape.com
0389d17f64 Fix for bug 17857. Relative URLs for script-based setting of the SRC attribute now does resolution relative to the calling context. R=nisheeth.
git-svn-id: svn://10.0.0.236/trunk@55706 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:52:01 +00:00
vidur%netscape.com
f09059d2c6 Fix for bug 18877. DemoteContainer in the content sink no longer unconditionally does notificaions. Also turned on timer-based notifications by default (bug 17325). R=troy
git-svn-id: svn://10.0.0.236/trunk@55705 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:47:05 +00:00
vidur%netscape.com
3243eb2b51 Part of fix for bug 18877. Paragraphs no longer close out forms. R=rickg
git-svn-id: svn://10.0.0.236/trunk@55704 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:45:07 +00:00
ftang%netscape.com
bdf5ee5913 remove front end hacky mouse down call to ResetInputState. This will be replaced by xp call in nsEditor ForceCompositionEnd() r=erik. fix bug 12090
git-svn-id: svn://10.0.0.236/trunk@55703 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:39:53 +00:00
ftang%netscape.com
c02259352d fix bug 12090 19358. Implement ForceCompositionEnd and add it in the beginning of AddInlineProperty/RemoveInlineProperty/InsertElement/InsertHTML
git-svn-id: svn://10.0.0.236/trunk@55702 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:39:36 +00:00
fur%netscape.com
bbd22b783a Build cache tests
git-svn-id: svn://10.0.0.236/trunk@55701 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:36:10 +00:00
rhp%netscape.com
889e3c29da Changes for emitter rework for printing - r: jefft
git-svn-id: svn://10.0.0.236/trunk@55700 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:34:32 +00:00
fur%netscape.com
c125f8fc68 + Handle the case of inability to write into cache correctly.
+ Be more aggressive about clearing the UPDATE_IN_PROGRESS flag on the cache entry


git-svn-id: svn://10.0.0.236/trunk@55699 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:32:56 +00:00
fur%netscape.com
c5ce9eb5f0 Change failure to shut down memory cache cleanly into a warning, instead of an assertion
git-svn-id: svn://10.0.0.236/trunk@55698 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:29:21 +00:00
bienvenu%netscape.com
653960b7d1 fix 17058 mac body filters, r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@55697 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:25:48 +00:00
fur%netscape.com
c7aa643d96 Disable cache by default on Windows
git-svn-id: svn://10.0.0.236/trunk@55696 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:25:44 +00:00
fur%netscape.com
4ca11f608c Bug #8305 (Implement cache). Whacked the HTTP protocol handler hard to support caching.
git-svn-id: svn://10.0.0.236/trunk@55695 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 03:23:14 +00:00
svn%xmlterm.org
22a132a417 XMLterm changes; NOT PART OF SEAMONKEY BUILD; fixed Solaris bug in makemake;
git-svn-id: svn://10.0.0.236/trunk@55694 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:55:56 +00:00
norris%netscape.com
d630910cd9 I ran Purify and found this:
>
> [E] ABR: Array bounds read in
> nsFileSpecHelpers::UnixToNative(nsSimpleCharString&) {48 occurrences}
>     Reading 1 byte from 0x03f00b2c (1 byte at 0x03f00b2c illegal)
>     Address 0x03f00b2c is 1 byte past the end of a 268 byte block at
> 0x03f00a20
>     Address 0x03f00b2c points to a malloc'd block in heap 0x03c30000
>     Thread ID: 0x9c
>     Error location
>         nsFileSpecHelpers::UnixToNative(nsSimpleCharString&)
> [nsFileSpecWin.cpp:111]
>                     src = (char*)ioPath;
>
>                     // Convert '/' to '\'.
>              =>     while (*++src)
>                     {
>                         if (*src == '/')
>                             *src = '\\';
>         nsFileSpec::+=(char const*) [nsFileSpecWin.cpp:394]
>         nsChromeRegistry::CheckForProfileFile(nsCAutoString
> const&,nsCAutoString&) [nsChromeRegistry.cpp:1278]
>         nsChromeRegistry::LoadDataSource(nsCAutoString const&,nsIRDFDataSource
> * *,int) [nsChromeRegistry.cpp:713]
>
> nsChromeRegistry::InitializeDataSource(nsString&,nsString&,nsIRDFDataSource *
> *,int) [nsChromeRegistry.cpp:784]
>         nsChromeRegistry::ConvertChromeURL(nsIURI *)
> [nsChromeRegistry.cpp:527]
>         nsChromeProtocolHandler::NewChannel(char const*,nsIURI *,nsILoadGroup
> *,nsIInterfaceRequestor *,UINT,nsIURI *,UINT,UINT,nsIChannel * *)
> [nsChromeProtocolHandler.cpp:371]
>         nsIOService::NewChannelFromURI(char const*,nsIURI *,nsILoadGroup
> *,nsIInterfaceRequestor *,UINT,nsIURI *,UINT,UINT,nsIChannel * *)
> [nsIOService.cpp:250]
>         nsDocumentOpenInfo::Open(nsIURI *,int,char const*,nsISupports *,nsIURI
> *,nsIInputStream *,nsISupports *,nsISupports * *) [nsURILoader.cpp:168]
>         nsURILoader::OpenURIWithPostDataVia(nsIURI *,int,char
> const*,nsISupports *,nsIURI *,nsIInputStream *,nsISupports *,nsISupports *
> *,UINT) [nsURILoader.cpp:418]
>     Allocation location
>         malloc         [dbgheap.c:129]
>         PR_Malloc      [prmem.c:38]
>         nsSimpleCharString::ReallocData(UINT) [nsFileSpec.cpp:248]
>         nsSimpleCharString::CopyFrom(char const*,UINT) [nsFileSpec.cpp:167]
>         nsSimpleCharString::nsSimpleCharString(char const*)
> [nsFileSpec.cpp:60]
>         nsFileSpecHelpers::UnixToNative(nsSimpleCharString&)
> [nsFileSpecWin.cpp:104]
>         nsFileSpec::+=(char const*) [nsFileSpecWin.cpp:394]
>         nsChromeRegistry::CheckForProfileFile(nsCAutoString
> const&,nsCAutoString&) [nsChromeRegistry.cpp:1278]
>         nsChromeRegistry::LoadDataSource(nsCAutoString const&,nsIRDFDataSource
> * *,int) [nsChromeRegistry.cpp:713]
>
> nsChromeRegistry::InitializeDataSource(nsString&,nsString&,nsIRDFDataSource *
> *,int) [nsChromeRegistry.cpp:784]
>
> which is fixed by this patch.


git-svn-id: svn://10.0.0.236/trunk@55693 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:53:37 +00:00
svn%xmlterm.org
2097758f51 XMLterm changes; NOT PART OF SEAMONKEY BUILD;
fixed Solaris bug in makemake; removed reference to nsIScriptContextOwner in
mozXMLTermUtils; updated documentation


git-svn-id: svn://10.0.0.236/trunk@55692 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:50:54 +00:00
rhp%netscape.com
0dce9c7a7c Remove printf()'s that I missed earlier
git-svn-id: svn://10.0.0.236/trunk@55691 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:49:46 +00:00
svn%xmlterm.org
bd78970365 Removed unnecessary files in XMLterm; NOT PART OF SEAMONKEY BUILD
git-svn-id: svn://10.0.0.236/trunk@55690 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:45:52 +00:00
rhp%netscape.com
5bb07d651f Fixing "const" problem
git-svn-id: svn://10.0.0.236/trunk@55689 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:42:43 +00:00
bienvenu%netscape.com
aa8d28386b fix bug on mac where filters only work first time, r=rpotts
git-svn-id: svn://10.0.0.236/trunk@55688 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:31:44 +00:00
varada%netscape.com
e8028087e0 fix for bug#20890 changing function type from void to bool
git-svn-id: svn://10.0.0.236/trunk@55687 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:23:20 +00:00
rgoodger%ihug.co.nz
60684c56a2 updated data persistence manager. r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@55686 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:11:15 +00:00
rhp%netscape.com
3a1086bffa Fix for TXT - HTML conversion - r: rhp - external contributor
git-svn-id: svn://10.0.0.236/trunk@55685 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:10:57 +00:00
dougt%netscape.com
0419f0e310 removing MoveToFollowingLinks(). It was discussed that was not needed due
to links being broken. r=shaver

more tweeks to get symlinks working correct on windows.

not part of the build yet.


git-svn-id: svn://10.0.0.236/trunk@55684 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:07:38 +00:00
pollmann%netscape.com
945d82f2db Bug 19062: Fix crash when forms are absolutely positioned by giving them a space manager r=Troy
git-svn-id: svn://10.0.0.236/trunk@55683 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:07:03 +00:00
troy%netscape.com
23414d53c9 Removed code from PrepareChildIncrementalReflow() that was marking all lines
dirty if max-element-size was requested.


git-svn-id: svn://10.0.0.236/trunk@55682 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:05:51 +00:00
akkana%netscape.com
422c14fe78 20603: In an HTML document, the body node should always be part of the
selection, because output needs to get style nodes on the body. r=sfraser


git-svn-id: svn://10.0.0.236/trunk@55681 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:05:16 +00:00
dp%netscape.com
c1ad24f646 Using ShutdownGlobalServiceManager() for servicemanager shutdown. r=putterman@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55680 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:03:25 +00:00
dp%netscape.com
76ba2b6544 Adding assertion to check for improper shutdown of servicemanager. r=chofmann@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55679 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 02:00:30 +00:00
dp%netscape.com
af2c8ed503 Removing usage of nsComponentManager.h r=selmer
git-svn-id: svn://10.0.0.236/trunk@55678 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:59:32 +00:00
dp%netscape.com
542244281b Removing nsComponentManager.h from export
git-svn-id: svn://10.0.0.236/trunk@55677 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:58:30 +00:00
evaughan%netscape.com
791292ffa1 Fixed that nasty bug that caused fonts to change when clicking in the URL bar. -r jevering
git-svn-id: svn://10.0.0.236/trunk@55676 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:56:28 +00:00
dbragg%netscape.com
ef575728ae Build xpinstall idl after xpfe (build bustage)
git-svn-id: svn://10.0.0.236/trunk@55675 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:49:02 +00:00
rogerl%netscape.com
11acc154a5 Added 'flat' argument to NewRegExp to force literal interpretation of
entire string.


git-svn-id: svn://10.0.0.236/trunk@55674 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:48:03 +00:00
rogerl%netscape.com
42e4c9ee34 Needed a quick-and-dirty constructor from a string.
git-svn-id: svn://10.0.0.236/trunk@55673 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:47:13 +00:00
rogerl%netscape.com
6573b9f779 Added 'flat' argument to NewRegExp to force literal interpretation of
entire string.
Fixed String.replace to not coerce first arg to regexp.
Fixed behaviour of replace w.r.t. $


git-svn-id: svn://10.0.0.236/trunk@55672 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:46:43 +00:00
rogerl%netscape.com
a3f7091a2e Added 'flat' argument to NewRegEXp to force literal interpretation of
entire string.


git-svn-id: svn://10.0.0.236/trunk@55670 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:44:08 +00:00
scc%netscape.com
ae0737cdba Fix specialized |CallQueryInterface| as per review by travis ... r=travis.
git-svn-id: svn://10.0.0.236/trunk@55669 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:44:06 +00:00
scc%netscape.com
948cb30176 |NS_REINTERPRET_CAST| might try to adjust pointers on machines where it turns into an old-style cast. Fix that by first casting to |void*|. r=alecf.
git-svn-id: svn://10.0.0.236/trunk@55668 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:41:28 +00:00
dveditz%netscape.com
fca89c83ad fixing Unix clobber build bustage, r=dbragg
git-svn-id: svn://10.0.0.236/trunk@55667 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:26:04 +00:00
dveditz%netscape.com
65efe9489a fixing Solaris bustage (usuall nsCOMPtr problem) r-dbragg
git-svn-id: svn://10.0.0.236/trunk@55666 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 01:19:13 +00:00
waldemar%netscape.com
2b21095fef Removed field, method, and constructor. Added static.
git-svn-id: svn://10.0.0.236/trunk@55665 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:35:00 +00:00
waldemar%netscape.com
5d10cfab17 Fixed Harlequin incompatibilities
git-svn-id: svn://10.0.0.236/trunk@55664 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:34:29 +00:00
racham%netscape.com
729cc3439a error value returned from profile manager to exit the app. removing check on rv. r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@55663 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:25:52 +00:00
robinf%netscape.com
a08bb3b046 removed Netscape branding and added Mozilla branding
git-svn-id: svn://10.0.0.236/trunk@55662 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:19:07 +00:00
beard%netscape.com
07d6c2844b took out calls to NS_InitGarbageCollector() & NS_ShutdownGarbageCollector() which are now supplanted by internal NSPR versions. r=gordon, bug #15906
git-svn-id: svn://10.0.0.236/trunk@55661 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:13:13 +00:00
pinkerton%netscape.com
0082a081b1 fix spellings and build warnings (bug #15571). r=gimpy.
git-svn-id: svn://10.0.0.236/trunk@55660 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:12:15 +00:00
rods%netscape.com
5f2a780227 Fixing the updating of the frame for when the label changes (i.e. via script)
sends back a reflow hint. It also checks to see if the primary frame is a combobox
and asks it to refresh its display
r=kmcclusk bug 19373 (PDT+)


git-svn-id: svn://10.0.0.236/trunk@55659 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:10:34 +00:00
gordon%netscape.com
44dcb3f475 formatting change. r=beard
git-svn-id: svn://10.0.0.236/trunk@55658 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:10:30 +00:00
gordon%netscape.com
c1348b13c6 added prgcleak.c. r=beard, bug #15906
git-svn-id: svn://10.0.0.236/trunk@55657 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:10:15 +00:00
dbragg%netscape.com
31895d9cb7 MCP file change for bug 7753 r=dveditz
git-svn-id: svn://10.0.0.236/trunk@55656 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:09:53 +00:00
dbragg%netscape.com
51ec2e3697 New Progress dialog and support code.Fixes bug #7753 (and others) r=dveditz
git-svn-id: svn://10.0.0.236/trunk@55655 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:09:16 +00:00
rods%netscape.com
0e84614fdd Always passing back that the frames are there, this still isn't right and needs to be
reworked again. But this will able some XUL selects to work that otherwise would be
broken and I haven't found it to cause any problems with a lot of testing. I have
regressed to this situation in the past and it worked OK.
r=kmcclusk, bug=none but hangas (or self) would have filed one by end of day.


git-svn-id: svn://10.0.0.236/trunk@55654 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:08:41 +00:00
alecf%netscape.com
57cf8da23c check for null pointer - happens when necko gives us back an empty channel (this is the only place we weren't checking)
r=jefft


git-svn-id: svn://10.0.0.236/trunk@55653 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-08 00:01:52 +00:00
varada%netscape.com
eac9d23719 fix for bug #4992 - the second and third lines for the installer screen - changed the script.ib
git-svn-id: svn://10.0.0.236/trunk@55652 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:59:20 +00:00
locka%iol.ie
e0687b7223 Fixed to build mozctl.dll
git-svn-id: svn://10.0.0.236/trunk@55651 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:54:09 +00:00
blizzard%redhat.com
ff86accb12 fix for bug 19559. fix the test plugin on linux. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@55650 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:50:00 +00:00
law%netscape.com
52e7e2a0de Fix for 10613; don't use setTimeout which crashes Mac; r=matt@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55649 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:48:28 +00:00
troy%netscape.com
3ce26e48f9 Removed an assert that is no longer applicable
git-svn-id: svn://10.0.0.236/trunk@55648 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:43:07 +00:00
norris%netscape.com
d129ce569d The data protocol doesn't seem to be working. The problem appears to be that a nsStdURL is used to hold the data URI.
Unfortunately, using nsStdURL parses the data URI so that a URI like "data:text/html,<html>hi</html>" gets parsed with a
host of "text". When the rest of the data URI processing calls GetSpec, it then gets "//text/html,<html>hi</html>", which
confuses the content type parsing so no data is displayed.

This checkin changes to use a nsSimpleURI instead.
r=valeski


git-svn-id: svn://10.0.0.236/trunk@55647 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:42:58 +00:00
troy%netscape.com
aa323aac76 b=16456. Removed some debug assertion code that was incorrect and caused
us to hit asserts when printing


git-svn-id: svn://10.0.0.236/trunk@55646 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:41:48 +00:00
putterman%netscape.com
a4c2e3c639 Fixes part of 18075. reviewed by jefft. Don't crash when doing get msg on a pop account
that has no incoming server.


git-svn-id: svn://10.0.0.236/trunk@55645 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:35:05 +00:00
robinf%netscape.com
728af9c6ac expanded width of a text field so that text is not truncated
git-svn-id: svn://10.0.0.236/trunk@55644 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:32:19 +00:00
dougt%netscape.com
83e21d3a65 13320 more tweaking to nsIFile windows impl.
not part of build yet.


git-svn-id: svn://10.0.0.236/trunk@55643 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:31:25 +00:00
erik%netscape.com
b6eb1a0559 bug 8801; adding new font prefs implementation; r=ftang
git-svn-id: svn://10.0.0.236/trunk@55642 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:27:52 +00:00
erik%netscape.com
ac4eb59b78 bug 8801; adding font prefs implementation for Windows initially; r=ftang
git-svn-id: svn://10.0.0.236/trunk@55641 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:27:17 +00:00
varada%netscape.com
85f82c8c63 clean up
git-svn-id: svn://10.0.0.236/trunk@55640 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:26:22 +00:00
erik%netscape.com
618b8789ad bug 8801; adding defaults for the new font prefs; r=ftang
git-svn-id: svn://10.0.0.236/trunk@55639 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:25:50 +00:00
gordon%netscape.com
795b69917e Checkin for Mark Welch. Approved by wtc. Reviewed by gordon. Fixes for bugs 4318 and 4320 (server sockets and blocking socket IO for mac).
git-svn-id: svn://10.0.0.236/trunk@55638 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:22:59 +00:00
varada%netscape.com
63059e699b fix for bug #17478 getting rid of unix line endings - merely check them out in vi or viw and then save them and the line endings disappear
git-svn-id: svn://10.0.0.236/trunk@55637 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:13:58 +00:00
racham%netscape.com
ee277bdc54 Fixing memory leak. bug 21038. r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@55636 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:05:22 +00:00
sspitzer%netscape.com
ec0d246f33 fix for #21079, infinite loop when discovering folders. r=bienvenu
git-svn-id: svn://10.0.0.236/trunk@55635 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:04:24 +00:00
locka%iol.ie
0f12896f7b Include nsXPIDLString.h
git-svn-id: svn://10.0.0.236/trunk@55634 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:02:20 +00:00
locka%iol.ie
aa3a7a5a2a Fixed bad const casting
git-svn-id: svn://10.0.0.236/trunk@55633 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:01:59 +00:00
locka%iol.ie
a2ff8a9338 Added a guard around the interface file to stop #include'ing exdisp.h before or after MozillaBrowser.h from breaking a build
git-svn-id: svn://10.0.0.236/trunk@55632 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 23:01:28 +00:00
rhp%netscape.com
a44e398c1f Fix for garbage display on text=flowed messages. r: rhp Externally Contributed
git-svn-id: svn://10.0.0.236/trunk@55631 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:54:41 +00:00
pinkerton%netscape.com
96145b994f Fixes for bug #18409 (again). Don't assume that we can rely on ::GlobalSize() for the
length of the data. We have to figure it out ourselves because of alignment differences
between 98 and NT (r=gimpy).


git-svn-id: svn://10.0.0.236/trunk@55630 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:45:01 +00:00
dp%netscape.com
84acce94c4 Converting to generic factory. Fixed vcard factory holding
servicemanager. r=rhp@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55629 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:44:49 +00:00
fur%netscape.com
679b925a44 Add cache manager xpt file to installed components, in case someone wants to script it someday
git-svn-id: svn://10.0.0.236/trunk@55628 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:41:16 +00:00
valeski%netscape.com
e59b30372e r=chofmann. adding content-type to default response headers for testserver
git-svn-id: svn://10.0.0.236/trunk@55627 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:36:47 +00:00
rickg%netscape.com
c5e57a05f3 removed debug-test code I added yesterday that caused problem with pasting fragments; My apologies. r=kmcclusk
git-svn-id: svn://10.0.0.236/trunk@55626 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:35:57 +00:00
rhp%netscape.com
154c1a78d8 Fixing Mac Project - Location of new stream converter
git-svn-id: svn://10.0.0.236/trunk@55625 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:31:49 +00:00
sdagley%netscape.com
27cbf1994b Part of #17949. nsLocalFileMac work. Not part of build yet.
git-svn-id: svn://10.0.0.236/trunk@55624 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:26:51 +00:00
rginda%netscape.com
692f5f92bd -- CHATZILLA CHANGES ONLY --
Raised max input history to 50 (was set to 2 for debugging, oops)


git-svn-id: svn://10.0.0.236/trunk@55623 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:25:20 +00:00
rhp%netscape.com
44649e28d3 Fixes for Text - HTML converstion - r: rhp - externally contributed
git-svn-id: svn://10.0.0.236/trunk@55622 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:25:00 +00:00
wtc%netscape.com
9c9a6b4b15 Reworked how thread scanning is done, so thread objects can now be
safely allocated on the thread stack.  Moved the GC scanning code
into NSPR in a new file called prgcleak.c.  (Checkin for Patrick Beard.)
Modified files: primpl.h, prinit.c, prthinfo.c, pruthr.c.
Added file: prgcleak.c.


git-svn-id: svn://10.0.0.236/trunk@55621 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:23:48 +00:00
cata%netscape.com
1943eb7204 Charset menu items are taken from the Charset Manager. r=bobj
git-svn-id: svn://10.0.0.236/trunk@55620 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:23:47 +00:00
cata%netscape.com
f106ee6a5b Moving items from submenu to parent. r=bobj
git-svn-id: svn://10.0.0.236/trunk@55619 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:22:57 +00:00
tonyr%fbdesigns.com
1a846f0e84 Bug fixes for importing from NT
git-svn-id: svn://10.0.0.236/trunk@55618 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:22:34 +00:00
despotdaemon%netscape.com
6206005f5f Pseudo-automatic update of changes made by dshea@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@55617 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:22:31 +00:00
rhp%netscape.com
e3fe383557 Fixes for TXT - HTML Conversion - r: rhp (externally contributed)
git-svn-id: svn://10.0.0.236/trunk@55616 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:20:02 +00:00
fur%netscape.com
4ad31c92ef Add cache manager to list of installed components
git-svn-id: svn://10.0.0.236/trunk@55615 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:18:21 +00:00
rhp%netscape.com
76708977b8 Changes for mangled attachments - Bug #20956 - r: valeski
git-svn-id: svn://10.0.0.236/trunk@55614 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:17:41 +00:00
fur%netscape.com
5639bf7c12 Change name of cache lib from libnkcache.so to libnecko_cache.so, to be more consistent with other necko components
git-svn-id: svn://10.0.0.236/trunk@55613 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:16:58 +00:00
brendan%mozilla.org
d2ded9c6d9 - Rename "FunctionObject" or shorthands to "EventHandler" to make nsIScriptContext more scripting-language-neutral.
- Allow nsIScriptContext::BindEventHandler to take a null void* handler argument, to remove the binding by nullifying it (for hyatt's XML-driven-key-mapping work). 
- Try to GetCompiledEventHandler (and if we don't, and compile it, Put too) for the load event and other non-deferred (XUL window-level) event listeners. 
- Improve doc comments and whitespace.


git-svn-id: svn://10.0.0.236/trunk@55612 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:14:17 +00:00
jdunn%netscape.com
68ab808ffd r= evaughan@netscape.com
# 20933

HP was having problems with the GET_HEIGHT/GET_WIDTH macros being
on the left of the '=', so I created a SET_HEIGHT/SET_WIDTH macros.


git-svn-id: svn://10.0.0.236/trunk@55611 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:10:45 +00:00
alecf%netscape.com
5cfe68fe2e behave like one might expect in the case of passing null the nsCRT::strcmp when passing NULL
review & discussed with brendan, shaver


git-svn-id: svn://10.0.0.236/trunk@55610 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:10:31 +00:00
waldemar%netscape.com
0adbaf9a98 Added next-token-unit. Simplified grammar and removed boolean actions that indicate whether the next token can be a regexp. Added assertion that a * can't follow a division.
git-svn-id: svn://10.0.0.236/trunk@55609 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:09:10 +00:00
despotdaemon%netscape.com
9166d76d8b Pseudo-automatic update of changes made by dmose@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@55607 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:08:35 +00:00
waldemar%netscape.com
0b8e72cc74 Added hash-table-entries
git-svn-id: svn://10.0.0.236/trunk@55604 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:07:04 +00:00
morse%netscape.com
a2bb22f4c2 fix bug 20946, memory leak in wallet code, r=buster
git-svn-id: svn://10.0.0.236/trunk@55603 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:06:47 +00:00
waldemar%netscape.com
d7ad1303c5 Fixed bug in forbidden terminalset calculations
git-svn-id: svn://10.0.0.236/trunk@55602 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:06:43 +00:00
sspitzer%netscape.com
f875003fef tweak fix for #15111 on last time. morse had the logic right the first time,
we need to subtract the # of seconds between 1970 and 1900 from the mac cookies,
not add.


git-svn-id: svn://10.0.0.236/trunk@55599 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:05:52 +00:00
waldemar%netscape.com
6611de1186 Made semantics compiled on Allegro
git-svn-id: svn://10.0.0.236/trunk@55598 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:04:58 +00:00
rginda%netscape.com
1d5ae86d11 Adding check for null document. Prevents crash described in bug 20677.
r=brendan@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@55596 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:04:52 +00:00
bienvenu%netscape.com
b6a95f1ac7 fix problem with extra .msf tacked on db names for imap r=mscott
git-svn-id: svn://10.0.0.236/trunk@55595 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:04:12 +00:00
blizzard%redhat.com
9878fd34ac add a debugging window utility for gtk
git-svn-id: svn://10.0.0.236/trunk@55594 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 22:02:40 +00:00
varada%netscape.com
13377b59e5 fix for bug #5020 creating the proper cd output directory
git-svn-id: svn://10.0.0.236/trunk@55593 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 21:26:20 +00:00
cltbld%netscape.com
73348f285b Changed old resrc dll to new res dll. checkin=warren, r=dp
git-svn-id: svn://10.0.0.236/trunk@55592 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 20:31:20 +00:00
rginda%netscape.com
04118508dc Should be working on all platforms again.
git-svn-id: svn://10.0.0.236/trunk@55591 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 20:00:27 +00:00
rginda%netscape.com
82331502dc More windows dual-build tweaks (arg!)
git-svn-id: svn://10.0.0.236/trunk@55590 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 19:56:40 +00:00
rginda%netscape.com
52856beb12 More tweaks to sm engine selection
Updated documentation to reflect tweaks


git-svn-id: svn://10.0.0.236/trunk@55589 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 19:47:06 +00:00
rginda%netscape.com
1622daf8ef * jsDriver.pl
Fix it to know about the two kinds of spidermonkey make on windows
  (Makefile.ref and js.mak)


git-svn-id: svn://10.0.0.236/trunk@55588 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 19:35:45 +00:00
despotdaemon%netscape.com
b231c3df4d Pseudo-automatic update of changes made by phil@netscape.com.
git-svn-id: svn://10.0.0.236/trunk@55587 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 19:23:39 +00:00
scc%netscape.com
dba31d43b3 and there's another instance of the build-busting old cast still in the file
git-svn-id: svn://10.0.0.236/trunk@55585 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 15:51:21 +00:00
rhp%netscape.com
e23f78e0d1 Adding file to tree - NOT PART OF THE BUILD!
git-svn-id: svn://10.0.0.236/trunk@55584 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 15:29:20 +00:00
scc%netscape.com
d35ae0e781 Mis-spelled one of two instances of |NS_REINTERPRET_CAST|, in the same line yet. Damn :-(
git-svn-id: svn://10.0.0.236/trunk@55583 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 15:26:41 +00:00
scc%netscape.com
5344c3abe4 Attempting to fix build bustage. Looks like a compiler bug (since |TestObserver| isn't a base class of |nsISupports| in any way, at least the error message has got to be wrong).
git-svn-id: svn://10.0.0.236/trunk@55582 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 14:46:35 +00:00
scc%netscape.com
d82bf53dc0 Adding an alternate version of |CallQueryInterface| as an experiment on behalf of travis. This function is not yet called, and should not effect the build or the runtime. r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55581 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 14:09:29 +00:00
scc%netscape.com
fd67f20a6a Make observers support weak references. Bug #18682; r=dp.
git-svn-id: svn://10.0.0.236/trunk@55580 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 14:06:36 +00:00
Jerry.Kirk%Nexwarecorp.com
35f11dec0f Added an include to silence some warnings and added a call to munlockall().
r=kedl


git-svn-id: svn://10.0.0.236/trunk@55579 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 13:12:26 +00:00
Jerry.Kirk%Nexwarecorp.com
a1dd1bbd91 Added $(TK_LIBS) to EXTRA_LIBS for Neutrino because Timers require the
photon native library to be linked in to work properly.
r=rhp


git-svn-id: svn://10.0.0.236/trunk@55578 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 12:57:31 +00:00
rickg%netscape.com
9568c0a1e2 fixed bug in nsStr::Compare(); r=dveditz (who also found the bug)
git-svn-id: svn://10.0.0.236/trunk@55577 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 09:52:43 +00:00
fur%netscape.com
e2cc250b30 + Eliminated use of bool to accommodate non-ANSI C++ compilers.
(Thanks to tor@cs.brown.edu for the patch)
+ Eliminated compiler warnings


git-svn-id: svn://10.0.0.236/trunk@55576 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 09:49:55 +00:00
sspitzer%netscape.com
11eb90ae0b ignore the generated Makefiles
git-svn-id: svn://10.0.0.236/trunk@55575 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 09:31:05 +00:00
sspitzer%netscape.com
0109b97c9b fix for #20906. fix the twitchy button in the select profile dialog.
fix by=rgoodger@ihug.co.nz, r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@55574 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 09:12:59 +00:00
valeski%netscape.com
592665b4d9 r=rickg. replacing a char const w/ an int literal
git-svn-id: svn://10.0.0.236/trunk@55573 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:58:50 +00:00
fur%netscape.com
111e27ee79 Fixed incorrect calculation of content download time and profitability of caching a given URL. r:none
git-svn-id: svn://10.0.0.236/trunk@55572 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:51:03 +00:00
sspitzer%netscape.com
f8e3595435 ok, really fix #15111 this time. we need to add 70 years of seconds to a mac cookie, not subtract. also, we need the migrated cookie file to have '\n' line endings, or nsCookie.cpp will ignore it.
git-svn-id: svn://10.0.0.236/trunk@55571 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:50:50 +00:00
fur%netscape.com
2ae24d5c5f Increase default memory cache capacity to 1M from 100KB testing value
git-svn-id: svn://10.0.0.236/trunk@55570 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:49:42 +00:00
alecf%netscape.com
01769cf0b5 fix for #20647 (required to verify a PDT+ bug)
r=sspitzer
nsCRT::strcmp was returning 0 when you pass a PRUnichar* 0 null pointer


git-svn-id: svn://10.0.0.236/trunk@55569 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:48:52 +00:00
jfrancis%netscape.com
edba5add24 fix for 20457: deletion in editor pretty darn screwy. Lots of changes to improve this. Document modifying entry points in editor now go thru a standard sandwich, which allows tracking of what changed in the doc, which allows proper post-processing of what changed. Also, all deletions now go thru the rules code, if applicable. Also some bugs in tracking the changed document portion have been fixed. Finally selection setting after a delete is improved.
git-svn-id: svn://10.0.0.236/trunk@55568 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:30:19 +00:00
jband%netscape.com
4727d6ae47 fixing the last modified date - not part of the build
git-svn-id: svn://10.0.0.236/trunk@55567 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:23:01 +00:00
jband%netscape.com
43f3345a6b updating xptcall status - not part of the build
git-svn-id: svn://10.0.0.236/trunk@55566 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 08:21:31 +00:00
rickg%netscape.com
a0a4987a35 disabling residual style until I can find the hang that simon reported; r=none
git-svn-id: svn://10.0.0.236/trunk@55565 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:51:33 +00:00
fur%netscape.com
a793371759 Sun compiler requires nsCOMPtr types to be fully defined
git-svn-id: svn://10.0.0.236/trunk@55564 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:51:31 +00:00
sspitzer%netscape.com
3be34bfeff fix, and the turn on morse's fix for #15111. now cookies get migrated on the mac correctly.
git-svn-id: svn://10.0.0.236/trunk@55563 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:44:31 +00:00
sfraser%netscape.com
e232c6c064 #ifdef out a printf. r=none
git-svn-id: svn://10.0.0.236/trunk@55562 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:38:16 +00:00
rickg%netscape.com
cf7c17f944 WIP on fixing <noscript> bug for real -- post dogfood. r=syd
git-svn-id: svn://10.0.0.236/trunk@55561 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:25:56 +00:00
sfraser%netscape.com
21799bdf04 Make sure that all warnings just printf on Mac, and don't dump you into MacsBug. r=pinkerton
git-svn-id: svn://10.0.0.236/trunk@55560 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:21:30 +00:00
mscott%netscape.com
d580800895 Bug #20698 --> unescape the url before figuring out the file path
git-svn-id: svn://10.0.0.236/trunk@55559 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:18:06 +00:00
jband%netscape.com
1d0d491d3d adding member initializer to quiet Purify. r=waterson.
git-svn-id: svn://10.0.0.236/trunk@55558 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:17:44 +00:00
sfraser%netscape.com
e09cc4c51d Add the cache projects to the build. r=fur.
git-svn-id: svn://10.0.0.236/trunk@55557 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:16:43 +00:00
mscott%netscape.com
8775c2609c Bug # 20698 --> make image consumer a content listener and load image urls through the uri loader
instead of trying to load them ourselves.
r=travis.


git-svn-id: svn://10.0.0.236/trunk@55556 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:15:42 +00:00
mscott%netscape.com
15b1fec8af Bug #20698 --> add new uri load command for loading in the background.
When creating the channel, if the uri load command is viewBackground then set the load flag
on the channel appropriately.


git-svn-id: svn://10.0.0.236/trunk@55555 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:14:40 +00:00
waterson%netscape.com
ef1cd092e1 Bug 20712. Get the presshell from the *content* area, not the enclosing browser window.
git-svn-id: svn://10.0.0.236/trunk@55554 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:07:14 +00:00
fur%netscape.com
ffaac3e9e6 Include definition of nsIStorageStream class to satisfy Sun compiler
git-svn-id: svn://10.0.0.236/trunk@55553 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:05:31 +00:00
rginda%netscape.com
0f75f23440 -- CHATZILLA CHANGES ONLY --
* index.html
  Updated sll.js changes, added link to the m.o chatzilla page.

* test3-handlers.js, test3-static.js
  Added input-history stuff.


git-svn-id: svn://10.0.0.236/trunk@55552 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:04:22 +00:00
valeski%netscape.com
152b822223 20956. r=rpotts. necko no longer assumes any MIME type. we send out application/x-unknown-content-type internal MIME type if we don't *know* what the type is. It's now truly up to the app to figure out what to do
git-svn-id: svn://10.0.0.236/trunk@55551 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 07:00:47 +00:00
valeski%netscape.com
7a2ef93455 20956. r=rpotts. necko no longer assumes any MIME type. we send out application/x-unknown-content-type internal MIME type if we don't *know* what the type is. It's now truly up to the app to figure out what to do"
git-svn-id: svn://10.0.0.236/trunk@55550 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:59:25 +00:00
valeski%netscape.com
359944da48 nsJARProtocol.cpp
git-svn-id: svn://10.0.0.236/trunk@55549 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:58:55 +00:00
rickg%netscape.com
9317da9e42 fixed blockers: 19598 and 20624 with temp workaround; r=syd.
git-svn-id: svn://10.0.0.236/trunk@55548 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:48:56 +00:00
sfraser%netscape.com
1b51bd36a3 Add DBM to the project. r=fur
git-svn-id: svn://10.0.0.236/trunk@55547 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:48:22 +00:00
sfraser%netscape.com
33de5e1c80 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@55546 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:43:19 +00:00
sfraser%netscape.com
dbb80e2d33 File Removed.
git-svn-id: svn://10.0.0.236/trunk@55545 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:36:12 +00:00
rpotts%netscape.com
b5e7662905 bug #20490 (r=valeski). Fixed problem where OnStopRequest was being fired (incorrectly) on 30x and 40x redirects...
git-svn-id: svn://10.0.0.236/trunk@55544 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:35:55 +00:00
sfraser%netscape.com
a60b2a2d65 Changing usage of nsCOMPtr on a non-interface pointer to raw addref-release. r=fur
git-svn-id: svn://10.0.0.236/trunk@55543 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:32:52 +00:00
sfraser%netscape.com
356f03c947 Some casts and a .get() so that it compiles on Mac. r=fur
git-svn-id: svn://10.0.0.236/trunk@55542 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:31:14 +00:00
sfraser%netscape.com
0bf5246e2c Fixes to build on Mac, where PRInt64 is a struct, and fix a typo. r=fur
git-svn-id: svn://10.0.0.236/trunk@55541 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:29:13 +00:00
sspitzer%netscape.com
4bb18e4e27 fix for #20896, need to select menu or folder picker twice to see the top
level folders for a server.  fix from putterman, r=sspitzer.


git-svn-id: svn://10.0.0.236/trunk@55540 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:20:02 +00:00
alecf%netscape.com
1bf01b249e fix case sensitivity issues - check in abCardViewOverlay.js which didn't get checked in the first time, and fix other JS that was changed since Sammy Ford made his original patch
r=sspizter


git-svn-id: svn://10.0.0.236/trunk@55539 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:17:43 +00:00
sdagley%netscape.com
562e044a96 First Checked In.
git-svn-id: svn://10.0.0.236/trunk@55538 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:05:45 +00:00
sdagley%netscape.com
4713b64ef5 nsStorageStream.h is needed by nkcache. Doesn't affect builds
git-svn-id: svn://10.0.0.236/trunk@55537 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 06:04:13 +00:00
bienvenu%netscape.com
f39ecfd904 fix body filter problem for local messages, r=mscott 17058
git-svn-id: svn://10.0.0.236/trunk@55536 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 05:52:56 +00:00
bienvenu%netscape.com
2589b7864d fix msf file names for imap folders with illegal characters, r=mscott 20324
git-svn-id: svn://10.0.0.236/trunk@55535 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 05:51:53 +00:00
bienvenu%netscape.com
2b18cdd84a fix problem threading headers by subject when date order is not arrival order, r=mscott 20421
git-svn-id: svn://10.0.0.236/trunk@55534 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 05:36:06 +00:00
evaughan%netscape.com
7773253d6f Fix for PDP+ bug #20712
-r beard


git-svn-id: svn://10.0.0.236/trunk@55533 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 05:28:32 +00:00
briano%netscape.com
9de0f9e097 Automated update
git-svn-id: svn://10.0.0.236/trunk@55532 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 05:15:46 +00:00
rickg%netscape.com
2cccb5c8ab removed 2 warnings; r=none
git-svn-id: svn://10.0.0.236/trunk@55531 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 05:07:53 +00:00
fur%netscape.com
cfe011edf5 + Added cast to help Mac compile
+ Fixed problem in which download-time was not being computed (#8305)


git-svn-id: svn://10.0.0.236/trunk@55530 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:54:05 +00:00
fur%netscape.com
7fd9c18f5f Christ, forgot the semicolon
git-svn-id: svn://10.0.0.236/trunk@55529 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:49:43 +00:00
fur%netscape.com
03bfa48dc1 Remove test code
git-svn-id: svn://10.0.0.236/trunk@55528 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:45:44 +00:00
troy%netscape.com
c42e11df4b b=20873. Switched to using underlying NSPR arena for frame memory allocation,
and reduced the recycler array.


git-svn-id: svn://10.0.0.236/trunk@55527 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:36:08 +00:00
pavlov%netscape.com
0f8dec295e build cache build r=fur
git-svn-id: svn://10.0.0.236/trunk@55526 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:29:26 +00:00
pavlov%netscape.com
fea7b82523 cache stuff r=fur
git-svn-id: svn://10.0.0.236/trunk@55525 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:28:23 +00:00
evaughan%netscape.com
3c52ac7a68 Fixed build bustage looks like a merge error.
git-svn-id: svn://10.0.0.236/trunk@55524 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:27:20 +00:00
warren%netscape.com
d0ed1c4035 Swapped res: and resource: protocol schemes so that now nsResProtocolHandler is used by default. r=pavlov
git-svn-id: svn://10.0.0.236/trunk@55523 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:04:21 +00:00
fur%netscape.com
188b1759d3 Disabling the cache build on unix until I can get a handle on the problem
git-svn-id: svn://10.0.0.236/trunk@55522 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 04:00:43 +00:00
briano%netscape.com
30ea3a1c5f Backed out my earlier QNX memory model change. It compiles just fine, but binaries linked in this manner don't run (memory violation). Sigh...
git-svn-id: svn://10.0.0.236/trunk@55521 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 03:50:43 +00:00
evaughan%netscape.com
edbfd05a90 1) created an nsIScrollableFrame interface make it possible for Chris K to fix PDP+ bug #12122
-r Troy


git-svn-id: svn://10.0.0.236/trunk@55520 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 03:36:05 +00:00
varada%netscape.com
ad0daefa8e fix for file browsing to the last selected value bug #20345
git-svn-id: svn://10.0.0.236/trunk@55519 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 03:27:19 +00:00
briano%netscape.com
481374c04f QNX-specific fix. An echo was left out, resulting in an (ignored) error.
git-svn-id: svn://10.0.0.236/trunk@55518 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 03:23:55 +00:00
fur%netscape.com
7574588de7 Fix imminent unix build bustage because I failed to add the cache makefiles
git-svn-id: svn://10.0.0.236/trunk@55517 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 03:17:35 +00:00
fur%netscape.com
235da90d92 Enable building of cache on unix
git-svn-id: svn://10.0.0.236/trunk@55516 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:39:31 +00:00
danm%netscape.com
d82be4211b add deathgrip to JSContext to prevent its untimely destruction. fixes bug 20193. r:brendan@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@55515 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:39:17 +00:00
fur%netscape.com
08601657ad Add cache tests
git-svn-id: svn://10.0.0.236/trunk@55514 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:32:34 +00:00
fur%netscape.com
ab390d9a24 Enable building of cache on Windows
git-svn-id: svn://10.0.0.236/trunk@55513 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:19:56 +00:00
fur%netscape.com
3b7e795657 Replaced spaces with tab to fix build bustage for rgoodger
git-svn-id: svn://10.0.0.236/trunk@55512 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:17:24 +00:00
fur%netscape.com
cb8d4be3b8 Landing of CacheIntegration_BRANCH in support of bug #8305 (Implement cache)
git-svn-id: svn://10.0.0.236/trunk@55511 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:07:31 +00:00
tbogard%aol.net
aadd0fb038 Checkin for valeski:"r=travis, fixing eval of un-init'd rv".
git-svn-id: svn://10.0.0.236/trunk@55510 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:06:25 +00:00
brendan%mozilla.org
f512f2dbb4 Add off-by-default metering, improve comments (r=waterson@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@55509 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:06:10 +00:00
waterson%netscape.com
4f7ac1c445 Pretty up Franz Sirl's code; fix STUB_ENTRY() macro to use r12 as the register in which the method index is passed; r4 is used for passing the first parameter! r=beard@netscape.com (actually, most of the work was beard!)
git-svn-id: svn://10.0.0.236/trunk@55508 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 02:05:54 +00:00
sspitzer%netscape.com
4369043f13 remove the check on rv. we are already doing the right thing.
fix by=racham, r=sspitzer


git-svn-id: svn://10.0.0.236/trunk@55507 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:58:26 +00:00
edburns%acm.org
2050d69f72 This change is not related to SeaMonkey, so it can't break the build.
r=marklin
a=edburns
bug=20659

added #ifdef XP_UNIX for GTK_MOZAREA stuff.


git-svn-id: svn://10.0.0.236/trunk@55506 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:51:54 +00:00
ssu%netscape.com
2c74c6fb06 removing error message if .ini file is missing. affects only windows. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@55503 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:38:22 +00:00
ftang%netscape.com
199df01b45 add query composition event which get current curosor position. add timer base IME x y location query for gtk. r=erik. fix bug 17916 20550
git-svn-id: svn://10.0.0.236/trunk@55502 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:29:00 +00:00
rgoodger%ihug.co.nz
9484110b36 signonviewer skinnability, keyboard mappings. r=morse
git-svn-id: svn://10.0.0.236/trunk@55501 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:25:36 +00:00
rgoodger%ihug.co.nz
d8a67fa3b9 cookie viewer keyboard mappings, skin update. r=morse
git-svn-id: svn://10.0.0.236/trunk@55500 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:21:25 +00:00
cmanske%netscape.com
d0dbb9cc6d Finished basic table editing (bug 6256) r=mjudge. Fixed XUL so debug-only plain text editor works. r=akkana
git-svn-id: svn://10.0.0.236/trunk@55498 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:12:10 +00:00
despotdaemon%netscape.com
d23f087f32 Pseudo-automatic update of changes made by dmose@mozilla.org.
git-svn-id: svn://10.0.0.236/trunk@55497 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 01:01:59 +00:00
matt%netscape.com
3f5ec35ce8 fix for bug 20967 r-chris
git-svn-id: svn://10.0.0.236/trunk@55496 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:55:11 +00:00
matt%netscape.com
b82eb95e33 fix for bug 20967
git-svn-id: svn://10.0.0.236/trunk@55495 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:53:09 +00:00
brendan%mozilla.org
4fa40f0133 Tidy whitespace and bracing (r=slamm@netscape.com).
git-svn-id: svn://10.0.0.236/trunk@55494 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:52:42 +00:00
slamm%netscape.com
1bb107dcda Add dialogs. One to verify that the add should be done. Another to warn that the panel has already been added.
git-svn-id: svn://10.0.0.236/trunk@55493 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:41:41 +00:00
ssu%netscape.com
a13d7b5d8f updating scripts to display build version in Setup. Fixes bug #17377. Not part of tinderbox. Would affect only windows plaforms. r=sgehani
git-svn-id: svn://10.0.0.236/trunk@55491 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:23:38 +00:00
sspitzer%netscape.com
17158c4189 fix for #15042. fix by=racham, r=sspitzer
git-svn-id: svn://10.0.0.236/trunk@55490 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:22:30 +00:00
rickg%netscape.com
51c4bb8682 finally landing residual style handling code; r=harishd; other changes include warning removal and comment handling fix, r=buster. This fixes over 50 bugs.
git-svn-id: svn://10.0.0.236/trunk@55489 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:22:15 +00:00
rginda%netscape.com
5e0931af82 Fix exit code detection.
git-svn-id: svn://10.0.0.236/trunk@55488 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:22:06 +00:00
mscott%netscape.com
fd5f7b2e1a Fix build breakage for Travis.
git-svn-id: svn://10.0.0.236/trunk@55487 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:15:42 +00:00
fur%netscape.com
997f01f69a Export nsStorageStream.h
git-svn-id: svn://10.0.0.236/trunk@55486 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:05:37 +00:00
rods%netscape.com
af658423e2 added a call in the creation of selects (comboboxes):
nsHTMLContainerFrame::CreateViewForFrame(aPresContext, comboboxFrame,
                                                 aStyleContext, PR_FALSE);
so we get a view when we are absolutely positioned.
r=buster bug 19382


git-svn-id: svn://10.0.0.236/trunk@55485 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-07 00:05:23 +00:00
rogerl%netscape.com
521e62ba06 Removed unsued local var version - shadowing caused typeof version test
to fail.


git-svn-id: svn://10.0.0.236/trunk@55483 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:53:57 +00:00
warren%netscape.com
82ba7cc6a4 2 fixes for directory listings: I added arguments to NewChannel which needed to be added in directory.js. Travis wacked nsHTTPIndexParser::OnStartRequest and didn't preserve the 'call once' stuff. r=waterson
git-svn-id: svn://10.0.0.236/trunk@55482 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:45:34 +00:00
edburns%acm.org
23db9bcbb7 Changed comment in initialize.
git-svn-id: svn://10.0.0.236/trunk@55481 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:42:13 +00:00
rginda%netscape.com
0c1eb4f76c * jsDriver.pl
Turn off trace by default (oops)
  Fix test list/ skil list output


git-svn-id: svn://10.0.0.236/trunk@55480 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:38:23 +00:00
tbogard%aol.net
489f5b804a Changed the way Assertion works. Get ready to remove all the old assertions methods. NS_ASSERTION now works the same way it used with the exception that on Windows it will put up and abort, retry, ignore box if you aren't in the debugger. r=warren.
git-svn-id: svn://10.0.0.236/trunk@55479 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:34:48 +00:00
rginda%netscape.com
0875663ade Moved test from js1_2 section
git-svn-id: svn://10.0.0.236/trunk@55478 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:32:25 +00:00
fur%netscape.com
f0328f2b2a Added cache control flags, in support of Bug #8305 (Implement cache)
git-svn-id: svn://10.0.0.236/trunk@55477 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:31:47 +00:00
edburns%acm.org
f861dab0c8 r=marklin
a=edburns
bug=20659

Changes to bring webclient sort of up to working shape on unix.


git-svn-id: svn://10.0.0.236/trunk@55476 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:31:11 +00:00
dp%netscape.com
5b4c24a5a0 Checking error status on no url spec and returning error properly. r=morse@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55474 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:29:41 +00:00
dp%netscape.com
cc1f31cb8e Fixing leak of atoms. r=beard@netscape.com, morse@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55473 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:28:26 +00:00
mcafee%netscape.com
f73794234b Adding support for -f startup flag, print out execution line. r=leaf
git-svn-id: svn://10.0.0.236/trunk@55470 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:20:26 +00:00
robinf%netscape.com
f971abeac7 UI improvements; added bold to group box titles
git-svn-id: svn://10.0.0.236/trunk@55468 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:15:37 +00:00
rods%netscape.com
c5c2e469e6 Should have left off the ":"
r=self


git-svn-id: svn://10.0.0.236/trunk@55463 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:05:52 +00:00
waterson%netscape.com
657a44f76d Bug 16709. Set 'content ID' fields on elements as they are constructed from XUL.
git-svn-id: svn://10.0.0.236/trunk@55461 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:05:31 +00:00
waterson%netscape.com
823976d121 Bug 20897. Change flow-of-control; panic if we can't get from a presshell to a webshell and beyond. r=danm
git-svn-id: svn://10.0.0.236/trunk@55460 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 23:03:53 +00:00
rods%netscape.com
31b5649f91 removing unused variables (bloat) and using nsLayoutAtoms::optionSelectedPseudo instead of
using a string and creating and deleting it each time.
r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@55459 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:59:43 +00:00
rods%netscape.com
34b37eb441 adding :-moz-option-selected
r=kmcclusk


git-svn-id: svn://10.0.0.236/trunk@55458 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:57:24 +00:00
rogerl%netscape.com
b7d94f969c version() must have int type argument.
Fixed VERSION setting to match shell.js
Fixed 'pass!' string to match 'pass'


git-svn-id: svn://10.0.0.236/trunk@55457 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:47:51 +00:00
rogerl%netscape.com
1f742a3284 version() must have int type argument.
Fixed VERSION setting to match expected string in shell.js


git-svn-id: svn://10.0.0.236/trunk@55456 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:46:46 +00:00
rogerl%netscape.com
f23980eeb6 version() must have int type argument
git-svn-id: svn://10.0.0.236/trunk@55455 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:45:53 +00:00
akkana%netscape.com
d035392759 Add tests/outsinks to build. r=slamm
git-svn-id: svn://10.0.0.236/trunk@55454 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:34:11 +00:00
mscott%netscape.com
ea7c0c0563 Bug #20700 --> fix view source by converting back and forth between nsURILoadCommand's and the old string
style version.

Fixed a memory leak of the global window.

r=travis


git-svn-id: svn://10.0.0.236/trunk@55453 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:32:32 +00:00
mscott%netscape.com
8d56484c5e Bug #20700 --> fix view source by converting back and forth between nsURILoadCommand's and the old string
style version.
r=travis


git-svn-id: svn://10.0.0.236/trunk@55452 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:32:06 +00:00
akkana%netscape.com
8bbd947552 Add htmlparser/tests/outsinks to the enable-tests build
git-svn-id: svn://10.0.0.236/trunk@55451 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:29:49 +00:00
jdunn%netscape.com
5e2d02cad7 alecf's checkon on 12/2 (test.cpp) started use of accountmanager which requires
libmsgbaseutil so we need to link it in

r= alecf


git-svn-id: svn://10.0.0.236/trunk@55450 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:04:24 +00:00
jdunn%netscape.com
238cb44868 adding newline which is required on HP
git-svn-id: svn://10.0.0.236/trunk@55449 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:02:16 +00:00
hyatt%netscape.com
27e5d5d519 Making sure the find dialog gets skinned.
git-svn-id: svn://10.0.0.236/trunk@55448 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 22:00:17 +00:00
akkana%netscape.com
cad9903a6b Remove a debug printf. Trivial one-line change
git-svn-id: svn://10.0.0.236/trunk@55447 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 21:49:04 +00:00
kin%netscape.com
b61d6c2bdb Fix for bug #20524: [DOGFOOD] No Caret in Win32 Composer window
Made some modifications to nsEventStateManager::PreHandleEvent().
We now prevent setting of gLastFocusedContent when handling
NS_ACTIVATE. We now allow DOM focus notifications even when
we can't send a blur notification in NS_GOTFOCUS.
r=saari@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55446 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 21:48:36 +00:00
kmcclusk%netscape.com
654bf6ac36 Modified nsRegionWin::Init to allow for init to be called multiple times on the same instance without leaking HRGN handles. The view manager re-uses nsIRegions by calling Init on an existing instance. bug=19114; r=buster@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55445 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 21:33:59 +00:00
sspitzer%netscape.com
2913f83f05 only correct cookies if the expires time is non-zero.
(zero means the cookie should expire at the end of the current session.)
fix by=morse, r=sspitzer, part of bug #15111


git-svn-id: svn://10.0.0.236/trunk@55444 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 21:25:01 +00:00
sspitzer%netscape.com
870db29d54 fix for #15111, need to adjust the times in the a 4.x cookie file to work
with 5.0.  (the start of our epoch changes on the mac.)
right now, this code is turned off until we finish testing it.
fix by=morse, r=sspitzer.


git-svn-id: svn://10.0.0.236/trunk@55443 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 21:05:33 +00:00
rhp%netscape.com
17576453d3 Cleanup printf's
git-svn-id: svn://10.0.0.236/trunk@55442 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:29:27 +00:00
blizzard%redhat.com
1e97cfb9b6 bring the gtk embedded code back from the dead. this is a fix for bug #20396.
git-svn-id: svn://10.0.0.236/trunk@55441 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:28:47 +00:00
blizzard%redhat.com
2f490e6acb move the installation of the GDK event handler to the first nsWidget() class constructor so that external applications don't have to know about the event handler. part of bug #20396
git-svn-id: svn://10.0.0.236/trunk@55440 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:24:36 +00:00
edburns%acm.org
132680033c r=marklin
bug=7785
a=edburns

Change nsIThreadManager::GetCurrentThread(PRUint32 *result)
to nsIThreadManager::GetCurrentThread(nsPluginThread* *result)


git-svn-id: svn://10.0.0.236/trunk@55439 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:12:56 +00:00
kin%netscape.com
238a3616c4 Fix for bug #20106: [DOGFOOD] caret dissapears after some edit operations
Modified nsRangeList::GetFrameForNodeOffset() to handle case where aOffset
is >= to number of children.
r=mjudge@netscape.com


git-svn-id: svn://10.0.0.236/trunk@55438 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:10:18 +00:00
ducarroz%netscape.com
ec87243cd6 Fix for bug 20922. OnAutocComplete and AutoComplete now must start with a lower case. R=hangas
git-svn-id: svn://10.0.0.236/trunk@55437 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:10:05 +00:00
rhp%netscape.com
944d1180a4 Build bustage fix for picky commercial C++ compilers. Fixes a couple member function prototypes to match their implementation. Contributed by: Tim Rowley <tor@cs.brown.edu> r: rhp
git-svn-id: svn://10.0.0.236/trunk@55436 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:07:06 +00:00
mcafee%netscape.com
4a3e063195 whitespace only
git-svn-id: svn://10.0.0.236/trunk@55435 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 20:02:37 +00:00
rginda%netscape.com
639f9e68d3 Adding IRC Client to tasks menu. r=mcafee
git-svn-id: svn://10.0.0.236/trunk@55434 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 19:56:36 +00:00
mcafee%netscape.com
3b29e0e253 Ignore generated files.
git-svn-id: svn://10.0.0.236/trunk@55433 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 19:44:38 +00:00
mcafee%netscape.com
2871746d83 Adding debug print to put logfile name in build rectangle. Commented-out, uncomment to enable.
git-svn-id: svn://10.0.0.236/trunk@55432 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 19:42:10 +00:00
mcafee%netscape.com
e1d3b6f5c2 Retired copydata.pl
git-svn-id: svn://10.0.0.236/trunk@55431 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 19:40:07 +00:00
norris%netscape.com
c99a01bbd4 Fix ecma_3/ExecutionContexts/10.1.4-1.js
git-svn-id: svn://10.0.0.236/trunk@55429 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 19:03:21 +00:00
sspitzer%netscape.com
ff7a3079f8 new files. not part of the build yet.
git-svn-id: svn://10.0.0.236/trunk@55428 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 18:27:26 +00:00
terry%mozilla.org
0ed0a6ba1a Don't do dmose's paranoid checking of option values in the query page.
git-svn-id: svn://10.0.0.236/trunk@55427 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 17:09:54 +00:00
blizzard%redhat.com
d56aa87800 remove all of the #ifdef USE_SUPERWIN defines since it's the default now. a=leaf
git-svn-id: svn://10.0.0.236/trunk@55426 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 16:23:34 +00:00
Jerry.Kirk%Nexwarecorp.com
3e212de2a9 Change Play from a nsIFileSpec to a nsIURL so it would compile
r=kedl


git-svn-id: svn://10.0.0.236/trunk@55425 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 16:01:25 +00:00
troy%netscape.com
52084caad8 Change to how overflow is handled for absolutely positioned elements.
We no longer use nsIAraeFrame and now it's folded into the overflow
area in the reflow metrics


git-svn-id: svn://10.0.0.236/trunk@55424 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 15:49:53 +00:00
jefft%netscape.com
a8d6ce613a possibly fix bug 20230, save template requires canonical line ending when uploading to an imap server; r=rhp;
git-svn-id: svn://10.0.0.236/trunk@55423 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 15:40:24 +00:00
Jerry.Kirk%Nexwarecorp.com
98b3316ae5 Added a check for __QNXNTO__ for the D_INO definition. This should
probably be determined in a platform independent way. Bruce filed
bug # 20882
r=bruce


git-svn-id: svn://10.0.0.236/trunk@55422 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 14:03:27 +00:00
Jerry.Kirk%Nexwarecorp.com
f9cf743937 Simplified InvalidateRegion for Photon, but left the old code for
a little while in case I was wrong..
r=kedl


git-svn-id: svn://10.0.0.236/trunk@55421 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 14:01:59 +00:00
Jerry.Kirk%Nexwarecorp.com
3eb31bbb1e Fixed some warning messages that started showing up when I moved to
the real compiler.
r=kedl


git-svn-id: svn://10.0.0.236/trunk@55420 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 13:45:33 +00:00
rjc%netscape.com
2b66e98597 Fake out the generic builder so that search containers never appear to be "empty"
git-svn-id: svn://10.0.0.236/trunk@55419 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 13:07:03 +00:00
rjc%netscape.com
ebb4a10cfb Fix bug where search engines appear twice the first time (due to order of discovery).
git-svn-id: svn://10.0.0.236/trunk@55418 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 12:50:01 +00:00
rjc%netscape.com
da52293f7e Fix Win bustage.
git-svn-id: svn://10.0.0.236/trunk@55417 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 12:03:54 +00:00
rjc%netscape.com
08e89aca70 Make internet search queries stoppable.
git-svn-id: svn://10.0.0.236/trunk@55416 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 11:56:19 +00:00
rgoodger%ihug.co.nz
ed3c921a9a making prefs panels skinnable. (bug 19560)
git-svn-id: svn://10.0.0.236/trunk@55415 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 09:21:10 +00:00
nisheeth%netscape.com
f599ff75ef Enable save/restore for frame state.
git-svn-id: svn://10.0.0.236/trunk@55414 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 09:03:16 +00:00
rgoodger%ihug.co.nz
99f3232c3e additional rules for appearance tweaks, html widget optimisation, r=hyatt
git-svn-id: svn://10.0.0.236/trunk@55413 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 08:56:06 +00:00
waterson%netscape.com
b59c7b6165 Bug 20853. addCardToDatabase, don't AddCardToDatabase.
git-svn-id: svn://10.0.0.236/trunk@55412 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 08:33:58 +00:00
waterson%netscape.com
94fa330a81 Bug 20785. Clone function object to define as event handler property. Checked in for brendan@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@55411 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 08:27:03 +00:00
waterson%netscape.com
303386ba94 Bug 20785. Root event handlers for JavaScript GC. r=brendan@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@55410 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 08:23:47 +00:00
nisheeth%netscape.com
3785d66606 Fix for bugs 16709, 20771. Frame state is stored before frame hierarchies are deleted and restored when the frame hierarchies are reconstructed.
git-svn-id: svn://10.0.0.236/trunk@55409 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 07:44:18 +00:00
mcafee%netscape.com
8470f98104 Removing copydata.pl, this script has bit-rotted. Use copydata instead. r=slamm
git-svn-id: svn://10.0.0.236/trunk@55408 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 07:26:49 +00:00
mcafee%netscape.com
94a988fc93 Tools for hacking on tinderbox server, courtesy slamm@netscape.com
git-svn-id: svn://10.0.0.236/trunk@55407 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-06 07:24:33 +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
1832 changed files with 460479 additions and 105 deletions

View File

@@ -0,0 +1,46 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIAnonymousContent_h___
#define nsIAnonymousContent_h___
#include "nsISupports.h"
#include "nsIContent.h"
#include "nsCOMPtr.h"
class nsISupportsArray;
class nsIAtom;
#define NS_IANONYMOUS_CONTENT_IID { 0x41a69e00, 0x2d6d, 0x12d3, { 0xb0, 0x33, 0xa1, 0x38, 0x71, 0x39, 0x78, 0x7c } }
/**
* If a node is anonymous. Then it should implement this interface.
*/
class nsIAnonymousContent : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IANONYMOUS_CONTENT_IID; return iid; }
};
#endif

View File

@@ -0,0 +1,276 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsIContent_h___
#define nsIContent_h___
#include <stdio.h>
#include "nslayout.h"
#include "nsISupports.h"
#include "nsGUIEvent.h"
// Forward declarations
class nsIAtom;
class nsIDocument;
class nsIPresContext;
class nsString;
class nsString;
class nsVoidArray;
class nsXIFConverter;
class nsIDOMEvent;
class nsIContent;
class nsISupportsArray;
class nsIDOMRange;
class nsISizeOfHandler;
// IID for the nsIContent interface
#define NS_ICONTENT_IID \
{ 0x78030220, 0x9447, 0x11d1, \
{0x93, 0x23, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32} }
// A node of content in a documents content model. This interface
// is supported by all content objects.
class nsIContent : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ICONTENT_IID; return iid; }
NS_IMETHOD GetDocument(nsIDocument*& aResult) const = 0;
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep) = 0;
NS_IMETHOD GetParent(nsIContent*& aResult) const = 0;
NS_IMETHOD SetParent(nsIContent* aParent) = 0;
/**
* Get the namespace that this tag is defined in
*/
NS_IMETHOD GetNameSpaceID(PRInt32& aResult) const = 0;
NS_IMETHOD GetTag(nsIAtom*& aResult) const = 0;
NS_IMETHOD CanContainChildren(PRBool& aResult) const = 0;
NS_IMETHOD ChildCount(PRInt32& aResult) const = 0;
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const = 0;
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aIndex) const = 0;
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex,
PRBool aNotify) = 0;
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex,
PRBool aNotify) = 0;
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) = 0;
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) = 0;
/**
* Test and see if this piece of content is synthetic. Synthetic content
* is content generated stylistically and should normally be ignored
* during content saving.
*/
NS_IMETHOD IsSynthetic(PRBool& aResult) = 0;
/**
* Parses an attribute string into an atom that represents the
* attribute name and an identifier that represents the namespace
* of the attribute. The namespace identifier may be computed
* from a namespace prefix that must be interpreted in the context
* of the content itself.
*
* @param aStr the unparsed attribute string
* @param aName out parameter representing the name of the attribute
* @param aNameSpaceID out parameter reprsenting the namespace
* of the attribute
*/
NS_IMETHOD ParseAttributeString(const nsString& aStr,
nsIAtom*& aName,
PRInt32& aNameSpaceID) = 0;
/**
* Returns the prefix for the specified name space identifier in
* the context of the content element itself.
*
* @param aNameSpaceID identifier of the namespace
* @param aPrefix out parameter representing the prefix for the namespace
*/
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID,
nsIAtom*& aPrefix) = 0;
/**
* Set attribute values. All attribute values are assumed to have a
* canonical String representation that can be used for these
* methods. The setAttribute method is assumed to perform a translation
* of the canonical form into the underlying content specific
* form.
*
* @param aName the name of the attribute
* @param aValue may legitimately be the empty string.
*
* @param aUpdateMask specifies how whether or not the document should be
* notified of the attribute change.
*/
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
const nsString& aValue,
PRBool aNotify) = 0;
/**
* Get the current value of the attribute. This returns a form that is
* suitable for passing back into setAttribute.
*
* <UL>
*
* <LI>If the attribute is not set and has no default value, return
* NS_CONTENT_ATTR_NOT_THERE.
*
* <LI>If the attribute exists, but has no value, return
* NS_CONTENT_ATTR_NO_VALUE.
*
* <LI>If the attribute has a value, empty or otherwise, set ret to
* be the value, and return NS_CONTENT_ATTR_HAS_VALUE (== NS_OK).
*
* </UL>
*/
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
nsString& aResult) const = 0;
/**
* Remove an attribute so that it is no longer explicitly specified.
*
* @param aAttribute the name of the attribute to unset
*
* @param aNotify specifies whether or not the document should be
* notified of the attribute change
*
*/
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
PRBool aNotify) = 0;
/**
* Get the namespace & name of a given attribute.
*
* @param aIndex the index of the attribute name
* @param aNameSpace an out param of the name space ID of the attribute name
* @param aName an out param if the attribute name
*
*/
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex,
PRInt32& aNameSpaceID,
nsIAtom*& aName) const = 0;
/**
* Get the number of all specified attributes.
*
* @param aCountResult an out parameter to be filled in with
* the number of attributes
*
*/
NS_IMETHOD GetAttributeCount(PRInt32& aCountResult) const = 0;
/**
* Get the size of the content object. The size value should include
* all subordinate data referenced by the content that is not
* accounted for by child content. However, this value should not
* include the frame objects, style contexts, views or other data
* that lies logically outside the content model.
*
* If the implementation so chooses, instead of returning the total
* subordinate data it may instead use the sizeof handler to store
* away subordinate data under its own key so that the subordinate
* data may be tabulated independently of the frame itself.
*
* The caller is responsible for recursing over all children that
* the content contains.
*/
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const = 0;
/**
* List the content (and anything it contains) out to the given
* file stream. Use aIndent as the base indent during formatting.
* Returns NS_OK unless a file error occurs.
*/
NS_IMETHOD List(FILE* out = stdout, PRInt32 aIndent = 0) const = 0;
/**
* Translate the content object into the (XIF) XML Interchange Format
* XIF is an intermediate form of the content model, the buffer
* will then be parsed into any number of formats including HTML, TXT, etc.
* BeginConvertToXIF -- opens a container and writes out the attributes
* ConvertContentToXIF -- typically does nothing unless there is text content
* FinishConvertToXIF -- closes a container
*/
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const = 0;
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const = 0;
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const = 0;
/**
* Inform content of range ownership changes. This allows content
* to do the right thing to ranges in the face of changes to the content
* model.
* RangeAdd -- informs content that it owns one or both range endpoints
* RangeRemove -- informs content that it no longer owns a range endpoint
* GetRangeList -- returns the list of ranges that have one or both endpoints
* within this content item
*/
NS_IMETHOD RangeAdd(nsIDOMRange& aRange) = 0;
NS_IMETHOD RangeRemove(nsIDOMRange& aRange) = 0;
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const = 0;
/**
* Handle a DOM event for this piece of content.
*/
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus) = 0;
/**
* Get and set a unique ID for this piece of content.
* This ID is used as a key to store state information
* about this content object and its associated frame object.
* The state information is stored in a dictionary that is
* manipulated by the frame manager (nsIFrameManager) inside layout.
* An opaque pointer to this dictionary is passed to the session
* history as a handle associated with the current document's state
*/
NS_IMETHOD GetContentID(PRUint32* aID) = 0;
NS_IMETHOD SetContentID(PRUint32 aID) = 0;
};
// nsresult codes for GetAttribute
#define NS_CONTENT_ATTR_HAS_VALUE NS_OK
#define NS_CONTENT_ATTR_NO_VALUE \
NS_ERROR_GENERATE_SUCCESS(NS_ERROR_MODULE_LAYOUT,0)
#define NS_CONTENT_ATTR_NOT_THERE \
NS_ERROR_GENERATE_SUCCESS(NS_ERROR_MODULE_LAYOUT,1)
#endif /* nsIContent_h___ */

View File

@@ -0,0 +1,91 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/*
* 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.org 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.
*
* Contributor(s):
*/
#ifndef __nsIContentIterator_h___
#define __nsIContentIterator_h___
#include "nsISupports.h"
class nsIContent;
class nsIDOMRange;
#define NS_ICONTENTITERTOR_IID \
{0xa6cf90e4, 0x15b3, 0x11d2, \
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32} }
class nsIContentIterator : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ICONTENTITERTOR_IID; return iid; }
/* Initializes an iterator for the subtree rooted by the node aRoot
*/
NS_IMETHOD Init(nsIContent* aRoot)=0;
/* Initializes an iterator for the subtree defined by the range aRange
*/
NS_IMETHOD Init(nsIDOMRange* aRange)=0;
/** First will reset the list. will return NS_FAILED if no items
*/
NS_IMETHOD First()=0;
/** Last will reset the list to the end. will return NS_FAILED if no items
*/
NS_IMETHOD Last()=0;
/** Next will advance the list. will return failed if allready at end
*/
NS_IMETHOD Next()=0;
/** Prev will decrement the list. will return failed if allready at beginning
*/
NS_IMETHOD Prev()=0;
/** CurrentItem will return the CurrentItem item it will fail if the list is empty
* @param aItem return value
*/
NS_IMETHOD CurrentNode(nsIContent **aNode)=0;
/** return if the collection is at the end. that is the beginning following a call to Prev
* and it is the end of the list following a call to next
* @param aItem return value
*/
NS_IMETHOD IsDone()=0;
/** PositionAt will position the iterator to the supplied node
*/
NS_IMETHOD PositionAt(nsIContent* aCurNode)=0;
/** MakePre will make the iterator a pre-order iterator
*/
NS_IMETHOD MakePre()=0;
/** MakePost will make the iterator a post-order iterator
*/
NS_IMETHOD MakePost()=0;
};
#endif // __nsIContentIterator_h___

View File

@@ -0,0 +1,338 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIDocument_h___
#define nsIDocument_h___
#include "nslayout.h"
#include "nsISupports.h"
#include "nsIUnicharInputStream.h"
#include "nsGUIEvent.h"
class nsIAtom;
class nsIArena;
class nsIContent;
class nsIDocumentContainer;
class nsIDocumentObserver;
class nsIPresContext;
class nsIPresShell;
class nsIStreamListener;
class nsIStreamObserver;
class nsIStyleSet;
class nsIStyleSheet;
class nsIStyleRule;
class nsIURI;
class nsILoadGroup;
class nsIViewManager;
class nsString;
class nsIScriptGlobalObject;
class nsIDOMEvent;
class nsIDeviceContext;
class nsIParser;
class nsIDOMNode;
class nsXIFConverter;
class nsINameSpaceManager;
class nsIDOMDocumentFragment;
class nsILineBreaker;
class nsIWordBreaker;
class nsIDOMSelection;
class nsIChannel;
class nsIPrincipal;
// IID for the nsIDocument interface
#define NS_IDOCUMENT_IID \
{ 0x94c6ceb0, 0x9447, 0x11d1, \
{0x93, 0x23, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32} }
// specification for data to be sent via form "post"
// IID for the nsIPostData interface - 152ab6e0-ff13-11d1-beb9-00805f8a66dc
#define NS_IPOSTDATA_IID \
{ 0x152ab6e0, 0xff13, 0x11d1, \
{0xbe, 0xb9, 0x00, 0x80, 0x5f, 0x8a, 0x66, 0xdc} }
#if 0
class nsIPostData : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IPOSTDATA_IID; return iid; }
virtual PRBool IsFile() = 0; // is the data a file (or raw data)
virtual const char* GetData() = 0; // get the file name or raw data
virtual PRInt32 GetDataLength() = 0;
};
#endif
//----------------------------------------------------------------------
// Document interface
class nsIDocument : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IDOCUMENT_IID; return iid; }
// All documents have a memory arena associated with them which is
// used for memory allocation during document creation. This call
// returns the arena associated with this document.
virtual nsIArena* GetArena() = 0;
NS_IMETHOD StartDocumentLoad(const char* aCommand,
nsIChannel* aChannel,
nsILoadGroup* aLoadGroup,
nsISupports* aContainer,
nsIStreamListener **aDocListener) = 0;
/**
* Return the title of the document. May return null.
*/
virtual const nsString* GetDocumentTitle() const = 0;
/**
* Return the URL for the document. May return null.
*/
virtual nsIURI* GetDocumentURL() const = 0;
/**
* Return the principal responsible for this document.
*/
virtual nsIPrincipal* GetDocumentPrincipal() = 0;
/**
* Return the LoadGroup for the document. May return null.
*/
NS_IMETHOD GetDocumentLoadGroup(nsILoadGroup** aGroup) const = 0;
/**
* Return the base URL for realtive URLs in the document. May return null (or the document URL).
*/
NS_IMETHOD GetBaseURL(nsIURI*& aURL) const = 0;
/**
* Return the content (mime) type of this document.
*/
NS_IMETHOD GetContentType(nsString& aContentType) const = 0;
/**
* Return a standard name for the document's character set. This will
* trigger a startDocumentLoad if necessary to answer the question.
*/
NS_IMETHOD GetDocumentCharacterSet(nsString& oCharSetID) = 0;
NS_IMETHOD SetDocumentCharacterSet(const nsString& aCharSetID) = 0;
/**
* Return the Line Breaker for the document
*/
NS_IMETHOD GetLineBreaker(nsILineBreaker** aResult) = 0;
NS_IMETHOD SetLineBreaker(nsILineBreaker* aLineBreaker) = 0;
NS_IMETHOD GetWordBreaker(nsIWordBreaker** aResult) = 0;
NS_IMETHOD SetWordBreaker(nsIWordBreaker* aWordBreaker) = 0;
/**
* Access HTTP header data (this may also get set from other sources, like
* HTML META tags).
*/
NS_IMETHOD GetHeaderData(nsIAtom* aHeaderField, nsString& aData) const = 0;
NS_IMETHOD SetHeaderData(nsIAtom* aheaderField, const nsString& aData) = 0;
/**
* Create a new presentation shell that will use aContext for
* it's presentation context (presentation context's <b>must not</b> be
* shared among multiple presentation shell's).
*/
NS_IMETHOD CreateShell(nsIPresContext* aContext,
nsIViewManager* aViewManager,
nsIStyleSet* aStyleSet,
nsIPresShell** aInstancePtrResult) = 0;
virtual PRBool DeleteShell(nsIPresShell* aShell) = 0;
virtual PRInt32 GetNumberOfShells() = 0;
virtual nsIPresShell* GetShellAt(PRInt32 aIndex) = 0;
/**
* Return the parent document of this document. Will return null
* unless this document is within a compound document and has a parent.
*/
virtual nsIDocument* GetParentDocument() = 0;
virtual void SetParentDocument(nsIDocument* aParent) = 0;
virtual void AddSubDocument(nsIDocument* aSubDoc) = 0;
virtual PRInt32 GetNumberOfSubDocuments() = 0;
virtual nsIDocument* GetSubDocumentAt(PRInt32 aIndex) = 0;
/**
* Return the root content object for this document.
*/
virtual nsIContent* GetRootContent() = 0;
virtual void SetRootContent(nsIContent* aRoot) = 0;
/**
* Methods to append to the prolog and epilog of
* a document. The prolog is the content before the document
* element, the epilog after.
*/
NS_IMETHOD AppendToProlog(nsIContent* aContent) = 0;
NS_IMETHOD AppendToEpilog(nsIContent* aContent) = 0;
/**
* Get the direct children of the document - content in
* the prolog, the root content and content in the epilog.
*/
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const = 0;
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aIndex) const = 0;
NS_IMETHOD GetChildCount(PRInt32& aCount) = 0;
/**
* Get the style sheets owned by this document.
* Style sheets are ordered, most significant last.
*/
virtual PRInt32 GetNumberOfStyleSheets() = 0;
virtual nsIStyleSheet* GetStyleSheetAt(PRInt32 aIndex) = 0;
virtual PRInt32 GetIndexOfStyleSheet(nsIStyleSheet* aSheet) = 0;
virtual void AddStyleSheet(nsIStyleSheet* aSheet) = 0;
virtual void RemoveStyleSheet(nsIStyleSheet* aSheet) = 0;
NS_IMETHOD InsertStyleSheetAt(nsIStyleSheet* aSheet, PRInt32 aIndex, PRBool aNotify) = 0;
virtual void SetStyleSheetDisabledState(nsIStyleSheet* aSheet,
PRBool mDisabled) = 0;
/**
* Set the object from which a document can get a script context.
* This is the context within which all scripts (during document
* creation and during event handling) will run.
*/
NS_IMETHOD GetScriptGlobalObject(nsIScriptGlobalObject** aGlobalObject) = 0;
NS_IMETHOD SetScriptGlobalObject(nsIScriptGlobalObject* aGlobalObject) = 0;
/**
* Get the name space manager for this document
*/
NS_IMETHOD GetNameSpaceManager(nsINameSpaceManager*& aManager) = 0;
//----------------------------------------------------------------------
// Document notification API's
/**
* Add a new observer of document change notifications. Whenever
* content is changed, appended, inserted or removed the observers are
* informed.
*/
virtual void AddObserver(nsIDocumentObserver* aObserver) = 0;
/**
* Remove an observer of document change notifications. This will
* return false if the observer cannot be found.
*/
virtual PRBool RemoveObserver(nsIDocumentObserver* aObserver) = 0;
// Observation hooks used by content nodes to propagate
// notifications to document observers.
NS_IMETHOD BeginLoad() = 0;
NS_IMETHOD EndLoad() = 0;
NS_IMETHOD ContentChanged(nsIContent* aContent,
nsISupports* aSubContent) = 0;
// notify that one or two content nodes changed state
// either may be nsnull, but not both
NS_IMETHOD ContentStatesChanged(nsIContent* aContent1,
nsIContent* aContent2) = 0;
NS_IMETHOD AttributeChanged(nsIContent* aChild,
PRInt32 aNameSpaceID,
nsIAtom* aAttribute,
PRInt32 aHint) = 0; // See nsStyleConsts fot hint values
NS_IMETHOD ContentAppended(nsIContent* aContainer,
PRInt32 aNewIndexInContainer) = 0;
NS_IMETHOD ContentInserted(nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer) = 0;
NS_IMETHOD ContentReplaced(nsIContent* aContainer,
nsIContent* aOldChild,
nsIContent* aNewChild,
PRInt32 aIndexInContainer) = 0;
NS_IMETHOD ContentRemoved(nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer) = 0;
// Observation hooks for style data to propogate notifications
// to document observers
NS_IMETHOD StyleRuleChanged(nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule,
PRInt32 aHint) = 0; // See nsStyleConsts fot hint values
NS_IMETHOD StyleRuleAdded(nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule) = 0;
NS_IMETHOD StyleRuleRemoved(nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule) = 0;
/**
* Finds text in content
*/
NS_IMETHOD FindNext(const nsString &aSearchStr, PRBool aMatchCase, PRBool aSearchDown, PRBool &aIsFound) = 0;
/**
* Converts the document or a selection of the
* document to XIF (XML Interchange Format)
* and places the result in aBuffer.
* NOTE: we may way to place the result in a stream,
* but we will use a string for now -- gpk
*/
NS_IMETHOD CreateXIF(nsString & aBuffer, nsIDOMSelection* aSelection = nsnull) = 0;
NS_IMETHOD ToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode) = 0;
virtual void BeginConvertToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode) = 0;
virtual void ConvertChildrenToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode) = 0;
virtual void FinishConvertToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode) = 0;
/* Helper methods to help determine the logical positioning of content */
virtual PRBool IsInSelection(nsIDOMSelection* aSelection, const nsIContent *aContent) const = 0;
virtual nsIContent* GetPrevContent(const nsIContent *aContent) const = 0;
virtual nsIContent* GetNextContent(const nsIContent *aContent) const = 0;
virtual void SetDisplaySelection(PRBool aToggle) = 0;
virtual PRBool GetDisplaySelection() const = 0;
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus) = 0;
};
// XXX These belong somewhere else
extern NS_LAYOUT nsresult
NS_NewHTMLDocument(nsIDocument** aInstancePtrResult);
extern NS_LAYOUT nsresult
NS_NewXMLDocument(nsIDocument** aInstancePtrResult);
extern NS_LAYOUT nsresult
NS_NewImageDocument(nsIDocument** aInstancePtrResult);
extern NS_LAYOUT nsresult
NS_NewDocumentFragment(nsIDOMDocumentFragment** aInstancePtrResult,
nsIDocument* aOwnerDocument);
// Note: The buffer passed into NewPostData(...) becomes owned by the IPostData
// instance and is freed when the instance is destroyed...
//
#if 0
extern NS_LAYOUT nsresult
NS_NewPostData(PRBool aIsFile, char *aData, nsIPostData** aInstancePtrResult);
#endif
#endif /* nsIDocument_h___ */

View File

@@ -0,0 +1,75 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIDocumentContainer_h___
#define nsIDocumentContainer_h___
#include "nsISupports.h"
class nsIScriptable;
class nsIScriptEnvironment;
class nsIURI;
#define NS_IDOCUMENT_CONTAINER_IID \
{ 0x8efd4470, 0x944d, 0x11d1, \
{0x93, 0x23, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32} }
class nIDocumentContainer : public nsISupports {
public:
/**
* Display the specified URL with the given connection.
*
* @param url the URL to display
* @param connection the connection to use.
*/
virtual void Display(nsIURI* aURL) = 0;
/**
* Returns a script environment for the specified language and version.
* The expectation is that the script environment already has been
* set up with a container object. If a script environment has already
* been requested for the given language, the same instance should
* be returned.
*
* @param language the scripting language for the environment. If this
* is null, returns the default scripting environment.
* @param majorVersion the major version number of the language
* @param minorVersion the minor version number of the language
* @return the script environment for the language
* @see mg.magellan.script.IScriptEnvrionment
*/
virtual nsIScriptEnvironment*
GetScriptEnvironment(nsString* aLanguage,
PRInt32 aMajorVersion,
PRInt32 aMinorVersion) = 0;
/**
* Returns the scriptable container object for the document container.
* The scriptable object will be used as the scoping object in the
* definition of scriptable classes used in the Document Object Model.
*
* @return the scriptable container for the application
* @see mg.magellan.script.IScriptable
* @see mg.magellan.script.IScriptEnvrionment
*/
virtual nsIScriptable* GetScriptableContainer() = 0;
};
#endif /* nsIDocumentContainer_h___ */

View File

@@ -0,0 +1,155 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIDocumentEncoder_h__
#define nsIDocumentEncoder_h__
#include "nsISupports.h"
#include "nsString.h"
class nsIDocumentEncoder;
class nsIDocument;
class nsIDOMSelection;
class nsIOutputStream;
class nsISupportsArray;
#define NS_IDOCUMENT_ENCODER_IID \
{ /* a6cf9103-15b3-11d2-932e-00805f8add32 */ \
0xa6cf9103, \
0x15b3, \
0x11d2, \
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32} \
}
#define NS_TEXT_ENCODER_CID \
{ /* e7ba1480-1dea-11d3-830f-00104bed045e */ \
0xe7ba1480, \
0x1dea, \
0x11d3, \
{0x83, 0x0f, 0x00, 0x10, 0x4b, 0xed, 0x04, 0x5e} \
}
#define NS_DOC_ENCODER_PROGID_BASE "component://netscape/layout/documentEncoder?type="
class nsIDocumentEncoder : public nsISupports
{
public:
/**
* Output methods flag bits.
*
* There are a frightening number of these,
* because everyone wants something a little bit different!
*
* These should move to an idl file so that Javascript can
* have access to the symbols, not just the constants.
*/
enum {
// Output only the selection.
OutputSelectionOnly = 1,
// Convert html to plaintext that looks like the html.
// Implies wrap (except inside <pre>), since html wraps.
OutputFormatted = 2,
// Don't output the html doctype and gecko output system comment headers
OutputNoDoctype = 4,
// No html head tags
OutputBodyOnly = 8,
// Wrap even if we're not doing formatted output (e.g. for text fields)
OutputPreformatted = 16,
// Output as though the content is preformatted
// (e.g. maybe it's wrapped in a MOZ_PRE or MOZ_PRE_WRAP style tag)
OutputWrap = 32,
// Output for format flowed (RFC 2646). This is used when converting
// to text for mail sending. This differs just slightly
// but in an important way from normal formatted, and that is that
// lines are space stuffed. This can't (correctly) be done later.
OutputFormatFlowed = 64
};
static const nsIID& GetIID() { static nsIID iid = NS_IDOCUMENT_ENCODER_IID; return iid; }
/**
* Initialize with a pointer to the document and the mime type.
*/
NS_IMETHOD Init(nsIDocument* aDocument, const nsString& aMimeType, PRUint32 flags) = 0;
/**
* If the selection is set to a non-null value, then the
* selection is used for encoding, otherwise the entire
* document is encoded.
*/
NS_IMETHOD SetSelection(nsIDOMSelection* aSelection) = 0;
/**
* Documents typically have an intrinsic character set.
* If no intrinsic value is found, the platform character set
* is used.
* aCharset overrides the both the intrinsic or platform
* character set when encoding the document.
*
* Possible result codes: NS_ERROR_NO_CHARSET_CONVERTER
*/
NS_IMETHOD SetCharset(const nsString& aCharset) = 0;
/**
* Set a wrap column. This may have no effect in some types of encoders.
*/
NS_IMETHOD SetWrapColumn(PRUint32 aWC) = 0;
/**
* The document is encoded, the result is sent to the
* to nsIOutputStream.
*
* Possible result codes are passing along whatever stream errors
* might have been encountered.
*/
NS_IMETHOD EncodeToStream(nsIOutputStream* aStream) = 0;
NS_IMETHOD EncodeToString(nsString& aOutputString) = 0;
};
// XXXXXXXXXXXXXXXX nsITextEncoder is going away! XXXXXXXXXXXXXXXXXXXXXX
#ifdef USE_OBSOLETE_TEXT_ENCODER
// Example of a output service for a particular encoder.
// The text encoder handles XIF, HTML, and plaintext.
class nsITextEncoder : public nsIDocumentEncoder
{
public:
static const nsIID& GetIID() { static nsIID iid = NS_TEXT_ENCODER_CID; return iid; }
// Get embedded objects -- images, links, etc.
// NOTE: we may want to use an enumerator
NS_IMETHOD PrettyPrint(PRBool aYes) = 0;
NS_IMETHOD SetWrapColumn(PRUint32 aWC) = 0;
NS_IMETHOD AddHeader(PRBool aYes) = 0;
};
#endif /* USE_OBSOLETE_TEXT_ENCODER */
#endif /* nsIDocumentEncoder_h__ */

View File

@@ -0,0 +1,312 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIDocumentObserver_h___
#define nsIDocumentObserver_h___
#include "nsISupports.h"
class nsIAtom;
class nsIContent;
class nsIPresShell;
class nsIStyleSheet;
class nsIStyleRule;
class nsString;
class nsIDocument;
#define NS_IDOCUMENT_OBSERVER_IID \
{ 0xb3f92460, 0x944c, 0x11d1, {0x93, 0x23, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
// Document observer interface
class nsIDocumentObserver : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IDOCUMENT_OBSERVER_IID; return iid; }
/**
* Notify that a content model update is beginning. This call can be
* nested.
*/
NS_IMETHOD BeginUpdate(nsIDocument *aDocument) = 0;
/**
* Notify that a content model update is finished. This call can be
* nested.
*/
NS_IMETHOD EndUpdate(nsIDocument *aDocument) = 0;
/**
* Notify the observer that a document load is beginning.
*/
NS_IMETHOD BeginLoad(nsIDocument *aDocument) = 0;
/**
* Notify the observer that a document load has finished. Note that
* the associated reflow of the document will be done <b>before</b>
* EndLoad is invoked, not after.
*/
NS_IMETHOD EndLoad(nsIDocument *aDocument) = 0;
/**
* Notify the observer that the document is being reflowed in
* the given presentation shell.
*/
NS_IMETHOD BeginReflow(nsIDocument *aDocument, nsIPresShell* aShell) = 0;
/**
* Notify the observer that the document is done being reflowed in
* the given presentation shell.
*/
NS_IMETHOD EndReflow(nsIDocument *aDocument, nsIPresShell* aShell) = 0;
/**
* Notification that the content model has changed. This method is
* called automatically by content objects when their state is changed
* (therefore there is normally no need to invoke this method
* directly). The notification is passed to any
* IDocumentObservers. The notification is passed on to all of the
* document observers. <p>
*
* This notification is not sent when a piece of content is
* added/removed from the document (the other notifications are used
* for that).
*
* @param aDocument The document being observed
* @param aContent the piece of content that changed
* @param aSubContent subrange information about the piece of content
* that changed
*/
NS_IMETHOD ContentChanged(nsIDocument *aDocument,
nsIContent* aContent,
nsISupports* aSubContent) = 0;
/**
* Notification that the state of a content node has changed.
* (ie: gained or lost focus, became active or hovered over)
* This method is called automatically by content objects
* when their state is changed (therefore there is normally
* no need to invoke this method directly). The notification
* is passed to any IDocumentObservers. The notification is
* passed on to all of the document observers. <p>
*
* This notification is not sent when a piece of content is
* added/removed from the document or the content itself changed
* (the other notifications are used for that).
*
* The optional second content node is to allow optimization
* of the case where state moves from one node to another
* (as is likely for :focus and :hover)
*
* Either content node may be nsnull, but not both
*
* @param aDocument The document being observed
* @param aContent1 the piece of content that changed
* @param aContent2 optional second piece of content that changed
*/
NS_IMETHOD ContentStatesChanged(nsIDocument* aDocument,
nsIContent* aContent1,
nsIContent* aContent2) = 0;
/**
* Notification that the content model has changed. This method is called
* automatically by content objects when an attribute's value has changed
* (therefore there is normally no need to invoke this method directly). The
* notification is passed to any IDocumentObservers document observers. <p>
*
* @param aDocument The document being observed
* @param aContent the piece of content whose attribute changed
* @param aAttribute the atom name of the attribute
*/
NS_IMETHOD AttributeChanged(nsIDocument *aDocument,
nsIContent* aContent,
PRInt32 aNameSpaceID,
nsIAtom* aAttribute,
PRInt32 aHint) = 0; // See nsStyleConsts fot hint values
/**
* Notifcation that the content model has had data appended to the
* given content object. This method is called automatically by the
* content container objects when a new content object is appended to
* the container (therefore there is normally no need to invoke this
* method directly). The notification is passed on to all of the
* document observers.
*
* @param aDocument The document being observed
* @param aContainer the container that had a new child appended
* @param aNewIndexInContainer the index in the container of the first
* new child
*/
NS_IMETHOD ContentAppended(nsIDocument *aDocument,
nsIContent* aContainer,
PRInt32 aNewIndexInContainer) = 0;
/**
* Notification that content has been inserted. This method is called
* automatically by the content container objects when a new content
* object is inserted in the container (therefore there is normally no
* need to invoke this method directly). The notification is passed on
* to all of the document observers.
*
* @param aDocument The document being observed
* @param aContainer the container that now contains aChild
* @param aChild the child that was inserted
* @param aIndexInContainer the index of the child in the container
*/
NS_IMETHOD ContentInserted(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer) = 0;
/**
* Notification that content has been replaced. This method is called
* automatically by the content container objects when a content object
* is replaced in the container (therefore there is normally no need to
* invoke this method directly). The notification is passed on to all
* of the document observers.
*
* @param aDocument The document being observed
* @param aContainer the container that now contains aChild
* @param aOldChild the child that was replaced
* @param aNewChild the child that replaced aOldChild
* @param aIndexInContainer the index of the old and new child in the
* container
*/
NS_IMETHOD ContentReplaced(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aOldChild,
nsIContent* aNewChild,
PRInt32 aIndexInContainer) = 0;
/**
* Content has just been removed. This method is called automatically
* by content container objects when a content object has just been
* removed from the container (therefore there is normally no need to
* invoke this method directly). The notification is passed on to all
* of the document observers.
*
* @param aDocument The document being observed
* @param aContainer the container that had a child removed
* @param aChild the child that was just removed
* @param aIndexInContainer the index of the child in the container
* before it was removed
*/
NS_IMETHOD ContentRemoved(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer) = 0;
/**
* A StyleSheet has just been added to the document.
* This method is called automatically when a StyleSheet gets added
* to the document. The notification is passed on to all of the
* document observers.
*
* @param aDocument The document being observed
* @param aStyleSheet the StyleSheet that has been added
*/
NS_IMETHOD StyleSheetAdded(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet) = 0;
/**
* A StyleSheet has just been removed from the document.
* This method is called automatically when a StyleSheet gets removed
* from the document. The notification is passed on to all of the
* document observers.
*
* @param aDocument The document being observed
* @param aStyleSheet the StyleSheet that has been removed
*/
NS_IMETHOD StyleSheetRemoved(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet) = 0;
/**
* A StyleSheet has just disabled or enabled.
* This method is called automatically when the disabled state
* of a StyleSheet gets changed. The style sheet passes this
* notification to the document. The notification is passed on
* to all of the document observers.
*
* @param aDocument The document being observed
* @param aStyleSheet the StyleSheet that has been added
* @param aDisabled PR_TRUE if the sheet is disabled, PR_FALSE if
* it is enabled
*/
NS_IMETHOD StyleSheetDisabledStateChanged(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
PRBool aDisabled) = 0;
/**
* A StyleRule has just been modified within a style sheet.
* This method is called automatically when the rule gets
* modified. The style sheet passes this notification to
* the document. The notification is passed on to all of
* the document observers.
*
* @param aDocument The document being observed
* @param aStyleSheet the StyleSheet that contians the rule
* @param aStyleRule the rule that was modified
* @param aHint some possible info about the nature of the change
*/
NS_IMETHOD StyleRuleChanged(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule,
PRInt32 aHint) = 0; // See nsStyleConsts fot hint values
/**
* A StyleRule has just been added to a style sheet.
* This method is called automatically when the rule gets
* added to the sheet. The style sheet passes this
* notification to the document. The notification is passed on
* to all of the document observers.
*
* @param aDocument The document being observed
* @param aStyleSheet the StyleSheet that has been modified
* @param aStyleRule the rule that was added
*/
NS_IMETHOD StyleRuleAdded(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule) = 0;
/**
* A StyleRule has just been removed from a style sheet.
* This method is called automatically when the rule gets
* removed from the sheet. The style sheet passes this
* notification to the document. The notification is passed on
* to all of the document observers.
*
* @param aDocument The document being observed
* @param aStyleSheet the StyleSheet that has been modified
* @param aStyleRule the rule that was removed
*/
NS_IMETHOD StyleRuleRemoved(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule) = 0;
/**
* The document is in the process of being destroyed.
* This method is called automatically during document
* destruction.
*
* @param aDocument The document being observed
*/
NS_IMETHOD DocumentWillBeDestroyed(nsIDocument *aDocument) = 0;
};
#endif /* nsIDocumentObserver_h___ */

View File

@@ -0,0 +1,56 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsIDocumentViewer_h___
#define nsIDocumentViewer_h___
#include "nsIContentViewer.h"
class nsIDocument;
class nsIPresContext;
class nsIPresShell;
class nsIStyleSheet;
#define NS_IDOCUMENT_VIEWER_IID \
{ 0xa6cf9057, 0x15b3, 0x11d2,{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
/**
* A document viewer is a kind of content viewer that uses NGLayout
* to manage the presentation of the content.
*/
class nsIDocumentViewer : public nsIContentViewer
{
public:
NS_DEFINE_STATIC_IID_ACCESSOR(NS_IDOCUMENT_VIEWER_IID)
NS_IMETHOD SetUAStyleSheet(nsIStyleSheet* aUAStyleSheet) = 0;
NS_IMETHOD GetDocument(nsIDocument*& aResult) = 0;
NS_IMETHOD GetPresShell(nsIPresShell*& aResult) = 0;
NS_IMETHOD GetPresContext(nsIPresContext*& aResult) = 0;
NS_IMETHOD CreateDocumentViewerUsing(nsIPresContext* aPresContext,
nsIDocumentViewer*& aResult) = 0;
};
#endif /* nsIDocumentViewer_h___ */

View File

@@ -0,0 +1,75 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsINameSpace_h___
#define nsINameSpace_h___
#include "nsISupports.h"
#include "nslayout.h"
class nsIAtom;
class nsString;
class nsINameSpaceManager;
#define NS_INAMESPACE_IID \
{ 0xa6cf90d4, 0x15b3, 0x11d2, \
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
/**
* A nsINameSpace registers the NameSpace URI with the NameSpaceManager
* (creating or finding an ID), and manages the relationship between
* the NameSpace ID and the (optional) Prefix.
*
* New NameSpaces are created as a child of an existing NameSpace. Searches
* for NameSpaces based on prefix search up the chain of nested NameSpaces
*
* Each NameSpace keeps a live reference on its parent and its Manager.
*
*/
class nsINameSpace : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_INAMESPACE_IID; return iid; }
NS_IMETHOD GetNameSpaceManager(nsINameSpaceManager*& aManager) const = 0;
// Get data of this name space
NS_IMETHOD GetNameSpaceID(PRInt32& aID) const = 0;
NS_IMETHOD GetNameSpaceURI(nsString& aURI) const = 0;
NS_IMETHOD GetNameSpacePrefix(nsIAtom*& aPrefix) const = 0;
NS_IMETHOD GetParentNameSpace(nsINameSpace*& aParent) const = 0;
// find name space within self and parents (not children)
NS_IMETHOD FindNameSpace(nsIAtom* aPrefix, nsINameSpace*& aNameSpace) const = 0;
NS_IMETHOD FindNameSpaceID(nsIAtom* aPrefix, PRInt32& aNameSpaceID) const = 0;
NS_IMETHOD FindNameSpacePrefix(PRInt32 aNameSpaceID, nsIAtom*& aPrefix) const = 0;
// create new child name space
NS_IMETHOD CreateChildNameSpace(nsIAtom* aPrefix, const nsString& aURI,
nsINameSpace*& aChildNameSpace) = 0;
NS_IMETHOD CreateChildNameSpace(nsIAtom* aPrefix, PRInt32 aNameSpaceID,
nsINameSpace*& aChildNameSpace) = 0;
};
#endif // nsINameSpace_h___

View File

@@ -0,0 +1,83 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsINameSpaceManager_h___
#define nsINameSpaceManager_h___
#include "nsISupports.h"
#include "nslayout.h"
class nsIAtom;
class nsString;
class nsINameSpace;
#define kNameSpaceID_Unknown -1
#define kNameSpaceID_None 0
#define kNameSpaceID_XMLNS 1 // not really a namespace, but it needs to play the game
#define kNameSpaceID_XML 2
#define kNameSpaceID_HTML 3
// 'html' is by definition bound to the namespace name "urn:w3-org-ns:HTML" XXX ???
// 'xml' is by definition bound to the namespace name "urn:Connolly:input:required" XXX
#define NS_INAMESPACEMANAGER_IID \
{ 0xa6cf90d5, 0x15b3, 0x11d2, \
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
/**
* The Name Space Manager tracks the associtation between a NameSpace
* URI and the PRInt32 runtime id. Mappings between NameSpaces and
* NameSpace prefixes are managed by nsINameSpaces
*
* All NameSpace URIs are stored in a global table so that IDs are
* consistent accross the app. NameSpace IDs are only consistent at runtime
* ie: they are not guaranteed to be consistent accross app sessions.
*
* The nsINameSpaceManager needs to have a live reference for as long as
* the NameSpace IDs are needed. Generally, a document keeps a reference to
* a nsINameSpaceManager. Also, each nsINameSpace that comes from the manager
* keeps a reference to it.
*
* To create a stack of NameSpaces, call CreateRootNameSpace, and then create
* child NameSpaces from the root.
*
* The "html" and "xml" namespaces come "pre-canned" from the root.
*
*/
class nsINameSpaceManager : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_INAMESPACEMANAGER_IID; return iid; }
NS_IMETHOD CreateRootNameSpace(nsINameSpace*& aRootNameSpace) = 0;
NS_IMETHOD RegisterNameSpace(const nsString& aURI,
PRInt32& aNameSpaceID) = 0;
NS_IMETHOD GetNameSpaceURI(PRInt32 aNameSpaceID, nsString& aURI) = 0;
NS_IMETHOD GetNameSpaceID(const nsString& aURI, PRInt32& aNameSpaceID) = 0;
};
extern NS_LAYOUT nsresult
NS_NewNameSpaceManager(nsINameSpaceManager** aInstancePtrResult);
#endif // nsINameSpaceManager_h___

View File

@@ -0,0 +1,104 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
/*
* !!Note this is for a javascriptable pres shell currently for accessing selection
* the selection refers only to that which listens to keybindings which is the "NORMAL"
* selection this will be IDLIZED LATER
*/
#ifndef nsISelectionControler_h___
#define nsISelectionControler_h___
#include "nsISupports.h"
#define NS_ISELECTIONCONTROLER_IID_STR "D2D1D179-85A7-11d3-9932-00108301233C"
#define NS_ISELECTIONCONTROLER_IID \
{ 0xd2d1d179, 0x85a7, 0x11d3, \
{ 0x99, 0x32, 0x0, 0x10, 0x83, 0x1, 0x23, 0x3c }}
class nsISelectionControler : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ISELECTIONCONTROLER_IID; return iid; }
/** CharacterMove will move the selection one character forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
NS_IMETHOD CharacterMove(PRBool aForward, PRBool aExtend) = 0;
/** WordMove will move the selection one word forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
NS_IMETHOD WordMove(PRBool aForward, PRBool aExtend) = 0;
/** LineMove will move the selection one line forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
NS_IMETHOD LineMove(PRBool aForward, PRBool aExtend) = 0;
/** IntraLineMove will move the selection to the front of the line or end of the line
* in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
NS_IMETHOD IntraLineMove(PRBool aForward, PRBool aExtend) = 0;
/** PageMove will move the selection one page forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
NS_IMETHOD PageMove(PRBool aForward, PRBool aExtend) = 0;
/** ScrollPage will scroll the page without affecting the selection.
* @param aForward scroll forward or backwards in selection
*/
NS_IMETHOD ScrollPage(PRBool aForward) = 0;
/** SelectAll will select the whole page
*/
NS_IMETHOD SelectAll() = 0;
};
#endif /* nsISelectionControler_h___ */

View File

@@ -0,0 +1,114 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
* 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.org 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.
*
* Contributor(s):
* Sammy Ford
*/
#include "nsISupports.idl"
[scriptable, uuid(D2D1D179-85A7-11d3-9932-00108301233C)]
interface nsISelectionController : nsISupports
{
/** CharacterMove will move the selection one character forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
void characterMove(in boolean aForward, in boolean aExtend);
/** WordMove will move the selection one word forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
void wordMove(in boolean aForward, in boolean aExtend);
/** LineMove will move the selection one line forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
void lineMove(in boolean aForward, in boolean aExtend);
/** IntraLineMove will move the selection to the front of the line or end of the line
* in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
void intraLineMove(in boolean aForward, in boolean aExtend);
/** PageMove will move the selection one page forward/backward in the document.
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
void pageMove(in boolean aForward, in boolean aExtend);
/** CompleteScroll will move page view to the top or bottom of the document
* @param aForward forward or backward if PR_FALSE
*/
void completeScroll(in boolean aForward);
/** CompleteMove will move page view to the top or bottom of the document
* this will also have the effect of collapsing the selection if the aExtend = PR_FALSE
* the "point" of selection that is extended is considered the "focus" point.
* or the last point adjusted by the selection.
* @param aForward forward or backward if PR_FALSE
* @param aExtend should it collapse the selection of extend it?
*/
void completeMove(in boolean aForward, in boolean aExtend);
/** ScrollPage will scroll the page without affecting the selection.
* @param aForward scroll forward or backwards in selection
*/
void scrollPage(in boolean aForward);
/** ScrolLine will scroll line up or down dependent on the boolean
* @param aForward scroll forward or backwards in selection
*/
void scrollLine(in boolean aForward);
/** ScrolHorizontal will scroll left or right dependent on the boolean
* @param aLeft if true will scroll left. if not will scroll right.
*/
void scrollHorizontal(in boolean aLeft);
/** SelectAll will select the whole page
*/
void selectAll();
};
%{ C++
#define NS_ISELECTIONCONTROLLER_CID \
{ 0xd2d1d179, 0x85a7, 0x11d3, \
{ 0x99, 0x32, 0x0, 0x10, 0x83, 0x1, 0x23, 0x3c }}
%}

View File

@@ -0,0 +1,56 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIStyleRule_h___
#define nsIStyleRule_h___
#include <stdio.h>
#include "nslayout.h"
#include "nsISupports.h"
class nsIStyleSheet;
class nsIMutableStyleContext;
class nsIPresContext;
class nsIContent;
// IID for the nsIStyleRule interface {40ae5c90-ad6a-11d1-8031-006008159b5a}
#define NS_ISTYLE_RULE_IID \
{0x40ae5c90, 0xad6a, 0x11d1, {0x80, 0x31, 0x00, 0x60, 0x08, 0x15, 0x9b, 0x5a}}
class nsIStyleRule : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ISTYLE_RULE_IID; return iid; }
NS_IMETHOD GetStyleSheet(nsIStyleSheet*& aSheet) const = 0;
// Strength is an out-of-band weighting, useful for mapping CSS ! important
NS_IMETHOD GetStrength(PRInt32& aStrength) const = 0;
// Map only font data into style context
NS_IMETHOD MapFontStyleInto(nsIMutableStyleContext* aContext, nsIPresContext* aPresContext) = 0;
// Map all non-font info into style context
NS_IMETHOD MapStyleInto(nsIMutableStyleContext* aContext, nsIPresContext* aPresContext) = 0;
NS_IMETHOD List(FILE* out = stdout, PRInt32 aIndent = 0) const = 0;
};
#endif /* nsIStyleRule_h___ */

View File

@@ -0,0 +1,72 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIStyleRuleProcessor_h___
#define nsIStyleRuleProcessor_h___
#include <stdio.h>
#include "nslayout.h"
#include "nsISupports.h"
class nsIStyleSheet;
class nsIStyleContext;
class nsIPresContext;
class nsIContent;
class nsISupportsArray;
class nsIAtom;
// IID for the nsIStyleRuleProcessor interface {015575fe-7b6c-11d3-ba05-001083023c2b}
#define NS_ISTYLE_RULE_PROCESSOR_IID \
{0x015575fe, 0x7b6c, 0x11d3, {0xba, 0x05, 0x00, 0x10, 0x83, 0x02, 0x3c, 0x2b}}
/* The style rule processor interface is a mechanism to seperate the matching
* of style rules from style sheet instances.
* Simple style sheets can and will act as their own processor.
* Sheets where rule ordering interlaces between multiple sheets, will need to
* share a single rule processor between them (CSS sheets do this for cascading order)
*/
class nsIStyleRuleProcessor : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ISTYLE_RULE_PROCESSOR_IID; return iid; }
// populate supports array with nsIStyleRule*
// rules are ordered, those with higher precedence come last
NS_IMETHOD RulesMatching(nsIPresContext* aPresContext,
nsIAtom* aMedium,
nsIContent* aContent,
nsIStyleContext* aParentContext,
nsISupportsArray* aResults) = 0;
NS_IMETHOD RulesMatching(nsIPresContext* aPresContext,
nsIAtom* aMedium,
nsIContent* aParentContent,
nsIAtom* aPseudoTag,
nsIStyleContext* aParentContext,
nsISupportsArray* aResults) = 0;
// Test if style is dependent on content state
NS_IMETHOD HasStateDependentStyle(nsIPresContext* aPresContext,
nsIAtom* aMedium,
nsIContent* aContent) = 0;
};
#endif /* nsIStyleRuleProcessor_h___ */

View File

@@ -0,0 +1,71 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIStyleSheet_h___
#define nsIStyleSheet_h___
#include <stdio.h>
#include "nsISupports.h"
class nsIAtom;
class nsString;
class nsIURI;
class nsIStyleRule;
class nsISupportsArray;
class nsIPresContext;
class nsIContent;
class nsIDocument;
class nsIStyleContext;
class nsIStyleRuleProcessor;
// IID for the nsIStyleSheet interface {8c4a80a0-ad6a-11d1-8031-006008159b5a}
#define NS_ISTYLE_SHEET_IID \
{0x8c4a80a0, 0xad6a, 0x11d1, {0x80, 0x31, 0x00, 0x60, 0x08, 0x15, 0x9b, 0x5a}}
class nsIStyleSheet : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ISTYLE_SHEET_IID; return iid; }
// basic style sheet data
NS_IMETHOD GetURL(nsIURI*& aURL) const = 0;
NS_IMETHOD GetTitle(nsString& aTitle) const = 0;
NS_IMETHOD GetType(nsString& aType) const = 0;
NS_IMETHOD GetMediumCount(PRInt32& aCount) const = 0;
NS_IMETHOD GetMediumAt(PRInt32 aIndex, nsIAtom*& aMedium) const = 0;
NS_IMETHOD UseForMedium(nsIAtom* aMedium) const = 0;
NS_IMETHOD GetEnabled(PRBool& aEnabled) const = 0;
NS_IMETHOD SetEnabled(PRBool aEnabled) = 0;
// style sheet owner info
NS_IMETHOD GetParentSheet(nsIStyleSheet*& aParent) const = 0; // may be null
NS_IMETHOD GetOwningDocument(nsIDocument*& aDocument) const = 0; // may be null
NS_IMETHOD SetOwningDocument(nsIDocument* aDocument) = 0;
// style rule processor access
NS_IMETHOD GetStyleRuleProcessor(nsIStyleRuleProcessor*& aProcessor,
nsIStyleRuleProcessor* aPrevProcessor) = 0;
// XXX style rule enumerations
virtual void List(FILE* out = stdout, PRInt32 aIndent = 0) const = 0;
};
#endif /* nsIStyleSheet_h___ */

View File

@@ -0,0 +1,54 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIStyleSheetLinkingElement_h__
#define nsIStyleSheetLinkingElement_h__
#include "nsISupports.h"
#define NS_ISTYLESHEETLINKINGELEMENT_IID \
{0xa6cf90e9, 0x15b3, 0x11d2, \
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
class nsIStyleSheet;
class nsIStyleSheetLinkingElement : public nsISupports {
public:
/**
* Used to make the association between a style sheet and
* the element that linked it to the document.
*
* @param aStyleSheet the style sheet associated with this
* element.
*/
NS_IMETHOD SetStyleSheet(nsIStyleSheet* aStyleSheet) = 0;
/**
* Used to obtain the style sheet linked in by this element.
*
* @param aStyleSheet out parameter that returns the style
* sheet associated with this element.
*/
NS_IMETHOD GetStyleSheet(nsIStyleSheet*& aStyleSheet) = 0;
};
#endif // nsILinkingElement_h__

View File

@@ -0,0 +1,62 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIStyledContent_h___
#define nsIStyledContent_h___
#include "nsIContent.h"
class nsString;
class nsIStyleRule;
class nsIStyleContext;
class nsISupportsArray;
// IID for the nsIStyledContent class
#define NS_ISTYLEDCONTENT_IID \
{ 0xc1e84e01, 0xcd15, 0x11d2, { 0x96, 0xed, 0x0, 0x10, 0x4b, 0x7b, 0x7d, 0xeb } }
// Abstract interface for all styled content (that supports ID, CLASS, STYLE, and
// the ability to specify style hints on an attribute change).
class nsIStyledContent : public nsIContent {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ISTYLEDCONTENT_IID; return iid; }
NS_IMETHOD GetID(nsIAtom*& aResult) const = 0;
NS_IMETHOD GetClasses(nsVoidArray& aArray) const = 0;
NS_IMETHOD HasClass(nsIAtom* aClass) const = 0;
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules) = 0;
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules) = 0;
/** NRA ***
* Get a hint that tells the style system what to do when
* an attribute on this node changes.
* This only applies to attributes that map their value
* DIRECTLY into style contexts via NON-CSS style rules
* Only HTML currently does this.
* All other attributes return NS_STYLE_HINT_CONTENT
*/
NS_IMETHOD GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const = 0;
};
#endif /* nsIStyledContent_h___ */

View File

@@ -0,0 +1,122 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsITextContent_h___
#define nsITextContent_h___
#include "nslayout.h"
class nsString;
class nsTextFragment;
class nsIContent;
// IID for the nsITextContent interface
#define NS_ITEXT_CONTENT_IID \
{0xa6cf9065, 0x15b3, 0x11d2, {0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
/**
* Interface for textual content. This interface is used to provide
* an efficient access to text content.
*/
class nsITextContent : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_ITEXT_CONTENT_IID; return iid; }
/**
* Get direct access (but read only) to the text in the text content.
*/
NS_IMETHOD GetText(const nsTextFragment** aFragmentsResult) = 0;
/**
* Get the length of the text content.
*/
NS_IMETHOD GetTextLength(PRInt32* aLengthResult) = 0;
/**
* Make a copy of the text content in aResult.
*/
NS_IMETHOD CopyText(nsString& aResult) = 0;
/**
* Set the text to the given value. If aNotify is PR_TRUE then
* the document is notified of the content change.
*/
NS_IMETHOD SetText(const PRUnichar* aBuffer,
PRInt32 aLength,
PRBool aNotify) = 0;
/**
* Set the text to the given value. If aNotify is PR_TRUE then
* the document is notified of the content change.
*/
NS_IMETHOD SetText(const char* aBuffer,
PRInt32 aLength,
PRBool aNotify) = 0;
/**
* Query method to see if the frame is nothing but whitespace
*/
NS_IMETHOD IsOnlyWhitespace(PRBool* aResult) = 0;
};
//----------------------------------------------------------------------
/* a6cf905e-15b3-11d2-932e-00805f8add32 */
#define NS_ITEXT_CONTENT_CHANGE_DATA_IID \
{0xa6cf905e, 0x15b3, 0x11d2, {0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
// Simple interface for encapsulating change data for a ContentChanged
// notification.
class nsITextContentChangeData : public nsISupports {
public:
NS_DEFINE_STATIC_IID_ACCESSOR(NS_ITEXT_CONTENT_CHANGE_DATA_IID);
enum ChangeType {
Insert,
Append,
Replace
};
/**
* Get the type of change associated with the ContentChanged
* notification.
*/
NS_IMETHOD GetChangeType(ChangeType* aResult) = 0;
NS_IMETHOD GetInsertData(PRInt32* aOffset,
PRInt32* aInsertLength) = 0;
NS_IMETHOD GetAppendData(PRInt32* aOffset,
PRInt32* aAppendLength) = 0;
NS_IMETHOD GetReplaceData(PRInt32* aOffset,
PRInt32* aSourceLength,
PRInt32* aReplaceLength) = 0;
};
// XXX These belong elsewhere
extern nsresult
NS_NewTextNode(nsIContent** aResult);
extern nsresult
NS_NewCommentNode(nsIContent** aResult);
#endif /* nsITextContent_h___ */

View File

@@ -0,0 +1,241 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsTextFragment_h___
#define nsTextFragment_h___
#include "nslayout.h"
class nsString;
// XXX should this normalize the code to keep a \u0000 at the end?
// XXX nsTextFragmentPool?
// XXX these need I18N spankage
#define XP_IS_SPACE(_ch) \
(((_ch) == ' ') || ((_ch) == '\t') || ((_ch) == '\n'))
#define XP_IS_UPPERCASE(_ch) \
(((_ch) >= 'A') && ((_ch) <= 'Z'))
#define XP_IS_LOWERCASE(_ch) \
(((_ch) >= 'a') && ((_ch) <= 'z'))
#define XP_TO_LOWER(_ch) ((_ch) | 32)
#define XP_TO_UPPER(_ch) ((_ch) & ~32)
#define XP_IS_SPACE_W XP_IS_SPACE
/**
* A fragment of text. If mIs2b is 1 then the m2b pointer is valid
* otherwise the m1b pointer is valid. If m1b is used then each byte
* of data represents a single ucs2 character with the high byte being
* zero.
*
* This class does not have a virtual destructor therefore it is not
* meant to be subclassed.
*/
class NS_LAYOUT nsTextFragment {
public:
/**
* Default constructor. Initialize the fragment to be empty.
*/
nsTextFragment() {
m1b = nsnull;
mAllBits = 0;
}
~nsTextFragment();
/**
* Initialize the contents of this fragment to be a copy of
* the argument fragment.
*/
nsTextFragment(const nsTextFragment& aOther);
/**
* Initialize the contents of this fragment to be a copy of
* the argument 7bit ascii string.
*/
nsTextFragment(const char* aString);
/**
* Initialize the contents of this fragment to be a copy of
* the argument ucs2 string.
*/
nsTextFragment(const PRUnichar* aString);
/**
* Initialize the contents of this fragment to be a copy of
* the argument string.
*/
nsTextFragment(const nsString& aString);
/**
* Change the contents of this fragment to be a copy of the
* the argument fragment.
*/
nsTextFragment& operator=(const nsTextFragment& aOther);
/**
* Change the contents of this fragment to be a copy of the
* the argument 7bit ascii string.
*/
nsTextFragment& operator=(const char* aString);
/**
* Change the contents of this fragment to be a copy of the
* the argument ucs2 string.
*/
nsTextFragment& operator=(const PRUnichar* aString);
/**
* Change the contents of this fragment to be a copy of the
* the argument string.
*/
nsTextFragment& operator=(const nsString& aString);
/**
* Return PR_TRUE if this fragment is represented by PRUnichar data
*/
PRBool Is2b() const {
return mState.mIs2b;
}
/**
* Get a pointer to constant PRUnichar data.
*/
const PRUnichar* Get2b() const {
NS_ASSERTION(Is2b(), "not 2b text");
return m2b;
}
/**
* Get a pointer to constant char data.
*/
const char* Get1b() const {
NS_ASSERTION(!Is2b(), "not 1b text");
return (const char*) m1b;
}
/**
* Get the length of the fragment. The length is the number of logical
* characters, not the number of bytes to store the characters.
*/
PRInt32 GetLength() const {
return PRInt32(mState.mLength);
}
/**
* Mutable version of Get2b. Only works for a non-const object.
* Returns a pointer to the PRUnichar data.
*/
PRUnichar* Get2b() {
NS_ASSERTION(Is2b(), "not 2b text");
return m2b;
}
/**
* Mutable version of Get1b. Only works for a non-const object.
* Returns a pointer to the char data.
*/
char* Get1b() {
NS_ASSERTION(!Is2b(), "not 1b text");
return (char*) m1b;
}
/**
* Change the contents of this fragment to be the given buffer and
* length. The memory becomes owned by the fragment. In addition,
* the memory for aBuffer must have been allocated using the "new[]"
* because it will be released with "delete []".
*/
void SetTo(PRUnichar* aBuffer, PRInt32 aLength, PRBool aRelease);
/**
* Change the contents of this fragment to be a copy of the given
* buffer. Like operator= except a length is specified instead of
* assuming 0 termination.
*/
void SetTo(const PRUnichar* aBuffer, PRInt32 aLength);
/**
* Change the contents of this fragment to be a copy of the given
* buffer. Like operator= except a length is specified instead of
* assuming 0 termination.
*/
void SetTo(const char* aBuffer, PRInt32 aLength);
/**
* Append the contents of this string fragment to aString
*/
void AppendTo(nsString& aString) const;
/**
* Make a copy of the fragments contents starting at offset for
* count characters. The offset and count will be adjusted to
* lie within the fragments data. The fragments data is converted if
* necessary.
*/
void CopyTo(PRUnichar* aDest, PRInt32 aOffset, PRInt32 aCount);
/**
* Make a copy of the fragments contents starting at offset for
* count characters. The offset and count will be adjusted to
* lie within the fragments data. The fragments data is converted if
* necessary.
*/
void CopyTo(char* aDest, PRInt32 aOffset, PRInt32 aCount);
/**
* Return the character in the text-fragment at the given
* index. This always returns a PRUnichar.
*/
PRUnichar CharAt(PRInt32 aIndex) const {
NS_ASSERTION(PRUint32(aIndex) < mState.mLength, "bad index");
return mState.mIs2b ? m2b[aIndex] : PRUnichar(m1b[aIndex]);
}
protected:
union {
PRUnichar* m2b;
unsigned char* m1b;
};
public:
struct FragmentBits {
PRUint32 mInHeap : 1;
PRUint32 mIs2b : 1;
PRUint32 mLength : 30;
};
protected:
union {
PRUint32 mAllBits;
FragmentBits mState;
};
void ReleaseText();
};
#endif /* nsTextFragment_h___ */

View File

@@ -0,0 +1,505 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMComment.h"
#include "nsGenericDOMDataNode.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIContent.h"
#include "nsFrame.h"
#include "nsLayoutAtoms.h"
#include "nsIDOMSelection.h"
#include "nsXIFConverter.h"
#include "nsIDocument.h"
#include "nsIEnumerator.h"
#include "nsCOMPtr.h"
#include "nsIDOMRange.h"
static NS_DEFINE_IID(kIDOMCommentIID, NS_IDOMCOMMENT_IID);
static NS_DEFINE_IID(kIEnumeratorIID, NS_IENUMERATOR_IID);
static NS_DEFINE_IID(kITextContentIID, NS_ITEXT_CONTENT_IID);
class nsCommentNode : public nsIDOMComment,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIContent,
public nsITextContent
{
public:
nsCommentNode();
virtual ~nsCommentNode();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC_DOM_DATA(mInner)
// nsIDOMCharacterData
NS_IMPL_IDOMCHARACTERDATA_USING_GENERIC_DOM_DATA(mInner)
// nsIDOMComment
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC_DOM_DATA(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC_DOM_DATA(mInner)
// nsIContent
//NS_IMPL_ICONTENT_USING_GENERIC_DOM_DATA(mInner)
NS_IMETHOD GetDocument(nsIDocument*& aResult) const {
return mInner.GetDocument(aResult);
}
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep) {
return mInner.SetDocument(aDocument, aDeep);
}
NS_IMETHOD GetParent(nsIContent*& aResult) const {
return mInner.GetParent(aResult);
}
NS_IMETHOD SetParent(nsIContent* aParent) {
return mInner.SetParent(aParent);
}
NS_IMETHOD CanContainChildren(PRBool& aResult) const {
return mInner.CanContainChildren(aResult);
}
NS_IMETHOD ChildCount(PRInt32& aResult) const {
return mInner.ChildCount(aResult);
}
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const {
return mInner.ChildAt(aIndex, aResult);
}
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const {
return mInner.IndexOf(aPossibleChild, aResult);
}
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex,
PRBool aNotify) {
return mInner.InsertChildAt(aKid, aIndex, aNotify);
}
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex,
PRBool aNotify) {
return mInner.ReplaceChildAt(aKid, aIndex, aNotify);
}
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) {
return mInner.AppendChildTo(aKid, aNotify);
}
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) {
return mInner.RemoveChildAt(aIndex, aNotify);
}
NS_IMETHOD IsSynthetic(PRBool& aResult) {
return mInner.IsSynthetic(aResult);
}
NS_IMETHOD GetNameSpaceID(PRInt32& aID) const {
return mInner.GetNameSpaceID(aID);
}
NS_IMETHOD GetTag(nsIAtom*& aResult) const;
NS_IMETHOD ParseAttributeString(const nsString& aStr,
nsIAtom*& aName,
PRInt32& aNameSpaceID) {
return mInner.ParseAttributeString(aStr, aName, aNameSpaceID);
}
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID,
nsIAtom*& aPrefix) {
return mInner.GetNameSpacePrefixFromId(aNameSpaceID, aPrefix);
}
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom *aAttribute,
nsString &aResult) const {
return mInner.GetAttribute(aNameSpaceID, aAttribute, aResult);
}
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
const nsString& aValue, PRBool aNotify) {
return mInner.SetAttribute(aNameSpaceID, aAttribute, aValue, aNotify);
}
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
PRBool aNotify) {
return mInner.UnsetAttribute(aNameSpaceID, aAttribute, aNotify);
}
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex,
PRInt32& aNameSpaceID,
nsIAtom*& aName) const {
return mInner.GetAttributeNameAt(aIndex, aNameSpaceID, aName);
}
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const {
return mInner.GetAttributeCount(aResult);
}
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const;
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const {
return mInner.BeginConvertToXIF(aConverter);
}
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const;
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const {
return mInner.FinishConvertToXIF(aConverter);
}
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus);
NS_IMETHOD GetContentID(PRUint32* aID) {
*aID = mContentID;
return NS_OK;
}
NS_IMETHOD SetContentID(PRUint32 aID) {
mContentID = aID;
return NS_OK;
}
NS_IMETHOD RangeAdd(nsIDOMRange& aRange){
return mInner.RangeAdd(aRange);
}
NS_IMETHOD RangeRemove(nsIDOMRange& aRange){
return mInner.RangeRemove(aRange);
}
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const {
return mInner.GetRangeList(aResult);
}
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const {
if (!aResult) {
return NS_ERROR_NULL_POINTER;
}
#ifdef DEBUG
*aResult = sizeof(*this);
#else
*aResult = 0;
#endif
return NS_OK;
}
NS_IMETHOD GetText(const nsTextFragment** aFragmentsResult)
{ return mInner.GetText(aFragmentsResult); }
NS_IMETHOD GetTextLength(PRInt32* aLengthResult) {
return mInner.GetTextLength(aLengthResult);
}
NS_IMETHOD CopyText(nsString& aResult) {
return mInner.CopyText(aResult);
}
NS_IMETHOD SetText(const PRUnichar* aBuffer,
PRInt32 aLength,
PRBool aNotify);
NS_IMETHOD SetText(const char* aBuffer,
PRInt32 aLength,
PRBool aNotify);
NS_IMETHOD IsOnlyWhitespace(PRBool* aResult)
{ return mInner.IsOnlyWhitespace(aResult); }
protected:
nsGenericDOMDataNode mInner;
PRUint32 mContentID;
};
nsresult
NS_NewCommentNode(nsIContent** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIContent* it = new nsCommentNode();
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIContentIID, (void **) aInstancePtrResult);
}
nsCommentNode::nsCommentNode()
{
NS_INIT_REFCNT();
mInner.Init(this);
mContentID = 0;
}
nsCommentNode::~nsCommentNode()
{
}
NS_IMPL_ADDREF(nsCommentNode)
NS_IMPL_RELEASE(nsCommentNode)
NS_IMETHODIMP
nsCommentNode::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_DOM_DATA_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMCommentIID)) {
nsIDOMComment* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kITextContentIID)) {
nsITextContent* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMETHODIMP
nsCommentNode::GetTag(nsIAtom*& aResult) const
{
aResult = nsLayoutAtoms::commentTagName;
NS_ADDREF(aResult);
return NS_OK;
}
NS_IMETHODIMP
nsCommentNode::GetNodeName(nsString& aNodeName)
{
aNodeName.SetString("#comment");
return NS_OK;
}
NS_IMETHODIMP
nsCommentNode::GetNodeType(PRUint16* aNodeType)
{
*aNodeType = (PRUint16)nsIDOMNode::COMMENT_NODE;
return NS_OK;
}
NS_IMETHODIMP
nsCommentNode::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsresult result = NS_OK;
nsCommentNode* it = new nsCommentNode();
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
// XXX Increment the ref count before calling any
// methods. If they do a QI and then a Release()
// the instance will be deleted.
result = it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
if (NS_FAILED(result)) {
return result;
}
nsAutoString data;
result = GetData(data);
if (NS_FAILED(result)) {
NS_RELEASE(*aReturn);
return result;
}
result = it->SetData(data);
if (NS_FAILED(result)) {
NS_RELEASE(*aReturn);
return result;
}
return result;
}
NS_IMETHODIMP
nsCommentNode::List(FILE* out, PRInt32 aIndent) const
{
NS_PRECONDITION(nsnull != mInner.mDocument, "bad content");
PRInt32 indx;
for (indx = aIndent; --indx >= 0; ) fputs(" ", out);
fprintf(out, "Comment@%p refcount=%d<!--", this, mRefCnt);
nsAutoString tmp;
mInner.ToCString(tmp, 0, mInner.mText.GetLength());
fputs(tmp, out);
fputs("-->\n", out);
return NS_OK;
}
NS_IMETHODIMP
nsCommentNode::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
nsresult NS_NewCommentFrame(nsIPresShell* aPresShell, nsIFrame*& aResult);
nsresult
NS_NewCommentFrame(nsIPresShell* aPresShell, nsIFrame*& aResult)
{
nsIFrame* frame;
NS_NewEmptyFrame(aPresShell, &frame);
if (nsnull == frame) {
return NS_ERROR_OUT_OF_MEMORY;
}
aResult = frame;
return NS_OK;
}
/**
* Translate the content object into the (XIF) XML Interchange Format
* XIF is an intermediate form of the content model, the buffer
* will then be parsed into any number of formats including HTML, TXT, etc.
*/
nsresult
nsCommentNode::ConvertContentToXIF(nsXIFConverter& aConverter) const
{
const nsIContent* content = this;
nsIDOMSelection* sel = aConverter.GetSelection();
nsIDocument* document;
nsresult res;
res = GetDocument(document);
if (!NS_SUCCEEDED(res))
return res;
const nsTextFragment* textFrag;
// XXX This method is const, but GetText() isn't,
// XXX so cast away the constness of mInner:
nsGenericDOMDataNode* inner = (nsGenericDOMDataNode*)&mInner;
res = inner->GetText(&textFrag);
if (!NS_SUCCEEDED(res))
return res;
if (sel != nsnull && document->IsInSelection(sel,content))
{
nsIEnumerator *enumerator;
if (NS_SUCCEEDED(sel->QueryInterface(kIEnumeratorIID, (void **)&enumerator))) {
for (enumerator->First();NS_OK != enumerator->IsDone(); enumerator->Next()) {
nsIDOMRange* range = nsnull;
if (NS_SUCCEEDED(enumerator->CurrentItem((nsISupports**)&range))) {
nsCOMPtr<nsIDOMNode> startNode;
nsCOMPtr<nsIDOMNode> endNode;
PRInt32 startOffset = 0;
PRInt32 endOffset = 0;
range->GetStartParent(getter_AddRefs(startNode));
range->GetEndParent(getter_AddRefs(endNode));
range->GetStartOffset(&startOffset);
range->GetEndOffset(&endOffset);
nsCOMPtr<nsIContent> startContent;
nsCOMPtr<nsIContent> endContent;
startContent = do_QueryInterface(startNode);
endContent = do_QueryInterface(endNode);
nsString buffer;
textFrag->AppendTo(buffer);
if (startContent.get() == content || endContent.get() == content)
{
// NOTE: ORDER MATTERS!
// This must go before the Cut
if (endContent.get() == content)
buffer.Truncate(endOffset);
// This must go after the Trunctate
if (startContent.get() == content)
buffer.Cut(0,startOffset);
}
aConverter.AddContentComment(buffer);
}
}
}
}
else
{
nsString buffer;
textFrag->AppendTo(buffer);
aConverter.AddContentComment(buffer);
}
NS_IF_RELEASE(document);
// XXX Possible mem leak: Do we need to delete textFrag?
return NS_OK;
}
#if 0
nsresult
nsCommentNode::BeginConvertToXIF(nsXIFConverter& aConverter) const
{
return NS_OK;
}
nsresult
nsCommentNode::FinishConvertToXIF(nsXIFConverter& aConverter) const
{
return NS_OK;
}
#endif
// This would ideally be done by the parser, but for the sake
// of "genericity" it's being done in the comment content code
static void
StripCommentDelimiters(nsString& aCommentString)
{
PRInt32 offset;
static char* kCommentStart = "<!";
static char* kCommentEnd = "->";
static char* kCommentAlternateEnd = "--!>";
static char kMinus = '-';
offset = aCommentString.Find(kCommentStart);
if (-1 != offset) {
// Take up to 2 '-' characters
offset += strlen(kCommentStart);
if (kMinus == aCommentString.CharAt(offset)) {
offset++;
if (kMinus == aCommentString.CharAt(offset)) {
offset++;
}
}
aCommentString.Cut(0, offset);
}
offset = aCommentString.RFind(kCommentEnd);
if (-1 != offset) {
// Take up to 1 more '-'
if (kMinus == aCommentString.CharAt(offset-1)) {
offset--;
}
aCommentString.Cut(offset, aCommentString.Length()-offset);
}
else {
offset = aCommentString.RFind(kCommentAlternateEnd);
if (-1 != offset) {
aCommentString.Cut(offset, aCommentString.Length()-offset);
}
}
}
NS_IMETHODIMP
nsCommentNode::SetText(const PRUnichar* aBuffer,
PRInt32 aLength,
PRBool aNotify)
{
nsAutoString str(aBuffer);
StripCommentDelimiters(str);
return mInner.SetText(str.GetUnicode(), str.Length(), aNotify);
}
NS_IMETHODIMP
nsCommentNode::SetText(const char* aBuffer,
PRInt32 aLength,
PRBool aNotify)
{
nsAutoString str(aBuffer);
StripCommentDelimiters(str);
return mInner.SetText(str.GetUnicode(), str.Length(), aNotify);
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,545 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsContentList.h"
#include "nsIContent.h"
#include "nsIDOMNode.h"
#include "nsIScriptGlobalObject.h"
#include "nsIDocument.h"
#include "nsINameSpaceManager.h"
#include "nsIDOMScriptObjectFactory.h"
#include "nsGenericElement.h"
#include "nsLayoutAtoms.h"
#include "nsHTMLAtoms.h" // XXX until atoms get factored into nsLayoutAtoms
nsIAtom* nsContentList::gWildCardAtom = nsnull;
nsContentList::nsContentList(nsIDocument *aDocument)
{
NS_INIT_REFCNT();
mScriptObject = nsnull;
mFunc = nsnull;
mMatchAtom = nsnull;
mDocument = aDocument;
mData = nsnull;
mMatchAll = PR_FALSE;
}
nsContentList::nsContentList(nsIDocument *aDocument,
nsIAtom* aMatchAtom,
PRInt32 aMatchNameSpaceId,
nsIContent* aRootContent)
{
mMatchAtom = aMatchAtom;
NS_IF_ADDREF(mMatchAtom);
if (nsnull == gWildCardAtom) {
gWildCardAtom = NS_NewAtom("*");
}
if (gWildCardAtom == mMatchAtom) {
mMatchAll = PR_TRUE;
}
else {
mMatchAll = PR_FALSE;
}
mMatchNameSpaceId = aMatchNameSpaceId;
mFunc = nsnull;
mData = nsnull;
mRootContent = aRootContent;
Init(aDocument);
}
nsContentList::nsContentList(nsIDocument *aDocument,
nsContentListMatchFunc aFunc,
const nsString* aData,
nsIContent* aRootContent)
{
mFunc = aFunc;
if (nsnull != aData) {
mData = new nsString(*aData);
// If this fails, fail silently
}
else {
mData = nsnull;
}
mMatchAtom = nsnull;
mRootContent = aRootContent;
mMatchAll = PR_FALSE;
Init(aDocument);
}
void nsContentList::Init(nsIDocument *aDocument)
{
NS_INIT_REFCNT();
mScriptObject = nsnull;
// We don't reference count the reference to the document
// If the document goes away first, we'll be informed and we
// can drop our reference.
// If we go away first, we'll get rid of ourselves from the
// document's observer list.
mDocument = aDocument;
if (nsnull != mDocument) {
mDocument->AddObserver(this);
}
PopulateSelf();
}
nsContentList::~nsContentList()
{
if (nsnull != mDocument) {
mDocument->RemoveObserver(this);
}
NS_IF_RELEASE(mMatchAtom);
if (nsnull != mData) {
delete mData;
}
}
static NS_DEFINE_IID(kIDOMNodeListIID, NS_IDOMNODELIST_IID);
static NS_DEFINE_IID(kIDOMHTMLCollectionIID, NS_IDOMHTMLCOLLECTION_IID);
nsresult nsContentList::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (nsnull == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIDOMNodeListIID)) {
*aInstancePtr = (void*)(nsIDOMNodeList*)this;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIDOMHTMLCollectionIID)) {
*aInstancePtr = (void*)(nsIDOMHTMLCollection*)this;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIScriptObjectOwnerIID)) {
*aInstancePtr = (void*)(nsIScriptObjectOwner*)this;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kISupportsIID)) {
*aInstancePtr = (void*)(nsISupports*)(nsIDOMNodeList*)this;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ADDREF(nsContentList)
NS_IMPL_RELEASE(nsContentList)
NS_IMETHODIMP
nsContentList::GetLength(PRUint32* aLength)
{
nsresult result = CheckDocumentExistence();
if (NS_OK == result) {
*aLength = mContent.Count();
}
return result;
}
NS_IMETHODIMP
nsContentList::Item(PRUint32 aIndex, nsIDOMNode** aReturn)
{
nsresult result = CheckDocumentExistence();
if (NS_OK == result) {
nsISupports *element = (nsISupports *)mContent.ElementAt(aIndex);
if (nsnull != element) {
result = element->QueryInterface(kIDOMNodeIID, (void **)aReturn);
}
else {
*aReturn = nsnull;
}
}
return result;
}
NS_IMETHODIMP
nsContentList::NamedItem(const nsString& aName, nsIDOMNode** aReturn)
{
nsresult result = CheckDocumentExistence();
if (NS_OK == result) {
PRInt32 i, count = mContent.Count();
for (i = 0; i < count; i++) {
nsIContent *content = (nsIContent *)mContent.ElementAt(i);
if (nsnull != content) {
nsAutoString name;
// XXX Should it be an EqualsIgnoreCase?
if (((content->GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::name, name) == NS_CONTENT_ATTR_HAS_VALUE) &&
(aName.Equals(name))) ||
((content->GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::id, name) == NS_CONTENT_ATTR_HAS_VALUE) &&
(aName.Equals(name)))) {
return content->QueryInterface(kIDOMNodeIID, (void **)aReturn);
}
}
}
}
*aReturn = nsnull;
return result;
}
NS_IMETHODIMP
nsContentList::GetScriptObject(nsIScriptContext *aContext, void** aScriptObject)
{
nsresult res = NS_OK;
nsIScriptGlobalObject *global = aContext->GetGlobalObject();
if (nsnull == mScriptObject) {
nsIDOMScriptObjectFactory *factory;
res = nsGenericElement::GetScriptObjectFactory(&factory);
if (NS_OK != res) {
return res;
}
res = factory->NewScriptHTMLCollection(aContext,
(nsISupports*)(nsIDOMHTMLCollection*)this,
global,
(void**)&mScriptObject);
NS_RELEASE(factory);
}
*aScriptObject = mScriptObject;
NS_RELEASE(global);
return res;
}
NS_IMETHODIMP
nsContentList::SetScriptObject(void *aScriptObject)
{
mScriptObject = aScriptObject;
return NS_OK;
}
NS_IMETHODIMP
nsContentList::ContentAppended(nsIDocument *aDocument,
nsIContent* aContainer,
PRInt32 aNewIndexInContainer)
{
PRInt32 i, count;
aContainer->ChildCount(count);
if ((count > 0) && IsDescendantOfRoot(aContainer)) {
PRBool repopulate = PR_FALSE;
for (i = aNewIndexInContainer; i <= count-1; i++) {
nsIContent *content;
aContainer->ChildAt(i, content);
if (mMatchAll || MatchSelf(content)) {
repopulate = PR_TRUE;
}
NS_RELEASE(content);
}
if (repopulate) {
PopulateSelf();
}
}
return NS_OK;
}
NS_IMETHODIMP
nsContentList::ContentInserted(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer)
{
if (IsDescendantOfRoot(aContainer)) {
if (mMatchAll || MatchSelf(aChild)) {
PopulateSelf();
}
}
return NS_OK;
}
NS_IMETHODIMP
nsContentList::ContentReplaced(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aOldChild,
nsIContent* aNewChild,
PRInt32 aIndexInContainer)
{
if (IsDescendantOfRoot(aContainer)) {
if (mMatchAll || MatchSelf(aOldChild) || MatchSelf(aNewChild)) {
PopulateSelf();
}
}
else if (ContainsRoot(aOldChild)) {
DisconnectFromDocument();
}
return NS_OK;
}
NS_IMETHODIMP
nsContentList::ContentRemoved(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer)
{
if (IsDescendantOfRoot(aContainer) && MatchSelf(aChild)) {
PopulateSelf();
}
else if (ContainsRoot(aChild)) {
DisconnectFromDocument();
}
return NS_OK;
}
NS_IMETHODIMP
nsContentList::DocumentWillBeDestroyed(nsIDocument *aDocument)
{
if (nsnull != mDocument) {
aDocument->RemoveObserver(this);
mDocument = nsnull;
}
Reset();
return NS_OK;
}
// Returns whether the content element matches the
// criterion
nsresult
nsContentList::Match(nsIContent *aContent, PRBool *aMatch)
{
if (nsnull != mMatchAtom) {
nsIAtom *name = nsnull;
aContent->GetTag(name);
// If we have to match all, only do those that have
// a tagName i.e. only the elements.
if (mMatchAll && (nsLayoutAtoms::textTagName != name) &&
(nsLayoutAtoms::commentTagName != name) &&
(nsLayoutAtoms::processingInstructionTagName != name)) {
*aMatch = PR_TRUE;
}
// XXX We don't yet match on namespace. Maybe we should??
else if (name == mMatchAtom) {
*aMatch = PR_TRUE;
}
else {
*aMatch = PR_FALSE;
}
NS_IF_RELEASE(name);
}
else if (nsnull != mFunc) {
*aMatch = (*mFunc)(aContent, mData);
}
else {
*aMatch = PR_FALSE;
}
return NS_OK;
}
nsresult
nsContentList::Add(nsIContent *aContent)
{
// Shouldn't hold a reference since we'll be
// told when the content leaves the document or
// the document will be destroyed.
mContent.AppendElement(aContent);
return NS_OK;
}
nsresult
nsContentList::Remove(nsIContent *aContent)
{
mContent.RemoveElement(aContent);
return NS_OK;
}
nsresult
nsContentList::Reset()
{
mContent.Clear();
return NS_OK;
}
// If we were created outside the context of a document and we
// have root content, then check if our content has been added
// to a document yet. If so, we'll become an observer of the document.
nsresult
nsContentList::CheckDocumentExistence()
{
nsresult result = NS_OK;
if ((nsnull == mDocument) && (nsnull != mRootContent)) {
result = mRootContent->GetDocument(mDocument);
if (nsnull != mDocument) {
mDocument->AddObserver(this);
PopulateSelf();
}
}
return result;
}
// Match recursively. See if anything in the subtree
// matches the criterion.
PRBool
nsContentList::MatchSelf(nsIContent *aContent)
{
PRBool match;
PRInt32 i, count;
Match(aContent, &match);
if (match) {
return PR_TRUE;
}
aContent->ChildCount(count);
for (i = 0; i < count; i++) {
nsIContent *child;
aContent->ChildAt(i, child);
if (MatchSelf(child)) {
NS_RELEASE(child);
return PR_TRUE;
}
NS_RELEASE(child);
}
return PR_FALSE;
}
// Add all elements in this subtree that match to
// our list.
void
nsContentList::PopulateWith(nsIContent *aContent, PRBool aIncludeRoot)
{
PRBool match;
PRInt32 i, count;
if (aIncludeRoot) {
Match(aContent, &match);
if (match) {
Add(aContent);
}
}
aContent->ChildCount(count);
for (i = 0; i < count; i++) {
nsIContent *child;
aContent->ChildAt(i, child);
PopulateWith(child, PR_TRUE);
NS_RELEASE(child);
}
}
// Clear out our old list and build up a new one
void
nsContentList::PopulateSelf()
{
Reset();
if (nsnull != mRootContent) {
PopulateWith(mRootContent, PR_FALSE);
}
else if (nsnull != mDocument) {
nsIContent *root;
root = mDocument->GetRootContent();
PopulateWith(root, PR_TRUE);
NS_RELEASE(root);
}
}
// Is the specified element a descendant of the root? If there
// is no root, then yes. Otherwise keep tracing up the tree from
// the element till we find our root, or until we reach the
// document root.
PRBool
nsContentList::IsDescendantOfRoot(nsIContent* aContainer)
{
if (nsnull == mRootContent) {
return PR_TRUE;
}
else if (mRootContent == aContainer) {
return PR_TRUE;
}
else if (nsnull == aContainer) {
return PR_FALSE;
}
else {
nsIContent* parent;
PRBool ret;
aContainer->GetParent(parent);
ret = IsDescendantOfRoot(parent);
NS_IF_RELEASE(parent);
return ret;
}
}
// Does this subtree contain the root?
PRBool
nsContentList::ContainsRoot(nsIContent* aContent)
{
if (nsnull == mRootContent) {
return PR_FALSE;
}
else if (mRootContent == aContent) {
return PR_TRUE;
}
else {
PRInt32 i, count;
aContent->ChildCount(count);
for (i = 0; i < count; i++) {
nsIContent *child;
aContent->ChildAt(i, child);
if (ContainsRoot(child)) {
NS_RELEASE(child);
return PR_TRUE;
}
NS_RELEASE(child);
}
return PR_FALSE;
}
}
// Our root content has been disconnected from the
// document, so stop observing. The list then becomes
// a snapshot rather than a dynamic list.
void
nsContentList::DisconnectFromDocument()
{
if (nsnull != mDocument) {
mDocument->RemoveObserver(this);
mDocument = nsnull;
}
}

View File

@@ -0,0 +1,149 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsContentList_h___
#define nsContentList_h___
#include "nsISupports.h"
#include "nsVoidArray.h"
#include "nsString.h"
#include "nsIDOMHTMLCollection.h"
#include "nsIDOMNodeList.h"
#include "nsIDocumentObserver.h"
#include "nsIScriptObjectOwner.h"
typedef PRBool (*nsContentListMatchFunc)(nsIContent* aContent, nsString* aData);
class nsIDocument;
class nsContentList : public nsIDOMNodeList,
public nsIDOMHTMLCollection,
public nsIScriptObjectOwner,
public nsIDocumentObserver {
protected:
nsContentList(nsIDocument *aDocument);
public:
nsContentList(nsIDocument *aDocument,
nsIAtom* aMatchAtom,
PRInt32 aMatchNameSpaceId,
nsIContent* aRootContent=nsnull);
nsContentList(nsIDocument *aDocument,
nsContentListMatchFunc aFunc,
const nsString* aData,
nsIContent* aRootContent=nsnull);
virtual ~nsContentList();
NS_DECL_ISUPPORTS
// nsIDOMHTMLCollection
NS_IMETHOD GetLength(PRUint32* aLength);
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn);
NS_IMETHOD NamedItem(const nsString& aName, nsIDOMNode** aReturn);
// nsIScriptObjectOwner
NS_IMETHOD GetScriptObject(nsIScriptContext *aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// nsIDocumentObserver
NS_IMETHOD BeginUpdate(nsIDocument *aDocument) { return NS_OK; }
NS_IMETHOD EndUpdate(nsIDocument *aDocument) { return NS_OK; }
NS_IMETHOD BeginLoad(nsIDocument *aDocument) { return NS_OK; }
NS_IMETHOD EndLoad(nsIDocument *aDocument) { return NS_OK; }
NS_IMETHOD BeginReflow(nsIDocument *aDocument,
nsIPresShell* aShell) { return NS_OK; }
NS_IMETHOD EndReflow(nsIDocument *aDocument,
nsIPresShell* aShell) { return NS_OK; }
NS_IMETHOD ContentChanged(nsIDocument *aDocument,
nsIContent* aContent,
nsISupports* aSubContent) { return NS_OK; }
NS_IMETHOD ContentStatesChanged(nsIDocument* aDocument,
nsIContent* aContent1,
nsIContent* aContent2) { return NS_OK; }
NS_IMETHOD AttributeChanged(nsIDocument *aDocument,
nsIContent* aContent,
PRInt32 aNameSpaceID,
nsIAtom* aAttribute,
PRInt32 aHint) { return NS_OK; }
NS_IMETHOD ContentAppended(nsIDocument *aDocument,
nsIContent* aContainer,
PRInt32 aNewIndexInContainer);
NS_IMETHOD ContentInserted(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer);
NS_IMETHOD ContentReplaced(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aOldChild,
nsIContent* aNewChild,
PRInt32 aIndexInContainer);
NS_IMETHOD ContentRemoved(nsIDocument *aDocument,
nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer);
NS_IMETHOD StyleSheetAdded(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet) { return NS_OK; }
NS_IMETHOD StyleSheetRemoved(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet) { return NS_OK; }
NS_IMETHOD StyleSheetDisabledStateChanged(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
PRBool aDisabled) { return NS_OK; }
NS_IMETHOD StyleRuleChanged(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule,
PRInt32 aHint) { return NS_OK; }
NS_IMETHOD StyleRuleAdded(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule) { return NS_OK; }
NS_IMETHOD StyleRuleRemoved(nsIDocument *aDocument,
nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule) { return NS_OK; }
NS_IMETHOD DocumentWillBeDestroyed(nsIDocument *aDocument);
protected:
nsresult Match(nsIContent *aContent, PRBool *aMatch);
nsresult Add(nsIContent *aContent);
nsresult Remove(nsIContent *aContent);
nsresult Reset();
void Init(nsIDocument *aDocument);
void PopulateWith(nsIContent *aContent, PRBool aIncludeRoot);
PRBool MatchSelf(nsIContent *aContent);
void PopulateSelf();
void DisconnectFromDocument();
PRBool IsDescendantOfRoot(nsIContent* aContainer);
PRBool ContainsRoot(nsIContent* aContent);
nsresult CheckDocumentExistence();
static nsIAtom* gWildCardAtom;
nsIAtom* mMatchAtom;
PRInt32 mMatchNameSpaceId;
nsContentListMatchFunc mFunc;
nsString* mData;
nsVoidArray mContent;
void *mScriptObject;
nsIDocument* mDocument;
nsIContent* mRootContent;
PRBool mMatchAll;
};
#endif // nsContentList_h___

View File

@@ -0,0 +1,480 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsDOMAttribute.h"
#include "nsGenericElement.h"
#include "nsIContent.h"
#include "nsIDOMScriptObjectFactory.h"
#include "nsITextContent.h"
#include "nsINameSpaceManager.h"
static NS_DEFINE_IID(kIDOMAttrIID, NS_IDOMATTR_IID);
static NS_DEFINE_IID(kIDOMAttributePrivateIID, NS_IDOMATTRIBUTEPRIVATE_IID);
static NS_DEFINE_IID(kIDOMTextIID, NS_IDOMTEXT_IID);
static NS_DEFINE_IID(kIDOMNodeListIID, NS_IDOMNODELIST_IID);
//----------------------------------------------------------------------
nsDOMAttribute::nsDOMAttribute(nsIContent* aContent,
const nsString& aName,
const nsString& aValue)
: mName(aName), mValue(aValue)
{
NS_INIT_REFCNT();
// We don't add a reference to our content. It will tell us
// to drop our reference when it goes away.
mContent = aContent;
mScriptObject = nsnull;
mChild = nsnull;
mChildList = nsnull;
}
nsDOMAttribute::~nsDOMAttribute()
{
NS_IF_RELEASE(mChild);
NS_IF_RELEASE(mChildList);
}
nsresult
nsDOMAttribute::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (NULL == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIDOMAttrIID)) {
nsIDOMAttr* tmp = this;
*aInstancePtr = (void*)tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIScriptObjectOwnerIID)) {
nsIScriptObjectOwner* tmp = this;
*aInstancePtr = (void*)tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIDOMAttributePrivateIID)) {
nsIDOMAttributePrivate* tmp = this;
*aInstancePtr = (void*)tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIDOMNodeIID)) {
nsIDOMNode* tmp = this;
*aInstancePtr = (void*)tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kISupportsIID)) {
nsIDOMAttr* tmp1 = this;
nsISupports* tmp2 = tmp1;
*aInstancePtr = (void*)tmp2;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ADDREF(nsDOMAttribute)
NS_IMPL_RELEASE(nsDOMAttribute)
NS_IMETHODIMP
nsDOMAttribute::DropReference()
{
mContent = nsnull;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::SetContent(nsIContent* aContent)
{
mContent = aContent;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::GetContent(nsIContent** aContent)
{
*aContent = mContent;
NS_IF_ADDREF(mContent);
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::SetName(const nsString& aName)
{
mName=aName;
return NS_OK;
}
nsresult
nsDOMAttribute::GetScriptObject(nsIScriptContext *aContext,
void** aScriptObject)
{
nsresult res = NS_OK;
if (nsnull == mScriptObject) {
nsIDOMScriptObjectFactory *factory;
res = nsGenericElement::GetScriptObjectFactory(&factory);
if (NS_OK != res) {
return res;
}
res = factory->NewScriptAttr(aContext,
(nsISupports *)(nsIDOMAttr *)this,
(nsISupports *)mContent,
(void **)&mScriptObject);
NS_RELEASE(factory);
}
*aScriptObject = mScriptObject;
return res;
}
nsresult
nsDOMAttribute::SetScriptObject(void *aScriptObject)
{
mScriptObject = aScriptObject;
return NS_OK;
}
nsresult
nsDOMAttribute::GetName(nsString& aName)
{
aName=mName;
return NS_OK;
}
nsresult
nsDOMAttribute::GetValue(nsString& aValue)
{
nsresult result = NS_OK;
if (nsnull != mContent) {
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
nsresult attrResult;
mContent->ParseAttributeString(mName, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
attrResult = mContent->GetAttribute(nameSpaceID, nameAtom, mValue);
if (NS_CONTENT_ATTR_NOT_THERE == attrResult) {
mValue.Truncate();
}
NS_IF_RELEASE(nameAtom);
}
aValue=mValue;
return result;
}
nsresult
nsDOMAttribute::SetValue(const nsString& aValue)
{
nsresult result = NS_OK;
if (nsnull != mContent) {
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
mContent->ParseAttributeString(mName, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
result = mContent->SetAttribute(nameSpaceID, nameAtom, aValue, PR_TRUE);
NS_IF_RELEASE(nameAtom);
}
mValue=aValue;
return result;
}
nsresult
nsDOMAttribute::GetSpecified(PRBool* aSpecified)
{
nsresult result = NS_OK;
if (nsnull == mContent) {
*aSpecified = PR_FALSE;
}
else {
nsAutoString value;
nsresult attrResult;
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
mContent->ParseAttributeString(mName, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
attrResult = mContent->GetAttribute(nameSpaceID, nameAtom, value);
NS_IF_RELEASE(nameAtom);
if (NS_CONTENT_ATTR_HAS_VALUE == attrResult) {
*aSpecified = PR_TRUE;
}
else {
*aSpecified = PR_FALSE;
}
}
return result;
}
NS_IMETHODIMP
nsDOMAttribute::GetNodeName(nsString& aNodeName)
{
return GetName(aNodeName);
}
NS_IMETHODIMP
nsDOMAttribute::GetNodeValue(nsString& aNodeValue)
{
return GetValue(aNodeValue);
}
NS_IMETHODIMP
nsDOMAttribute::SetNodeValue(const nsString& aNodeValue)
{
return SetValue(aNodeValue);
}
NS_IMETHODIMP
nsDOMAttribute::GetNodeType(PRUint16* aNodeType)
{
*aNodeType = (PRUint16)nsIDOMNode::ATTRIBUTE_NODE;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::GetParentNode(nsIDOMNode** aParentNode)
{
*aParentNode = nsnull;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::GetChildNodes(nsIDOMNodeList** aChildNodes)
{
if (nsnull == mChildList) {
mChildList = new nsAttributeChildList(this);
if (nsnull == mChildList) {
return NS_ERROR_OUT_OF_MEMORY;
}
NS_ADDREF(mChildList);
}
return mChildList->QueryInterface(kIDOMNodeListIID, (void**)aChildNodes);
}
NS_IMETHODIMP
nsDOMAttribute::HasChildNodes(PRBool* aHasChildNodes)
{
*aHasChildNodes = PR_FALSE;
if (nsnull != mChild) {
*aHasChildNodes = PR_TRUE;
}
else if (nsnull != mContent) {
nsAutoString value;
GetValue(value);
if (0 < value.Length()) {
*aHasChildNodes = PR_TRUE;
}
}
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::GetFirstChild(nsIDOMNode** aFirstChild)
{
nsAutoString value;
nsresult result;
result = GetValue(value);
if (NS_OK != result) {
return result;
}
if (0 < value.Length()) {
if (nsnull == mChild) {
nsIContent* content;
result = NS_NewTextNode(&content);
if (NS_OK != result) {
return result;
}
result = content->QueryInterface(kIDOMTextIID, (void**)&mChild);
NS_RELEASE(content);
}
mChild->SetData(value);
result = mChild->QueryInterface(kIDOMNodeIID, (void**)aFirstChild);
}
else {
*aFirstChild = nsnull;
}
return result;
}
NS_IMETHODIMP
nsDOMAttribute::GetLastChild(nsIDOMNode** aLastChild)
{
return GetFirstChild(aLastChild);
}
NS_IMETHODIMP
nsDOMAttribute::GetPreviousSibling(nsIDOMNode** aPreviousSibling)
{
*aPreviousSibling = nsnull;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::GetNextSibling(nsIDOMNode** aNextSibling)
{
*aNextSibling = nsnull;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::GetAttributes(nsIDOMNamedNodeMap** aAttributes)
{
*aAttributes = nsnull;
return NS_OK;
}
NS_IMETHODIMP
nsDOMAttribute::InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild, nsIDOMNode** aReturn)
{
return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
nsDOMAttribute::ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild, nsIDOMNode** aReturn)
{
return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
nsDOMAttribute::RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn)
{
return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
nsDOMAttribute::AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn)
{
return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
nsDOMAttribute::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsDOMAttribute* newAttr;
if (nsnull != mContent) {
nsAutoString value;
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
mContent->ParseAttributeString(mName, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
mContent->GetAttribute(nameSpaceID, nameAtom, value);
newAttr = new nsDOMAttribute(nsnull, mName, value);
}
else {
newAttr = new nsDOMAttribute(nsnull, mName, mValue);
}
if (nsnull == newAttr) {
return NS_ERROR_OUT_OF_MEMORY;
}
return newAttr->QueryInterface(kIDOMNodeIID, (void**)aReturn);
}
NS_IMETHODIMP
nsDOMAttribute::GetOwnerDocument(nsIDOMDocument** aOwnerDocument)
{
nsresult result = NS_OK;
if (nsnull != mContent) {
nsIDOMNode* node;
result = mContent->QueryInterface(kIDOMNodeIID, (void**)&node);
if (NS_SUCCEEDED(result)) {
result = node->GetOwnerDocument(aOwnerDocument);
NS_RELEASE(node);
}
}
else {
*aOwnerDocument = nsnull;
}
return result;
}
//----------------------------------------------------------------------
nsAttributeChildList::nsAttributeChildList(nsDOMAttribute* aAttribute)
{
// Don't increment the reference count. The attribute will tell
// us when it's going away
mAttribute = aAttribute;
}
nsAttributeChildList::~nsAttributeChildList()
{
}
NS_IMETHODIMP
nsAttributeChildList::GetLength(PRUint32* aLength)
{
nsAutoString value;
*aLength = 0;
if (nsnull != mAttribute) {
mAttribute->GetValue(value);
if (0 < value.Length()) {
*aLength = 1;
}
}
return NS_OK;
}
NS_IMETHODIMP
nsAttributeChildList::Item(PRUint32 aIndex, nsIDOMNode** aReturn)
{
*aReturn = nsnull;
if ((nsnull != mAttribute) && (0 == aIndex)) {
mAttribute->GetFirstChild(aReturn);
}
return NS_OK;
}
void
nsAttributeChildList::DropReference()
{
mAttribute = nsnull;
}

View File

@@ -0,0 +1,128 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsDOMAttribute_h___
#define nsDOMAttribute_h___
#include "nsIDOMAttr.h"
#include "nsIDOMText.h"
#include "nsIDOMNodeList.h"
#include "nsIScriptObjectOwner.h"
#include "nsGenericDOMNodeList.h"
#include "nsString.h"
class nsIContent;
class nsDOMAttribute;
#define NS_IDOMATTRIBUTEPRIVATE_IID \
{0xa6cf90dd, 0x15b3, 0x11d2, \
{0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32}}
class nsIDOMAttributePrivate : public nsISupports {
public:
NS_IMETHOD DropReference() = 0;
NS_IMETHOD SetContent(nsIContent* aContent) = 0;
NS_IMETHOD GetContent(nsIContent** aContent) = 0;
NS_IMETHOD SetName(const nsString& aName) = 0;
};
// bogus child list for an attribute
class nsAttributeChildList : public nsGenericDOMNodeList
{
public:
nsAttributeChildList(nsDOMAttribute* aAttribute);
virtual ~nsAttributeChildList();
// interface nsIDOMNodeList
NS_IMETHOD GetLength(PRUint32* aLength);
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn);
void DropReference();
protected:
nsDOMAttribute* mAttribute;
};
// Attribute helper class used to wrap up an attribute with a dom
// object that implements nsIDOMAttr and nsIDOMNode and
// nsIScriptObjectOwner
class nsDOMAttribute : public nsIDOMAttr,
public nsIScriptObjectOwner,
public nsIDOMAttributePrivate
{
public:
nsDOMAttribute(nsIContent* aContent,
const nsString& aName,
const nsString& aValue);
virtual ~nsDOMAttribute();
NS_DECL_ISUPPORTS
NS_IMETHOD GetScriptObject(nsIScriptContext* aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// nsIDOMAttr interface
NS_IMETHOD GetSpecified(PRBool* aSpecified);
NS_IMETHOD GetName(nsString& aReturn);
NS_IMETHOD GetValue(nsString& aReturn);
NS_IMETHOD SetValue(const nsString& aValue);
// nsIDOMNode interface
NS_IMETHOD GetNodeName(nsString& aNodeName);
NS_IMETHOD GetNodeValue(nsString& aNodeValue);
NS_IMETHOD SetNodeValue(const nsString& aNodeValue);
NS_IMETHOD GetNodeType(PRUint16* aNodeType);
NS_IMETHOD GetParentNode(nsIDOMNode** aParentNode);
NS_IMETHOD GetChildNodes(nsIDOMNodeList** aChildNodes);
NS_IMETHOD HasChildNodes(PRBool* aHasChildNodes);
NS_IMETHOD GetFirstChild(nsIDOMNode** aFirstChild);
NS_IMETHOD GetLastChild(nsIDOMNode** aLastChild);
NS_IMETHOD GetPreviousSibling(nsIDOMNode** aPreviousSibling);
NS_IMETHOD GetNextSibling(nsIDOMNode** aNextSibling);
NS_IMETHOD GetAttributes(nsIDOMNamedNodeMap** aAttributes);
NS_IMETHOD InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild,
nsIDOMNode** aReturn);
NS_IMETHOD ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild,
nsIDOMNode** aReturn);
NS_IMETHOD RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn);
NS_IMETHOD AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn);
NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
NS_IMETHOD GetOwnerDocument(nsIDOMDocument** aOwnerDocument);
// nsIDOMAttributePrivate interface
NS_IMETHOD DropReference();
NS_IMETHOD SetContent(nsIContent* aContent);
NS_IMETHOD GetContent(nsIContent** aContent);
NS_IMETHOD SetName(const nsString& aName);
private:
nsIContent* mContent;
nsString mName;
nsString mValue;
// XXX For now, there's only a single child - a text
// element representing the value
nsIDOMText* mChild;
nsAttributeChildList* mChildList;
void* mScriptObject;
};
#endif /* nsDOMAttribute_h___ */

View File

@@ -0,0 +1,508 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsDOMAttributeMap.h"
#include "nsDOMAttribute.h"
#include "nsGenericElement.h"
#include "nsIContent.h"
#include "nsIDOMScriptObjectFactory.h"
#include "nsINameSpaceManager.h"
#include "nsDOMError.h"
static NS_DEFINE_IID(kIDOMNamedNodeMapIID, NS_IDOMNAMEDNODEMAP_IID);
static NS_DEFINE_IID(kIDOMAttrIID, NS_IDOMATTR_IID);
static NS_DEFINE_IID(kIDOMAttributePrivateIID, NS_IDOMATTRIBUTEPRIVATE_IID);
//----------------------------------------------------------------------
nsDOMAttributeMap::nsDOMAttributeMap(nsIContent* aContent)
: mContent(aContent)
{
NS_INIT_REFCNT();
mScriptObject = nsnull;
mAttributes = nsnull;
// We don't add a reference to our content. If it goes away,
// we'll be told to drop our reference
}
PR_STATIC_CALLBACK (PRIntn)
RemoveAttributes(PLHashEntry* he, PRIntn i, void* arg)
{
nsIDOMAttr* attr = (nsIDOMAttr*)he->value;
char* str = (char*)he->key;
if (nsnull != attr) {
nsIDOMAttributePrivate* attrPrivate;
attr->QueryInterface(kIDOMAttributePrivateIID, (void**)&attrPrivate);
attrPrivate->DropReference();
NS_RELEASE(attrPrivate);
NS_RELEASE(attr);
}
delete [] str;
return HT_ENUMERATE_REMOVE;
}
PR_STATIC_CALLBACK (PRIntn)
DropReferencesInAttributes(PLHashEntry* he, PRIntn i, void* arg)
{
nsDOMAttribute* attr = (nsDOMAttribute*)he->value;
if (nsnull != attr) {
nsIDOMAttributePrivate* attrPrivate;
attr->QueryInterface(kIDOMAttributePrivateIID, (void**)&attrPrivate);
attrPrivate->DropReference();
NS_RELEASE(attrPrivate);
}
return HT_ENUMERATE_NEXT;
}
nsDOMAttributeMap::~nsDOMAttributeMap()
{
if (nsnull != mAttributes) {
PL_HashTableEnumerateEntries(mAttributes, RemoveAttributes, nsnull);
}
}
void
nsDOMAttributeMap::DropReference()
{
mContent = nsnull;
if (nsnull != mAttributes) {
PL_HashTableEnumerateEntries(mAttributes, DropReferencesInAttributes, nsnull);
}
}
nsresult
nsDOMAttributeMap::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (NULL == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIDOMNamedNodeMapIID)) {
nsIDOMNamedNodeMap* tmp = this;
*aInstancePtr = (void*)tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIScriptObjectOwnerIID)) {
nsIScriptObjectOwner* tmp = this;
*aInstancePtr = (void*)tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kISupportsIID)) {
nsIDOMNamedNodeMap* tmp1 = this;
nsISupports* tmp2 = tmp1;
*aInstancePtr = (void*)tmp2;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ADDREF(nsDOMAttributeMap)
NS_IMPL_RELEASE(nsDOMAttributeMap)
nsresult
nsDOMAttributeMap::GetScriptObject(nsIScriptContext *aContext,
void** aScriptObject)
{
nsresult res = NS_OK;
if (nsnull == mScriptObject) {
nsIDOMScriptObjectFactory *factory;
res = nsGenericElement::GetScriptObjectFactory(&factory);
if (NS_OK != res) {
return res;
}
res = factory->NewScriptNamedNodeMap(aContext,
(nsISupports *)(nsIDOMNamedNodeMap *)this,
(nsISupports *)mContent,
(void**)&mScriptObject);
NS_RELEASE(factory);
}
*aScriptObject = mScriptObject;
return res;
}
nsresult
nsDOMAttributeMap::SetScriptObject(void *aScriptObject)
{
mScriptObject = aScriptObject;
return NS_OK;
}
PLHashTable*
nsDOMAttributeMap::GetAttributeTable()
{
if ((nsnull == mAttributes) && (nsnull != mContent)) {
PRInt32 count;
mContent->GetAttributeCount(count);
mAttributes = PL_NewHashTable(count, PL_HashString, PL_CompareStrings,
PL_CompareValues, nsnull, nsnull);
}
return mAttributes;
}
nsresult
nsDOMAttributeMap::GetNamedItemCommon(const nsString& aAttrName,
PRInt32 aNameSpaceID,
nsIAtom* aNameAtom,
nsIDOMNode** aAttribute)
{
nsIDOMAttr* attribute;
char buf[128];
nsresult result = NS_OK;
PLHashTable* attrHash = GetAttributeTable();
aAttrName.ToCString(buf, sizeof(buf));
if (nsnull != attrHash) {
attribute = (nsIDOMAttr*)PL_HashTableLookup(attrHash, buf);
if (nsnull == attribute) {
nsresult attrResult;
nsAutoString value;
attrResult = mContent->GetAttribute(aNameSpaceID, aNameAtom, value);
if (NS_CONTENT_ATTR_NOT_THERE != attrResult) {
nsDOMAttribute* domAttribute;
domAttribute = new nsDOMAttribute(mContent, aAttrName, value);
if (nsnull == domAttribute) {
result = NS_ERROR_OUT_OF_MEMORY;
}
else {
result = domAttribute->QueryInterface(kIDOMAttrIID,
(void **)&attribute);
char* hashKey = aAttrName.ToNewCString();
PL_HashTableAdd(attrHash, hashKey, attribute);
}
}
}
}
if (nsnull != attribute) {
result = attribute->QueryInterface(kIDOMNodeIID, (void**)aAttribute);
}
else {
*aAttribute = nsnull;
}
return result;
}
void
nsDOMAttributeMap::GetNormalizedName(PRInt32 aNameSpaceID,
nsIAtom* aNameAtom,
nsString& aAttrName)
{
nsIAtom* prefix;
aAttrName.Truncate();
mContent->GetNameSpacePrefixFromId(aNameSpaceID, prefix);
if (nsnull != prefix) {
prefix->ToString(aAttrName);
aAttrName.Append(":");
NS_RELEASE(prefix);
}
if (nsnull != aNameAtom) {
nsAutoString tmp;
aNameAtom->ToString(tmp);
aAttrName.Append(tmp);
}
}
nsresult
nsDOMAttributeMap::GetNamedItem(const nsString &aAttrName,
nsIDOMNode** aAttribute)
{
nsresult result = NS_OK;
if (nsnull != mContent) {
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
nsAutoString normalizedName;
mContent->ParseAttributeString(aAttrName, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
GetNormalizedName(nameSpaceID, nameAtom, normalizedName);
result = GetNamedItemCommon(normalizedName,
nameSpaceID,
nameAtom,
aAttribute);
NS_IF_RELEASE(nameAtom);
}
else {
*aAttribute = nsnull;
}
return result;
}
nsresult
nsDOMAttributeMap::SetNamedItem(nsIDOMNode *aNode, nsIDOMNode **aReturn)
{
nsresult result = NS_OK;
nsIDOMAttr* attribute;
if (nsnull == aNode) {
return NS_ERROR_NULL_POINTER;
}
if (nsnull != mContent) {
result = aNode->QueryInterface(kIDOMAttrIID, (void**)&attribute);
if (NS_OK == result) {
PLHashTable* attrHash;
attrHash = GetAttributeTable();
if (nsnull != attrHash) {
nsIDOMNode* oldAttribute;
nsIDOMAttributePrivate* attrPrivate;
nsAutoString name, value;
char buf[128];
char* key;
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
// Get normalized attribute name
attribute->GetName(name);
mContent->ParseAttributeString(name, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
GetNormalizedName(nameSpaceID, nameAtom, name);
name.ToCString(buf, sizeof(buf));
result = GetNamedItemCommon(name, nameSpaceID, nameAtom, &oldAttribute);
if (nsnull != oldAttribute) {
nsIDOMAttributePrivate* oldAttributePrivate;
PLHashEntry** he;
// Remove the attribute from the hash table, cleaning
// the hash table entry as we go about it.
he = PL_HashTableRawLookup(attrHash, PL_HashString(buf), buf);
key = (char*)(*he)->key;
PL_HashTableRemove(attrHash, buf);
if (nsnull != key) {
delete [] key;
}
result = oldAttribute->QueryInterface(kIDOMAttributePrivateIID,
(void **)&oldAttributePrivate);
if (NS_OK == result) {
oldAttributePrivate->DropReference();
NS_RELEASE(oldAttributePrivate);
}
*aReturn = oldAttribute;
// Drop the reference held in the hash table
NS_RELEASE(oldAttribute);
}
else {
*aReturn = nsnull;
}
attribute->GetValue(value);
// Associate the new attribute with the content
key = name.ToNewCString();
result = attribute->QueryInterface(kIDOMAttributePrivateIID,
(void **)&attrPrivate);
if (NS_SUCCEEDED(result)) {
nsIContent* owner;
attrPrivate->GetContent(&owner);
if (owner) {
// The old attribute is already associated with another
// piece of content.
result = NS_ERROR_DOM_INUSE_ATTRIBUTE_ERR;
NS_RELEASE(owner);
}
else {
attrPrivate->SetContent(mContent);
attrPrivate->SetName(name);
// Add the new attribute node to the hash table (maintaining
// a reference to it)
PL_HashTableAdd(attrHash, key, attribute);
// Set the attribute on the content
result = mContent->SetAttribute(nameSpaceID, nameAtom, value, PR_TRUE);
NS_IF_RELEASE(nameAtom);
}
NS_RELEASE(attrPrivate);
}
}
}
else {
result = NS_ERROR_DOM_HIERARCHY_REQUEST_ERR;
}
}
else {
*aReturn = nsnull;
}
return result;
}
NS_IMETHODIMP
nsDOMAttributeMap::RemoveNamedItem(const nsString& aName, nsIDOMNode** aReturn)
{
nsresult result = NS_OK;
if (nsnull != mContent) {
PLHashTable* attrHash;
attrHash = GetAttributeTable();
if (nsnull != attrHash) {
nsIDOMNode* attribute;
nsIDOMAttributePrivate* attrPrivate;
char buf[128];
char* key;
nsIAtom* nameAtom;
PRInt32 nameSpaceID;
nsAutoString name;
mContent->ParseAttributeString(aName, nameAtom, nameSpaceID);
if (kNameSpaceID_Unknown == nameSpaceID) {
nameSpaceID = kNameSpaceID_None; // ignore unknown prefix XXX is this correct?
}
GetNormalizedName(nameSpaceID, nameAtom, name);
name.ToCString(buf, sizeof(buf));
result = GetNamedItemCommon(name, nameSpaceID, nameAtom, &attribute);
if (nsnull != attribute) {
PLHashEntry** he;
// Remove the attribute from the hash table, cleaning
// the hash table entry as we go about it.
he = PL_HashTableRawLookup(attrHash, PL_HashString(buf), buf);
key = (char*)(*he)->key;
PL_HashTableRemove(attrHash, buf);
if (nsnull != key) {
delete [] key;
}
result = attribute->QueryInterface(kIDOMAttributePrivateIID,
(void **)&attrPrivate);
if (NS_OK == result) {
attrPrivate->DropReference();
NS_RELEASE(attrPrivate);
}
*aReturn = attribute;
// Drop the reference held in the hash table
NS_RELEASE(attribute);
}
else {
result = NS_ERROR_DOM_NOT_FOUND_ERR;
*aReturn = nsnull;
}
// Unset the attribute in the content
result = mContent->UnsetAttribute(nameSpaceID, nameAtom, PR_TRUE);
NS_IF_RELEASE(nameAtom);
}
}
return result;
}
nsresult
nsDOMAttributeMap::Item(PRUint32 aIndex, nsIDOMNode** aReturn)
{
PRInt32 nameSpaceID;
nsIAtom* nameAtom = nsnull;
nsresult result = NS_OK;
if ((nsnull != mContent) &&
NS_SUCCEEDED(mContent->GetAttributeNameAt(aIndex,
nameSpaceID,
nameAtom))) {
nsAutoString attrName;
GetNormalizedName(nameSpaceID, nameAtom, attrName);
result = GetNamedItemCommon(attrName, nameSpaceID, nameAtom, aReturn);
NS_IF_RELEASE(nameAtom);
}
else {
*aReturn = nsnull;
}
return result;
}
nsresult
nsDOMAttributeMap::GetLength(PRUint32 *aLength)
{
PRInt32 n;
nsresult rv = NS_OK;
if (nsnull != mContent) {
rv = mContent->GetAttributeCount(n);
*aLength = PRUint32(n);
}
else {
*aLength = 0;
}
return rv;
}
#ifdef DEBUG
PR_STATIC_CALLBACK (PRIntn)
SizeAttributes(PLHashEntry* he, PRIntn i, void* arg)
{
char* str = (char*)he->key;
PRUint32 size = sizeof(PLHashEntry);
if (str) {
size += PL_strlen(str) + 1;
}
PRUint32* sump = (PRUint32*) arg;
*sump = *sump + size;
return HT_ENUMERATE_NEXT;
}
nsresult
nsDOMAttributeMap::SizeOfNamedNodeMap(nsIDOMNamedNodeMap* aMap,
nsISizeOfHandler* aSizer,
PRUint32* aResult)
{
if (!aResult) return NS_ERROR_NULL_POINTER;
nsDOMAttributeMap* map = (nsDOMAttributeMap*) aMap;
PRUint32 sum = sizeof(nsDOMAttributeMap);
if (map->mAttributes) {
sum += sizeof(*map->mAttributes);
PRUint32 esize = 0;
PL_HashTableEnumerateEntries(map->mAttributes, SizeAttributes,
(void*) &esize);
sum += esize;
}
*aResult = sum;
return NS_OK;
}
#endif

View File

@@ -0,0 +1,80 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsDOMAttributeMap_h___
#define nsDOMAttributeMap_h___
#include "nsIDOMNamedNodeMap.h"
#include "nsIScriptObjectOwner.h"
#include "nsVoidArray.h"
#include "nsString.h"
#include "plhash.h"
class nsIContent;
// Helper class that implements the nsIDOMNamedNodeMap interface.
class nsDOMAttributeMap : public nsIDOMNamedNodeMap,
public nsIScriptObjectOwner
{
public:
nsDOMAttributeMap(nsIContent* aContent);
virtual ~nsDOMAttributeMap();
NS_DECL_ISUPPORTS
NS_IMETHOD GetScriptObject(nsIScriptContext* aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// nsIDOMNamedNodeMap interface
NS_IMETHOD GetLength(PRUint32* aSize);
NS_IMETHOD GetNamedItem(const nsString& aName, nsIDOMNode** aReturn);
NS_IMETHOD SetNamedItem(nsIDOMNode* aNode, nsIDOMNode** aReturn);
NS_IMETHOD RemoveNamedItem(const nsString& aName, nsIDOMNode** aReturn);
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn);
void DropReference();
#ifdef DEBUG
static nsresult SizeOfNamedNodeMap(nsIDOMNamedNodeMap* aMap,
nsISizeOfHandler* aSizer,
PRUint32* aResult);
#endif
protected:
nsresult GetNamedItemCommon(const nsString& aAttrName,
PRInt32 aNameSpaceID,
nsIAtom* aNameAtom,
nsIDOMNode** aAttribute);
void GetNormalizedName(PRInt32 aNameSpaceID,
nsIAtom* aNameAtom,
nsString& aAttrName);
PLHashTable* GetAttributeTable();
private:
nsIContent* mContent;
// XXX We really don't need to use a hashtable here.
// We generally deal with a small number of attributes
PLHashTable* mAttributes;
void* mScriptObject;
};
#endif /* nsDOMAttributeMap_h___ */

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,488 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsDocument_h___
#define nsDocument_h___
#include "nsIDocument.h"
#include "nsWeakReference.h"
#include "nsWeakPtr.h"
#include "nsVoidArray.h"
#include "nsIDOMDocument.h"
#include "nsIDOMNSDocument.h"
#include "nsIDOMEventReceiver.h"
#include "nsIDiskDocument.h"
#include "nsIScriptObjectOwner.h"
#include "nsIScriptGlobalObject.h"
#include "nsIDOMEventTarget.h"
#include "nsXIFConverter.h"
#include "nsIJSScriptObject.h"
#include "nsIContent.h"
#include "nsGenericDOMNodeList.h"
#include "nsIPrincipal.h"
class nsIEventListenerManager;
class nsDOMStyleSheetCollection;
class nsIOutputStream;
class nsDocument;
#if 0
class nsPostData : public nsIPostData {
public:
nsPostData(PRBool aIsFile, char* aData);
NS_DECL_ISUPPORTS
virtual PRBool IsFile();
virtual const char* GetData();
virtual PRInt32 GetDataLength();
protected:
virtual ~nsPostData();
PRBool mIsFile;
char* mData;
PRInt32 mDataLen;
};
#endif
class nsDocHeaderData
{
public:
nsDocHeaderData(nsIAtom* aField, const nsString& aData)
{
mField = aField;
NS_IF_ADDREF(mField);
mData = aData;
mNext = nsnull;
}
~nsDocHeaderData(void)
{
NS_IF_RELEASE(mField);
if (nsnull != mNext) {
delete mNext;
mNext = nsnull;
}
}
nsIAtom* mField;
nsAutoString mData;
nsDocHeaderData* mNext;
};
// Represents the children of a document (prolog, epilog and
// document element)
class nsDocumentChildNodes : public nsGenericDOMNodeList
{
public:
nsDocumentChildNodes(nsIDocument* aDocument);
~nsDocumentChildNodes();
NS_IMETHOD GetLength(PRUint32* aLength);
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn);
void DropReference();
protected:
nsIDocument* mDocument;
};
// Base class for our document implementations
class nsDocument : public nsIDocument,
public nsIDOMDocument,
public nsIDOMNSDocument,
public nsIDiskDocument,
public nsIScriptObjectOwner,
public nsIJSScriptObject,
public nsSupportsWeakReference,
public nsIDOMEventReceiver
{
public:
NS_DECL_ISUPPORTS
virtual nsIArena* GetArena();
NS_IMETHOD StartDocumentLoad(const char* aCommand,
nsIChannel* aChannel,
nsILoadGroup* aLoadGroup,
nsISupports* aContainer,
nsIStreamListener **aDocListener);
/**
* Return the title of the document. May return null.
*/
virtual const nsString* GetDocumentTitle() const;
/**
* Return the URL for the document. May return null.
*/
virtual nsIURI* GetDocumentURL() const;
/**
* Return the principal responsible for this document.
*/
virtual nsIPrincipal* GetDocumentPrincipal();
/**
* Return the content (mime) type of this document.
*/
NS_IMETHOD GetContentType(nsString& aContentType) const;
/**
* Return the LoadGroup for the document. May return null.
*/
NS_IMETHOD GetDocumentLoadGroup(nsILoadGroup **aGroup) const;
/**
* Return the base URL for realtive URLs in the document. May return null (or the document URL).
*/
NS_IMETHOD GetBaseURL(nsIURI*& aURL) const;
/**
* Return a standard name for the document's character set. This will
* trigger a startDocumentLoad if necessary to answer the question.
*/
NS_IMETHOD GetDocumentCharacterSet(nsString& oCharsetID);
NS_IMETHOD SetDocumentCharacterSet(const nsString& aCharSetID);
/**
* Return the Line Breaker for the document
*/
NS_IMETHOD GetLineBreaker(nsILineBreaker** aResult) ;
NS_IMETHOD SetLineBreaker(nsILineBreaker* aLineBreaker) ;
NS_IMETHOD GetWordBreaker(nsIWordBreaker** aResult) ;
NS_IMETHOD SetWordBreaker(nsIWordBreaker* aWordBreaker) ;
/**
* Access HTTP header data (this may also get set from other sources, like
* HTML META tags).
*/
NS_IMETHOD GetHeaderData(nsIAtom* aHeaderField, nsString& aData) const;
NS_IMETHOD SetHeaderData(nsIAtom* aheaderField, const nsString& aData);
/**
* Create a new presentation shell that will use aContext for
* it's presentation context (presentation context's <b>must not</b> be
* shared among multiple presentation shell's).
*/
#if 0
// XXX Temp hack: moved to nsMarkupDocument
NS_IMETHOD CreateShell(nsIPresContext* aContext,
nsIViewManager* aViewManager,
nsIStyleSet* aStyleSet,
nsIPresShell** aInstancePtrResult);
#endif
virtual PRBool DeleteShell(nsIPresShell* aShell);
virtual PRInt32 GetNumberOfShells();
virtual nsIPresShell* GetShellAt(PRInt32 aIndex);
/**
* Return the parent document of this document. Will return null
* unless this document is within a compound document and has a parent.
*/
virtual nsIDocument* GetParentDocument();
virtual void SetParentDocument(nsIDocument* aParent);
virtual void AddSubDocument(nsIDocument* aSubDoc);
virtual PRInt32 GetNumberOfSubDocuments();
virtual nsIDocument* GetSubDocumentAt(PRInt32 aIndex);
/**
* Return the root content object for this document.
*/
virtual nsIContent* GetRootContent();
virtual void SetRootContent(nsIContent* aRoot);
/**
* Methods to append to the prolog and epilog of
* a document. The prolog is the content before the document
* element, the epilog after.
*/
NS_IMETHOD AppendToProlog(nsIContent* aContent);
NS_IMETHOD AppendToEpilog(nsIContent* aContent);
/**
* Get the direct children of the document - content in
* the prolog, the root content and content in the epilog.
*/
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const;
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aIndex) const;
NS_IMETHOD GetChildCount(PRInt32& aCount);
/**
* Get the style sheets owned by this document.
* These are ordered, highest priority last
*/
virtual PRInt32 GetNumberOfStyleSheets();
virtual nsIStyleSheet* GetStyleSheetAt(PRInt32 aIndex);
virtual PRInt32 GetIndexOfStyleSheet(nsIStyleSheet* aSheet);
virtual void AddStyleSheet(nsIStyleSheet* aSheet);
virtual void RemoveStyleSheet(nsIStyleSheet* aSheet);
NS_IMETHOD InsertStyleSheetAt(nsIStyleSheet* aSheet, PRInt32 aIndex, PRBool aNotify);
virtual void SetStyleSheetDisabledState(nsIStyleSheet* aSheet,
PRBool mDisabled);
/**
* Set the object from which a document can get a script context.
* This is the context within which all scripts (during document
* creation and during event handling) will run.
*/
NS_IMETHOD GetScriptGlobalObject(nsIScriptGlobalObject** aGlobalObject);
NS_IMETHOD SetScriptGlobalObject(nsIScriptGlobalObject* aGlobalObject);
/**
* Get the name space manager for this document
*/
NS_IMETHOD GetNameSpaceManager(nsINameSpaceManager*& aManager);
/**
* Add a new observer of document change notifications. Whenever
* content is changed, appended, inserted or removed the observers are
* informed.
*/
virtual void AddObserver(nsIDocumentObserver* aObserver);
/**
* Remove an observer of document change notifications. This will
* return false if the observer cannot be found.
*/
virtual PRBool RemoveObserver(nsIDocumentObserver* aObserver);
// Observation hooks used by content nodes to propagate
// notifications to document observers.
NS_IMETHOD BeginLoad();
NS_IMETHOD EndLoad();
NS_IMETHOD ContentChanged(nsIContent* aContent,
nsISupports* aSubContent);
NS_IMETHOD ContentStatesChanged(nsIContent* aContent1, nsIContent* aContent2);
NS_IMETHOD AttributeChanged(nsIContent* aChild,
PRInt32 aNameSpaceID,
nsIAtom* aAttribute,
PRInt32 aHint);
NS_IMETHOD ContentAppended(nsIContent* aContainer,
PRInt32 aNewIndexInContainer);
NS_IMETHOD ContentInserted(nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer);
NS_IMETHOD ContentReplaced(nsIContent* aContainer,
nsIContent* aOldChild,
nsIContent* aNewChild,
PRInt32 aIndexInContainer);
NS_IMETHOD ContentRemoved(nsIContent* aContainer,
nsIContent* aChild,
PRInt32 aIndexInContainer);
NS_IMETHOD StyleRuleChanged(nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule,
PRInt32 aHint); // See nsStyleConsts fot hint values
NS_IMETHOD StyleRuleAdded(nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule);
NS_IMETHOD StyleRuleRemoved(nsIStyleSheet* aStyleSheet,
nsIStyleRule* aStyleRule);
/**
* Finds text in content
*/
NS_IMETHOD FindNext(const nsString &aSearchStr, PRBool aMatchCase, PRBool aSearchDown, PRBool &aIsFound);
/**
* Converts the document or a selection of the
* document to XIF (XML Interchange Format)
* and places the result in aBuffer.
*/
NS_IMETHOD CreateXIF(nsString & aBuffer, nsIDOMSelection* aSelection);
NS_IMETHOD ToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode);
virtual void BeginConvertToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode);
virtual void ConvertChildrenToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode);
virtual void FinishConvertToXIF(nsXIFConverter& aConverter, nsIDOMNode* aNode);
public:
NS_IMETHOD GetScriptObject(nsIScriptContext *aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// nsIDOMDocument interface
NS_IMETHOD GetDoctype(nsIDOMDocumentType** aDoctype);
NS_IMETHOD GetImplementation(nsIDOMDOMImplementation** aImplementation);
NS_IMETHOD GetDocumentElement(nsIDOMElement** aDocumentElement);
NS_IMETHOD CreateElement(const nsString& aTagName, nsIDOMElement** aReturn);
NS_IMETHOD CreateDocumentFragment(nsIDOMDocumentFragment** aReturn);
NS_IMETHOD CreateTextNode(const nsString& aData, nsIDOMText** aReturn);
NS_IMETHOD CreateComment(const nsString& aData, nsIDOMComment** aReturn);
NS_IMETHOD CreateCDATASection(const nsString& aData, nsIDOMCDATASection** aReturn);
NS_IMETHOD CreateProcessingInstruction(const nsString& aTarget, const nsString& aData, nsIDOMProcessingInstruction** aReturn);
NS_IMETHOD CreateAttribute(const nsString& aName, nsIDOMAttr** aReturn);
NS_IMETHOD CreateEntityReference(const nsString& aName, nsIDOMEntityReference** aReturn);
NS_IMETHOD GetElementsByTagName(const nsString& aTagname, nsIDOMNodeList** aReturn);
NS_IMETHOD GetStyleSheets(nsIDOMStyleSheetCollection** aStyleSheets);
NS_IMETHOD CreateElementWithNameSpace(const nsString& aTagName,
const nsString& aNameSpace,
nsIDOMElement** aReturn);
NS_IMETHOD CreateRange(nsIDOMRange** aReturn);
NS_IMETHOD GetWidth(PRInt32* aWidth);
NS_IMETHOD GetHeight(PRInt32* aHeight);
// nsIDOMNode interface
NS_IMETHOD GetNodeName(nsString& aNodeName);
NS_IMETHOD GetNodeValue(nsString& aNodeValue);
NS_IMETHOD SetNodeValue(const nsString& aNodeValue);
NS_IMETHOD GetNodeType(PRUint16* aNodeType);
NS_IMETHOD GetParentNode(nsIDOMNode** aParentNode);
NS_IMETHOD GetChildNodes(nsIDOMNodeList** aChildNodes);
NS_IMETHOD HasChildNodes(PRBool* aHasChildNodes);
NS_IMETHOD GetFirstChild(nsIDOMNode** aFirstChild);
NS_IMETHOD GetLastChild(nsIDOMNode** aLastChild);
NS_IMETHOD GetPreviousSibling(nsIDOMNode** aPreviousSibling);
NS_IMETHOD GetNextSibling(nsIDOMNode** aNextSibling);
NS_IMETHOD GetAttributes(nsIDOMNamedNodeMap** aAttributes);
NS_IMETHOD GetOwnerDocument(nsIDOMDocument** aOwnerDocument);
NS_IMETHOD InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild, nsIDOMNode** aReturn);
NS_IMETHOD ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild, nsIDOMNode** aReturn);
NS_IMETHOD RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn);
NS_IMETHOD AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn);
NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
// nsIDOMEventReceiver interface
NS_IMETHOD AddEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID);
NS_IMETHOD RemoveEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID);
NS_IMETHOD GetListenerManager(nsIEventListenerManager** aInstancePtrResult);
NS_IMETHOD GetNewListenerManager(nsIEventListenerManager **aInstancePtrResult);
// nsIDiskDocument inteface
NS_IMETHOD InitDiskDocument(nsFileSpec *aFileSpec);
NS_IMETHOD SaveFile( nsFileSpec* aFileSpec,
PRBool aReplaceExisting,
PRBool aSaveCopy,
ESaveFileType aSaveFileType,
const nsString& aSaveCharset);
NS_IMETHOD GetFileSpec(nsFileSpec& aFileSpec);
NS_IMETHOD GetModCount(PRInt32 *outModCount);
NS_IMETHOD ResetModCount();
NS_IMETHOD IncrementModCount(PRInt32 aNumMods);
// nsIDOMEventTarget interface
NS_IMETHOD AddEventListener(const nsString& aType, nsIDOMEventListener* aListener,
PRBool aUseCapture);
NS_IMETHOD RemoveEventListener(const nsString& aType, nsIDOMEventListener* aListener,
PRBool aUseCapture);
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus);
virtual PRBool IsInSelection(nsIDOMSelection* aSelection, const nsIContent *aContent) const;
virtual nsIContent* GetPrevContent(const nsIContent *aContent) const;
virtual nsIContent* GetNextContent(const nsIContent *aContent) const;
virtual void SetDisplaySelection(PRBool aToggle);
virtual PRBool GetDisplaySelection() const;
// nsIJSScriptObject interface
virtual PRBool AddProperty(JSContext *aContext, jsval aID, jsval *aVp);
virtual PRBool DeleteProperty(JSContext *aContext, jsval aID, jsval *aVp);
virtual PRBool GetProperty(JSContext *aContext, jsval aID, jsval *aVp);
virtual PRBool SetProperty(JSContext *aContext, jsval aID, jsval *aVp);
virtual PRBool EnumerateProperty(JSContext *aContext);
virtual PRBool Resolve(JSContext *aContext, jsval aID);
virtual PRBool Convert(JSContext *aContext, jsval aID);
virtual void Finalize(JSContext *aContext);
/**
* Methods to output the document contents as Text or HTML, outputting into
* the given output stream. If charset is not an empty string, the contents
* will be converted into the given charset.
*
* If the selection is passed in is not null, only the selected content
* will be output. Note that the selection is stored on a per-presentation
* shell basis, not per document, hence it is a parameter here.
* These should be exposed in an interface, but aren't yet.
*/
virtual nsresult OutputDocumentAsText(nsIOutputStream* aStream, nsIDOMSelection* selection, const nsString& aCharset);
virtual nsresult OutputDocumentAsHTML(nsIOutputStream* aStream, nsIDOMSelection* selection, const nsString& aCharset);
protected:
nsIContent* FindContent(const nsIContent* aStartNode,
const nsIContent* aTest1,
const nsIContent* aTest2) const;
virtual nsresult Reset(nsIChannel* aChannel, nsILoadGroup* aLoadGroup);
// this enum is temporary; there should be no knowledge of HTML in
// nsDocument. That will be fixed when content sink stream factories
// are available.
enum EOutputFormat {
eOutputText,
eOutputHTML
};
virtual nsresult OutputDocumentAs(nsIOutputStream* aStream, nsIDOMSelection* selection, EOutputFormat aOutputFormat, const nsString& aCharset);
nsresult GetPixelDimensions(nsIPresShell* aShell,
PRInt32* aWidth,
PRInt32* aHeight);
protected:
virtual void InternalAddStyleSheet(nsIStyleSheet* aSheet); // subclass hooks for sheet ordering
virtual void InternalInsertStyleSheetAt(nsIStyleSheet* aSheet, PRInt32 aIndex);
nsDocument();
virtual ~nsDocument();
nsresult Init();
nsIArena* mArena;
nsString* mDocumentTitle;
nsIURI* mDocumentURL;
nsIPrincipal* mPrincipal;
nsWeakPtr mDocumentLoadGroup;
nsString mCharacterSet;
nsIDocument* mParentDocument;
nsVoidArray mSubDocuments;
nsVoidArray mPresShells;
nsIContent* mRootContent;
nsVoidArray mStyleSheets;
nsVoidArray mObservers;
void* mScriptObject;
nsCOMPtr<nsIScriptGlobalObject> mScriptGlobalObject;
nsIEventListenerManager* mListenerManager;
PRBool mDisplaySelection;
PRBool mInDestructor;
nsDOMStyleSheetCollection *mDOMStyleSheets;
nsINameSpaceManager* mNameSpaceManager;
nsDocHeaderData* mHeaderData;
nsILineBreaker* mLineBreaker;
nsVoidArray *mProlog;
nsVoidArray *mEpilog;
nsDocumentChildNodes* mChildNodes;
nsIWordBreaker* mWordBreaker;
// disk file members
nsFileSpec* mFileSpec;
PRInt32 mModCount;
};
#endif /* nsDocument_h___ */

View File

@@ -0,0 +1,361 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsIDocumentEncoder.h"
#include "nscore.h"
#include "nsIFactory.h"
#include "nsISupports.h"
#include "nsIComponentManager.h"
#include "nsIServiceManager.h"
#include "nsIDocument.h"
#include "nsIDOMSelection.h"
#include "nsIPresShell.h"
#include "nsXIFDTD.h"
#include "nsParserCIID.h"
#include "nsIParser.h"
#include "nsHTMLContentSinkStream.h"
#include "nsHTMLToTXTSinkStream.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(kCTextEncoderCID, NS_TEXT_ENCODER_CID);
static NS_DEFINE_IID(kCParserIID, NS_IPARSER_IID);
static NS_DEFINE_IID(kCParserCID, NS_PARSER_IID);
class nsTextEncoder : public nsIDocumentEncoder
{
public:
static const nsIID& GetIID() { static nsIID iid = NS_IDOCUMENT_ENCODER_IID; return iid; }
nsTextEncoder();
virtual ~nsTextEncoder();
NS_IMETHOD Init(nsIDocument* aDocument, const nsString& aMimeType, PRUint32 aFlags);
/* Interfaces for addref and release and queryinterface */
NS_DECL_ISUPPORTS
// Inherited methods from nsIDocumentEncoder
NS_IMETHOD SetSelection(nsIDOMSelection* aSelection);
NS_IMETHOD SetWrapColumn(PRUint32 aWC);
NS_IMETHOD SetCharset(const nsString& aCharset);
NS_IMETHOD EncodeToStream(nsIOutputStream* aStream);
NS_IMETHOD EncodeToString(nsString& aOutputString);
protected:
// Local methods to the text encoder -- used to be in nsITextEncoder,
// but that interface is obsolete now.
//NS_IMETHOD PrettyPrint(PRBool aYes);
//NS_IMETHOD AddHeader(PRBool aYes);
nsIDocument* mDocument;
nsIDOMSelection* mSelection;
nsString mMimeType;
nsString mCharset;
PRUint32 mFlags;
PRUint32 mWrapColumn;
};
NS_IMPL_ADDREF(nsTextEncoder)
NS_IMPL_RELEASE(nsTextEncoder)
nsTextEncoder::nsTextEncoder() : mMimeType("text/plain")
{
NS_INIT_REFCNT();
mDocument = 0;
mSelection = 0;
mFlags = 0;
mWrapColumn = 72;
}
nsTextEncoder::~nsTextEncoder()
{
NS_IF_RELEASE(mDocument);
//NS_IF_RELEASE(mSelection); // no. we never addref'd it.
}
NS_IMETHODIMP
nsTextEncoder::Init(nsIDocument* aDocument, const nsString& aMimeType, PRUint32 aFlags)
{
if (!aDocument)
return NS_ERROR_INVALID_ARG;
mDocument = aDocument;
NS_ADDREF(mDocument);
mMimeType = aMimeType;
mFlags = aFlags;
return NS_OK;
}
nsresult nsTextEncoder::QueryInterface(REFNSIID aIID,
void **aInstancePtr)
{
if (nsnull == aInstancePtr)
return NS_ERROR_NULL_POINTER;
*aInstancePtr = 0;
if (aIID.Equals(kISupportsIID)) {
*aInstancePtr = (void *)(nsISupports*)this;
} else if (aIID.Equals(nsIDocumentEncoder::GetIID())) {
*aInstancePtr = (void *)(nsIDocumentEncoder*)this;
}
if (nsnull == *aInstancePtr)
return NS_NOINTERFACE;
NS_ADDREF_THIS();
return NS_OK;
}
NS_IMETHODIMP
nsTextEncoder::SetWrapColumn(PRUint32 aWC)
{
mWrapColumn = aWC;
return NS_OK;
}
NS_IMETHODIMP
nsTextEncoder::SetSelection(nsIDOMSelection* aSelection)
{
mSelection = aSelection;
return NS_OK;
}
NS_IMETHODIMP
nsTextEncoder::SetCharset(const nsString& aCharset)
{
mCharset = aCharset;
return NS_OK;
}
NS_IMETHODIMP
nsTextEncoder::EncodeToString(nsString& aOutputString)
{
nsresult rv;
if (!mDocument)
return NS_ERROR_NOT_INITIALIZED;
// xxx Also make sure mString is a mime type "text/html" or "text/plain"
if (mDocument)
{
nsString buffer;
if (mMimeType == "text/xif")
{
mDocument->CreateXIF(aOutputString, mSelection);
return NS_OK;
}
mDocument->CreateXIF(buffer, mSelection);
nsIParser* parser;
rv = nsComponentManager::CreateInstance(kCParserCID,
nsnull,
kCParserIID,
(void **)&parser);
if (NS_SUCCEEDED(rv))
{
nsIHTMLContentSink* sink = nsnull;
if (mMimeType == "text/html")
rv = NS_New_HTML_ContentSinkStream(&sink, &aOutputString, mFlags);
else // default to text/plain
rv = NS_New_HTMLToTXT_SinkStream(&sink, &aOutputString,
mWrapColumn, mFlags);
if (sink && NS_SUCCEEDED(rv))
{
parser->SetContentSink(sink);
nsIDTD* dtd = nsnull;
rv = NS_NewXIFDTD(&dtd);
if (NS_SUCCEEDED(rv))
{
parser->RegisterDTD(dtd);
parser->Parse(buffer, 0, "text/xif", PR_FALSE, PR_TRUE);
}
NS_IF_RELEASE(dtd);
NS_IF_RELEASE(sink);
}
NS_RELEASE(parser);
}
}
return rv;
}
NS_IMETHODIMP
nsTextEncoder::EncodeToStream(nsIOutputStream* aStream)
{
nsresult rv;
if (!mDocument)
return NS_ERROR_NOT_INITIALIZED;
// xxx Also make sure mString is a mime type "text/html" or "text/plain"
if (mDocument)
{
nsString buffer;
mDocument->CreateXIF(buffer,mSelection);
nsString* charset = nsnull;
nsAutoString defaultCharset("ISO-8859-1");
if (!mCharset.Equals("null") && !mCharset.Equals(""))
charset = &mCharset;
nsIParser* parser;
rv = nsComponentManager::CreateInstance(kCParserCID,
nsnull,
kCParserIID,
(void **)&parser);
if (NS_SUCCEEDED(rv)) {
nsIHTMLContentSink* sink = nsnull;
if (mMimeType == "text/html")
rv = NS_New_HTML_ContentSinkStream(&sink, aStream, charset, mFlags);
else
rv = NS_New_HTMLToTXT_SinkStream(&sink, aStream, charset,
mWrapColumn, mFlags);
if (NS_SUCCEEDED(rv))
{
parser->SetContentSink(sink);
nsIDTD* dtd = nsnull;
rv = NS_NewXIFDTD(&dtd);
if (NS_SUCCEEDED(rv))
{
parser->RegisterDTD(dtd);
parser->Parse(buffer, 0, "text/xif", PR_FALSE, PR_TRUE);
}
NS_IF_RELEASE(dtd);
NS_IF_RELEASE(sink);
}
NS_RELEASE(parser);
}
}
return rv;
}
nsresult
NS_NewTextEncoder(nsIDocumentEncoder** aResult)
{
*aResult = new nsTextEncoder;
if (!*aResult)
return NS_ERROR_OUT_OF_MEMORY;
NS_ADDREF(*aResult);
return NS_OK;
}
class nsDocumentEncoderFactory : public nsIFactory
{
public:
nsDocumentEncoderFactory();
virtual ~nsDocumentEncoderFactory();
// nsISupports methods
NS_DECL_ISUPPORTS
NS_IMETHOD CreateInstance(nsISupports *aOuter,
REFNSIID aIID,
void **aResult);
};
MOZ_DECL_CTOR_COUNTER(nsDocumentEncoderFactory);
nsDocumentEncoderFactory::nsDocumentEncoderFactory()
{
MOZ_COUNT_CTOR(nsDocumentEncoderFactory);
mRefCnt = 0;
}
nsDocumentEncoderFactory::~nsDocumentEncoderFactory()
{
MOZ_COUNT_DTOR(nsDocumentEncoderFactory);
}
NS_IMPL_ADDREF(nsDocumentEncoderFactory)
NS_IMPL_RELEASE(nsDocumentEncoderFactory)
nsresult nsDocumentEncoderFactory::QueryInterface(REFNSIID aIID,
void **aInstancePtr)
{
if (nsnull == aInstancePtr)
return NS_ERROR_NULL_POINTER;
*aInstancePtr = 0;
if (aIID.Equals(kISupportsIID)) {
*aInstancePtr = (void *)(nsISupports*)this;
} else if (aIID.Equals(kIFactoryIID)) {
*aInstancePtr = (void *)(nsIFactory*)this;
}
if (nsnull == *aInstancePtr)
return NS_NOINTERFACE;
NS_ADDREF_THIS();
return NS_OK;
}
nsresult
nsDocumentEncoderFactory::CreateInstance(nsISupports *aOuter,
REFNSIID aIID,
void **aResult)
{
if (!aResult)
return NS_ERROR_NULL_POINTER;
*aResult = 0;
if (aIID.Equals(kCTextEncoderCID))
*aResult = new nsTextEncoder;
else
return NS_NOINTERFACE;
if (*aResult == NULL)
return NS_ERROR_OUT_OF_MEMORY;
return NS_OK;
}

View File

@@ -0,0 +1,382 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsISupports.h"
#include "nsIContent.h"
#include "nsIDOMDocumentFragment.h"
#include "nsIScriptObjectOwner.h"
#include "nsGenericElement.h"
#include "nsINameSpaceManager.h"
#include "nsIDocument.h"
#include "nsIDOMDocument.h"
#include "nsIDOMScriptObjectFactory.h"
#include "nsDOMError.h"
static NS_DEFINE_IID(kIDOMDocumentFragmentIID, NS_IDOMDOCUMENTFRAGMENT_IID);
static NS_DEFINE_IID(kIDOMDocumentIID, NS_IDOMDOCUMENT_IID);
class nsDocumentFragment : public nsIContent,
public nsIDOMDocumentFragment,
public nsIScriptObjectOwner
{
public:
nsDocumentFragment(nsIDocument* aOwnerDocument);
virtual ~nsDocumentFragment();
// nsISupports
NS_DECL_ISUPPORTS
// interface nsIDOMDocumentFragment
NS_IMETHOD GetNodeName(nsString& aNodeName);
NS_IMETHOD GetNodeValue(nsString& aNodeValue);
NS_IMETHOD SetNodeValue(const nsString& aNodeValue);
NS_IMETHOD GetNodeType(PRUint16* aNodeType);
NS_IMETHOD GetParentNode(nsIDOMNode** aParentNode)
{
*aParentNode = nsnull;
return NS_OK;
}
NS_IMETHOD GetChildNodes(nsIDOMNodeList** aChildNodes)
{ return mInner.GetChildNodes(aChildNodes); }
NS_IMETHOD GetFirstChild(nsIDOMNode** aFirstChild)
{ return mInner.GetFirstChild(aFirstChild); }
NS_IMETHOD GetLastChild(nsIDOMNode** aLastChild)
{ return mInner.GetLastChild(aLastChild); }
NS_IMETHOD GetPreviousSibling(nsIDOMNode** aPreviousSibling)
{
*aPreviousSibling = nsnull;
return NS_OK;
}
NS_IMETHOD GetNextSibling(nsIDOMNode** aNextSibling)
{
*aNextSibling = nsnull;
return NS_OK;
}
NS_IMETHOD GetAttributes(nsIDOMNamedNodeMap** aAttributes)
{
*aAttributes = nsnull;
return NS_OK;
}
NS_IMETHOD GetOwnerDocument(nsIDOMDocument** aOwnerDocument);
NS_IMETHOD InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild,
nsIDOMNode** aReturn)
{ return mInner.InsertBefore(aNewChild, aRefChild, aReturn); }
NS_IMETHOD ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild,
nsIDOMNode** aReturn)
{ return mInner.ReplaceChild(aNewChild, aOldChild, aReturn); }
NS_IMETHOD RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn)
{ return mInner.RemoveChild(aOldChild, aReturn); }
NS_IMETHOD AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn)
{ return mInner.AppendChild(aNewChild, aReturn); }
NS_IMETHOD HasChildNodes(PRBool* aReturn)
{ return mInner.HasChildNodes(aReturn); }
NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
// interface nsIScriptObjectOwner
NS_IMETHOD GetScriptObject(nsIScriptContext* aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void* aScriptObject);
// interface nsIContent
NS_IMETHOD ParseAttributeString(const nsString& aStr,
nsIAtom*& aName,
PRInt32& aNameSpaceID)
{ aName = nsnull;
aNameSpaceID = kNameSpaceID_None;
return NS_OK;
}
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID,
nsIAtom*& aPrefix)
{
aPrefix = nsnull;
return NS_OK;
}
NS_IMETHOD GetDocument(nsIDocument*& aResult) const
{ return mInner.GetDocument(aResult); }
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep)
{ return mInner.SetDocument(aDocument, aDeep); }
NS_IMETHOD GetParent(nsIContent*& aResult) const
{
aResult = nsnull;
return NS_OK;
}
NS_IMETHOD SetParent(nsIContent* aParent)
{ return NS_OK; }
NS_IMETHOD GetNameSpaceID(PRInt32& aResult) const
{
aResult = kNameSpaceID_None;
return NS_OK;
}
NS_IMETHOD GetTag(nsIAtom*& aResult) const
{
aResult = nsnull;
return NS_OK;
}
NS_IMETHOD CanContainChildren(PRBool& aResult) const
{ return mInner.CanContainChildren(aResult); }
NS_IMETHOD ChildCount(PRInt32& aResult) const
{ return mInner.ChildCount(aResult); }
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const
{ return mInner.ChildAt(aIndex, aResult); }
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aIndex) const
{ return mInner.IndexOf(aPossibleChild, aIndex); }
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex,
PRBool aNotify)
{ return mInner.InsertChildAt(aKid, aIndex, aNotify); }
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex,
PRBool aNotify)
{ return mInner.ReplaceChildAt(aKid, aIndex, aNotify); }
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify)
{ return mInner.AppendChildTo(aKid, aNotify); }
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify)
{ return mInner.RemoveChildAt(aIndex, aNotify); }
NS_IMETHOD IsSynthetic(PRBool& aResult)
{ return mInner.IsSynthetic(aResult); }
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
const nsString& aValue,
PRBool aNotify)
{ return NS_OK; }
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
nsString& aResult) const
{ return NS_CONTENT_ATTR_NOT_THERE; }
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
PRBool aNotify)
{ return NS_OK; }
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex,
PRInt32& aNameSpaceID,
nsIAtom*& aName) const
{
aName = nsnull;
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHOD GetAttributeCount(PRInt32& aCountResult) const
{
aCountResult = 0;
return NS_OK;
}
NS_IMETHOD List(FILE* out = stdout, PRInt32 aIndent = 0) const
{ return mInner.List(out, aIndent); }
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const
{ return NS_OK; }
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const
{ return NS_OK; }
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const
{ return NS_OK; }
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
NS_ENSURE_ARG_POINTER(aEventStatus);
*aEventStatus = nsEventStatus_eIgnore;
return NS_OK;
}
NS_IMETHOD GetContentID(PRUint32* aID) {
*aID = 0;
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHOD SetContentID(PRUint32 aID) {
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHOD RangeAdd(nsIDOMRange& aRange)
{ return mInner.RangeAdd(aRange); }
NS_IMETHOD RangeRemove(nsIDOMRange& aRange)
{ return mInner.RangeRemove(aRange); }
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const
{ return mInner.GetRangeList(aResult); }
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const {
if (!aResult) {
return NS_ERROR_NULL_POINTER;
}
#ifdef DEBUG
*aResult = sizeof(*this);
#else
*aResult = 0;
#endif
return NS_OK;
}
protected:
nsGenericContainerElement mInner;
void* mScriptObject;
nsIDocument* mOwnerDocument;
};
nsresult
NS_NewDocumentFragment(nsIDOMDocumentFragment** aInstancePtrResult,
nsIDocument* aOwnerDocument)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsDocumentFragment* it = new nsDocumentFragment(aOwnerDocument);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIDOMDocumentFragmentIID,
(void**) aInstancePtrResult);
}
nsDocumentFragment::nsDocumentFragment(nsIDocument* aOwnerDocument)
{
NS_INIT_REFCNT();
mInner.Init(this, nsnull);
mScriptObject = nsnull;
mOwnerDocument = aOwnerDocument;
NS_IF_ADDREF(mOwnerDocument);
}
nsDocumentFragment::~nsDocumentFragment()
{
NS_IF_RELEASE(mOwnerDocument);
}
NS_IMPL_ADDREF(nsDocumentFragment)
NS_IMPL_RELEASE(nsDocumentFragment)
nsresult
nsDocumentFragment::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (aIID.Equals(kISupportsIID)) {
nsIDOMDocumentFragment* tmp = this;
nsISupports* tmp2 = tmp;
*aInstancePtr = (void*) tmp2;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIDOMDocumentFragmentIID)) {
nsIDOMDocumentFragment* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIDOMNodeIID)) {
nsIDOMDocumentFragment* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIScriptObjectOwnerIID)) {
nsIScriptObjectOwner* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kIContentIID)) {
nsIContent* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMETHODIMP
nsDocumentFragment::GetNodeName(nsString& aNodeName)
{
aNodeName.SetString("#document-fragment");
return NS_OK;
}
NS_IMETHODIMP
nsDocumentFragment::GetNodeValue(nsString& aNodeValue)
{
aNodeValue.Truncate();
return NS_OK;
}
NS_IMETHODIMP
nsDocumentFragment::SetNodeValue(const nsString& aNodeValue)
{
// The node value can't be modified
return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR;
}
NS_IMETHODIMP
nsDocumentFragment::GetNodeType(PRUint16* aNodeType)
{
*aNodeType = (PRUint16)nsIDOMNode::DOCUMENT_FRAGMENT_NODE;
return NS_OK;
}
NS_IMETHODIMP
nsDocumentFragment::GetOwnerDocument(nsIDOMDocument** aOwnerDocument)
{
if (nsnull != mOwnerDocument) {
return mOwnerDocument->QueryInterface(kIDOMDocumentIID, (void **)aOwnerDocument);
}
else {
*aOwnerDocument = nsnull;
return NS_OK;
}
}
NS_IMETHODIMP
nsDocumentFragment::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsDocumentFragment* it;
it = new nsDocumentFragment(mOwnerDocument);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
//XXX mInner.CopyInnerTo(this, &it->mInner);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMETHODIMP
nsDocumentFragment::GetScriptObject(nsIScriptContext* aContext,
void** aScriptObject)
{
nsresult res = NS_OK;
if (nsnull == mScriptObject) {
nsIDOMScriptObjectFactory *factory;
res = mInner.GetScriptObjectFactory(&factory);
if (NS_OK != res) {
return res;
}
res = factory->NewScriptDocumentFragment(aContext,
(nsISupports*)(nsIDOMDocumentFragment*)this,
mOwnerDocument,
(void**)&mScriptObject);
NS_RELEASE(factory);
}
*aScriptObject = mScriptObject;
return res;
}
NS_IMETHODIMP
nsDocumentFragment::SetScriptObject(void* aScriptObject)
{
mScriptObject = aScriptObject;
return NS_OK;
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,22 @@
#include "nscore.h"
#include "nsCaretProperties.h"
//-----------------------------------------------------------------------------
nsCaretProperties::nsCaretProperties()
: mCaretWidth(eDefaultCaretWidth)
, mBlinkRate(eDefaulBlinkRate)
{
// in your platform-specific class, get data from the OS in your constructor
}
//-----------------------------------------------------------------------------
nsCaretProperties* NewCaretProperties()
{
return new nsCaretProperties();
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,571 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsGenericDOMDataNode_h___
#define nsGenericDOMDataNode_h___
#include "nsIDOMCharacterData.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIContent.h"
#include "nsTextFragment.h"
#include "nsVoidArray.h"
#include "nsINameSpaceManager.h"
#include "nsITextContent.h"
#include "nsDOMError.h"
extern const nsIID kIDOMCharacterDataIID;
extern const nsIID kIDOMNodeIID;
extern const nsIID kIDOMEventReceiverIID;
extern const nsIID kIDOMEventTargetIID;
extern const nsIID kIScriptObjectOwnerIID;
extern const nsIID kISupportsIID;
extern const nsIID kIContentIID;
class nsIDOMAttr;
class nsIDOMEventListener;
class nsIDOMNodeList;
class nsIEventListenerManager;
class nsIFrame;
class nsIStyleContext;
class nsIStyleRule;
class nsISupportsArray;
class nsIDOMText;
struct nsGenericDOMDataNode {
nsGenericDOMDataNode();
virtual ~nsGenericDOMDataNode();
void Init(nsIContent* aOuterContentObject);
// Implementation for nsIDOMNode
nsresult GetNodeValue(nsString& aNodeValue);
nsresult SetNodeValue(const nsString& aNodeValue);
nsresult GetParentNode(nsIDOMNode** aParentNode);
nsresult GetAttributes(nsIDOMNamedNodeMap** aAttributes) {
*aAttributes = nsnull;
return NS_OK;
}
nsresult GetPreviousSibling(nsIDOMNode** aPreviousSibling);
nsresult GetNextSibling(nsIDOMNode** aNextSibling);
nsresult GetChildNodes(nsIDOMNodeList** aChildNodes);
nsresult HasChildNodes(PRBool* aHasChildNodes) {
*aHasChildNodes = PR_FALSE;
return NS_OK;
}
nsresult GetFirstChild(nsIDOMNode** aFirstChild) {
*aFirstChild = nsnull;
return NS_OK;
}
nsresult GetLastChild(nsIDOMNode** aLastChild) {
*aLastChild = nsnull;
return NS_OK;
}
nsresult InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild,
nsIDOMNode** aReturn) {
return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR;
}
nsresult ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild,
nsIDOMNode** aReturn) {
return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR;
}
nsresult RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn) {
return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR;
}
nsresult AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn) {
return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR;
}
nsresult GetOwnerDocument(nsIDOMDocument** aOwnerDocument);
// Implementation for nsIDOMCharacterData
nsresult GetData(nsString& aData);
nsresult SetData(const nsString& aData);
nsresult GetLength(PRUint32* aLength);
nsresult SubstringData(PRUint32 aOffset, PRUint32 aCount, nsString& aReturn);
nsresult AppendData(const nsString& aArg);
nsresult InsertData(PRUint32 aOffset, const nsString& aArg);
nsresult DeleteData(PRUint32 aOffset, PRUint32 aCount);
nsresult ReplaceData(PRUint32 aOffset, PRUint32 aCount, const nsString& aArg);
// nsIDOMEventReceiver interface
nsresult AddEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID);
nsresult RemoveEventListenerByIID(nsIDOMEventListener* aListener,
const nsIID& aIID);
nsresult GetListenerManager(nsIEventListenerManager** aInstancePtrResult);
nsresult GetNewListenerManager(nsIEventListenerManager** aInstancePtrResult);
// nsIDOMEventTarget interface
nsresult AddEventListener(const nsString& aType, nsIDOMEventListener* aListener,
PRBool aUseCapture);
nsresult RemoveEventListener(const nsString& aType, nsIDOMEventListener* aListener,
PRBool aUseCapture);
// nsIScriptObjectOwner interface
nsresult GetScriptObject(nsIScriptContext* aContext, void** aScriptObject);
nsresult SetScriptObject(void *aScriptObject);
// Implementation for nsIContent
nsresult GetDocument(nsIDocument*& aResult) const;
nsresult SetDocument(nsIDocument* aDocument, PRBool aDeep);
nsresult GetParent(nsIContent*& aResult) const;
nsresult SetParent(nsIContent* aParent);
nsresult IsSynthetic(PRBool& aResult) {
aResult = PR_FALSE;
return NS_OK;
}
nsresult GetNameSpaceID(PRInt32& aID) const {
aID = kNameSpaceID_None;
return NS_OK;
}
nsresult ParseAttributeString(const nsString& aStr,
nsIAtom*& aName,
PRInt32& aNameSpaceID) {
aName = nsnull;
aNameSpaceID = kNameSpaceID_None;
return NS_OK;
}
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID,
nsIAtom*& aPrefix) {
aPrefix = nsnull;
return NS_OK;
}
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, const nsString& aValue,
PRBool aNotify) {
return NS_OK;
}
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, PRBool aNotify) {
return NS_OK;
}
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom *aAttribute, nsString &aResult) const {
return NS_CONTENT_ATTR_NOT_THERE;
}
nsresult GetAttributeNameAt(PRInt32 aIndex, PRInt32& aNameSpaceID,
nsIAtom*& aName) const {
aName = nsnull;
return NS_ERROR_ILLEGAL_VALUE;
}
nsresult GetAttributeCount(PRInt32& aResult) const {
aResult = 0;
return NS_OK;
}
nsresult List(FILE* out, PRInt32 aIndent) const;
nsresult HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus);
nsresult RangeAdd(nsIDOMRange& aRange);
nsresult RangeRemove(nsIDOMRange& aRange);
nsresult GetRangeList(nsVoidArray*& aResult) const;
nsresult SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult,
size_t aInstanceSize) const;
// Implementation for nsIContent
nsresult BeginConvertToXIF(nsXIFConverter& aConverter) const;
nsresult ConvertContentToXIF(nsXIFConverter& aConverter) const;
nsresult FinishConvertToXIF(nsXIFConverter& aConverter) const;
nsresult CanContainChildren(PRBool& aResult) const {
aResult = PR_FALSE;
return NS_OK;
}
nsresult ChildCount(PRInt32& aResult) const {
aResult = 0;
return NS_OK;
}
nsresult ChildAt(PRInt32 aIndex, nsIContent*& aResult) const {
aResult = nsnull;
return NS_OK;
}
nsresult IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const {
aResult = -1;
return NS_OK;
}
nsresult InsertChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify) {
return NS_OK;
}
nsresult ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify) {
return NS_OK;
}
nsresult AppendChildTo(nsIContent* aKid, PRBool aNotify) {
return NS_OK;
}
nsresult RemoveChildAt(PRInt32 aIndex, PRBool aNotify) {
return NS_OK;
}
nsresult SplitText(PRUint32 aOffset, nsIDOMText** aReturn);
nsresult GetText(const nsTextFragment** aFragmentsResult);
nsresult GetTextLength(PRInt32* aLengthResult);
nsresult CopyText(nsString& aResult);
nsresult SetText(const PRUnichar* aBuffer,
PRInt32 aLength,
PRBool aNotify);
nsresult SetText(const char* aBuffer,
PRInt32 aLength,
PRBool aNotify);
nsresult IsOnlyWhitespace(PRBool* aResult);
//----------------------------------------
void ToCString(nsString& aBuf, PRInt32 aOffset, PRInt32 aLen) const;
// Up pointer to the real content object that we are
// supporting. Sometimes there is work that we just can't do
// ourselves, so this is needed to ask the real object to do the
// work.
nsIContent* mContent;
nsIDocument* mDocument;
nsIContent* mParent;
void* mScriptObject;
nsIEventListenerManager* mListenerManager;
nsIContent* mCapturer;
nsTextFragment mText;
nsVoidArray *mRangeList;
};
//----------------------------------------------------------------------
/**
* Mostly implement the nsIDOMNode API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*
* Note that classes using this macro will need to implement:
* NS_IMETHOD GetNodeType(PRUint16* aNodeType);
* NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
*/
#define NS_IMPL_IDOMNODE_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD GetNodeName(nsString& aNodeName); \
NS_IMETHOD GetNodeValue(nsString& aNodeValue) { \
return _g.GetNodeValue(aNodeValue); \
} \
NS_IMETHOD SetNodeValue(const nsString& aNodeValue) { \
return _g.SetNodeValue(aNodeValue); \
} \
NS_IMETHOD GetNodeType(PRUint16* aNodeType); \
NS_IMETHOD GetParentNode(nsIDOMNode** aParentNode) { \
return _g.GetParentNode(aParentNode); \
} \
NS_IMETHOD GetChildNodes(nsIDOMNodeList** aChildNodes) { \
return _g.GetChildNodes(aChildNodes); \
} \
NS_IMETHOD HasChildNodes(PRBool* aHasChildNodes) { \
return _g.HasChildNodes(aHasChildNodes); \
} \
NS_IMETHOD GetFirstChild(nsIDOMNode** aFirstChild) { \
return _g.GetFirstChild(aFirstChild); \
} \
NS_IMETHOD GetLastChild(nsIDOMNode** aLastChild) { \
return _g.GetLastChild(aLastChild); \
} \
NS_IMETHOD GetPreviousSibling(nsIDOMNode** aPreviousSibling) { \
return _g.GetPreviousSibling(aPreviousSibling); \
} \
NS_IMETHOD GetNextSibling(nsIDOMNode** aNextSibling) { \
return _g.GetNextSibling(aNextSibling); \
} \
NS_IMETHOD GetAttributes(nsIDOMNamedNodeMap** aAttributes) { \
return _g.GetAttributes(aAttributes); \
} \
NS_IMETHOD InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild, \
nsIDOMNode** aReturn) { \
return _g.InsertBefore(aNewChild, aRefChild, aReturn); \
} \
NS_IMETHOD AppendChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn) { \
return _g.AppendChild(aOldChild, aReturn); \
} \
NS_IMETHOD ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild, \
nsIDOMNode** aReturn) { \
return _g.ReplaceChild(aNewChild, aOldChild, aReturn); \
} \
NS_IMETHOD RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn) { \
return _g.RemoveChild(aOldChild, aReturn); \
} \
NS_IMETHOD GetOwnerDocument(nsIDOMDocument** aOwnerDocument) { \
return _g.GetOwnerDocument(aOwnerDocument); \
} \
NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
#define NS_IMPL_IDOMCHARACTERDATA_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD GetData(nsString& aData) { \
return _g.GetData(aData); \
} \
NS_IMETHOD SetData(const nsString& aData) { \
return _g.SetData(aData); \
} \
NS_IMETHOD GetLength(PRUint32* aLength) { \
return _g.GetLength(aLength); \
} \
NS_IMETHOD SubstringData(PRUint32 aStart, PRUint32 aEnd, nsString& aReturn) { \
return _g.SubstringData(aStart, aEnd, aReturn); \
} \
NS_IMETHOD AppendData(const nsString& aData) { \
return _g.AppendData(aData); \
} \
NS_IMETHOD InsertData(PRUint32 aOffset, const nsString& aData) { \
return _g.InsertData(aOffset, aData); \
} \
NS_IMETHOD DeleteData(PRUint32 aOffset, PRUint32 aCount) { \
return _g.DeleteData(aOffset, aCount); \
} \
NS_IMETHOD ReplaceData(PRUint32 aOffset, PRUint32 aCount, \
const nsString& aData) { \
return _g.ReplaceData(aOffset, aCount, aData); \
}
/**
* Implement the nsIDOMEventReceiver API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*/
#define NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD AddEventListenerByIID(nsIDOMEventListener *aListener, \
const nsIID& aIID) { \
return _g.AddEventListenerByIID(aListener, aIID); \
} \
NS_IMETHOD RemoveEventListenerByIID(nsIDOMEventListener *aListener, \
const nsIID& aIID) { \
return _g.RemoveEventListenerByIID(aListener, aIID); \
} \
NS_IMETHOD GetListenerManager(nsIEventListenerManager** aResult) { \
return _g.GetListenerManager(aResult); \
} \
NS_IMETHOD GetNewListenerManager(nsIEventListenerManager** aResult) { \
return _g.GetNewListenerManager(aResult); \
} \
NS_IMETHOD AddEventListener(const nsString& aType, \
nsIDOMEventListener* aListener, \
PRBool aUseCapture) { \
return _g.AddEventListener(aType, aListener, aUseCapture); \
} \
NS_IMETHOD RemoveEventListener(const nsString& aType, \
nsIDOMEventListener* aListener, \
PRBool aUseCapture) { \
return _g.RemoveEventListener(aType, aListener, aUseCapture); \
}
/**
* Implement the nsIScriptObjectOwner API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*/
#define NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD GetScriptObject(nsIScriptContext* aContext, \
void** aScriptObject) { \
return _g.GetScriptObject(aContext, aScriptObject); \
} \
NS_IMETHOD SetScriptObject(void *aScriptObject) { \
return _g.SetScriptObject(aScriptObject); \
}
#define NS_IMPL_ICONTENT_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD GetDocument(nsIDocument*& aResult) const { \
return _g.GetDocument(aResult); \
} \
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep) { \
return _g.SetDocument(aDocument, aDeep); \
} \
NS_IMETHOD GetParent(nsIContent*& aResult) const { \
return _g.GetParent(aResult); \
} \
NS_IMETHOD SetParent(nsIContent* aParent) { \
return _g.SetParent(aParent); \
} \
NS_IMETHOD CanContainChildren(PRBool& aResult) const { \
return _g.CanContainChildren(aResult); \
} \
NS_IMETHOD ChildCount(PRInt32& aResult) const { \
return _g.ChildCount(aResult); \
} \
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const { \
return _g.ChildAt(aIndex, aResult); \
} \
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const { \
return _g.IndexOf(aPossibleChild, aResult); \
} \
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.InsertChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.ReplaceChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) { \
return _g.AppendChildTo(aKid, aNotify); \
} \
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) { \
return _g.RemoveChildAt(aIndex, aNotify); \
} \
NS_IMETHOD IsSynthetic(PRBool& aResult) { \
return _g.IsSynthetic(aResult); \
} \
NS_IMETHOD GetNameSpaceID(PRInt32& aID) const { \
return _g.GetNameSpaceID(aID); \
} \
NS_IMETHOD GetTag(nsIAtom*& aResult) const; \
NS_IMETHOD ParseAttributeString(const nsString& aStr, \
nsIAtom*& aName, \
PRInt32& aNameSpaceID) { \
return _g.ParseAttributeString(aStr, aName, aNameSpaceID); \
} \
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, \
nsIAtom*& aPrefix) { \
return _g.GetNameSpacePrefixFromId(aNameSpaceID, aPrefix); \
} \
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom *aAttribute, \
nsString &aResult) const { \
return _g.GetAttribute(aNameSpaceID, aAttribute, aResult); \
} \
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
const nsString& aValue, PRBool aNotify) { \
return _g.SetAttribute(aNameSpaceID, aAttribute, aValue, aNotify); \
} \
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
PRBool aNotify) { \
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
} \
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, \
PRInt32& aNameSpaceID, \
nsIAtom*& aName) const { \
return _g.GetAttributeNameAt(aIndex, aNameSpaceID, aName); \
} \
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const { \
return _g.GetAttributeCount(aResult); \
} \
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const; \
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.BeginConvertToXIF(aConverter); \
} \
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const { \
return _g.ConvertContentToXIF(aConverter); \
} \
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.FinishConvertToXIF(aConverter); \
} \
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext, \
nsEvent* aEvent, \
nsIDOMEvent** aDOMEvent, \
PRUint32 aFlags, \
nsEventStatus* aEventStatus); \
NS_IMETHOD GetContentID(PRUint32* aID); \
NS_IMETHOD SetContentID(PRUint32 aID); \
NS_IMETHOD RangeAdd(nsIDOMRange& aRange){ \
return _g.RangeAdd(aRange); \
} \
NS_IMETHOD RangeRemove(nsIDOMRange& aRange){ \
return _g.RangeRemove(aRange); \
} \
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const { \
return _g.GetRangeList(aResult); \
}
/**
* Implement the nsIDOMText API by forwarding the methods to a
* generic character data content object.
*/
#define NS_IMPL_IDOMTEXT_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD SplitText(PRUint32 aOffset, nsIDOMText** aReturn){ \
return _g.SplitText(aOffset, aReturn); \
}
/**
* Implement the nsITextContent API by forwarding the methods to a
* generic character data content object.
*/
#define NS_IMPL_ITEXTCONTENT_USING_GENERIC_DOM_DATA(_g) \
NS_IMETHOD GetText(const nsTextFragment** aFragmentsResult) { \
return mInner.GetText(aFragmentsResult); \
} \
NS_IMETHOD GetTextLength(PRInt32* aLengthResult) { \
return mInner.GetTextLength(aLengthResult); \
} \
NS_IMETHOD CopyText(nsString& aResult) { \
return mInner.CopyText(aResult); \
} \
NS_IMETHOD SetText(const PRUnichar* aBuffer, \
PRInt32 aLength, \
PRBool aNotify){ \
return mInner.SetText(aBuffer, aLength, aNotify); \
} \
NS_IMETHOD SetText(const char* aBuffer, \
PRInt32 aLength, \
PRBool aNotify){ \
return mInner.SetText(aBuffer, aLength, aNotify); \
} \
NS_IMETHOD IsOnlyWhitespace(PRBool* aResult){ \
return mInner.IsOnlyWhitespace(aResult); \
}
/**
* This macro implements the portion of query interface that is
* generic to all html content objects.
*/
#define NS_IMPL_DOM_DATA_QUERY_INTERFACE(_id, _iptr, _this) \
if (_id.Equals(kISupportsIID)) { \
nsIContent* tmp = _this; \
nsISupports* tmp2 = tmp; \
*_iptr = (void*) tmp2; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMNodeIID)) { \
nsIDOMNode* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMCharacterDataIID)) { \
nsIDOMCharacterData* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMEventReceiverIID)) { \
nsIDOMEventReceiver* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMEventTargetIID)) { \
nsIDOMEventTarget* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIScriptObjectOwnerIID)) { \
nsIScriptObjectOwner* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIContentIID)) { \
nsIContent* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
}
#endif /* nsGenericDOMDataNode_h___ */

View File

@@ -0,0 +1,89 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsGenericDOMNodeList.h"
#include "nsIDOMScriptObjectFactory.h"
#include "nsGenericElement.h"
nsGenericDOMNodeList::nsGenericDOMNodeList()
{
NS_INIT_REFCNT();
mScriptObject = nsnull;
}
nsGenericDOMNodeList::~nsGenericDOMNodeList()
{
}
nsresult
nsGenericDOMNodeList::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (NULL == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
static NS_DEFINE_IID(kIDOMNodeListIID, NS_IDOMNODELIST_IID);
if (aIID.Equals(kIDOMNodeListIID)) {
*aInstancePtr = (void*)(nsIDOMNodeList*)this;
AddRef();
return NS_OK;
}
if (aIID.Equals(kIScriptObjectOwnerIID)) {
*aInstancePtr = (void*)(nsIScriptObjectOwner*)this;
AddRef();
return NS_OK;
}
if (aIID.Equals(kISupportsIID)) {
*aInstancePtr = (void*)(nsISupports*)(nsIDOMNodeList*)this;
AddRef();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ADDREF(nsGenericDOMNodeList)
NS_IMPL_RELEASE(nsGenericDOMNodeList)
NS_IMETHODIMP
nsGenericDOMNodeList::GetScriptObject(nsIScriptContext *aContext, void** aScriptObject)
{
nsresult res = NS_OK;
if (nsnull == mScriptObject) {
nsIDOMScriptObjectFactory *factory;
res = nsGenericElement::GetScriptObjectFactory(&factory);
if (NS_OK != res) {
return res;
}
res = factory->NewScriptNodeList(aContext, (nsISupports *)(nsIDOMNodeList *)this, nsnull, (void**)&mScriptObject);
NS_RELEASE(factory);
}
*aScriptObject = mScriptObject;
return res;
}
NS_IMETHODIMP
nsGenericDOMNodeList::SetScriptObject(void *aScriptObject)
{
mScriptObject = aScriptObject;
return NS_OK;
}

View File

@@ -0,0 +1,60 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsGenericDOMNodeList_h__
#define nsGenericDOMNodeList_h__
#include "nsISupports.h"
#include "nsIDOMNodeList.h"
#include "nsIScriptObjectOwner.h"
/**
* This is a base class for a generic DOM Node List. The base class
* provides implementations for nsISupports and nsIScriptObjectOwner,
* but it is up to the subclass to implement the core node list
* methods:
* GetLength
* Item
*
*/
class nsGenericDOMNodeList : public nsIDOMNodeList,
public nsIScriptObjectOwner
{
public:
nsGenericDOMNodeList();
virtual ~nsGenericDOMNodeList();
NS_DECL_ISUPPORTS
NS_IMETHOD GetScriptObject(nsIScriptContext *aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// The following need to be defined in the subclass
// nsIDOMNodeList interface
NS_IMETHOD GetLength(PRUint32* aLength)=0;
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn)=0;
protected:
void* mScriptObject;
};
#endif // nsGenericDOMNodeList_h__

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,929 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsGenericElement_h___
#define nsGenericElement_h___
#include "nsIContent.h"
#include "nsIDOMAttr.h"
#include "nsIDOMNamedNodeMap.h"
#include "nsIDOMElement.h"
#include "nsIDOMNodeList.h"
#include "nsVoidArray.h"
#include "nsIScriptObjectOwner.h"
#include "nsIJSScriptObject.h"
#include "nsILinkHandler.h"
#include "nsGenericDOMNodeList.h"
extern const nsIID kIDOMNodeIID;
extern const nsIID kIDOMElementIID;
extern const nsIID kIDOMEventReceiverIID;
extern const nsIID kIDOMEventTargetIID;
extern const nsIID kIScriptObjectOwnerIID;
extern const nsIID kIJSScriptObjectIID;
extern const nsIID kISupportsIID;
extern const nsIID kIContentIID;
class nsIDOMAttr;
class nsIDOMEventListener;
class nsIEventListenerManager;
class nsIFrame;
class nsISupportsArray;
class nsIDOMScriptObjectFactory;
class nsDOMCSSDeclaration;
class nsIDOMCSSStyleDeclaration;
class nsDOMAttributeMap;
class nsIURI;
// Class that holds the child list of a content element and also
// implements the nsIDOMNodeList interface.
class nsChildContentList : public nsGenericDOMNodeList
{
public:
nsChildContentList(nsIContent *aContent);
virtual ~nsChildContentList();
// nsIDOMNodeList interface
NS_DECL_IDOMNODELIST
void DropReference();
private:
nsIContent *mContent;
};
// There are a set of DOM- and scripting-specific instance variables
// that may only be instantiated when a content object is accessed
// through the DOM. Rather than burn actual slots in the content
// objects for each of these instance variables, we put them off
// in a side structure that's only allocated when the content is
// accessed through the DOM.
typedef struct {
void *mScriptObject;
nsChildContentList *mChildNodes;
nsDOMCSSDeclaration *mStyle;
nsDOMAttributeMap* mAttributeMap;
nsVoidArray *mRangeList;
nsIContent* mCapturer;
} nsDOMSlots;
class nsGenericElement : public nsIJSScriptObject {
public:
nsGenericElement();
#if 1
virtual // XXX temporary until vidur fixes this up
#endif
~nsGenericElement();
void Init(nsIContent* aOuterContentObject, nsIAtom* aTag);
// Implementation for nsIDOMNode
nsresult GetNodeName(nsString& aNodeName);
nsresult GetNodeValue(nsString& aNodeValue);
nsresult SetNodeValue(const nsString& aNodeValue);
nsresult GetNodeType(PRUint16* aNodeType);
nsresult GetParentNode(nsIDOMNode** aParentNode);
nsresult GetAttributes(nsIDOMNamedNodeMap** aAttributes);
nsresult GetPreviousSibling(nsIDOMNode** aPreviousSibling);
nsresult GetNextSibling(nsIDOMNode** aNextSibling);
nsresult GetOwnerDocument(nsIDOMDocument** aOwnerDocument);
// Implementation for nsIDOMElement
nsresult GetTagName(nsString& aTagName);
nsresult GetAttribute(const nsString& aName, nsString& aReturn);
nsresult SetAttribute(const nsString& aName, const nsString& aValue);
nsresult RemoveAttribute(const nsString& aName);
nsresult GetAttributeNode(const nsString& aName,
nsIDOMAttr** aReturn);
nsresult SetAttributeNode(nsIDOMAttr* aNewAttr, nsIDOMAttr** aReturn);
nsresult RemoveAttributeNode(nsIDOMAttr* aOldAttr, nsIDOMAttr** aReturn);
nsresult GetElementsByTagName(const nsString& aTagname,
nsIDOMNodeList** aReturn);
nsresult Normalize();
// nsIDOMEventReceiver interface
nsresult AddEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID);
nsresult RemoveEventListenerByIID(nsIDOMEventListener* aListener,
const nsIID& aIID);
nsresult GetListenerManager(nsIEventListenerManager** aInstancePtrResult);
nsresult GetNewListenerManager(nsIEventListenerManager** aInstancePtrResult);
// nsIDOMEventTarget interface
nsresult AddEventListener(const nsString& aType, nsIDOMEventListener* aListener,
PRBool aUseCapture);
nsresult RemoveEventListener(const nsString& aType, nsIDOMEventListener* aListener,
PRBool aUseCapture);
// nsIScriptObjectOwner interface
nsresult GetScriptObject(nsIScriptContext* aContext, void** aScriptObject);
nsresult SetScriptObject(void *aScriptObject);
// Implementation for nsIContent
nsresult GetDocument(nsIDocument*& aResult) const;
nsresult SetDocument(nsIDocument* aDocument, PRBool aDeep);
nsresult GetParent(nsIContent*& aResult) const;
nsresult SetParent(nsIContent* aParent);
nsresult IsSynthetic(PRBool& aResult) {
aResult = PR_FALSE;
return NS_OK;
}
nsresult GetNameSpaceID(PRInt32& aNameSpaceID) const;
nsresult GetTag(nsIAtom*& aResult) const;
nsresult HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus);
nsresult GetContentID(PRUint32* aID) {
*aID = mContentID;
return NS_OK;
}
nsresult SetContentID(PRUint32 aID) {
mContentID = aID;
return NS_OK;
}
nsresult RangeAdd(nsIDOMRange& aRange);
nsresult RangeRemove(nsIDOMRange& aRange);
nsresult GetRangeList(nsVoidArray*& aResult) const;
nsresult SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult,
size_t aInstanceSize) const;
// Implementation for nsIJSScriptObject
PRBool AddProperty(JSContext *aContext, jsval aID, jsval *aVp);
PRBool DeleteProperty(JSContext *aContext, jsval aID, jsval *aVp);
PRBool GetProperty(JSContext *aContext, jsval aID, jsval *aVp);
PRBool SetProperty(JSContext *aContext, jsval aID, jsval *aVp);
PRBool EnumerateProperty(JSContext *aContext);
PRBool Resolve(JSContext *aContext, jsval aID);
PRBool Convert(JSContext *aContext, jsval aID);
void Finalize(JSContext *aContext);
// Implementation for nsISupports
NS_IMETHOD QueryInterface(REFNSIID aIID,
void** aInstancePtr);
NS_IMETHOD_(nsrefcnt) AddRef(void);
NS_IMETHOD_(nsrefcnt) Release(void);
//----------------------------------------
nsresult RenderFrame(nsIPresContext*);
nsresult AddScriptEventListener(nsIAtom* aAttribute,
const nsString& aValue,
REFNSIID aIID);
void TriggerLink(nsIPresContext* aPresContext,
nsLinkVerb aVerb,
nsIURI* aBaseURL,
const nsString& aURLSpec,
const nsString& aTargetSpec,
PRBool aClick);
nsresult JoinTextNodes(nsIContent* aFirst,
nsIContent* aSecond);
static void SetDocumentInChildrenOf(nsIContent* aContent,
nsIDocument* aDocument);
static nsresult GetScriptObjectFactory(nsIDOMScriptObjectFactory **aFactory);
static nsIDOMScriptObjectFactory *gScriptObjectFactory;
static nsIAtom* CutNameSpacePrefix(nsString& aString);
nsDOMSlots *GetDOMSlots();
// Up pointer to the real content object that we are
// supporting. Sometimes there is work that we just can't do
// ourselves, so this is needed to ask the real object to do the
// work.
nsIContent* mContent;
nsIDocument* mDocument;
nsIContent* mParent;
nsIAtom* mTag;
nsIEventListenerManager* mListenerManager;
nsDOMSlots *mDOMSlots;
PRUint32 mContentID;
};
class nsGenericContainerElement : public nsGenericElement {
public:
nsGenericContainerElement();
~nsGenericContainerElement();
nsresult CopyInnerTo(nsIContent* aSrcContent,
nsGenericContainerElement* aDest,
PRBool aDeep);
// Remainder of nsIDOMHTMLElement (and nsIDOMNode)
nsresult GetAttribute(const nsString& aName, nsString& aReturn)
{
return nsGenericElement::GetAttribute(aName, aReturn);
}
nsresult SetAttribute(const nsString& aName, const nsString& aValue)
{
return nsGenericElement::SetAttribute(aName, aValue);
}
nsresult GetChildNodes(nsIDOMNodeList** aChildNodes);
nsresult HasChildNodes(PRBool* aHasChildNodes);
nsresult GetFirstChild(nsIDOMNode** aFirstChild);
nsresult GetLastChild(nsIDOMNode** aLastChild);
nsresult InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild,
nsIDOMNode** aReturn);
nsresult ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild,
nsIDOMNode** aReturn);
nsresult RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn);
nsresult AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn);
// Remainder of nsIContent
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
const nsString& aValue,
PRBool aNotify);
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
nsString& aResult) const;
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
PRBool aNotify);
nsresult GetAttributeNameAt(PRInt32 aIndex,
PRInt32& aNameSpaceID,
nsIAtom*& aName) const;
nsresult GetAttributeCount(PRInt32& aResult) const;
nsresult List(FILE* out, PRInt32 aIndent) const;
nsresult CanContainChildren(PRBool& aResult) const;
nsresult ChildCount(PRInt32& aResult) const;
nsresult ChildAt(PRInt32 aIndex, nsIContent*& aResult) const;
nsresult IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const;
nsresult InsertChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify);
nsresult ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify);
nsresult AppendChildTo(nsIContent* aKid, PRBool aNotify);
nsresult RemoveChildAt(PRInt32 aIndex, PRBool aNotify);
nsresult BeginConvertToXIF(nsXIFConverter& aConverter) const;
nsresult ConvertContentToXIF(nsXIFConverter& aConverter) const;
nsresult FinishConvertToXIF(nsXIFConverter& aConverter) const;
nsresult SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult,
size_t aInstanceSize) const;
void ListAttributes(FILE* out) const;
nsVoidArray* mAttributes;
nsVoidArray mChildren;
};
//----------------------------------------------------------------------
/**
* Mostly implement the nsIDOMNode API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*
* Note that classes using this macro will need to implement:
* NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
*/
#define NS_IMPL_IDOMNODE_USING_GENERIC(_g) \
NS_IMETHOD GetNodeName(nsString& aNodeName) { \
return _g.GetNodeName(aNodeName); \
} \
NS_IMETHOD GetNodeValue(nsString& aNodeValue) { \
return _g.GetNodeValue(aNodeValue); \
} \
NS_IMETHOD SetNodeValue(const nsString& aNodeValue) { \
return _g.SetNodeValue(aNodeValue); \
} \
NS_IMETHOD GetNodeType(PRUint16* aNodeType) { \
return _g.GetNodeType(aNodeType); \
} \
NS_IMETHOD GetParentNode(nsIDOMNode** aParentNode) { \
return _g.GetParentNode(aParentNode); \
} \
NS_IMETHOD GetChildNodes(nsIDOMNodeList** aChildNodes) { \
return _g.GetChildNodes(aChildNodes); \
} \
NS_IMETHOD HasChildNodes(PRBool* aHasChildNodes) { \
return _g.HasChildNodes(aHasChildNodes); \
} \
NS_IMETHOD GetFirstChild(nsIDOMNode** aFirstChild) { \
return _g.GetFirstChild(aFirstChild); \
} \
NS_IMETHOD GetLastChild(nsIDOMNode** aLastChild) { \
return _g.GetLastChild(aLastChild); \
} \
NS_IMETHOD GetPreviousSibling(nsIDOMNode** aPreviousSibling) { \
return _g.GetPreviousSibling(aPreviousSibling); \
} \
NS_IMETHOD GetNextSibling(nsIDOMNode** aNextSibling) { \
return _g.GetNextSibling(aNextSibling); \
} \
NS_IMETHOD GetAttributes(nsIDOMNamedNodeMap** aAttributes) { \
return _g.GetAttributes(aAttributes); \
} \
NS_IMETHOD InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild, \
nsIDOMNode** aReturn) { \
return _g.InsertBefore(aNewChild, aRefChild, aReturn); \
} \
NS_IMETHOD AppendChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn) { \
return _g.AppendChild(aOldChild, aReturn); \
} \
NS_IMETHOD ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild, \
nsIDOMNode** aReturn) { \
return _g.ReplaceChild(aNewChild, aOldChild, aReturn); \
} \
NS_IMETHOD RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn) { \
return _g.RemoveChild(aOldChild, aReturn); \
} \
NS_IMETHOD GetOwnerDocument(nsIDOMDocument** aOwnerDocument) { \
return _g.GetOwnerDocument(aOwnerDocument); \
} \
NS_IMETHOD CloneNode(PRBool aDeep, nsIDOMNode** aReturn);
/**
* Implement the nsIDOMElement API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*/
#define NS_IMPL_IDOMELEMENT_USING_GENERIC(_g) \
NS_IMETHOD GetTagName(nsString& aTagName) { \
return _g.GetTagName(aTagName); \
} \
NS_IMETHOD GetAttribute(const nsString& aName, nsString& aReturn) { \
return _g.GetAttribute(aName, aReturn); \
} \
NS_IMETHOD SetAttribute(const nsString& aName, const nsString& aValue) { \
return _g.SetAttribute(aName, aValue); \
} \
NS_IMETHOD RemoveAttribute(const nsString& aName) { \
return _g.RemoveAttribute(aName); \
} \
NS_IMETHOD GetAttributeNode(const nsString& aName, \
nsIDOMAttr** aReturn) { \
return _g.GetAttributeNode(aName, aReturn); \
} \
NS_IMETHOD SetAttributeNode(nsIDOMAttr* aNewAttr, nsIDOMAttr** aReturn) { \
return _g.SetAttributeNode(aNewAttr, aReturn); \
} \
NS_IMETHOD RemoveAttributeNode(nsIDOMAttr* aOldAttr, nsIDOMAttr** aReturn) {\
return _g.RemoveAttributeNode(aOldAttr, aReturn); \
} \
NS_IMETHOD GetElementsByTagName(const nsString& aTagname, \
nsIDOMNodeList** aReturn) { \
return _g.GetElementsByTagName(aTagname, aReturn); \
} \
NS_IMETHOD Normalize() { \
return _g.Normalize(); \
}
/**
* Implement the nsIDOMEventReceiver API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*/
#define NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(_g) \
NS_IMETHOD AddEventListenerByIID(nsIDOMEventListener *aListener, \
const nsIID& aIID) { \
return _g.AddEventListenerByIID(aListener, aIID); \
} \
NS_IMETHOD RemoveEventListenerByIID(nsIDOMEventListener *aListener, \
const nsIID& aIID) { \
return _g.RemoveEventListenerByIID(aListener, aIID); \
} \
NS_IMETHOD GetListenerManager(nsIEventListenerManager** aResult) { \
return _g.GetListenerManager(aResult); \
} \
NS_IMETHOD GetNewListenerManager(nsIEventListenerManager** aResult) { \
return _g.GetNewListenerManager(aResult); \
} \
NS_IMETHOD AddEventListener(const nsString& aType, \
nsIDOMEventListener* aListener, \
PRBool aUseCapture) { \
return _g.AddEventListener(aType, aListener, aUseCapture); \
} \
NS_IMETHOD RemoveEventListener(const nsString& aType, \
nsIDOMEventListener* aListener, \
PRBool aUseCapture) { \
return _g.RemoveEventListener(aType, aListener, aUseCapture); \
}
#define NS_IMPL_ICONTENT_USING_GENERIC(_g) \
NS_IMETHOD GetDocument(nsIDocument*& aResult) const { \
return _g.GetDocument(aResult); \
} \
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep) { \
return _g.SetDocument(aDocument, aDeep); \
} \
NS_IMETHOD GetParent(nsIContent*& aResult) const { \
return _g.GetParent(aResult); \
} \
NS_IMETHOD SetParent(nsIContent* aParent) { \
return _g.SetParent(aParent); \
} \
NS_IMETHOD CanContainChildren(PRBool& aResult) const { \
return _g.CanContainChildren(aResult); \
} \
NS_IMETHOD ChildCount(PRInt32& aResult) const { \
return _g.ChildCount(aResult); \
} \
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const { \
return _g.ChildAt(aIndex, aResult); \
} \
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const { \
return _g.IndexOf(aPossibleChild, aResult); \
} \
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.InsertChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.ReplaceChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) { \
return _g.AppendChildTo(aKid, aNotify); \
} \
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) { \
return _g.RemoveChildAt(aIndex, aNotify); \
} \
NS_IMETHOD IsSynthetic(PRBool& aResult) { \
return _g.IsSynthetic(aResult); \
} \
NS_IMETHOD GetNameSpaceID(PRInt32& aResult) const { \
return _g.GetNameSpaceID(aResult); \
} \
NS_IMETHOD GetTag(nsIAtom*& aResult) const { \
return _g.GetTag(aResult); \
} \
NS_IMETHOD ParseAttributeString(const nsString& aStr, \
nsIAtom*& aName, \
PRInt32& aNameSpaceID) { \
return _g.ParseAttributeString(aStr, aName, aNameSpaceID); \
} \
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, \
nsIAtom*& aPrefix) { \
return _g.GetNameSpacePrefixFromId(aNameSpaceID, aPrefix); \
} \
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
const nsString& aValue, PRBool aNotify) { \
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
} \
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
nsString& aResult) const { \
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
} \
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
PRBool aNotify) { \
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
} \
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, \
PRInt32& aNameSpaceID, \
nsIAtom*& aName) const { \
return _g.GetAttributeNameAt(aIndex, aNameSpaceID, aName); \
} \
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const { \
return _g.GetAttributeCount(aResult); \
} \
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const { \
return _g.List(out, aIndent); \
} \
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.BeginConvertToXIF(aConverter); \
} \
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const { \
return _g.ConvertContentToXIF(aConverter); \
} \
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.FinishConvertToXIF(aConverter); \
} \
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext, \
nsEvent* aEvent, \
nsIDOMEvent** aDOMEvent, \
PRUint32 aFlags, \
nsEventStatus* aEventStatus); \
NS_IMETHOD GetContentID(PRUint32* aID) { \
return _g.GetContentID(aID); \
} \
NS_IMETHOD SetContentID(PRUint32 aID) { \
return _g.SetContentID(aID); \
} \
NS_IMETHOD RangeAdd(nsIDOMRange& aRange) { \
return _g.RangeAdd(aRange); \
} \
NS_IMETHOD RangeRemove(nsIDOMRange& aRange) { \
return _g.RangeRemove(aRange); \
} \
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const { \
return _g.GetRangeList(aResult); \
} \
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const;
#define NS_IMPL_ICONTENT_NO_SETPARENT_USING_GENERIC(_g) \
NS_IMETHOD GetDocument(nsIDocument*& aResult) const { \
return _g.GetDocument(aResult); \
} \
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep) { \
return _g.SetDocument(aDocument, aDeep); \
} \
NS_IMETHOD GetParent(nsIContent*& aResult) const { \
return _g.GetParent(aResult); \
} \
NS_IMETHOD SetParent(nsIContent* aParent); \
NS_IMETHOD CanContainChildren(PRBool& aResult) const { \
return _g.CanContainChildren(aResult); \
} \
NS_IMETHOD ChildCount(PRInt32& aResult) const { \
return _g.ChildCount(aResult); \
} \
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const { \
return _g.ChildAt(aIndex, aResult); \
} \
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const { \
return _g.IndexOf(aPossibleChild, aResult); \
} \
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.InsertChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.ReplaceChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) { \
return _g.AppendChildTo(aKid, aNotify); \
} \
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) { \
return _g.RemoveChildAt(aIndex, aNotify); \
} \
NS_IMETHOD IsSynthetic(PRBool& aResult) { \
return _g.IsSynthetic(aResult); \
} \
NS_IMETHOD GetNameSpaceID(PRInt32& aResult) const { \
return _g.GetNameSpaceID(aResult); \
} \
NS_IMETHOD GetTag(nsIAtom*& aResult) const { \
return _g.GetTag(aResult); \
} \
NS_IMETHOD ParseAttributeString(const nsString& aStr, \
nsIAtom*& aName, \
PRInt32& aNameSpaceID) { \
return _g.ParseAttributeString(aStr, aName, aNameSpaceID); \
} \
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, \
nsIAtom*& aPrefix) { \
return _g.GetNameSpacePrefixFromId(aNameSpaceID, aPrefix); \
} \
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
const nsString& aValue, PRBool aNotify) { \
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
} \
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
nsString& aResult) const { \
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
} \
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
PRBool aNotify) { \
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
} \
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, \
PRInt32& aNameSpaceID, \
nsIAtom*& aName) const { \
return _g.GetAttributeNameAt(aIndex, aNameSpaceID, aName); \
} \
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const { \
return _g.GetAttributeCount(aResult); \
} \
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const { \
return _g.List(out, aIndent); \
} \
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.BeginConvertToXIF(aConverter); \
} \
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const { \
return _g.ConvertContentToXIF(aConverter); \
} \
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.FinishConvertToXIF(aConverter); \
} \
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext, \
nsEvent* aEvent, \
nsIDOMEvent** aDOMEvent, \
PRUint32 aFlags, \
nsEventStatus* aEventStatus); \
NS_IMETHOD GetContentID(PRUint32* aID) { \
return _g.GetContentID(aID); \
} \
NS_IMETHOD SetContentID(PRUint32 aID) { \
return _g.SetContentID(aID); \
} \
NS_IMETHOD RangeAdd(nsIDOMRange& aRange) { \
return _g.RangeAdd(aRange); \
} \
NS_IMETHOD RangeRemove(nsIDOMRange& aRange) { \
return _g.RangeRemove(aRange); \
} \
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const { \
return _g.GetRangeList(aResult); \
} \
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const;
#define NS_IMPL_ICONTENT_NO_SETDOCUMENT_USING_GENERIC(_g) \
NS_IMETHOD GetDocument(nsIDocument*& aResult) const { \
return _g.GetDocument(aResult); \
} \
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep); \
NS_IMETHOD GetParent(nsIContent*& aResult) const { \
return _g.GetParent(aResult); \
} \
NS_IMETHOD SetParent(nsIContent* aParent) { \
return _g.SetParent(aParent); \
} \
NS_IMETHOD CanContainChildren(PRBool& aResult) const { \
return _g.CanContainChildren(aResult); \
} \
NS_IMETHOD ChildCount(PRInt32& aResult) const { \
return _g.ChildCount(aResult); \
} \
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const { \
return _g.ChildAt(aIndex, aResult); \
} \
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const { \
return _g.IndexOf(aPossibleChild, aResult); \
} \
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.InsertChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.ReplaceChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) { \
return _g.AppendChildTo(aKid, aNotify); \
} \
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) { \
return _g.RemoveChildAt(aIndex, aNotify); \
} \
NS_IMETHOD IsSynthetic(PRBool& aResult) { \
return _g.IsSynthetic(aResult); \
} \
NS_IMETHOD GetNameSpaceID(PRInt32& aResult) const { \
return _g.GetNameSpaceID(aResult); \
} \
NS_IMETHOD GetTag(nsIAtom*& aResult) const { \
return _g.GetTag(aResult); \
} \
NS_IMETHOD ParseAttributeString(const nsString& aStr, \
nsIAtom*& aName, \
PRInt32& aNameSpaceID) { \
return _g.ParseAttributeString(aStr, aName, aNameSpaceID); \
} \
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, \
nsIAtom*& aPrefix) { \
return _g.GetNameSpacePrefixFromId(aNameSpaceID, aPrefix); \
} \
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
const nsString& aValue, PRBool aNotify) { \
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
} \
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
nsString& aResult) const { \
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
} \
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
PRBool aNotify) { \
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
} \
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, \
PRInt32& aNameSpaceID, \
nsIAtom*& aName) const { \
return _g.GetAttributeNameAt(aIndex, aNameSpaceID, aName); \
} \
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const { \
return _g.GetAttributeCount(aResult); \
} \
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const { \
return _g.List(out, aIndent); \
} \
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.BeginConvertToXIF(aConverter); \
} \
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const { \
return _g.ConvertContentToXIF(aConverter); \
} \
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.FinishConvertToXIF(aConverter); \
} \
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext, \
nsEvent* aEvent, \
nsIDOMEvent** aDOMEvent, \
PRUint32 aFlags, \
nsEventStatus* aEventStatus); \
NS_IMETHOD GetContentID(PRUint32* aID) { \
return _g.GetContentID(aID); \
} \
NS_IMETHOD SetContentID(PRUint32 aID) { \
return _g.SetContentID(aID); \
} \
NS_IMETHOD RangeAdd(nsIDOMRange& aRange) { \
return _g.RangeAdd(aRange); \
} \
NS_IMETHOD RangeRemove(nsIDOMRange& aRange) { \
return _g.RangeRemove(aRange); \
} \
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const { \
return _g.GetRangeList(aResult); \
} \
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const;
#define NS_IMPL_ICONTENT_NO_SETPARENT_NO_SETDOCUMENT_USING_GENERIC(_g) \
NS_IMETHOD GetDocument(nsIDocument*& aResult) const { \
return _g.GetDocument(aResult); \
} \
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep); \
NS_IMETHOD GetParent(nsIContent*& aResult) const { \
return _g.GetParent(aResult); \
} \
NS_IMETHOD SetParent(nsIContent* aParent); \
NS_IMETHOD CanContainChildren(PRBool& aResult) const { \
return _g.CanContainChildren(aResult); \
} \
NS_IMETHOD ChildCount(PRInt32& aResult) const { \
return _g.ChildCount(aResult); \
} \
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const { \
return _g.ChildAt(aIndex, aResult); \
} \
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const { \
return _g.IndexOf(aPossibleChild, aResult); \
} \
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.InsertChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, \
PRBool aNotify) { \
return _g.ReplaceChildAt(aKid, aIndex, aNotify); \
} \
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) { \
return _g.AppendChildTo(aKid, aNotify); \
} \
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) { \
return _g.RemoveChildAt(aIndex, aNotify); \
} \
NS_IMETHOD IsSynthetic(PRBool& aResult) { \
return _g.IsSynthetic(aResult); \
} \
NS_IMETHOD GetNameSpaceID(PRInt32& aResult) const { \
return _g.GetNameSpaceID(aResult); \
} \
NS_IMETHOD GetTag(nsIAtom*& aResult) const { \
return _g.GetTag(aResult); \
} \
NS_IMETHOD ParseAttributeString(const nsString& aStr, \
nsIAtom*& aName, \
PRInt32& aNameSpaceID) { \
return _g.ParseAttributeString(aStr, aName, aNameSpaceID); \
} \
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, \
nsIAtom*& aPrefix) { \
return _g.GetNameSpacePrefixFromId(aNameSpaceID, aPrefix); \
} \
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
const nsString& aValue, PRBool aNotify) { \
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
} \
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
nsString& aResult) const { \
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
} \
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
PRBool aNotify) { \
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
} \
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, \
PRInt32& aNameSpaceID, \
nsIAtom*& aName) const { \
return _g.GetAttributeNameAt(aIndex, aNameSpaceID, aName); \
} \
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const { \
return _g.GetAttributeCount(aResult); \
} \
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const { \
return _g.List(out, aIndent); \
} \
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.BeginConvertToXIF(aConverter); \
} \
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const { \
return _g.ConvertContentToXIF(aConverter); \
} \
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const { \
return _g.FinishConvertToXIF(aConverter); \
} \
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext, \
nsEvent* aEvent, \
nsIDOMEvent** aDOMEvent, \
PRUint32 aFlags, \
nsEventStatus* aEventStatus); \
NS_IMETHOD GetContentID(PRUint32* aID) { \
return _g.GetContentID(aID); \
} \
NS_IMETHOD SetContentID(PRUint32 aID) { \
return _g.SetContentID(aID); \
} \
NS_IMETHOD RangeAdd(nsIDOMRange& aRange) { \
return _g.RangeAdd(aRange); \
} \
NS_IMETHOD RangeRemove(nsIDOMRange& aRange) { \
return _g.RangeRemove(aRange); \
} \
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const { \
return _g.GetRangeList(aResult); \
} \
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const;
/**
* Implement the nsIScriptObjectOwner API by forwarding the methods to a
* generic content object
*/
#define NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(_g) \
NS_IMETHOD GetScriptObject(nsIScriptContext* aContext, \
void** aScriptObject) { \
return _g.GetScriptObject(aContext, aScriptObject); \
} \
NS_IMETHOD SetScriptObject(void *aScriptObject) { \
return _g.SetScriptObject(aScriptObject); \
}
#define NS_IMPL_CONTENT_QUERY_INTERFACE(_id, _iptr, _this, _base) \
if (_id.Equals(kISupportsIID)) { \
_base* tmp = _this; \
nsISupports* tmp2 = tmp; \
*_iptr = (void*) tmp2; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMNodeIID)) { \
nsIDOMNode* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMElementIID)) { \
nsIDOMElement* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMEventReceiverIID)) { \
nsIDOMEventReceiver* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIDOMEventTargetIID)) { \
nsIDOMEventTarget* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIScriptObjectOwnerIID)) { \
nsIScriptObjectOwner* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIContentIID)) { \
_base* tmp = _this; \
nsIContent* tmp2 = tmp; \
*_iptr = (void*) tmp2; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIJSScriptObjectIID)) { \
nsIJSScriptObject* tmp = (nsIJSScriptObject*)&mInner; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
}
#endif /* nsGenericElement_h___ */

View File

@@ -0,0 +1,478 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsINameSpaceManager.h"
#include "nsINameSpace.h"
#include "nsHashtable.h"
#include "nsVoidArray.h"
#include "nsLayoutAtoms.h"
#include "nsString.h"
#include "nsCRT.h"
static NS_DEFINE_IID(kINameSpaceManagerIID, NS_INAMESPACEMANAGER_IID);
static NS_DEFINE_IID(kINameSpaceIID, NS_INAMESPACE_IID);
static const char kXMLNSNameSpaceURI[] = "<This isn't really a namespace>";
static const char kXMLNameSpaceURI[] = "http://www.w3.org/XML/1998/namespace";
static const char kHTMLNameSpaceURI[] = "http://www.w3.org/TR/REC-html40"; // XXX?? "urn:w3-org-ns:HTML"??
//-----------------------------------------------------------
// Name Space ID table support
static PRInt32 gNameSpaceTableRefs;
static nsHashtable* gURIToIDTable;
static nsVoidArray* gURIArray;
MOZ_DECL_CTOR_COUNTER(NameSpaceURIKey);
class NameSpaceURIKey : public nsHashKey {
public:
NameSpaceURIKey(const nsString* aString)
: mString(aString)
{
MOZ_COUNT_CTOR(NameSpaceURIKey);
}
virtual ~NameSpaceURIKey(void)
{
MOZ_COUNT_DTOR(NameSpaceURIKey);
}
virtual PRUint32 HashValue(void) const
{
#if 1 // case insensitive XXX should this be case sensitive???
PRUint32 hash = 0;
const PRUnichar* string = mString->GetUnicode();
PRUnichar ch;
while ((ch = *string++) != 0) {
// FYI: hash = hash*37 + ch
ch = nsCRT::ToLower(ch);
hash = ((hash << 5) + (hash << 2) + hash) + ch;
}
return hash;
#else
if (nsnull != mString) {
return nsCRT::HashValue(mString->GetUnicode());
}
return 0;
#endif
}
virtual PRBool Equals(const nsHashKey *aKey) const
{
const nsString* other = ((const NameSpaceURIKey*)aKey)->mString;
if (nsnull != mString) {
if (nsnull != other) {
return mString->EqualsIgnoreCase(*other); // XXX case sensitive?
}
return PR_FALSE;
}
return PRBool(nsnull == other);
}
virtual nsHashKey *Clone(void) const
{
return new NameSpaceURIKey(mString);
}
const nsString* mString;
};
static void AddRefTable()
{
if (0 == gNameSpaceTableRefs++) {
NS_ASSERTION(nsnull == gURIToIDTable, "already have URI table");
NS_ASSERTION(nsnull == gURIArray, "already have URI array");
gURIToIDTable = new nsHashtable();
gURIArray = new nsVoidArray();
nsString* xmlns = new nsString(kXMLNSNameSpaceURI);
nsString* xml = new nsString(kXMLNameSpaceURI);
nsString* html = new nsString(kHTMLNameSpaceURI);
gURIArray->AppendElement(xmlns); // ordering here needs to match IDs
gURIArray->AppendElement(xml);
gURIArray->AppendElement(html);
NameSpaceURIKey xmlnsKey(xmlns);
NameSpaceURIKey xmlKey(xml);
NameSpaceURIKey htmlKey(html);
gURIToIDTable->Put(&xmlnsKey, (void*)kNameSpaceID_XMLNS);
gURIToIDTable->Put(&xmlKey, (void*)kNameSpaceID_XML);
gURIToIDTable->Put(&htmlKey, (void*)kNameSpaceID_HTML);
}
NS_ASSERTION(nsnull != gURIToIDTable, "no URI table");
NS_ASSERTION(nsnull != gURIArray, "no URI array");
}
static void ReleaseTable()
{
if (0 == --gNameSpaceTableRefs) {
delete gURIToIDTable;
PRInt32 index = gURIArray->Count();
while (0 < index--) {
nsString* str = (nsString*)gURIArray->ElementAt(index);
delete str;
}
delete gURIArray;
gURIToIDTable = nsnull;
gURIArray = nsnull;
}
}
static PRInt32 FindNameSpaceID(const nsString& aURI)
{
NS_ASSERTION(nsnull != gURIToIDTable, "no URI table");
NameSpaceURIKey key(&aURI);
void* value = gURIToIDTable->Get(&key);
if (nsnull != value) {
return PRInt32(value);
}
return kNameSpaceID_Unknown;
}
static const nsString* FindNameSpaceURI(PRInt32 aID)
{
NS_ASSERTION(nsnull != gURIArray, "no URI array");
return (const nsString*)gURIArray->ElementAt(aID - 1);
}
//-----------------------------------------------------------
// Name Space
class NameSpaceImpl : public nsINameSpace {
public:
NameSpaceImpl(nsINameSpaceManager* aManager,
NameSpaceImpl* aParent,
nsIAtom* aPrefix,
const nsString& aURI);
NameSpaceImpl(nsINameSpaceManager* aManager,
NameSpaceImpl* aParent,
nsIAtom* aPrefix,
PRInt32 aNameSpaceID);
virtual ~NameSpaceImpl();
NS_DECL_ISUPPORTS
NS_IMETHOD GetNameSpaceManager(nsINameSpaceManager*& aManager) const;
NS_IMETHOD GetNameSpaceID(PRInt32& aID) const;
NS_IMETHOD GetNameSpaceURI(nsString& aURI) const;
NS_IMETHOD GetNameSpacePrefix(nsIAtom*& aPrefix) const;
NS_IMETHOD GetParentNameSpace(nsINameSpace*& aParent) const;
NS_IMETHOD FindNameSpace(nsIAtom* aPrefix, nsINameSpace*& aNameSpace) const;
NS_IMETHOD FindNameSpaceID(nsIAtom* aPrefix, PRInt32& aNameSpaceID) const;
NS_IMETHOD FindNameSpacePrefix(PRInt32 aNameSpaceID, nsIAtom*& aPrefix) const;
NS_IMETHOD CreateChildNameSpace(nsIAtom* aPrefix, const nsString& aURI,
nsINameSpace*& aChildNameSpace);
NS_IMETHOD CreateChildNameSpace(nsIAtom* aPrefix, PRInt32 aNameSpaceID,
nsINameSpace*& aChildNameSpace);
private:
// These are not supported and are not implemented!
NameSpaceImpl(const NameSpaceImpl& aCopy);
NameSpaceImpl& operator=(const NameSpaceImpl& aCopy);
public:
nsINameSpaceManager* mManager;
NameSpaceImpl* mParent;
nsIAtom* mPrefix;
PRInt32 mID;
};
NameSpaceImpl::NameSpaceImpl(nsINameSpaceManager* aManager,
NameSpaceImpl* aParent,
nsIAtom* aPrefix,
const nsString& aURI)
: mManager(aManager),
mParent(aParent),
mPrefix(aPrefix)
{
NS_ASSERTION(nsnull != aManager, "null namespace manager");
NS_INIT_REFCNT();
NS_ADDREF(mManager);
NS_IF_ADDREF(mParent);
NS_IF_ADDREF(mPrefix);
mManager->RegisterNameSpace(aURI, mID);
}
NameSpaceImpl::NameSpaceImpl(nsINameSpaceManager* aManager,
NameSpaceImpl* aParent,
nsIAtom* aPrefix,
PRInt32 aNameSpaceID)
: mManager(aManager),
mParent(aParent),
mPrefix(aPrefix),
mID(aNameSpaceID)
{
NS_ASSERTION(nsnull != aManager, "null namespace manager");
NS_INIT_REFCNT();
NS_ADDREF(mManager);
NS_IF_ADDREF(mParent);
NS_IF_ADDREF(mPrefix);
}
NameSpaceImpl::~NameSpaceImpl()
{
NS_RELEASE(mManager);
NS_IF_RELEASE(mParent);
NS_IF_RELEASE(mPrefix);
}
NS_IMPL_ISUPPORTS(NameSpaceImpl, kINameSpaceIID)
NS_IMETHODIMP
NameSpaceImpl::GetNameSpaceManager(nsINameSpaceManager*& aManager) const
{
NS_ASSERTION(nsnull != aManager, "null namespace manager");
aManager = mManager;
NS_ADDREF(aManager);
return NS_OK;
}
NS_IMETHODIMP
NameSpaceImpl::GetNameSpaceID(PRInt32& aID) const
{
aID = mID;
return NS_OK;
}
NS_IMETHODIMP
NameSpaceImpl::GetNameSpaceURI(nsString& aURI) const
{
NS_ASSERTION(nsnull != mManager, "null namespace manager");
return mManager->GetNameSpaceURI(mID, aURI);
}
NS_IMETHODIMP
NameSpaceImpl::GetNameSpacePrefix(nsIAtom*& aPrefix) const
{
aPrefix = mPrefix;
NS_IF_ADDREF(aPrefix);
return NS_OK;
}
NS_IMETHODIMP
NameSpaceImpl::GetParentNameSpace(nsINameSpace*& aParent) const
{
aParent = mParent;
NS_IF_ADDREF(aParent);
return NS_OK;
}
NS_IMETHODIMP
NameSpaceImpl::FindNameSpace(nsIAtom* aPrefix, nsINameSpace*& aNameSpace) const
{
const NameSpaceImpl* nameSpace = this;
do {
if (aPrefix == nameSpace->mPrefix) {
aNameSpace = (nsINameSpace*)nameSpace;
NS_ADDREF(aNameSpace);
return NS_OK;
}
nameSpace = nameSpace->mParent;
}
while (nsnull != nameSpace);
aNameSpace = nsnull;
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHODIMP
NameSpaceImpl::FindNameSpaceID(nsIAtom* aPrefix, PRInt32& aNameSpaceID) const
{
const NameSpaceImpl* nameSpace = this;
do {
if (aPrefix == nameSpace->mPrefix) {
aNameSpaceID = nameSpace->mID;
return NS_OK;
}
nameSpace = nameSpace->mParent;
}
while (nsnull != nameSpace);
if (nsnull == aPrefix) {
aNameSpaceID = kNameSpaceID_None;
}
else {
aNameSpaceID = kNameSpaceID_Unknown;
}
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHODIMP
NameSpaceImpl::FindNameSpacePrefix(PRInt32 aNameSpaceID, nsIAtom*& aPrefix) const
{
const NameSpaceImpl* nameSpace = this;
do {
if (aNameSpaceID == nameSpace->mID) {
aPrefix = nameSpace->mPrefix;
NS_IF_ADDREF(aPrefix);
return NS_OK;
}
nameSpace = nameSpace->mParent;
}
while (nsnull != nameSpace);
aPrefix = nsnull;
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHODIMP
NameSpaceImpl::CreateChildNameSpace(nsIAtom* aPrefix, const nsString& aURI,
nsINameSpace*& aChildNameSpace)
{
NameSpaceImpl* child = new NameSpaceImpl(mManager, this, aPrefix, aURI);
if (child) {
return child->QueryInterface(kINameSpaceIID, (void**)&aChildNameSpace);
}
aChildNameSpace = nsnull;
return NS_ERROR_OUT_OF_MEMORY;
}
NS_IMETHODIMP
NameSpaceImpl::CreateChildNameSpace(nsIAtom* aPrefix, PRInt32 aNameSpaceID,
nsINameSpace*& aChildNameSpace)
{
if (FindNameSpaceURI(aNameSpaceID)) {
NameSpaceImpl* child = new NameSpaceImpl(mManager, this, aPrefix, aNameSpaceID);
if (child) {
return child->QueryInterface(kINameSpaceIID, (void**)&aChildNameSpace);
}
aChildNameSpace = nsnull;
return NS_ERROR_OUT_OF_MEMORY;
}
aChildNameSpace = nsnull;
return NS_ERROR_ILLEGAL_VALUE;
}
//-----------------------------------------------------------
// Name Space Manager
class NameSpaceManagerImpl : public nsINameSpaceManager {
public:
NameSpaceManagerImpl();
NS_DECL_ISUPPORTS
NS_IMETHOD CreateRootNameSpace(nsINameSpace*& aRootNameSpace);
NS_IMETHOD RegisterNameSpace(const nsString& aURI,
PRInt32& aNameSpaceID);
NS_IMETHOD GetNameSpaceURI(PRInt32 aNameSpaceID, nsString& aURI);
NS_IMETHOD GetNameSpaceID(const nsString& aURI, PRInt32& aNameSpaceID);
private:
// These are not supported and are not implemented!
NameSpaceManagerImpl(const NameSpaceManagerImpl& aCopy);
NameSpaceManagerImpl& operator=(const NameSpaceManagerImpl& aCopy);
protected:
virtual ~NameSpaceManagerImpl();
};
NameSpaceManagerImpl::NameSpaceManagerImpl()
{
NS_INIT_REFCNT();
AddRefTable();
}
NameSpaceManagerImpl::~NameSpaceManagerImpl()
{
ReleaseTable();
}
NS_IMPL_ISUPPORTS(NameSpaceManagerImpl, kINameSpaceManagerIID)
NS_IMETHODIMP
NameSpaceManagerImpl::CreateRootNameSpace(nsINameSpace*& aRootNameSpace)
{
nsresult rv = NS_ERROR_OUT_OF_MEMORY;
aRootNameSpace = nsnull;
NameSpaceImpl* xmlns = new NameSpaceImpl(this, nsnull, nsLayoutAtoms::xmlnsNameSpace, kNameSpaceID_XMLNS);
if (nsnull != xmlns) {
NameSpaceImpl* xml = new NameSpaceImpl(this, xmlns, nsLayoutAtoms::xmlNameSpace, kNameSpaceID_XML);
if (nsnull != xml) {
rv = xml->QueryInterface(kINameSpaceIID, (void**)&aRootNameSpace);
}
else {
delete xmlns;
}
}
return rv;
}
NS_IMETHODIMP
NameSpaceManagerImpl::RegisterNameSpace(const nsString& aURI,
PRInt32& aNameSpaceID)
{
PRInt32 id = FindNameSpaceID(aURI);
if (kNameSpaceID_Unknown == id) {
nsString* uri = new nsString(aURI);
gURIArray->AppendElement(uri);
id = gURIArray->Count(); // id is index + 1
NameSpaceURIKey key(uri);
gURIToIDTable->Put(&key, (void*)id);
}
aNameSpaceID = id;
return NS_OK;
}
NS_IMETHODIMP
NameSpaceManagerImpl::GetNameSpaceURI(PRInt32 aNameSpaceID, nsString& aURI)
{
const nsString* result = FindNameSpaceURI(aNameSpaceID);
if (nsnull != result) {
aURI = *result;
return NS_OK;
}
aURI.Truncate();
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHODIMP
NameSpaceManagerImpl::GetNameSpaceID(const nsString& aURI, PRInt32& aNameSpaceID)
{
aNameSpaceID = FindNameSpaceID(aURI);
return NS_OK;
}
NS_LAYOUT nsresult
NS_NewNameSpaceManager(nsINameSpaceManager** aInstancePtrResult)
{
if (aInstancePtrResult == nsnull) {
return NS_ERROR_NULL_POINTER;
}
NameSpaceManagerImpl *it = new NameSpaceManagerImpl();
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kINameSpaceManagerIID, (void **) aInstancePtrResult);
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,217 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsRange_h___
#define nsRange_h___
/*
* nsRange.h: interface of the nsRange object.
*/
#include "nsIDOMRange.h"
#include "nsIDOMNSRange.h"
#include "nsCOMPtr.h"
#include "nsIDOMDocumentFragment.h"
#include "nsIContent.h"
#include "nsIDOMNode.h"
#include "nsIScriptObjectOwner.h"
#include "prmon.h"
class nsVoidArray;
class nsRange : public nsIDOMRange,
public nsIDOMNSRange,
public nsIScriptObjectOwner
{
public:
NS_DECL_ISUPPORTS
nsRange();
virtual ~nsRange();
// nsIDOMRange interface
NS_IMETHOD GetIsPositioned(PRBool* aIsPositioned);
NS_IMETHOD GetStartParent(nsIDOMNode** aStartParent);
NS_IMETHOD GetStartOffset(PRInt32* aStartOffset);
NS_IMETHOD GetEndParent(nsIDOMNode** aEndParent);
NS_IMETHOD GetEndOffset(PRInt32* aEndOffset);
NS_IMETHOD GetIsCollapsed(PRBool* aIsCollapsed);
NS_IMETHOD GetCommonParent(nsIDOMNode** aCommonParent);
NS_IMETHOD SetStart(nsIDOMNode* aParent, PRInt32 aOffset);
NS_IMETHOD SetStartBefore(nsIDOMNode* aSibling);
NS_IMETHOD SetStartAfter(nsIDOMNode* aSibling);
NS_IMETHOD SetEnd(nsIDOMNode* aParent, PRInt32 aOffset);
NS_IMETHOD SetEndBefore(nsIDOMNode* aSibling);
NS_IMETHOD SetEndAfter(nsIDOMNode* aSibling);
NS_IMETHOD Collapse(PRBool aToStart);
NS_IMETHOD Unposition();
NS_IMETHOD SelectNode(nsIDOMNode* aN);
NS_IMETHOD SelectNodeContents(nsIDOMNode* aN);
NS_IMETHOD CompareEndPoints(PRUint16 how, nsIDOMRange* srcRange, PRInt32* ret);
NS_IMETHOD DeleteContents();
NS_IMETHOD ExtractContents(nsIDOMDocumentFragment** aReturn);
NS_IMETHOD CloneContents(nsIDOMDocumentFragment** aReturn);
NS_IMETHOD InsertNode(nsIDOMNode* aN);
NS_IMETHOD SurroundContents(nsIDOMNode* aN);
NS_IMETHOD Clone(nsIDOMRange** aReturn);
NS_IMETHOD ToString(nsString& aReturn);
// nsIDOMNSRange interface
NS_IMETHOD CreateContextualFragment(const nsString& aFragment,
nsIDOMDocumentFragment** aReturn);
NS_IMETHOD IsValidFragment(const nsString& aFragment, PRBool* aReturn);
/*BEGIN nsIScriptObjectOwner interface implementations*/
NS_IMETHOD GetScriptObject(nsIScriptContext *aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
/*END nsIScriptObjectOwner interface implementations*/
// nsRange interface extensions
static NS_METHOD OwnerGone(nsIContent* aParentNode);
static NS_METHOD OwnerChildInserted(nsIContent* aParentNode, PRInt32 aOffset);
static NS_METHOD OwnerChildRemoved(nsIContent* aParentNode, PRInt32 aOffset, nsIContent* aRemovedNode);
static NS_METHOD OwnerChildReplaced(nsIContent* aParentNode, PRInt32 aOffset, nsIContent* aReplacedNode);
static NS_METHOD TextOwnerChanged(nsIContent* aTextNode, PRInt32 aStartOffset, PRInt32 aEndOffset, PRInt32 aReplaceLength);
//private: I wish VC++ would give me a &&*@!#$ break
PRBool mIsPositioned;
PRInt32 mStartOffset;
PRInt32 mEndOffset;
nsCOMPtr<nsIDOMNode> mStartParent;
nsCOMPtr<nsIDOMNode> mEndParent;
static PRMonitor *mMonitor; // monitor to protect the following statics
static nsVoidArray *mStartAncestors; // just keeping these static to avoid reallocing the arrays.
static nsVoidArray *mEndAncestors; // the contents of these arrays are discarded across calls.
static nsVoidArray *mStartAncestorOffsets; // this also makes nsRange objects lighter weight.
static nsVoidArray *mEndAncestorOffsets; //
// no copy's or assigns
nsRange(const nsRange&);
nsRange& operator=(const nsRange&);
// helper routines
static PRBool InSameDoc(nsIDOMNode* aNode1, nsIDOMNode* aNode2);
static PRInt32 IndexOf(nsIDOMNode* aNode);
static PRInt32 FillArrayWithAncestors(nsVoidArray* aArray,nsIDOMNode* aNode);
static nsCOMPtr<nsIDOMNode> CommonParent(nsIDOMNode* aNode1, nsIDOMNode* aNode2);
static nsresult GetDOMNodeFromContent(nsIContent* inContentNode, nsCOMPtr<nsIDOMNode>* outDomNode);
static nsresult GetContentFromDOMNode(nsIDOMNode* inDomNode, nsCOMPtr<nsIContent>* outContentNode);
static nsresult PopRanges(nsIDOMNode* aDestNode, PRInt32 aOffset, nsIContent* aSourceNode);
static nsresult Lock();
static nsresult Unlock();
static nsresult CloneSibsAndParents(nsIDOMNode* parentNode,
PRInt32 nodeOffset,
nsIDOMNode* clonedNode,
nsIDOMNode* commonParent,
nsIDOMDocumentFragment* docfrag,
PRBool leftP);
nsresult DoSetRange(nsIDOMNode* aStartN, PRInt32 aStartOffset,
nsIDOMNode* aEndN, PRInt32 aEndOffset);
PRBool IsIncreasing(nsIDOMNode* aStartN, PRInt32 aStartOff,
nsIDOMNode* aEndN, PRInt32 aEndOff);
nsresult IsPointInRange(nsIDOMNode* aParent, PRInt32 aOffset, PRBool* aResult);
nsresult ComparePointToRange(nsIDOMNode* aParent, PRInt32 aOffset, PRInt32* aResult);
PRInt32 GetAncestorsAndOffsets(nsIDOMNode* aNode, PRInt32 aOffset,
nsVoidArray* aAncestorNodes, nsVoidArray* aAncestorOffsets);
nsresult AddToListOf(nsIDOMNode* aNode);
nsresult RemoveFromListOf(nsIDOMNode* aNode);
nsresult ContentOwnsUs(nsIDOMNode* domNode);
protected:
void* mScriptObject;
};
// Make a new nsIDOMRange object
nsresult NS_NewRange(nsIDOMRange** aInstancePtrResult);
/*************************************************************************************
* Utility routine to compare two "points", were a point is a node/offset pair
* Returns -1 if point1 < point2, 1, if point1 > point2,
* 0 if error or if point1 == point2.
************************************************************************************/
PRInt32 ComparePoints(nsIDOMNode* aParent1, PRInt32 aOffset1,
nsIDOMNode* aParent2, PRInt32 aOffset2);
/*************************************************************************************
* Utility routine to detect if a content node intersects a range
************************************************************************************/
PRBool IsNodeIntersectsRange(nsIContent* aNode, nsIDOMRange* aRange);
/*************************************************************************************
* Utility routine to detect if a content node starts before a range and/or
* ends after a range. If neither it is contained inside the range.
*
* XXX - callers responsibility to ensure node in same doc as range!
*
************************************************************************************/
nsresult CompareNodeToRange(nsIContent* aNode,
nsIDOMRange* aRange,
PRBool *outNodeBefore,
PRBool *outNodeAfter);
/*************************************************************************************
* Utility routine to create a pair of dom points to represent
* the start and end locations of a single node. Return false
* if we dont' succeed.
************************************************************************************/
PRBool GetNodeBracketPoints(nsIContent* aNode,
nsCOMPtr<nsIDOMNode>* outParent,
PRInt32* outStartOffset,
PRInt32* outEndOffset);
#endif /* nsRange_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,96 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsTextContentChangeData.h"
// Create a new instance of nsTextContentChangeData with a refcnt of 1
nsresult
NS_NewTextContentChangeData(nsTextContentChangeData** aResult)
{
NS_ENSURE_ARG_POINTER(aResult);
nsTextContentChangeData* it = new nsTextContentChangeData();
if (!it) {
return NS_ERROR_OUT_OF_MEMORY;
}
NS_ADDREF(it);
*aResult = it;
return NS_OK;
}
nsTextContentChangeData::nsTextContentChangeData()
: mType(Insert),
mOffset(0),
mLength(0),
mReplaceLength(0)
{
NS_INIT_REFCNT();
}
nsTextContentChangeData::~nsTextContentChangeData()
{
}
NS_IMPL_ISUPPORTS1(nsTextContentChangeData, nsITextContentChangeData);
NS_IMETHODIMP
nsTextContentChangeData::GetChangeType(ChangeType* aResult)
{
NS_ENSURE_ARG_POINTER(aResult);
*aResult = mType;
return NS_OK;
}
NS_IMETHODIMP
nsTextContentChangeData::GetReplaceData(PRInt32* aOffset,
PRInt32* aSourceLength,
PRInt32* aReplaceLength)
{
NS_ENSURE_ARG_POINTER(aOffset);
NS_ENSURE_ARG_POINTER(aSourceLength);
NS_ENSURE_ARG_POINTER(aReplaceLength);
*aOffset = mOffset;
*aSourceLength = mLength;
*aReplaceLength = mReplaceLength;
return NS_OK;
}
NS_IMETHODIMP
nsTextContentChangeData::GetInsertData(PRInt32* aOffset,
PRInt32* aInsertLength)
{
NS_ENSURE_ARG_POINTER(aOffset);
NS_ENSURE_ARG_POINTER(aInsertLength);
*aOffset = mOffset;
*aInsertLength = mLength;
return NS_OK;
}
NS_IMETHODIMP
nsTextContentChangeData::GetAppendData(PRInt32* aOffset,
PRInt32* aAppendLength)
{
NS_ENSURE_ARG_POINTER(aOffset);
NS_ENSURE_ARG_POINTER(aAppendLength);
*aOffset = mOffset;
*aAppendLength = mLength;
return NS_OK;
}

View File

@@ -0,0 +1,72 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsTextContentChangeData_h___
#define nsTextContentChangeData_h___
#include "nsITextContent.h"
class nsTextContentChangeData : public nsITextContentChangeData {
public:
friend nsresult
NS_NewTextContentChangeData(nsTextContentChangeData** aResult);
// nsISupports
NS_DECL_ISUPPORTS
// nsITextContentChangedData
NS_IMETHOD GetChangeType(ChangeType* aResult);
NS_IMETHOD GetReplaceData(PRInt32* aOffset,
PRInt32* aSourceLength,
PRInt32* aReplaceLength);
NS_IMETHOD GetInsertData(PRInt32* aOffset,
PRInt32* aInsertLength);
NS_IMETHOD GetAppendData(PRInt32* aOffset,
PRInt32* aAppendLength);
void SetData(ChangeType aType, PRInt32 aOffset, PRInt32 aLength) {
mType = aType;
mOffset = aOffset;
mLength = aLength;
}
void SetReplaceLength(PRInt32 aReplaceLength) {
mReplaceLength = aReplaceLength;
}
protected:
nsTextContentChangeData();
virtual ~nsTextContentChangeData();
ChangeType mType;
PRInt32 mOffset;
PRInt32 mLength;
PRInt32 mReplaceLength; // only used for replace type
};
// Create a new instance of nsTextContentChangeData with a refcnt of 1
extern nsresult
NS_NewTextContentChangeData(nsTextContentChangeData** aResult);
#endif /* nsTextContentChangeData_h___ */

View File

@@ -0,0 +1,245 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsTextFragment.h"
#include "nsString.h"
#include "nsCRT.h"
nsTextFragment::~nsTextFragment()
{
ReleaseText();
}
void
nsTextFragment::ReleaseText()
{
if (mState.mLength && m1b && mState.mInHeap) {
if (mState.mIs2b) {
delete [] m2b;
}
else {
delete [] m1b;
}
}
m1b = nsnull;
mState.mIs2b = 0;
mState.mInHeap = 0;
mState.mLength = 0;
}
nsTextFragment::nsTextFragment(const nsTextFragment& aOther)
: m1b(nsnull),
mAllBits(0)
{
if (aOther.Is2b()) {
SetTo(aOther.Get2b(), aOther.GetLength());
}
else {
SetTo(aOther.Get1b(), aOther.GetLength());
}
}
nsTextFragment::nsTextFragment(const char* aString)
: m1b(nsnull),
mAllBits(0)
{
SetTo(aString, strlen(aString));
}
nsTextFragment::nsTextFragment(const PRUnichar* aString)
: m1b(nsnull),
mAllBits(0)
{
SetTo(aString, nsCRT::strlen(aString));
}
nsTextFragment::nsTextFragment(const nsString& aString)
: m1b(nsnull),
mAllBits(0)
{
SetTo(aString.GetUnicode(), aString.Length());
}
nsTextFragment&
nsTextFragment::operator=(const nsTextFragment& aOther)
{
if (aOther.Is2b()) {
SetTo(aOther.Get2b(), aOther.GetLength());
}
else {
SetTo(aOther.Get1b(), aOther.GetLength());
}
return *this;
}
nsTextFragment&
nsTextFragment::operator=(const char* aString)
{
SetTo(aString, nsCRT::strlen(aString));
return *this;
}
nsTextFragment&
nsTextFragment::operator=(const PRUnichar* aString)
{
SetTo(aString, nsCRT::strlen(aString));
return *this;
}
nsTextFragment&
nsTextFragment::operator=(const nsString& aString)
{
SetTo(aString.GetUnicode(), aString.Length());
return *this;
}
void
nsTextFragment::SetTo(PRUnichar* aBuffer, PRInt32 aLength, PRBool aRelease)
{
ReleaseText();
m2b = aBuffer;
mState.mIs2b = 1;
mState.mInHeap = aRelease ? 1 : 0;
mState.mLength = aLength;
}
void
nsTextFragment::SetTo(const PRUnichar* aBuffer, PRInt32 aLength)
{
ReleaseText();
if (0 != aLength) {
// See if we need to store the data in ucs2 or not
PRBool need2 = PR_FALSE;
const PRUnichar* ucp = aBuffer;
const PRUnichar* uend = aBuffer + aLength;
while (ucp < uend) {
PRUnichar ch = *ucp++;
if (ch >> 8) {
need2 = PR_TRUE;
break;
}
}
if (need2) {
// Use ucs2 storage because we have to
PRUnichar* nt = new PRUnichar[aLength];
if (nsnull != nt) {
// Copy data
nsCRT::memcpy(nt, aBuffer, sizeof(PRUnichar) * aLength);
// Setup our fields
m2b = nt;
mState.mIs2b = 1;
mState.mInHeap = 1;
mState.mLength = aLength;
}
}
else {
// Use 1 byte storage because we can
unsigned char* nt = new unsigned char[aLength];
if (nsnull != nt) {
// Copy data
unsigned char* cp = nt;
unsigned char* end = nt + aLength;
while (cp < end) {
*cp++ = (unsigned char) *aBuffer++;
}
// Setup our fields
m1b = nt;
mState.mIs2b = 0;
mState.mInHeap = 1;
mState.mLength = aLength;
}
}
}
}
void
nsTextFragment::SetTo(const char* aBuffer, PRInt32 aLength)
{
ReleaseText();
if (0 != aLength) {
unsigned char* nt = new unsigned char[aLength];
if (nsnull != nt) {
nsCRT::memcpy(nt, aBuffer, sizeof(unsigned char) * aLength);
m1b = nt;
mState.mIs2b = 0;
mState.mInHeap = 1;
mState.mLength = aLength;
}
}
}
void
nsTextFragment::AppendTo(nsString& aString) const
{
if (mState.mIs2b) {
aString.Append(m2b, mState.mLength);
}
else {
aString.Append((char*)m1b, mState.mLength);
}
}
void
nsTextFragment::CopyTo(PRUnichar* aDest, PRInt32 aOffset, PRInt32 aCount)
{
if (aOffset < 0) aOffset = 0;
if (aOffset + aCount > GetLength()) {
aCount = mState.mLength - aOffset;
}
if (0 != aCount) {
if (mState.mIs2b) {
nsCRT::memcpy(aDest, m2b + aOffset, sizeof(PRUnichar) * aCount);
}
else {
unsigned char* cp = m1b + aOffset;
unsigned char* end = cp + aCount;
while (cp < end) {
*aDest++ = PRUnichar(*cp++);
}
}
}
}
void
nsTextFragment::CopyTo(char* aDest, PRInt32 aOffset, PRInt32 aCount)
{
if (aOffset < 0) aOffset = 0;
if (aOffset + aCount > GetLength()) {
aCount = mState.mLength - aOffset;
}
if (0 != aCount) {
if (mState.mIs2b) {
PRUnichar* cp = m2b + aOffset;
PRUnichar* end = cp + aCount;
while (cp < end) {
*aDest++ = (unsigned char) (*cp++);
}
}
else {
nsCRT::memcpy(aDest, m1b + aOffset, sizeof(char) * aCount);
}
}
}

View File

@@ -0,0 +1,221 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMText.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIContent.h"
#include "nsITextContent.h"
#include "nsGenericDOMDataNode.h"
#include "nsFrame.h"
#include "nsIDocument.h"
#include "nsCRT.h"
#include "nsLayoutAtoms.h"
static NS_DEFINE_IID(kIDOMTextIID, NS_IDOMTEXT_IID);
static NS_DEFINE_IID(kITextContentIID, NS_ITEXT_CONTENT_IID);
class nsTextNode : public nsIDOMText,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIContent,
public nsITextContent
{
public:
nsTextNode();
virtual ~nsTextNode();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC_DOM_DATA(mInner)
// nsIDOMCharacterData
NS_IMPL_IDOMCHARACTERDATA_USING_GENERIC_DOM_DATA(mInner)
// nsIDOMText
NS_IMPL_IDOMTEXT_USING_GENERIC_DOM_DATA(mInner)
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC_DOM_DATA(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC_DOM_DATA(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC_DOM_DATA(mInner)
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const {
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}
// nsITextContent
NS_IMPL_ITEXTCONTENT_USING_GENERIC_DOM_DATA(mInner)
protected:
nsGenericDOMDataNode mInner;
PRUint32 mContentID;
};
nsresult
NS_NewTextNode(nsIContent** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsTextNode* it;
NS_NEWXPCOM(it, nsTextNode);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIContentIID, (void **) aInstancePtrResult);
}
nsTextNode::nsTextNode()
{
NS_INIT_REFCNT();
mInner.Init(this);
mContentID = 0;
}
nsTextNode::~nsTextNode()
{
}
NS_IMPL_ADDREF(nsTextNode)
NS_IMPL_RELEASE(nsTextNode)
NS_IMETHODIMP
nsTextNode::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_DOM_DATA_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMTextIID)) {
nsIDOMText* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kITextContentIID)) {
nsITextContent* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMETHODIMP
nsTextNode::GetTag(nsIAtom*& aResult) const
{
aResult = nsLayoutAtoms::textTagName;
NS_ADDREF(aResult);
return NS_OK;
}
NS_IMETHODIMP
nsTextNode::GetNodeName(nsString& aNodeName)
{
aNodeName.SetString("#text");
return NS_OK;
}
NS_IMETHODIMP
nsTextNode::GetNodeType(PRUint16* aNodeType)
{
*aNodeType = (PRUint16)nsIDOMNode::TEXT_NODE;
return NS_OK;
}
NS_IMETHODIMP
nsTextNode::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsresult result = NS_OK;
nsTextNode* it;
NS_NEWXPCOM(it, nsTextNode);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
// XXX Increment the ref count before calling any
// methods. If they do a QI and then a Release()
// the instance will be deleted.
result = it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
if (NS_FAILED(result)) {
return result;
}
nsAutoString data;
result = GetData(data);
if (NS_FAILED(result)) {
NS_RELEASE(*aReturn);
return result;
}
result = it->SetData(data);
if (NS_FAILED(result)) {
NS_RELEASE(*aReturn);
return result;
}
return result;
}
NS_IMETHODIMP
nsTextNode::List(FILE* out, PRInt32 aIndent) const
{
NS_PRECONDITION(nsnull != mInner.mDocument, "bad content");
PRInt32 index;
for (index = aIndent; --index >= 0; ) fputs(" ", out);
fprintf(out, "Text@%p refcount=%d<", this, mRefCnt);
nsAutoString tmp;
mInner.ToCString(tmp, 0, mInner.mText.GetLength());
fputs(tmp, out);
fputs(">\n", out);
return NS_OK;
}
NS_IMETHODIMP
nsTextNode::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsTextNode::GetContentID(PRUint32* aID)
{
*aID = mContentID;
return NS_OK;
}
NS_IMETHODIMP
nsTextNode::SetContentID(PRUint32 aID)
{
mContentID = aID;
return NS_OK;
}

View File

@@ -0,0 +1,32 @@
#
# 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.org 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.
#
# Contributor(s):
#
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
DIRS = public src
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,27 @@
#!nmake
#
# 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.org 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.
#
# Contributor(s):
DEPTH=..\..
DIRS=public src
include <$(DEPTH)\config\rules.mak>

View File

@@ -0,0 +1,9 @@
#
# This is a list of local files which get copied to the mozilla:dist:layout directory
#
nsIEventListenerManager.h
nsIEventStateManager.h
nsIPrivateDOMEvent.h
nsIPrivateTextEvent.h
nsIPrivateTextRange.h
nsIPrivateCompositionEvent.h

View File

@@ -0,0 +1,43 @@
#
# 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.org 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.
#
# Contributor(s):
#
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = layout
EXPORTS = \
nsIEventListenerManager.h \
nsIEventStateManager.h \
nsIPrivateDOMEvent.h \
nsIPrivateTextEvent.h \
nsIPrivateTextRange.h \
nsIPrivateCompositionEvent.h \
$(NULL)
EXPORTS := $(addprefix $(srcdir)/, $(EXPORTS))
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,37 @@
#!nmake
#
# 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.org 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.
#
# Contributor(s):
DEPTH=..\..\..
EXPORTS = \
nsIEventListenerManager.h \
nsIEventStateManager.h \
nsIPrivateDOMEvent.h \
nsIPrivateTextEvent.h \
nsIPrivateTextRange.h \
nsIPrivateCompositionEvent.h \
$(NULL)
MODULE=raptor
include <$(DEPTH)\config\rules.mak>

View File

@@ -0,0 +1,141 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIEventListenerManager_h__
#define nsIEventListenerManager_h__
#include "nsGUIEvent.h"
#include "nsISupports.h"
#include "nsVoidArray.h"
class nsIPresContext;
class nsIDOMEventListener;
class nsIScriptObjectOwner;
/*
* Event listener manager interface.
*/
#define NS_IEVENTLISTENERMANAGER_IID \
{ /* cd91bcf0-ded9-11d1-bd85-00805f8ae3f4 */ \
0xcd91bcf0, 0xded9, 0x11d1, \
{0xbd, 0x85, 0x00, 0x80, 0x5f, 0x8a, 0xe3, 0xf4} }
class nsIEventListenerManager : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IEVENTLISTENERMANAGER_IID; return iid; }
/**
* Retrieves events listeners of all types.
* @param
*/
virtual nsresult GetEventListeners(nsVoidArray **aListeners, const nsIID& aIID) = 0;
/**
* Sets events listeners of all types.
* @param an event listener
*/
virtual nsresult AddEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID, PRInt32 flags) = 0;
/**
* Removes events listeners of all types.
* @param an event listener
*/
virtual nsresult RemoveEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID, PRInt32 flags) = 0;
/**
* Sets events listeners of all types.
* @param an event listener
*/
virtual nsresult AddEventListenerByType(nsIDOMEventListener *aListener, const nsString& type, PRInt32 flags) = 0;
/**
* Removes events listeners of all types.
* @param an event listener
*/
virtual nsresult RemoveEventListenerByType(nsIDOMEventListener *aListener, const nsString& type, PRInt32 flags) = 0;
/**
* Creates a script event listener for the given script object with name mName and function
* body mFunc.
* @param an event listener
*/
virtual nsresult AddScriptEventListener(nsIScriptContext*aContext,
nsIScriptObjectOwner *aScriptObjectOwner,
nsIAtom *aName,
const nsString& aFunc,
REFNSIID aIID,
PRBool aDeferCompilation) = 0;
/**
* Registers an event listener that already exists on the given script object with the event
* listener manager.
* @param an event listener
*/
virtual nsresult RegisterScriptEventListener(nsIScriptContext *aContext,
nsIScriptObjectOwner *aScriptObjectOwner,
nsIAtom* aName,
REFNSIID aIID) = 0;
/**
* Causes a check for event listeners and processing by them if they exist.
* Event flags live in nsGUIEvent.h
* @param an event listener
*/
virtual nsresult HandleEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus) = 0;
/**
* Creates a DOM event that can subsequently be passed into HandleEvent.
* (used rarely in the situation where methods on the event need to be
* invoked prior to the processing of the event).
*/
virtual nsresult CreateEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent) = 0;
/**
* Captures all events designated for descendant objects at the current level.
* @param an event listener
*/
virtual nsresult CaptureEvent(nsIDOMEventListener *aListener) = 0;
/**
* Releases all events designated for descendant objects at the current level.
* @param an event listener
*/
virtual nsresult ReleaseEvent(nsIDOMEventListener *aListener) = 0;
/**
* Removes all event listeners registered by this instance of the listener
* manager.
*/
virtual nsresult RemoveAllListeners(PRBool aScriptOnly) = 0;
};
extern NS_HTML nsresult NS_NewEventListenerManager(nsIEventListenerManager** aInstancePtrResult);
#endif // nsIEventListenerManager_h__

View File

@@ -0,0 +1,87 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIEventStateManager_h__
#define nsIEventStateManager_h__
#include "nsGUIEvent.h"
#include "nsISupports.h"
#include "nsVoidArray.h"
class nsIContent;
class nsIPresContext;
class nsIDOMEvent;
class nsIFrame;
class nsIView;
/*
* Event listener manager interface.
*/
#define NS_IEVENTSTATEMANAGER_IID \
{ /* 80a98c80-2036-11d2-bd89-00805f8ae3f4 */ \
0x80a98c80, 0x2036, 0x11d2, \
{0xbd, 0x89, 0x00, 0x80, 0x5f, 0x8a, 0xe3, 0xf4} }
class nsIEventStateManager : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IEVENTSTATEMANAGER_IID; return iid; }
NS_IMETHOD PreHandleEvent(nsIPresContext* aPresContext,
nsGUIEvent *aEvent,
nsIFrame* aTargetFrame,
nsEventStatus* aStatus,
nsIView* aView) = 0;
NS_IMETHOD PostHandleEvent(nsIPresContext* aPresContext,
nsGUIEvent *aEvent,
nsIFrame* aTargetFrame,
nsEventStatus* aStatus,
nsIView* aView) = 0;
NS_IMETHOD SetPresContext(nsIPresContext* aPresContext) = 0;
NS_IMETHOD ClearFrameRefs(nsIFrame* aFrame) = 0;
NS_IMETHOD GetEventTarget(nsIFrame **aFrame) = 0;
NS_IMETHOD GetEventTargetContent(nsEvent* aEvent, nsIContent** aContent) = 0;
NS_IMETHOD GetEventRelatedContent(nsIContent** aContent) = 0;
NS_IMETHOD GetContentState(nsIContent *aContent, PRInt32& aState) = 0;
NS_IMETHOD SetContentState(nsIContent *aContent, PRInt32 aState) = 0;
NS_IMETHOD GetFocusedContent(nsIContent **aContent) = 0;
NS_IMETHOD SetFocusedContent(nsIContent* aContent) = 0;
// Cross ESM methods, doesn't matter what instance you call it from
NS_IMETHOD GetFocusedEventTarget(nsIFrame **aFrame) = 0;
// This is an experiement and may be temporary
NS_IMETHOD ConsumeFocusEvents(PRBool aDoConsume) = 0;
};
#define NS_EVENT_STATE_UNSPECIFIED 0x0000
#define NS_EVENT_STATE_ACTIVE 0x0001 // mouse is down on content
#define NS_EVENT_STATE_FOCUS 0x0002 // content has focus
#define NS_EVENT_STATE_HOVER 0x0004 // mouse is hovering over content
#define NS_EVENT_STATE_DRAGOVER 0x0008 // drag is hovering over content
#endif // nsIEventStateManager_h__

View File

@@ -0,0 +1,43 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIPrivateCompositionEvent_h__
#define nsIPrivateCompositionEvent_h__
#include "nsGUIEvent.h"
#include "nsISupports.h"
// {ECF6BEF1-5F0C-11d3-9EB3-0060089FE59B}
#define NS_IPRIVATECOMPOSITIONEVENT_IID \
{ 0xecf6bef1, 0x5f0c, 0x11d3, \
{ 0x9e, 0xb3, 0x0, 0x60, 0x8, 0x9f, 0xe5, 0x9b }}
class nsIPrivateCompositionEvent : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IPRIVATECOMPOSITIONEVENT_IID; return iid; }
NS_IMETHOD GetCompositionReply(struct nsTextEventReply** aReply) = 0;
};
#endif // nsIPrivateCompositionEvent_h__

View File

@@ -0,0 +1,54 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIPrivateDOMEvent_h__
#define nsIPrivateDOMEvent_h__
#include "nsGUIEvent.h"
#include "nsISupports.h"
class nsIPresContext;
/*
* Event listener manager interface.
*/
#define NS_IPRIVATEDOMEVENT_IID \
{ /* 80a98c80-2036-11d2-bd89-00805f8ae3f4 */ \
0x80a98c80, 0x2036, 0x11d2, \
{0xbd, 0x89, 0x00, 0x80, 0x5f, 0x8a, 0xe3, 0xf4} }
class nsIDOMNode;
class nsIDOMEvent;
class nsIPrivateDOMEvent : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IPRIVATEDOMEVENT_IID; return iid; }
NS_IMETHOD DuplicatePrivateData() = 0;
NS_IMETHOD SetTarget(nsIDOMNode* aNode) = 0;
};
extern nsresult NS_NewDOMEvent(nsIDOMEvent** aInstancePtrResult, nsIPresContext* aPresContext, nsEvent *aEvent);
extern nsresult NS_NewDOMUIEvent(nsIDOMEvent** aInstancePtrResult, nsIPresContext* aPresContext, nsEvent *aEvent);
#endif // nsIPrivateDOMEvent_h__

View File

@@ -0,0 +1,46 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIPrivateTextEvent_h__
#define nsIPrivateTextEvent_h__
#include "nsGUIEvent.h"
#include "nsISupports.h"
#include "nsIPrivateTextRange.h"
#define NS_IPRIVATETEXTEVENT_IID \
{ /* 37B69251-4ACE-11d3-9EA6-0060089FE59B */ \
0x37b69251, 0x4ace, 0x11d3, \
{0x9e, 0xa6, 0x0, 0x60, 0x8, 0x9f, 0xe5, 0x9b} }
class nsIPrivateTextEvent : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IPRIVATETEXTEVENT_IID; return iid; }
NS_IMETHOD GetText(nsString& aText) = 0;
NS_IMETHOD GetInputRange(nsIPrivateTextRangeList** aInputRange) = 0;
NS_IMETHOD GetEventReply(struct nsTextEventReply** aReply) = 0;
};
#endif // nsIPrivateTextEvent_h__

View File

@@ -0,0 +1,66 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIPrivateTextRange_h__
#define nsIPrivateTextRange_h__
#include "nsISupports.h"
#include "nsString.h"
#define NS_IPRIVATETEXTRANGE_IID \
{0xb471ab41, 0x2a79, 0x11d3, \
{ 0x9e, 0xa4, 0x0, 0x60, 0x8, 0x9f, 0xe5, 0x9b } }
class nsIPrivateTextRange : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IPRIVATETEXTRANGE_IID; return iid; }
enum {
TEXTRANGE_CARETPOSITION = 1,
TEXTRANGE_RAWINPUT = 2,
TEXTRANGE_SELECTEDRAWTEXT = 3,
TEXTRANGE_CONVERTEDTEXT = 4,
TEXTRANGE_SELECTEDCONVERTEDTEXT = 5
};
NS_IMETHOD GetRangeStart(PRUint16* aRangeStart)=0;
NS_IMETHOD SetRangeStart(PRUint16 aRangeStart)=0;
NS_IMETHOD GetRangeEnd(PRUint16* aRangeEnd)=0;
NS_IMETHOD SetRangeEnd(PRUint16 aRangeEnd)=0;
NS_IMETHOD GetRangeType(PRUint16* aRangeType)=0;
NS_IMETHOD SetRangeType(PRUint16 aRangeType)=0;
};
#define NS_IPRIVATETEXTRANGELIST_IID \
{ 0x1ee9d531, 0x2a79, 0x11d3, \
{ 0x9e, 0xa4, 0x0, 0x60, 0x8, 0x9f, 0xe5, 0x9b} }
class nsIPrivateTextRangeList : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IPRIVATETEXTRANGELIST_IID; return iid; }
NS_IMETHOD GetLength(PRUint16* aLength)=0;
NS_IMETHOD Item(PRUint16 aIndex, nsIPrivateTextRange** aReturn)=0;
};
#endif // nsIPrivateTextRange_h__

View File

@@ -0,0 +1,7 @@
#
# This is a list of local files which get copied to the mozilla:dist:layout directory
#
nsEventListenerManager.h
nsEventStateManager.h
nsDOMEvent.h
nsDOMEventsIIDs.h

View File

@@ -0,0 +1,61 @@
#
# 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.org 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.
#
# Contributor(s):
#
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = layout
LIBRARY_NAME = raptorevents_s
REQUIRES = xpcom raptor dom js netlib
CPPSRCS = \
nsEventListenerManager.cpp \
nsEventStateManager.cpp \
nsDOMEvent.cpp \
nsDOMEventsIIDs.cpp \
nsPrivateTextRange.cpp \
$(NULL)
EXPORTS = \
nsEventListenerManager.h \
nsEventStateManager.h \
nsDOMEvent.h \
nsDOMEventsIIDs.h \
nsPrivateTextRange.h \
$(NULL)
EXPORTS := $(addprefix $(srcdir)/, $(EXPORTS))
# we don't want the shared lib, but we want to force the creation of a static lib.
override NO_SHARED_LIB=1
override NO_STATIC_LIB=
include $(topsrcdir)/config/rules.mk
DEFINES += -D_IMPL_NS_HTML
INCLUDES += -I$(PUBLIC)/dom -I$(srcdir)/../../html/base/src

View File

@@ -0,0 +1,64 @@
#!nmake
#
# 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.org 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.
#
# Contributor(s):
DEPTH=..\..\..
include <$(DEPTH)\config\config.mak>
LIBRARY_NAME=raptorevents_s
MODULE=raptor
REQUIRES=xpcom raptor dom js
DEFINES=-D_IMPL_NS_HTML -DWIN32_LEAN_AND_MEAN
CPPSRCS= nsEventListenerManager.cpp \
nsEventStateManager.cpp \
nsDOMEvent.cpp \
nsDOMEventsIIDs.cpp \
nsPrivateTextRange.cpp \
$(NULL)
CPP_OBJS= .\$(OBJDIR)\nsEventListenerManager.obj \
.\$(OBJDIR)\nsEventStateManager.obj \
.\$(OBJDIR)\nsDOMEvent.obj \
.\$(OBJDIR)\nsDOMEventsIIDs.obj \
.\$(OBJDIR)\nsPrivateTextRange.obj \
$(NULL)
EXPORTS= nsEventListenerManager.h nsEventStateManager.h nsDOMEvent.h nsDOMEventsIIDs.h nsPrivateTextRange.h
LINCS=-I$(PUBLIC)\xpcom -I$(PUBLIC)\raptor \
-I$(PUBLIC)\dom -I$(PUBLIC)\js -I..\..\html\base\src -I$(PUBLIC)\netlib
LCFLAGS = \
$(LCFLAGS) \
$(DEFINES) \
$(NULL)
include <$(DEPTH)\config\rules.mak>
install:: $(LIBRARY)
$(MAKE_INSTALL) $(LIBRARY) $(DIST)\lib
clobber::
rm -f $(DIST)\lib\$(LIBRARY_NAME).lib

View File

@@ -0,0 +1,923 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsDOMEvent.h"
#include "nsIDOMNode.h"
#include "nsIEventStateManager.h"
#include "nsIFrame.h"
#include "nsIContent.h"
#include "nsIRenderingContext.h"
#include "nsIWidget.h"
#include "nsIPresShell.h"
#include "nsPrivateTextRange.h"
#include "nsIDocument.h"
#include "nsIViewManager.h"
#include "nsIPrivateCompositionEvent.h"
static NS_DEFINE_IID(kIDOMNodeIID, NS_IDOMNODE_IID);
static NS_DEFINE_IID(kIFrameIID, NS_IFRAME_IID);
static NS_DEFINE_IID(kIContentIID, NS_ICONTENT_IID);
static NS_DEFINE_IID(kIDOMEventIID, NS_IDOMEVENT_IID);
static NS_DEFINE_IID(kIDOMUIEventIID, NS_IDOMUIEVENT_IID);
static NS_DEFINE_IID(kIDOMKeyEventIID, NS_IDOMKEYEVENT_IID);
static NS_DEFINE_IID(kIDOMMouseEventIID, NS_IDOMMOUSEEVENT_IID);
static NS_DEFINE_IID(kIDOMNSUIEventIID, NS_IDOMNSUIEVENT_IID);
static NS_DEFINE_IID(kIPrivateDOMEventIID, NS_IPRIVATEDOMEVENT_IID);
static NS_DEFINE_IID(kIPrivateTextEventIID, NS_IPRIVATETEXTEVENT_IID);
static NS_DEFINE_IID(kIPrivateCompositionEventIID,NS_IPRIVATECOMPOSITIONEVENT_IID);
static char* mEventNames[] = {
"mousedown", "mouseup", "click", "dblclick", "mouseover",
"mouseout", "mousemove", "keydown", "keyup", "keypress",
"focus", "blur", "load", "unload", "abort", "error",
"submit", "reset", "change", "select", "input", "paint" ,"text",
"create", "close", "destroy", "command", "broadcast", "commandupdate",
"dragenter", "dragover", "dragexit", "dragdrop", "draggesture"
};
nsDOMEvent::nsDOMEvent(nsIPresContext* aPresContext, nsEvent* aEvent) {
mPresContext = aPresContext;
NS_ADDREF(mPresContext);
mEvent = aEvent;
mTarget = nsnull;
mText = nsnull;
mTextRange = nsnull;
if (aEvent->eventStructType ==NS_TEXT_EVENT) {
//
// extract the IME composition string
//
mText = new nsString(((nsTextEvent*)aEvent)->theText);
//
// build the range list -- ranges need to be DOM-ified since the IME transaction
// will hold a ref, the widget representation isn't persistent
//
nsIPrivateTextRange** tempTextRangeList = new nsIPrivateTextRange*[((nsTextEvent*)aEvent)->rangeCount];
if (tempTextRangeList!=nsnull) {
for(PRUint16 i=0;i<((nsTextEvent*)aEvent)->rangeCount;i++) {
nsPrivateTextRange* tempPrivateTextRange = new nsPrivateTextRange((((nsTextEvent*)aEvent)->rangeArray[i]).mStartOffset,
(((nsTextEvent*)aEvent)->rangeArray[i]).mEndOffset,
(((nsTextEvent*)aEvent)->rangeArray[i]).mRangeType);
if (tempPrivateTextRange!=nsnull) {
tempPrivateTextRange->AddRef();
tempTextRangeList[i] = (nsIPrivateTextRange*)tempPrivateTextRange;
}
}
mTextRange = (nsIPrivateTextRangeList*) new nsPrivateTextRangeList(((nsTextEvent*)aEvent)->rangeCount,tempTextRangeList);
if (mTextRange!=nsnull) mTextRange->AddRef();
}
}
NS_INIT_REFCNT();
}
nsDOMEvent::~nsDOMEvent() {
NS_RELEASE(mPresContext);
NS_IF_RELEASE(mTarget);
NS_IF_RELEASE(mTextRange);
if (mText!=nsnull)
delete mText;
}
NS_IMPL_ADDREF(nsDOMEvent)
NS_IMPL_RELEASE(nsDOMEvent)
nsresult nsDOMEvent::QueryInterface(const nsIID& aIID,
void** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null pointer");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIDOMEventIID)) {
*aInstancePtrResult = (void*) ((nsIDOMEvent*)(nsIDOMUIEvent*)(nsIDOMMouseEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIDOMUIEventIID)) {
*aInstancePtrResult = (void*) ((nsIDOMUIEvent*)(nsIDOMMouseEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIDOMMouseEventIID)) {
*aInstancePtrResult = (void*) ((nsIDOMMouseEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIDOMKeyEventIID)) {
*aInstancePtrResult = (void*) ((nsIDOMKeyEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIDOMNSUIEventIID)) {
*aInstancePtrResult = (void*) ((nsIDOMNSUIEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIPrivateDOMEventIID)) {
*aInstancePtrResult = (void*) ((nsIPrivateDOMEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIPrivateTextEventIID)) {
*aInstancePtrResult=(void*)((nsIPrivateTextEvent*)this);
AddRef();
return NS_OK;
}
if (aIID.Equals(kIPrivateCompositionEventIID)) {
*aInstancePtrResult = (void*)((nsIPrivateCompositionEvent*)this);
AddRef();
return NS_OK;
}
return NS_NOINTERFACE;
}
// nsIDOMEventInterface
NS_METHOD nsDOMEvent::GetType(nsString& aType)
{
const char* mName = GetEventName(mEvent->message);
if (nsnull != mName) {
aType = mName;
return NS_OK;
}
return NS_ERROR_FAILURE;
}
NS_METHOD nsDOMEvent::GetTarget(nsIDOMNode** aTarget)
{
if (nsnull != mTarget) {
*aTarget = mTarget;
NS_ADDREF(mTarget);
return NS_OK;
}
nsIEventStateManager *manager;
nsIContent *targetContent;
if (NS_OK == mPresContext->GetEventStateManager(&manager)) {
manager->GetEventTargetContent(mEvent, &targetContent);
NS_RELEASE(manager);
}
if (targetContent) {
if (NS_OK == targetContent->QueryInterface(kIDOMNodeIID, (void**)&mTarget)) {
*aTarget = mTarget;
NS_ADDREF(mTarget);
}
NS_RELEASE(targetContent);
}
else {
//Always want a target. Use document if nothing else.
nsIPresShell* presShell;
nsIDocument* doc;
if (NS_SUCCEEDED(mPresContext->GetShell(&presShell))) {
presShell->GetDocument(&doc);
NS_RELEASE(presShell);
}
if (doc) {
if (NS_OK == doc->QueryInterface(kIDOMNodeIID, (void**)&mTarget)) {
*aTarget = mTarget;
NS_ADDREF(mTarget);
}
NS_RELEASE(doc);
}
}
return NS_OK;
}
NS_IMETHODIMP
nsDOMEvent::GetCurrentNode(nsIDOMNode** aCurrentNode)
{
*aCurrentNode = nsnull;
return NS_OK;
}
NS_IMETHODIMP
nsDOMEvent::GetEventPhase(PRUint16* aEventPhase)
{
if (mEvent->flags & NS_EVENT_FLAG_CAPTURE) {
*aEventPhase = nsIDOMMouseEvent::CAPTURING_PHASE;
}
else if (mEvent->flags & NS_EVENT_FLAG_BUBBLE) {
*aEventPhase = nsIDOMMouseEvent::BUBBLING_PHASE;
}
else if (mEvent->flags & NS_EVENT_FLAG_INIT) {
*aEventPhase = nsIDOMMouseEvent::AT_TARGET;
}
else {
*aEventPhase = 0;
}
return NS_OK;
}
NS_IMETHODIMP
nsDOMEvent::GetBubbles(PRBool* aBubbles)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsDOMEvent::GetCancelable(PRBool* aCancelable)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsDOMEvent::PreventBubble()
{
if (mEvent->flags & NS_EVENT_FLAG_BUBBLE || mEvent->flags & NS_EVENT_FLAG_INIT) {
mEvent->flags |= NS_EVENT_FLAG_STOP_DISPATCH;
}
return NS_OK;
}
NS_IMETHODIMP
nsDOMEvent::PreventCapture()
{
if (mEvent->flags & NS_EVENT_FLAG_CAPTURE) {
mEvent->flags |= NS_EVENT_FLAG_STOP_DISPATCH;
}
return NS_OK;
}
NS_IMETHODIMP
nsDOMEvent::PreventDefault()
{
mEvent->flags |= NS_EVENT_FLAG_NO_DEFAULT;
return NS_OK;
}
NS_IMETHODIMP
nsDOMEvent::GetView(nsIDOMAbstractView** aView)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsDOMEvent::GetDetail(PRInt32* aDetail)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_METHOD nsDOMEvent::GetText(nsString& aText)
{
if (mEvent->message == NS_TEXT_EVENT) {
aText = *mText;
return NS_OK;
}
return NS_ERROR_FAILURE;
}
NS_METHOD nsDOMEvent::GetInputRange(nsIPrivateTextRangeList** aInputRange)
{
if (mEvent->message == NS_TEXT_EVENT) {
*aInputRange = mTextRange;
return NS_OK;
}
return NS_ERROR_FAILURE;
}
NS_METHOD nsDOMEvent::GetEventReply(nsTextEventReply** aReply)
{
if (mEvent->message==NS_TEXT_EVENT) {
*aReply = &(((nsTextEvent*)mEvent)->theReply);
return NS_OK;
}
return NS_ERROR_FAILURE;
}
NS_METHOD nsDOMEvent::GetCompositionReply(nsTextEventReply** aReply)
{
if((mEvent->message==NS_COMPOSITION_START) ||
(mEvent->message==NS_COMPOSITION_QUERY)) {
*aReply = &(((nsCompositionEvent*)mEvent)->theReply);
return NS_OK;
}
return NS_ERROR_FAILURE;
}
NS_METHOD nsDOMEvent::GetScreenX(PRInt32* aScreenX)
{
if (!mEvent ||
(mEvent->eventStructType != NS_MOUSE_EVENT && mEvent->eventStructType != NS_DRAGDROP_EVENT) ) {
*aScreenX = 0;
return NS_OK;
}
if (!((nsGUIEvent*)mEvent)->widget )
return NS_ERROR_FAILURE;
nsRect bounds, offset;
bounds.x = mEvent->refPoint.x;
((nsGUIEvent*)mEvent)->widget->WidgetToScreen ( bounds, offset );
*aScreenX = offset.x;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetScreenY(PRInt32* aScreenY)
{
if (!mEvent ||
(mEvent->eventStructType != NS_MOUSE_EVENT && mEvent->eventStructType != NS_DRAGDROP_EVENT) ) {
*aScreenY = 0;
return NS_OK;
}
if (!((nsGUIEvent*)mEvent)->widget )
return NS_ERROR_FAILURE;
nsRect bounds, offset;
bounds.y = mEvent->refPoint.y;
((nsGUIEvent*)mEvent)->widget->WidgetToScreen ( bounds, offset );
*aScreenY = offset.y;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetClientX(PRInt32* aClientX)
{
if (!mEvent ||
(mEvent->eventStructType != NS_MOUSE_EVENT && mEvent->eventStructType != NS_DRAGDROP_EVENT) ) {
*aClientX = 0;
return NS_OK;
}
//My god, man, there *must* be a better way to do this.
nsIPresShell* shell;
nsIWidget* rootWidget = nsnull;
mPresContext->GetShell(&shell);
if (shell) {
nsIViewManager* vm;
shell->GetViewManager(&vm);
if (vm) {
nsIView* rootView = nsnull;
vm->GetRootView(rootView);
if (rootView) {
rootView->GetWidget(rootWidget);
}
NS_RELEASE(vm);
}
NS_RELEASE(shell);
}
nsRect bounds, offset;
offset.x = 0;
nsIWidget* parent = ((nsGUIEvent*)mEvent)->widget;
//Add extra ref since loop will free one.
NS_ADDREF(parent);
nsIWidget* tmp;
while (rootWidget != parent && nsnull != parent) {
parent->GetBounds(bounds);
offset.x += bounds.x;
tmp = parent;
parent = tmp->GetParent();
NS_RELEASE(tmp);
}
NS_IF_RELEASE(parent);
NS_IF_RELEASE(rootWidget);
*aClientX = mEvent->refPoint.x + offset.x;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetClientY(PRInt32* aClientY)
{
if (!mEvent ||
(mEvent->eventStructType != NS_MOUSE_EVENT && mEvent->eventStructType != NS_DRAGDROP_EVENT) ) {
*aClientY = 0;
return NS_OK;
}
//My god, man, there *must* be a better way to do this.
nsIPresShell* shell;
nsIWidget* rootWidget = nsnull;
mPresContext->GetShell(&shell);
if (shell) {
nsIViewManager* vm;
shell->GetViewManager(&vm);
if (vm) {
nsIView* rootView = nsnull;
vm->GetRootView(rootView);
if (rootView) {
rootView->GetWidget(rootWidget);
}
NS_RELEASE(vm);
}
NS_RELEASE(shell);
}
nsRect bounds, offset;
offset.y = 0;
nsIWidget* parent = ((nsGUIEvent*)mEvent)->widget;
//Add extra ref since loop will free one.
NS_ADDREF(parent);
nsIWidget* tmp;
while (rootWidget != parent && nsnull != parent) {
parent->GetBounds(bounds);
offset.y += bounds.y;
tmp = parent;
parent = tmp->GetParent();
NS_RELEASE(tmp);
}
NS_IF_RELEASE(parent);
NS_IF_RELEASE(rootWidget);
*aClientY = mEvent->refPoint.y + offset.y;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetAltKey(PRBool* aIsDown)
{
*aIsDown = ((nsInputEvent*)mEvent)->isAlt;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetCtrlKey(PRBool* aIsDown)
{
*aIsDown = ((nsInputEvent*)mEvent)->isControl;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetShiftKey(PRBool* aIsDown)
{
*aIsDown = ((nsInputEvent*)mEvent)->isShift;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetMetaKey(PRBool* aIsDown)
{
*aIsDown = ((nsInputEvent*)mEvent)->isMeta;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetCharCode(PRUint32* aCharCode)
{
if (!mEvent || mEvent->eventStructType != NS_KEY_EVENT) {
*aCharCode = 0;
return NS_OK;
}
switch (mEvent->message) {
case NS_KEY_UP:
case NS_KEY_DOWN:
#ifdef NS_DEBUG
printf("GetCharCode used for wrong key event; should use onkeypress.\n");
#endif
*aCharCode = 0;
break;
case NS_KEY_PRESS:
*aCharCode = ((nsKeyEvent*)mEvent)->charCode;
#if defined(NS_DEBUG) && defined(DEBUG_buster)
if (0==*aCharCode)
printf("GetCharCode used correctly but no valid key!\n");
#endif
break;
default:
break;
}
return NS_OK;
}
NS_METHOD nsDOMEvent::GetKeyCode(PRUint32* aKeyCode)
{
if (!mEvent || mEvent->eventStructType != NS_KEY_EVENT) {
*aKeyCode = 0;
return NS_OK;
}
switch (mEvent->message) {
case NS_KEY_UP:
case NS_KEY_PRESS:
case NS_KEY_DOWN:
*aKeyCode = ((nsKeyEvent*)mEvent)->keyCode;
break;
default:
break;
}
return NS_OK;
}
NS_METHOD nsDOMEvent::GetButton(PRUint16* aButton)
{
if (!mEvent || mEvent->eventStructType != NS_MOUSE_EVENT) {
*aButton = 0;
return NS_OK;
}
switch (mEvent->message) {
case NS_MOUSE_LEFT_BUTTON_UP:
case NS_MOUSE_LEFT_BUTTON_DOWN:
case NS_MOUSE_LEFT_CLICK:
case NS_MOUSE_LEFT_DOUBLECLICK:
*aButton = 1;
break;
case NS_MOUSE_MIDDLE_BUTTON_UP:
case NS_MOUSE_MIDDLE_BUTTON_DOWN:
case NS_MOUSE_MIDDLE_CLICK:
case NS_MOUSE_MIDDLE_DOUBLECLICK:
*aButton = 2;
break;
case NS_MOUSE_RIGHT_BUTTON_UP:
case NS_MOUSE_RIGHT_BUTTON_DOWN:
case NS_MOUSE_RIGHT_CLICK:
case NS_MOUSE_RIGHT_DOUBLECLICK:
*aButton = 3;
break;
default:
break;
}
return NS_OK;
}
NS_METHOD nsDOMEvent::GetClickCount(PRUint16* aClickCount)
{
if (!mEvent || mEvent->eventStructType != NS_MOUSE_EVENT) {
*aClickCount = 0;
return NS_OK;
}
switch (mEvent->message) {
case NS_MOUSE_LEFT_BUTTON_UP:
case NS_MOUSE_LEFT_BUTTON_DOWN:
case NS_MOUSE_LEFT_CLICK:
case NS_MOUSE_LEFT_DOUBLECLICK:
case NS_MOUSE_MIDDLE_BUTTON_UP:
case NS_MOUSE_MIDDLE_BUTTON_DOWN:
case NS_MOUSE_MIDDLE_CLICK:
case NS_MOUSE_MIDDLE_DOUBLECLICK:
case NS_MOUSE_RIGHT_BUTTON_UP:
case NS_MOUSE_RIGHT_BUTTON_DOWN:
case NS_MOUSE_RIGHT_CLICK:
case NS_MOUSE_RIGHT_DOUBLECLICK:
*aClickCount = ((nsMouseEvent*)mEvent)->clickCount;
break;
default:
break;
}
return NS_OK;
}
NS_METHOD nsDOMEvent::GetRelatedNode(nsIDOMNode** aRelatedNode)
{
nsIEventStateManager *manager;
nsIContent *relatedContent;
nsresult ret = NS_OK;
if (NS_OK == mPresContext->GetEventStateManager(&manager)) {
manager->GetEventRelatedContent(&relatedContent);
NS_RELEASE(manager);
}
if (relatedContent) {
ret = relatedContent->QueryInterface(kIDOMNodeIID, (void**)aRelatedNode);
NS_RELEASE(relatedContent);
}
else {
*aRelatedNode = nsnull;
}
return ret;
}
// nsINSEventInterface
NS_METHOD nsDOMEvent::GetLayerX(PRInt32* aLayerX)
{
if (!mEvent || mEvent->eventStructType != NS_MOUSE_EVENT) {
*aLayerX = 0;
return NS_OK;
}
float t2p;
mPresContext->GetTwipsToPixels(&t2p);
*aLayerX = NSTwipsToIntPixels(mEvent->point.x, t2p);
return NS_OK;
}
NS_METHOD nsDOMEvent::GetLayerY(PRInt32* aLayerY)
{
if (!mEvent || mEvent->eventStructType != NS_MOUSE_EVENT) {
*aLayerY = 0;
return NS_OK;
}
float t2p;
mPresContext->GetTwipsToPixels(&t2p);
*aLayerY = NSTwipsToIntPixels(mEvent->point.y, t2p);
return NS_OK;
}
NS_METHOD nsDOMEvent::GetPageX(PRInt32* aPageX)
{
return GetClientX(aPageX);
}
NS_METHOD nsDOMEvent::GetPageY(PRInt32* aPageY)
{
return GetClientY(aPageY);
}
NS_METHOD nsDOMEvent::GetWhich(PRUint32* aWhich)
{
switch (mEvent->eventStructType) {
case NS_KEY_EVENT:
return GetKeyCode(aWhich);
case NS_MOUSE_EVENT:
{
PRUint16 button;
(void) GetButton(&button);
*aWhich = button;
break;
}
default:
*aWhich = 0;
break;
}
return NS_OK;
}
NS_METHOD nsDOMEvent::GetRangeParent(nsIDOMNode** aRangeParent)
{
nsIFrame* targetFrame;
nsIEventStateManager* manager;
if (NS_OK == mPresContext->GetEventStateManager(&manager)) {
manager->GetEventTarget(&targetFrame);
NS_RELEASE(manager);
}
if (targetFrame) {
nsIContent* parent = nsnull;
PRInt32 offset, endOffset;
PRBool beginOfContent;
if (NS_SUCCEEDED(targetFrame->GetContentAndOffsetsFromPoint(mPresContext,
mEvent->point,
&parent,
offset,
endOffset,
beginOfContent))) {
if (parent && NS_SUCCEEDED(parent->QueryInterface(kIDOMNodeIID, (void**)aRangeParent))) {
NS_RELEASE(parent);
return NS_OK;
}
NS_IF_RELEASE(parent);
}
}
*aRangeParent = nsnull;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetRangeOffset(PRInt32* aRangeOffset)
{
nsIFrame* targetFrame;
nsIEventStateManager* manager;
if (NS_OK == mPresContext->GetEventStateManager(&manager)) {
manager->GetEventTarget(&targetFrame);
NS_RELEASE(manager);
}
if (targetFrame) {
nsIContent* parent = nsnull;
PRInt32 endOffset;
PRBool beginOfContent;
if (NS_SUCCEEDED(targetFrame->GetContentAndOffsetsFromPoint(mPresContext,
mEvent->point,
&parent,
*aRangeOffset,
endOffset,
beginOfContent))) {
NS_IF_RELEASE(parent);
return NS_OK;
}
}
*aRangeOffset = 0;
return NS_OK;
}
NS_METHOD nsDOMEvent::GetCancelBubble(PRBool* aCancelBubble)
{
if (mEvent->flags & NS_EVENT_FLAG_BUBBLE || mEvent->flags & NS_EVENT_FLAG_INIT) {
*aCancelBubble = (mEvent->flags &= NS_EVENT_FLAG_STOP_DISPATCH) ? PR_TRUE : PR_FALSE;
}
else {
*aCancelBubble = PR_FALSE;
}
return NS_OK;
}
NS_METHOD nsDOMEvent::SetCancelBubble(PRBool aCancelBubble)
{
if (mEvent->flags & NS_EVENT_FLAG_BUBBLE || mEvent->flags & NS_EVENT_FLAG_INIT) {
if (aCancelBubble) {
mEvent->flags |= NS_EVENT_FLAG_STOP_DISPATCH;
}
else {
mEvent->flags &= ~NS_EVENT_FLAG_STOP_DISPATCH;
}
}
return NS_OK;
}
NS_METHOD nsDOMEvent::GetIsChar(PRBool* aIsChar)
{
if (!mEvent) {
*aIsChar = PR_FALSE;
return NS_OK;
}
if (mEvent->eventStructType == NS_KEY_EVENT) {
*aIsChar = ((nsKeyEvent*)mEvent)->isChar;
return NS_OK;
}
if (mEvent->eventStructType == NS_TEXT_EVENT) {
*aIsChar = ((nsTextEvent*)mEvent)->isChar;
return NS_OK;
}
*aIsChar = PR_FALSE;
return NS_OK;
}
//XXX The following four methods are for custom event dispatch inside the DOM.
//They will be implemented post-beta
NS_IMETHODIMP
nsDOMEvent::InitEvent(const nsString& aEventTypeArg, PRBool aCanBubbleArg, PRBool aCancelableArg)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsDOMEvent::InitUIEvent(const nsString& aTypeArg, PRBool aCanBubbleArg, PRBool aCancelableArg, nsIDOMAbstractView* aViewArg, PRInt32 aDetailArg)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsDOMEvent::InitMouseEvent(const nsString& aTypeArg, PRBool aCtrlKeyArg, PRBool aAltKeyArg, PRBool aShiftKeyArg, PRBool aMetaKeyArg, PRInt32 aScreenXArg, PRInt32 aScreenYArg, PRInt32 aClientXArg, PRInt32 aClientYArg, PRUint16 aButtonArg, PRUint16 aDetailArg)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsDOMEvent::InitKeyEvent(const nsString& aTypeArg, PRBool aCanBubbleArg, PRBool aCancelableArg, PRBool aCtrlKeyArg, PRBool aAltKeyArg, PRBool aShiftKeyArg, PRBool aMetaKeyArg, PRUint32 aKeyCodeArg, PRUint32 aCharCodeArg, nsIDOMAbstractView* aViewArg)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_METHOD nsDOMEvent::DuplicatePrivateData()
{
//XXX Write me!
//XXX And when you do, make sure to copy over the event target here, too!
return NS_OK;
}
NS_METHOD nsDOMEvent::SetTarget(nsIDOMNode* aTarget)
{
if (mTarget != aTarget) {
NS_IF_RELEASE(mTarget);
NS_IF_ADDREF(aTarget);
mTarget = aTarget;
}
return NS_OK;
}
const char* nsDOMEvent::GetEventName(PRUint32 aEventType)
{
switch(aEventType) {
case NS_MOUSE_LEFT_BUTTON_DOWN:
case NS_MOUSE_MIDDLE_BUTTON_DOWN:
case NS_MOUSE_RIGHT_BUTTON_DOWN:
return mEventNames[eDOMEvents_mousedown];
case NS_MOUSE_LEFT_BUTTON_UP:
case NS_MOUSE_MIDDLE_BUTTON_UP:
case NS_MOUSE_RIGHT_BUTTON_UP:
return mEventNames[eDOMEvents_mouseup];
case NS_MOUSE_LEFT_CLICK:
case NS_MOUSE_MIDDLE_CLICK:
case NS_MOUSE_RIGHT_CLICK:
return mEventNames[eDOMEvents_click];
case NS_MOUSE_LEFT_DOUBLECLICK:
case NS_MOUSE_MIDDLE_DOUBLECLICK:
case NS_MOUSE_RIGHT_DOUBLECLICK:
return mEventNames[eDOMEvents_dblclick];
case NS_MOUSE_ENTER:
return mEventNames[eDOMEvents_mouseover];
case NS_MOUSE_EXIT:
return mEventNames[eDOMEvents_mouseout];
case NS_MOUSE_MOVE:
return mEventNames[eDOMEvents_mousemove];
case NS_KEY_UP:
return mEventNames[eDOMEvents_keyup];
case NS_KEY_DOWN:
return mEventNames[eDOMEvents_keydown];
case NS_KEY_PRESS:
return mEventNames[eDOMEvents_keypress];
case NS_FOCUS_CONTENT:
return mEventNames[eDOMEvents_focus];
case NS_BLUR_CONTENT:
return mEventNames[eDOMEvents_blur];
case NS_XUL_CLOSE:
return mEventNames[eDOMEvents_close];
case NS_PAGE_LOAD:
case NS_IMAGE_LOAD:
return mEventNames[eDOMEvents_load];
case NS_PAGE_UNLOAD:
return mEventNames[eDOMEvents_unload];
case NS_IMAGE_ABORT:
return mEventNames[eDOMEvents_abort];
case NS_IMAGE_ERROR:
return mEventNames[eDOMEvents_error];
case NS_FORM_SUBMIT:
return mEventNames[eDOMEvents_submit];
case NS_FORM_RESET:
return mEventNames[eDOMEvents_reset];
case NS_FORM_CHANGE:
return mEventNames[eDOMEvents_change];
case NS_FORM_SELECTED:
return mEventNames[eDOMEvents_select];
case NS_FORM_INPUT:
return mEventNames[eDOMEvents_input];
case NS_PAINT:
return mEventNames[eDOMEvents_paint];
case NS_TEXT_EVENT:
return mEventNames[eDOMEvents_text];
case NS_MENU_CREATE:
return mEventNames[eDOMEvents_create];
case NS_MENU_DESTROY:
return mEventNames[eDOMEvents_destroy];
case NS_MENU_ACTION:
return mEventNames[eDOMEvents_command];
case NS_XUL_BROADCAST:
return mEventNames[eDOMEvents_broadcast];
case NS_XUL_COMMAND_UPDATE:
return mEventNames[eDOMEvents_commandupdate];
case NS_DRAGDROP_ENTER:
return mEventNames[eDOMEvents_dragenter];
case NS_DRAGDROP_OVER:
return mEventNames[eDOMEvents_dragover];
case NS_DRAGDROP_EXIT:
return mEventNames[eDOMEvents_dragexit];
case NS_DRAGDROP_DROP:
return mEventNames[eDOMEvents_dragdrop];
case NS_DRAGDROP_GESTURE:
return mEventNames[eDOMEvents_draggesture];
default:
break;
}
return nsnull;
}
nsresult NS_NewDOMUIEvent(nsIDOMEvent** aInstancePtrResult, nsIPresContext* aPresContext, nsEvent *aEvent)
{
nsDOMEvent* it = new nsDOMEvent(aPresContext, aEvent);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIDOMEventIID, (void **) aInstancePtrResult);
}
nsresult NS_NewDOMEvent(nsIDOMEvent** aInstancePtrResult, nsIPresContext* aPresContext, nsEvent *aEvent)
{
return NS_ERROR_FAILURE;
}

View File

@@ -0,0 +1,160 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsDOMEvent_h__
#define nsDOMEvent_h__
#include "nsIDOMKeyEvent.h"
#include "nsIDOMMouseEvent.h"
#include "nsIDOMNSUIEvent.h"
#include "nsISupports.h"
#include "nsIPrivateDOMEvent.h"
#include "nsIPrivateCompositionEvent.h"
#include "nsIPrivateTextEvent.h"
#include "nsIPrivateTextRange.h"
#include "nsIDOMEvent.h"
#include "nsIPresContext.h"
#include "nsPoint.h"
#include "nsGUIEvent.h"
class nsIContent;
class nsDOMEvent : public nsIDOMKeyEvent,
public nsIDOMMouseEvent,
public nsIDOMNSUIEvent,
public nsIPrivateDOMEvent,
public nsIPrivateTextEvent,
public nsIPrivateCompositionEvent {
public:
// Note: this enum must be kept in sync with mEventNames in nsDOMEvent.cpp
enum nsDOMEvents {
eDOMEvents_mousedown=0,
eDOMEvents_mouseup,
eDOMEvents_click,
eDOMEvents_dblclick,
eDOMEvents_mouseover,
eDOMEvents_mouseout,
eDOMEvents_mousemove,
eDOMEvents_keydown,
eDOMEvents_keyup,
eDOMEvents_keypress,
eDOMEvents_focus,
eDOMEvents_blur,
eDOMEvents_load,
eDOMEvents_unload,
eDOMEvents_abort,
eDOMEvents_error,
eDOMEvents_submit,
eDOMEvents_reset,
eDOMEvents_change,
eDOMEvents_select,
eDOMEvents_input,
eDOMEvents_paint,
eDOMEvents_text,
eDOMEvents_create,
eDOMEvents_close,
eDOMEvents_destroy,
eDOMEvents_command,
eDOMEvents_broadcast,
eDOMEvents_commandupdate,
eDOMEvents_dragenter,
eDOMEvents_dragover,
eDOMEvents_dragexit,
eDOMEvents_dragdrop,
eDOMEvents_draggesture
};
nsDOMEvent(nsIPresContext* aPresContext, nsEvent* aEvent);
virtual ~nsDOMEvent();
NS_DECL_ISUPPORTS
// nsIDOMEvent Interface
NS_IMETHOD GetType(nsString& aType);
NS_IMETHOD GetTarget(nsIDOMNode** aTarget);
NS_IMETHOD GetCurrentNode(nsIDOMNode** aCurrentNode);
NS_IMETHOD GetEventPhase(PRUint16* aEventPhase);
NS_IMETHOD GetBubbles(PRBool* aBubbles);
NS_IMETHOD GetCancelable(PRBool* aCancelable);
NS_IMETHOD PreventBubble();
NS_IMETHOD PreventCapture();
NS_IMETHOD PreventDefault();
NS_IMETHOD InitEvent(const nsString& aEventTypeArg, PRBool aCanBubbleArg, PRBool aCancelableArg);
// nsIDOMUIEvent Interface
NS_IMETHOD GetView(nsIDOMAbstractView** aView);
NS_IMETHOD GetDetail(PRInt32* aDetail);
NS_IMETHOD InitUIEvent(const nsString& aTypeArg, PRBool aCanBubbleArg, PRBool aCancelableArg, nsIDOMAbstractView* aViewArg, PRInt32 aDetailArg);
// nsIDOMMouseEvent Interface and nsIDOMKeyEvent Interface
NS_IMETHOD GetScreenX(PRInt32* aScreenX);
NS_IMETHOD GetScreenY(PRInt32* aScreenY);
NS_IMETHOD GetClientX(PRInt32* aClientX);
NS_IMETHOD GetClientY(PRInt32* aClientY);
NS_IMETHOD GetAltKey(PRBool* aAltKey);
NS_IMETHOD GetCtrlKey(PRBool* aCtrlKey);
NS_IMETHOD GetShiftKey(PRBool* aShiftKey);
NS_IMETHOD GetMetaKey(PRBool* aMetaKey);
NS_IMETHOD GetButton(PRUint16* aButton);
NS_IMETHOD GetClickCount(PRUint16* aClickCount);
NS_IMETHOD GetRelatedNode(nsIDOMNode** aRelatedNode);
NS_IMETHOD GetCharCode(PRUint32* aCharCode);
NS_IMETHOD GetKeyCode(PRUint32* aKeyCode);
NS_IMETHOD InitMouseEvent(const nsString& aTypeArg, PRBool aCtrlKeyArg, PRBool aAltKeyArg, PRBool aShiftKeyArg, PRBool aMetaKeyArg, PRInt32 aScreenXArg, PRInt32 aScreenYArg, PRInt32 aClientXArg, PRInt32 aClientYArg, PRUint16 aButtonArg, PRUint16 aDetailArg);
NS_IMETHOD InitKeyEvent(const nsString& aTypeArg, PRBool aCanBubbleArg, PRBool aCancelableArg, PRBool aCtrlKeyArg, PRBool aAltKeyArg, PRBool aShiftKeyArg, PRBool aMetaKeyArg, PRUint32 aKeyCodeArg, PRUint32 aCharCodeArg, nsIDOMAbstractView* aViewArg);
// nsIDOMNSUIEvent interface
NS_IMETHOD GetLayerX(PRInt32* aLayerX);
NS_IMETHOD GetLayerY(PRInt32* aLayerY);
NS_IMETHOD GetPageX(PRInt32* aClientX);
NS_IMETHOD GetPageY(PRInt32* aClientY);
NS_IMETHOD GetWhich(PRUint32* aKeyCode);
NS_IMETHOD GetRangeParent(nsIDOMNode** aRangeParent);
NS_IMETHOD GetRangeOffset(PRInt32* aRangeOffset);
NS_IMETHOD GetCancelBubble(PRBool* aCancelBubble);
NS_IMETHOD SetCancelBubble(PRBool aCancelBubble);
NS_IMETHOD GetIsChar(PRBool* aIsChar);
// nsIPrivateDOMEvent interface
NS_IMETHOD DuplicatePrivateData();
NS_IMETHOD SetTarget(nsIDOMNode* aNode);
// nsIPrivateTextEvent interface
NS_IMETHOD GetText(nsString& aText);
NS_IMETHOD GetInputRange(nsIPrivateTextRangeList** aInputRange);
NS_IMETHOD GetEventReply(nsTextEventReply** aReply);
// nsIPrivateCompositionEvent interface
NS_IMETHOD GetCompositionReply(nsTextEventReply** aReply);
protected:
nsEvent* mEvent;
nsIPresContext* mPresContext;
nsIDOMNode* mTarget;
nsString* mText;
nsIPrivateTextRangeList* mTextRange;
const char* GetEventName(PRUint32 aEventType);
};
#endif // nsDOMEvent_h__

View File

@@ -0,0 +1,45 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsDOMEventsIIDs.h"
#include "nsIDOMMouseListener.h"
#include "nsIDOMKeyListener.h"
#include "nsIDOMMouseMotionListener.h"
#include "nsIDOMFocusListener.h"
#include "nsIDOMFormListener.h"
#include "nsIDOMLoadListener.h"
#include "nsIDOMDragListener.h"
#include "nsIDOMPaintListener.h"
#include "nsIDOMTextListener.h"
#include "nsIDOMCompositionListener.h"
#include "nsIDOMMenuListener.h"
NS_DEFINE_IID(kIDOMMouseListenerIID, NS_IDOMMOUSELISTENER_IID);
NS_DEFINE_IID(kIDOMKeyListenerIID, NS_IDOMKEYLISTENER_IID);
NS_DEFINE_IID(kIDOMMouseMotionListenerIID, NS_IDOMMOUSEMOTIONLISTENER_IID);
NS_DEFINE_IID(kIDOMFocusListenerIID, NS_IDOMFOCUSLISTENER_IID);
NS_DEFINE_IID(kIDOMFormListenerIID, NS_IDOMFORMLISTENER_IID);
NS_DEFINE_IID(kIDOMLoadListenerIID, NS_IDOMLOADLISTENER_IID);
NS_DEFINE_IID(kIDOMDragListenerIID, NS_IDOMDRAGLISTENER_IID);
NS_DEFINE_IID(kIDOMPaintListenerIID, NS_IDOMPAINTLISTENER_IID);
NS_DEFINE_IID(kIDOMTextListenerIID,NS_IDOMTEXTLISTENER_IID);
NS_DEFINE_IID(kIDOMCompositionListenerIID,NS_IDOMCOMPOSITIONLISTENER_IID);
NS_DEFINE_IID(kIDOMMenuListenerIID, NS_IDOMMENULISTENER_IID);

View File

@@ -0,0 +1,39 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsDOMEVENTSIIDs_h___
#define nsDOMEVENTSIIDs_h___
#include "nsISupports.h"
extern const nsIID kIDOMMouseListenerIID;
extern const nsIID kIDOMKeyListenerIID;
extern const nsIID kIDOMMouseMotionListenerIID;
extern const nsIID kIDOMFocusListenerIID;
extern const nsIID kIDOMFormListenerIID;
extern const nsIID kIDOMLoadListenerIID;
extern const nsIID kIDOMDragListenerIID;
extern const nsIID kIDOMPaintListenerIID;
extern const nsIID kIDOMTextListenerIID;
extern const nsIID kIDOMCompositionListenerIID;
extern const nsIID kIDOMMenuListenerIID;
#endif /* nsDOMEVENTSIIDs_h___ */

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,206 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsEventListenerManager_h__
#define nsEventListenerManager_h__
#include "nsIEventListenerManager.h"
#include "jsapi.h"
#include "nsCOMPtr.h"
#include "nsIPrincipal.h"
class nsIDOMEvent;
class nsIAtom;
typedef struct {
nsIDOMEventListener* mListener;
PRUint8 mFlags;
PRUint8 mSubType;
PRUint32 mHandlerIsString;
} nsListenerStruct;
//Flag must live higher than all event flags in nsGUIEvent.h
#define NS_PRIV_EVENT_FLAG_SCRIPT 0x10
/*
* Event listener manager
*/
class nsEventListenerManager : public nsIEventListenerManager {
public:
nsEventListenerManager();
virtual ~nsEventListenerManager();
NS_DECL_ISUPPORTS
nsVoidArray** GetListenersByIID(const nsIID& aIID);
/**
* Retrieves events listeners of all types.
* @param
*/
virtual nsresult GetEventListeners(nsVoidArray **aListeners, const nsIID& aIID);
/**
* Sets events listeners of all types.
* @param an event listener
*/
virtual nsresult AddEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID, PRInt32 aFlags);
virtual nsresult RemoveEventListenerByIID(nsIDOMEventListener *aListener, const nsIID& aIID, PRInt32 aFlags);
virtual nsresult AddEventListenerByType(nsIDOMEventListener *aListener, const nsString& type, PRInt32 aFlags);
virtual nsresult RemoveEventListenerByType(nsIDOMEventListener *aListener, const nsString& type, PRInt32 aFlags) ;
virtual nsresult AddScriptEventListener(nsIScriptContext*aContext,
nsIScriptObjectOwner *aScriptObjectOwner,
nsIAtom *aName,
const nsString& aFunc,
REFNSIID aIID,
PRBool aDeferCompilation);
virtual nsresult RegisterScriptEventListener(nsIScriptContext *aContext,
nsIScriptObjectOwner *aScriptObjectOwner,
nsIAtom* aName,
const nsIID& aIID);
virtual nsresult CaptureEvent(nsIDOMEventListener *aListener);
virtual nsresult ReleaseEvent(nsIDOMEventListener *aListener);
virtual nsresult HandleEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus);
virtual nsresult CreateEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent);
virtual nsresult RemoveAllListeners(PRBool aScriptOnly);
static nsresult GetIdentifiersForType(nsIAtom* aType, nsIID& aIID, PRInt32* aSubType);
protected:
nsresult HandleEventSubType(nsListenerStruct* aListenerStruct,
nsIDOMEvent* aDOMEvent,
PRUint32 aSubType);
nsListenerStruct* FindJSEventListener(REFNSIID aIID);
nsresult SetJSEventListener(nsIScriptContext *aContext, nsIScriptObjectOwner *aOwner, nsIAtom* aName, REFNSIID aIID, PRBool aIsString);
nsresult AddEventListener(nsIDOMEventListener *aListener, const nsIID& aIID, PRInt32 aFlags, PRInt32 aSubType);
nsresult RemoveEventListener(nsIDOMEventListener *aListener, const nsIID& aIID, PRInt32 aFlags, PRInt32 aSubType);
void ReleaseListeners(nsVoidArray** aListeners, PRBool aScriptOnly);
nsVoidArray* mEventListeners;
nsVoidArray* mMouseListeners;
nsVoidArray* mMouseMotionListeners;
nsVoidArray* mKeyListeners;
nsVoidArray* mLoadListeners;
nsVoidArray* mFocusListeners;
nsVoidArray* mFormListeners;
nsVoidArray* mDragListeners;
nsVoidArray* mPaintListeners;
nsVoidArray* mTextListeners;
nsVoidArray* mCompositionListeners;
nsVoidArray* mMenuListeners;
nsCOMPtr<nsIPrincipal> mPrincipal;
};
//Set of defines for distinguishing event handlers within listener groupings
//XXX Current usage allows no more than 7 types per listener grouping
#define NS_EVENT_BITS_NONE 0x00
//nsIDOMMouseListener
#define NS_EVENT_BITS_MOUSE_NONE 0x00
#define NS_EVENT_BITS_MOUSE_MOUSEDOWN 0x01
#define NS_EVENT_BITS_MOUSE_MOUSEUP 0x02
#define NS_EVENT_BITS_MOUSE_CLICK 0x04
#define NS_EVENT_BITS_MOUSE_DBLCLICK 0x08
#define NS_EVENT_BITS_MOUSE_MOUSEOVER 0x10
#define NS_EVENT_BITS_MOUSE_MOUSEOUT 0x20
//nsIDOMMouseMotionListener
#define NS_EVENT_BITS_MOUSEMOTION_NONE 0x00
#define NS_EVENT_BITS_MOUSEMOTION_MOUSEMOVE 0x01
#define NS_EVENT_BITS_MOUSEMOTION_DRAGMOVE 0x02
//nsIDOMKeyListener
#define NS_EVENT_BITS_KEY_NONE 0x00
#define NS_EVENT_BITS_KEY_KEYDOWN 0x01
#define NS_EVENT_BITS_KEY_KEYUP 0x02
#define NS_EVENT_BITS_KEY_KEYPRESS 0x04
//nsIDOMTextListener
#define NS_EVENT_BITS_TEXT_NONE 0x00
#define NS_EVENT_BITS_TEXT_TEXT 0x01
//nsIDOMCompositionListener
#define NS_EVENT_BITS_COMPOSITION_NONE 0x00
#define NS_EVENT_BITS_COMPOSITION_START 0x01
#define NS_EVENT_BITS_COMPOSITION_END 0x02
#define NS_EVENT_BITS_COMPOSITION_QUERY 0x04
//nsIDOMFocusListener
#define NS_EVENT_BITS_FOCUS_NONE 0x00
#define NS_EVENT_BITS_FOCUS_FOCUS 0x01
#define NS_EVENT_BITS_FOCUS_BLUR 0x02
//nsIDOMFormListener
#define NS_EVENT_BITS_FORM_NONE 0x00
#define NS_EVENT_BITS_FORM_SUBMIT 0x01
#define NS_EVENT_BITS_FORM_RESET 0x02
#define NS_EVENT_BITS_FORM_CHANGE 0x04
#define NS_EVENT_BITS_FORM_SELECT 0x08
#define NS_EVENT_BITS_FORM_INPUT 0x10
//nsIDOMLoadListener
#define NS_EVENT_BITS_LOAD_NONE 0x00
#define NS_EVENT_BITS_LOAD_LOAD 0x01
#define NS_EVENT_BITS_LOAD_UNLOAD 0x02
#define NS_EVENT_BITS_LOAD_ABORT 0x04
#define NS_EVENT_BITS_LOAD_ERROR 0x08
//nsIDOMMenuListener
#define NS_EVENT_BITS_MENU_NONE 0x00
#define NS_EVENT_BITS_MENU_CREATE 0x01
#define NS_EVENT_BITS_XUL_CLOSE 0x02
#define NS_EVENT_BITS_MENU_DESTROY 0x04
#define NS_EVENT_BITS_MENU_ACTION 0x08
#define NS_EVENT_BITS_XUL_BROADCAST 0x10
#define NS_EVENT_BITS_XUL_COMMAND_UPDATE 0x20
//nsIDOMDragListener
#define NS_EVENT_BITS_DRAG_NONE 0x00
#define NS_EVENT_BITS_DRAG_ENTER 0x01
#define NS_EVENT_BITS_DRAG_OVER 0x02
#define NS_EVENT_BITS_DRAG_EXIT 0x04
#define NS_EVENT_BITS_DRAG_DROP 0x08
#define NS_EVENT_BITS_DRAG_GESTURE 0x10
//nsIDOMPaintListener
#define NS_EVENT_BITS_PAINT_NONE 0x00
#define NS_EVENT_BITS_PAINT_PAINT 0x01
#endif // nsEventListenerManager_h__

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,147 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsEventStateManager_h__
#define nsEventStateManager_h__
#include "nsIEventStateManager.h"
#include "nsGUIEvent.h"
class nsIDocument;
class nsIScrollableView;
class nsISelfScrollingFrame;
/*
* Event listener manager
*/
class nsEventStateManager : public nsIEventStateManager {
public:
nsEventStateManager();
virtual ~nsEventStateManager();
NS_DECL_ISUPPORTS
/* The PreHandleEvent method is called before event dispatch to either
* the DOM or frames. Any processing which must not be prevented or
* cancelled should occur here. Any processing which is intended to
* be conditional based on either DOM or frame processing should occur in
* PostHandleEvent. Any centralized event processing which must occur before
* DOM or frame event handling should occur here as well.
*/
NS_IMETHOD PreHandleEvent(nsIPresContext* aPresContext,
nsGUIEvent *aEvent,
nsIFrame* aTargetFrame,
nsEventStatus* aStatus,
nsIView* aView);
/* The PostHandleEvent method should contain all system processing which
* should occur conditionally based on DOM or frame processing. It should
* also contain any centralized event processing which must occur after
* DOM and frame processing.
*/
NS_IMETHOD PostHandleEvent(nsIPresContext* aPresContext,
nsGUIEvent *aEvent,
nsIFrame* aTargetFrame,
nsEventStatus* aStatus,
nsIView* aView);
NS_IMETHOD SetPresContext(nsIPresContext* aPresContext);
NS_IMETHOD ClearFrameRefs(nsIFrame* aFrame);
NS_IMETHOD GetEventTarget(nsIFrame **aFrame);
NS_IMETHOD GetEventTargetContent(nsEvent* aEvent, nsIContent** aContent);
NS_IMETHOD GetEventRelatedContent(nsIContent** aContent);
NS_IMETHOD GetContentState(nsIContent *aContent, PRInt32& aState);
NS_IMETHOD SetContentState(nsIContent *aContent, PRInt32 aState);
NS_IMETHOD GetFocusedContent(nsIContent **aContent);
NS_IMETHOD SetFocusedContent(nsIContent* aContent);
// Cross ESM methods
NS_IMETHOD GetFocusedEventTarget(nsIFrame **aFrame);
// This is an experiement and may be temporary
NS_IMETHOD ConsumeFocusEvents(PRBool aDoConsume) { mConsumeFocusEvents = aDoConsume; return NS_OK; }
protected:
void UpdateCursor(nsIPresContext* aPresContext, nsPoint& aPoint, nsIFrame* aTargetFrame, nsEventStatus* aStatus);
void GenerateMouseEnterExit(nsIPresContext* aPresContext, nsGUIEvent* aEvent);
void GenerateDragDropEnterExit(nsIPresContext* aPresContext, nsGUIEvent* aEvent);
NS_IMETHOD DispatchKeyPressEvent(nsIPresContext* aPresContext, nsKeyEvent *aEvent, nsEventStatus* aStatus);
NS_IMETHOD SetClickCount(nsIPresContext* aPresContext, nsMouseEvent *aEvent, nsEventStatus* aStatus);
NS_IMETHOD CheckForAndDispatchClick(nsIPresContext* aPresContext, nsMouseEvent *aEvent, nsEventStatus* aStatus);
PRBool ChangeFocus(nsIContent* aFocus, nsIFrame* aFocusFrame, PRBool aSetFocus);
void ShiftFocus(PRBool foward);
nsIContent* GetNextTabbableContent(nsIContent* aParent, nsIContent* aChild, nsIContent* aTop, PRBool foward);
PRInt32 GetNextTabIndex(nsIContent* aParent, PRBool foward);
NS_IMETHOD SendFocusBlur(nsIPresContext* aPresContext, nsIContent *aContent);
nsIScrollableView* GetNearestScrollingView(nsIView* aView);
nsISelfScrollingFrame* GetNearestSelfScrollingFrame(nsIFrame* aFrame);
PRBool CheckDisabled(nsIContent* aContent);
nsIFrame* GetDocumentFrame(nsIPresContext* aPresContext);
// routines for the d&d gesture tracking state machine
void BeginTrackingDragGesture ( nsGUIEvent* inDownEvent, nsIFrame* inDownFrame ) ;
void StopTrackingDragGesture ( ) ;
void GenerateDragGesture ( nsIPresContext* aPresContext, nsGUIEvent *aEvent ) ;
PRBool IsTrackingDragGesture ( ) const { return mIsTrackingDragGesture; }
//Any frames here must be checked for validity in ClearFrameRefs
nsIFrame* mCurrentTarget;
nsIContent* mCurrentTargetContent;
nsIContent* mCurrentRelatedContent;
nsIFrame* mLastMouseOverFrame;
nsIFrame* mLastDragOverFrame;
// member variables for the d&d gesture state machine
PRBool mIsTrackingDragGesture;
nsPoint mGestureDownPoint;
nsIFrame* mGestureDownFrame;
nsIContent* mLastLeftMouseDownContent;
nsIContent* mLastMiddleMouseDownContent;
nsIContent* mLastRightMouseDownContent;
nsIContent* mActiveContent;
nsIContent* mHoverContent;
nsIContent* mDragOverContent;
nsIContent* mCurrentFocus;
PRInt32 mCurrentTabIndex;
nsIWidget * mLastWindowToHaveFocus; // last native window to get focus via the evs
PRBool mConsumeFocusEvents;
nsIPresContext* mPresContext; // Not refcnted
nsIDocument* mDocument; // [OWNER], but doesn't need to be.
PRUint32 mLClickCount;
PRUint32 mMClickCount;
PRUint32 mRClickCount;
static PRUint32 mInstanceCount;
};
extern nsresult NS_NewEventStateManager(nsIEventStateManager** aInstancePtrResult);
#endif // nsEventStateManager_h__

View File

@@ -0,0 +1,153 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#include "nsPrivateTextRange.h"
static NS_DEFINE_IID(kIPrivateTextRange, NS_IPRIVATETEXTRANGE_IID);
static NS_DEFINE_IID(kIPrivateTextRangeList,NS_IPRIVATETEXTRANGELIST_IID);
nsPrivateTextRange::nsPrivateTextRange(PRUint16 aRangeStart, PRUint16 aRangeEnd, PRUint16 aRangeType)
: mRangeStart(aRangeStart),
mRangeEnd(aRangeEnd),
mRangeType(aRangeType)
{
NS_INIT_REFCNT();
}
nsPrivateTextRange::~nsPrivateTextRange(void)
{
}
NS_IMPL_ADDREF(nsPrivateTextRange)
NS_IMPL_RELEASE(nsPrivateTextRange)
nsresult nsPrivateTextRange::QueryInterface(const nsIID& aIID,
void** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null pointer");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIPrivateTextRange)) {
*aInstancePtrResult = (void*) ((nsIPrivateTextRange*)this);
AddRef();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_METHOD nsPrivateTextRange::GetRangeStart(PRUint16* aRangeStart)
{
*aRangeStart = mRangeStart;
return NS_OK;
}
NS_METHOD nsPrivateTextRange::SetRangeStart(PRUint16 aRangeStart)
{
mRangeStart = aRangeStart;
return NS_OK;
}
NS_METHOD nsPrivateTextRange::GetRangeEnd(PRUint16* aRangeEnd)
{
*aRangeEnd = mRangeEnd;
return NS_OK;
}
NS_METHOD nsPrivateTextRange::SetRangeEnd(PRUint16 aRangeEnd)
{
mRangeEnd = aRangeEnd;
return NS_OK;
}
NS_METHOD nsPrivateTextRange::GetRangeType(PRUint16* aRangeType)
{
*aRangeType = mRangeType;
return NS_OK;
}
NS_METHOD nsPrivateTextRange::SetRangeType(PRUint16 aRangeType)
{
mRangeType = aRangeType;
return NS_OK;
}
nsPrivateTextRangeList::nsPrivateTextRangeList(PRUint16 aLength,nsIPrivateTextRange** aList)
: mLength(aLength),
mList(aList)
{
if (aList==nsnull)
aLength = 0;
NS_INIT_REFCNT();
}
nsPrivateTextRangeList::~nsPrivateTextRangeList(void)
{
int i;
for(i=0;i<mLength;i++)
mList[i]->Release();
}
NS_IMPL_ADDREF(nsPrivateTextRangeList)
NS_IMPL_RELEASE(nsPrivateTextRangeList)
nsresult nsPrivateTextRangeList::QueryInterface(const nsIID& aIID,
void** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null pointer");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(kIPrivateTextRangeList)) {
*aInstancePtrResult = (void*) ((nsIPrivateTextRangeList*)this);
AddRef();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_METHOD nsPrivateTextRangeList::GetLength(PRUint16* aLength)
{
*aLength = mLength;
return NS_OK;
}
NS_METHOD nsPrivateTextRangeList::Item(PRUint16 aIndex, nsIPrivateTextRange** aReturn)
{
if (aIndex>mLength) {
*aReturn = nsnull;
return NS_ERROR_FAILURE;
}
mList[aIndex]->AddRef();
*aReturn = mList[aIndex];
return NS_OK;
}

View File

@@ -0,0 +1,71 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsPrivateTextRange_h__
#define nsPrivateTextRange_h__
#include "nsIPrivateTextRange.h"
class nsPrivateTextRange : public nsIPrivateTextRange
{
NS_DECL_ISUPPORTS
public:
nsPrivateTextRange(PRUint16 aRangeStart, PRUint16 aRangeEnd, PRUint16 aRangeType);
virtual ~nsPrivateTextRange(void);
NS_IMETHOD GetRangeStart(PRUint16* aRangeStart);
NS_IMETHOD SetRangeStart(PRUint16 aRangeStart);
NS_IMETHOD GetRangeEnd(PRUint16* aRangeEnd);
NS_IMETHOD SetRangeEnd(PRUint16 aRangeEnd);
NS_IMETHOD GetRangeType(PRUint16* aRangeType);
NS_IMETHOD SetRangeType(PRUint16 aRangeType);
protected:
PRUint16 mRangeStart;
PRUint16 mRangeEnd;
PRUint16 mRangeType;
};
class nsPrivateTextRangeList: public nsIPrivateTextRangeList
{
NS_DECL_ISUPPORTS
public:
nsPrivateTextRangeList(PRUint16 aLength,nsIPrivateTextRange** aList);
virtual ~nsPrivateTextRangeList(void);
NS_IMETHOD GetLength(PRUint16* aLength);
NS_IMETHOD Item(PRUint16 aIndex, nsIPrivateTextRange** aReturn);
protected:
PRUint16 mLength;
nsIPrivateTextRange** mList;
};
#endif

View File

@@ -0,0 +1,32 @@
#
# 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.org 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.
#
# Contributor(s):
#
DEPTH = ../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
DIRS = public src
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,26 @@
#!nmake
#
# 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.org 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.
#
# Contributor(s):
DEPTH=..\..\..
DIRS=src public
include <$(DEPTH)\config\rules.mak>

View File

@@ -0,0 +1,5 @@
nsIFocusableContent.h
nsIForm.h
nsIFormControl.h
nsISelectElement.h

View File

@@ -0,0 +1,41 @@
#
# 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.org 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.
#
# Contributor(s):
#
DEPTH = ../../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = layout
EXPORTS = \
nsIFormControl.h \
nsIForm.h \
nsIFocusableContent.h \
nsISelectElement.h \
$(NULL)
EXPORTS := $(addprefix $(srcdir)/, $(EXPORTS))
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,29 @@
#!nmake
#
# 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.org 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.
#
# Contributor(s):
DEPTH=..\..\..\..
EXPORTS=nsIFormControl.h nsIForm.h nsIFocusableContent.h nsISelectElement.h
MODULE=raptor
include <$(DEPTH)\config\rules.mak>

View File

@@ -0,0 +1,82 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIForm_h___
#define nsIForm_h___
#include "nsISupports.h"
class nsIFormControl;
class nsISizeOfHandler;
#define NS_FORM_METHOD_GET 0
#define NS_FORM_METHOD_POST 1
#define NS_FORM_ENCTYPE_URLENCODED 0
#define NS_FORM_ENCTYPE_MULTIPART 1
// IID for the nsIFormManager interface
#define NS_IFORM_IID \
{ 0xb7e94510, 0x4c19, 0x11d2, \
{ 0x80, 0x3f, 0x0, 0x60, 0x8, 0x15, 0xa7, 0x91 } }
/**
* This interface provides a complete set of methods dealing with
* elements which belong to a form element. When nsIDOMHTMLCollection
* allows write operations
*/
class nsIForm : public nsISupports {
public:
/**
* Add an element to end of this form's list of elements
* @param aElement the element to add
* @return NS_OK if the element was successfully added
*/
NS_IMETHOD AddElement(nsIFormControl* aElement) = 0;
/**
* Get the element at a specified index position
* @param aIndex the index
* @param aElement the element at that index
* @return NS_OK if there was an element at that position, -1 otherwise
*/
NS_IMETHOD GetElementAt(PRInt32 aIndex, nsIFormControl** aElement) const = 0;
/**
* Get the number of elements in this form
* @param aCount the number of elements
* @return NS_OK if there was an element at that position, -1 otherwise
*/
NS_IMETHOD GetElementCount(PRUint32* aCount) const = 0;
/**
* Remove an element from this form's list of elements
* @param aElement the element to remove
* @param aChildIsRef if PR_TRUE, the elements ref count will be decremented
* otherwise not. This is to facilitate circular references.
* @return NS_OK if the element was successfully removed.
*/
NS_IMETHOD RemoveElement(nsIFormControl* aElement,
PRBool aChildIsRef = PR_TRUE) = 0;
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const = 0;
};
#endif /* nsIForm_h___ */

View File

@@ -0,0 +1,92 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIFormControl_h___
#define nsIFormControl_h___
#include "nsISupports.h"
class nsIDOMHTMLFormElement;
#define NS_FORM_BROWSE 0
#define NS_FORM_BUTTON_BUTTON 1
#define NS_FORM_BUTTON_RESET 2
#define NS_FORM_BUTTON_SUBMIT 3
#define NS_FORM_FIELDSET 4
#define NS_FORM_INPUT_BUTTON 5
#define NS_FORM_INPUT_CHECKBOX 6
#define NS_FORM_INPUT_FILE 7
#define NS_FORM_INPUT_HIDDEN 8
#define NS_FORM_INPUT_RESET 9
#define NS_FORM_INPUT_IMAGE 10
#define NS_FORM_INPUT_PASSWORD 11
#define NS_FORM_INPUT_RADIO 12
#define NS_FORM_INPUT_SUBMIT 13
#define NS_FORM_INPUT_TEXT 14
#define NS_FORM_LABEL 15
#define NS_FORM_OPTION 16
#define NS_FORM_OPTGROUP 17
#define NS_FORM_LEGEND 18
#define NS_FORM_SELECT 19
#define NS_FORM_TEXTAREA 20
#define NS_FORM_NOTOK 0xFFFFFFF7
#define NS_FORM_NOTSET 0xFFFFFFF7
#define NS_IFORMCONTROL_IID \
{ 0x282ff440, 0xcd7e, 0x11d1, \
{0x89, 0xad, 0x00, 0x60, 0x08, 0x91, 0x1b, 0x81} }
/**
* Interface which all form controls (e.g. buttons, checkboxes, text,
* radio buttons, select, etc) implement in addition to their dom specific interface.
**/
class nsIFormControl : public nsISupports {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IFORMCONTROL_IID; return iid; }
/**
* Get the form for this form control.
* @param aForm the form to get
* @return NS_OK
*/
NS_IMETHOD GetForm(nsIDOMHTMLFormElement** aForm) = 0;
/**
* Set the form for this form control.
* @param aForm the form
* @return NS_OK
*/
NS_IMETHOD SetForm(nsIDOMHTMLFormElement* aForm) = 0;
/**
* Get the type of this control
* @param aType the type to be returned
* @return NS_OK
*/
NS_IMETHOD GetType(PRInt32* aType) = 0;
NS_IMETHOD Init() = 0;
};
#endif /* nsIFormControl_h___ */

View File

@@ -0,0 +1,102 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsIHTMLContent_h___
#define nsIHTMLContent_h___
#include "nsIStyledContent.h"
#include "nsHTMLValue.h"
class nsString;
class nsIFrame;
class nsIStyleRule;
class nsIMutableStyleContext;
class nsIPresContext;
class nsXIFConverter;
class nsIHTMLMappedAttributes;
class nsIURI;
// IID for the nsIHTMLContent class
#define NS_IHTMLCONTENT_IID \
{ 0xb9e110b0, 0x94d6, 0x11d1, \
{0x89, 0x5c, 0x00, 0x60, 0x08, 0x91, 0x1b, 0x81} }
typedef void (*nsMapAttributesFunc)(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
// Abstract interface for all html content
class nsIHTMLContent : public nsIStyledContent {
public:
static const nsIID& GetIID() { static nsIID iid = NS_IHTMLCONTENT_IID; return iid; }
/**
* If this html content is a container, then compact asks it to minimize
* it's storage usage.
*/
NS_IMETHOD Compact() = 0;
NS_IMETHOD SetHTMLAttribute(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
PRBool aNotify) = 0;
NS_IMETHOD GetHTMLAttribute(nsIAtom* aAttribute,
nsHTMLValue& aValue) const = 0;
NS_IMETHOD GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const = 0;
NS_IMETHOD AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const = 0;
NS_IMETHOD StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult) = 0;
/**
* Get the base URL for any relative URLs within this piece
* of content. Generally, this is the document's base URL,
* but certain content carries a local base for backward
* compatibility.
*/
NS_IMETHOD GetBaseURL(nsIURI*& aBaseURL) const = 0;
/**
* Get the base target for any links within this piece
* of content. Generally, this is the document's base target,
* but certain content carries a local base for backward
* compatibility.
*/
NS_IMETHOD GetBaseTarget(nsString& aBaseTarget) const = 0;
/**
* Translate this piece of content to html. Note that this only
* translates this content object, not any children it might
* have. The caller is responsible for recursing down the
* hierarchy.
*/
// XXX add in output character set information so that we know how
// to encode non 7 bit characters
NS_IMETHOD ToHTMLString(nsString& aResult) const = 0;
NS_IMETHOD ToHTML(FILE* out) const = 0;
};
#endif /* nsIHTMLContent_h___ */

View File

@@ -0,0 +1,71 @@
/* -*- 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.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.org 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.
*
* Contributor(s):
*/
#ifndef nsISelectElement_h___
#define nsISelectElement_h___
#include "nsISupports.h"
// IID for the nsISelect interface
#define NS_ISELECTELEMENT_IID \
{ 0xa6cf90f6, 0x15b3, 0x11d2, \
{ 0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32 } }
/**
* This interface is used to notify a SELECT when OPTION
* elements are added and removed from its subtree.
* Note that the nsIDOMHTMLSelectElement and nsIContent
* interfaces are the ones to use to access and enumerate
* OPTIONs within a SELECT element.
*/
class nsISelectElement : public nsISupports {
public:
NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISELECTELEMENT_IID)
/**
* An OPTION element has been added to the SELECT's
* subtree.
*/
NS_IMETHOD AddOption(nsIContent* aContent) = 0;
/**
* An OPTION element has been deleted from the SELECT's
* subtree.
*/
NS_IMETHOD RemoveOption(nsIContent* aContent) = 0;
/**
* Indicates that we're done adding child content
* to the select during document loading.
*/
NS_IMETHOD DoneAddingContent(PRBool aIsDone) = 0;
/**
* Returns whether we're done adding child content
* to the select during document loading.
*/
NS_IMETHOD IsDoneAddingContent(PRBool * aIsDone) = 0;
};
#endif // nsISelectElement_h___

View File

@@ -0,0 +1,141 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "GenericElementCollection.h"
#include "nsIDOMElement.h"
#include "nsGenericHTMLElement.h"
GenericElementCollection::GenericElementCollection(nsIContent *aParent,
nsIAtom *aTag)
: nsGenericDOMHTMLCollection()
{
mParent = aParent;
mTag = aTag;
NS_IF_ADDREF(aTag);
}
GenericElementCollection::~GenericElementCollection()
{
// we do NOT have a ref-counted reference to mParent, so do NOT
// release it! this is to avoid circular references. The
// instantiator who provided mParent is responsible for managing our
// reference for us.
// Release reference on the tag
NS_IF_RELEASE(mTag);
}
// we re-count every call. A better implementation would be to set ourselves up as
// an observer of contentAppended, contentInserted, and contentDeleted
NS_IMETHODIMP
GenericElementCollection::GetLength(PRUint32* aLength)
{
if (nsnull==aLength)
return NS_ERROR_NULL_POINTER;
*aLength=0;
nsresult result = NS_OK;
if (nsnull!=mParent)
{
nsIContent *child=nsnull;
PRUint32 childIndex=0;
mParent->ChildAt(childIndex, child);
while (nsnull!=child)
{
nsIAtom *childTag;
child->GetTag(childTag);
if (mTag==childTag)
{
(*aLength)++;
}
NS_RELEASE(childTag);
NS_RELEASE(child);
childIndex++;
mParent->ChildAt(childIndex, child);
}
}
return result;
}
NS_IMETHODIMP
GenericElementCollection::Item(PRUint32 aIndex, nsIDOMNode** aReturn)
{
*aReturn=nsnull;
PRUint32 theIndex = 0;
nsresult rv = NS_OK;
if (nsnull!=mParent)
{
nsIContent *child=nsnull;
PRUint32 childIndex=0;
mParent->ChildAt(childIndex, child);
while (nsnull!=child)
{
nsIAtom *childTag;
child->GetTag(childTag);
if (mTag==childTag)
{
if (aIndex==theIndex)
{
child->QueryInterface(kIDOMNodeIID, (void**)aReturn); // out-param addref
NS_ASSERTION(nsnull!=aReturn, "content element must be an nsIDOMNode");
NS_RELEASE(childTag);
NS_RELEASE(child);
break;
}
theIndex++;
}
NS_RELEASE(childTag);
NS_RELEASE(child);
childIndex++;
mParent->ChildAt(childIndex, child);
}
}
return rv;
}
NS_IMETHODIMP
GenericElementCollection::NamedItem(const nsString& aName, nsIDOMNode** aReturn)
{
nsresult rv = NS_OK;
if (nsnull!=mParent)
{
}
return rv;
}
NS_IMETHODIMP
GenericElementCollection::ParentDestroyed()
{
// see comment in destructor, do NOT release mParent!
mParent = nsnull;
return NS_OK;
}
#ifdef DEBUG
nsresult
GenericElementCollection::SizeOf(nsISizeOfHandler* aSizer,
PRUint32* aResult) const
{
if (!aResult) return NS_ERROR_NULL_POINTER;
*aResult = sizeof(*this);
return NS_OK;
}
#endif

View File

@@ -0,0 +1,58 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef GenericElementCollection_h__
#define GenericElementCollection_h__
#include "nsGenericDOMHTMLCollection.h"
class nsIContent;
class nsIAtom;
/**
* This class provides a late-bound collection of elements that are
* direct decendents of an element.
* mParent is NOT ref-counted to avoid circular references
*/
class GenericElementCollection : public nsGenericDOMHTMLCollection
{
public:
GenericElementCollection(nsIContent *aParent,
nsIAtom *aTag);
virtual ~GenericElementCollection();
NS_IMETHOD GetLength(PRUint32* aLength);
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn);
NS_IMETHOD NamedItem(const nsString& aName, nsIDOMNode** aReturn);
NS_IMETHOD ParentDestroyed();
#ifdef DEBUG
nsresult SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const;
#endif
protected:
nsIContent * mParent;
nsIAtom * mTag;
};
#endif

View File

@@ -0,0 +1,115 @@
#
# 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.org 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.
#
# Contributor(s):
#
DEPTH = ../../../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = layout
LIBRARY_NAME = nglhtmlcon_s
REQUIRES = xpcom raptor dom js netlib
CPPSRCS = \
nsAttributeContent.cpp \
nsGenericHTMLElement.cpp \
nsGenericDOMHTMLCollection.cpp \
GenericElementCollection.cpp \
nsHTMLAnchorElement.cpp \
nsHTMLAppletElement.cpp \
nsHTMLAreaElement.cpp \
nsHTMLBRElement.cpp \
nsHTMLBaseElement.cpp \
nsHTMLBaseFontElement.cpp \
nsHTMLBodyElement.cpp \
nsHTMLButtonElement.cpp \
nsHTMLDListElement.cpp \
nsHTMLDelElement.cpp \
nsHTMLDirectoryElement.cpp \
nsHTMLDivElement.cpp \
nsHTMLEmbedElement.cpp \
nsHTMLFieldSetElement.cpp \
nsHTMLFontElement.cpp \
nsHTMLFormElement.cpp \
nsHTMLFrameElement.cpp \
nsHTMLFrameSetElement.cpp \
nsHTMLHRElement.cpp \
nsHTMLHeadElement.cpp \
nsHTMLHeadingElement.cpp \
nsHTMLHtmlElement.cpp \
nsHTMLIFrameElement.cpp \
nsHTMLImageElement.cpp \
nsHTMLInputElement.cpp \
nsHTMLInsElement.cpp \
nsHTMLIsIndexElement.cpp \
nsHTMLLIElement.cpp \
nsHTMLLabelElement.cpp \
nsHTMLLayerElement.cpp \
nsHTMLLegendElement.cpp \
nsHTMLLinkElement.cpp \
nsHTMLMapElement.cpp \
nsHTMLMenuElement.cpp \
nsHTMLMetaElement.cpp \
nsHTMLModElement.cpp \
nsHTMLOListElement.cpp \
nsHTMLObjectElement.cpp \
nsHTMLOptionElement.cpp \
nsHTMLOptGroupElement.cpp \
nsHTMLParagraphElement.cpp \
nsHTMLParamElement.cpp \
nsHTMLPreElement.cpp \
nsHTMLQuoteElement.cpp \
nsHTMLScriptElement.cpp \
nsHTMLSelectElement.cpp \
nsHTMLSpacerElement.cpp \
nsHTMLSpanElement.cpp \
nsHTMLStyleElement.cpp \
nsHTMLTableElement.cpp \
nsHTMLTableCaptionElement.cpp \
nsHTMLTableCellElement.cpp \
nsHTMLTableColElement.cpp \
nsHTMLTableColGroupElement.cpp \
nsHTMLTableRowElement.cpp \
nsHTMLTableSectionElement.cpp \
nsHTMLTextAreaElement.cpp \
nsHTMLTitleElement.cpp \
nsHTMLUListElement.cpp \
nsHTMLWBRElement.cpp \
nsEditorController.cpp \
$(NULL)
# we don't want the shared lib, but we want to force the creation of a static lib.
override NO_SHARED_LIB=1
override NO_STATIC_LIB=
include $(topsrcdir)/config/rules.mk
DEFINES += -D_IMPL_NS_HTML
INCLUDES += \
-I$(srcdir)/../../style/src \
-I$(srcdir)/../../../base/src \
-I$(srcdir)/../../base/src \
$(NULL)

View File

@@ -0,0 +1,185 @@
#!nmake
#
# 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.org 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.
#
# Contributor(s):
DEPTH=..\..\..\..
LIBRARY_NAME = nglhtmlcon_s
MODULE=raptor
REQUIRES=xpcom raptor js
DEFINES=-D_IMPL_NS_HTML -DWIN32_LEAN_AND_MEAN
!if defined(XP_NEW_SELECTION)
DEFINES = $(DEFINES) -DXP_NEW_SELECTION
!endif
CPPSRCS= \
nsAttributeContent.cpp \
nsGenericHTMLElement.cpp \
nsGenericDOMHTMLCollection.cpp \
GenericElementCollection.cpp \
nsHTMLAnchorElement.cpp \
nsHTMLAppletElement.cpp \
nsHTMLAreaElement.cpp \
nsHTMLBRElement.cpp \
nsHTMLBaseElement.cpp \
nsHTMLBaseFontElement.cpp \
nsHTMLBodyElement.cpp \
nsHTMLButtonElement.cpp \
nsHTMLDListElement.cpp \
nsHTMLDelElement.cpp \
nsHTMLDirectoryElement.cpp \
nsHTMLDivElement.cpp \
nsHTMLEmbedElement.cpp \
nsHTMLFieldSetElement.cpp \
nsHTMLFontElement.cpp \
nsHTMLFormElement.cpp \
nsHTMLFrameElement.cpp \
nsHTMLFrameSetElement.cpp \
nsHTMLHRElement.cpp \
nsHTMLHeadElement.cpp \
nsHTMLHeadingElement.cpp \
nsHTMLHtmlElement.cpp \
nsHTMLIFrameElement.cpp \
nsHTMLImageElement.cpp \
nsHTMLInputElement.cpp \
nsHTMLInsElement.cpp \
nsHTMLIsIndexElement.cpp \
nsHTMLLIElement.cpp \
nsHTMLLabelrElement.cpp \
nsHTMLLayerElement.cpp \
nsHTMLLegendElement.cpp \
nsHTMLLinkElement.cpp \
nsHTMLMapElement.cpp \
nsHTMLMenuElement.cpp \
nsHTMLMetaElement.cpp \
nsHTMLModElement.cpp \
nsHTMLOListElement.cpp \
nsHTMLObjectElement.cpp \
nsHTMLOptionElement.cpp \
nsHTMLOptGroupElement.cpp \
nsHTMLParagraphElement.cpp \
nsHTMLParamElement.cpp \
nsHTMLPreElement.cpp \
nsHTMLQuoteElement.cpp \
nsHTMLScriptElement.cpp \
nsHTMLSelectElement.cpp \
nsHTMLSpacerElement.cpp \
nsHTMLSpanElement.cpp \
nsHTMLStyleElement.cpp \
nsHTMLTableElement.cpp \
nsHTMLTableCaptionElement.cpp \
nsHTMLTableCellElement.cpp \
nsHTMLTableColElement.cpp \
nsHTMLTableColGroupElement.cpp \
nsHTMLTableRowElement.cpp \
nsHTMLTableSectionElement.cpp \
nsHTMLTextAreaElement.cpp \
nsHTMLTitleElement.cpp \
nsHTMLUListElement.cpp \
nsHTMLWBRElement.cpp \
nsEditorController.cpp \
$(NULL)
CPP_OBJS= \
.\$(OBJDIR)\nsAttributeContent.obj \
.\$(OBJDIR)\nsGenericHTMLElement.obj \
.\$(OBJDIR)\nsGenericDOMHTMLCollection.obj \
.\$(OBJDIR)\GenericElementCollection.obj \
.\$(OBJDIR)\nsHTMLAnchorElement.obj \
.\$(OBJDIR)\nsHTMLAppletElement.obj \
.\$(OBJDIR)\nsHTMLAreaElement.obj \
.\$(OBJDIR)\nsHTMLBRElement.obj \
.\$(OBJDIR)\nsHTMLBaseElement.obj \
.\$(OBJDIR)\nsHTMLBaseFontElement.obj \
.\$(OBJDIR)\nsHTMLBodyElement.obj \
.\$(OBJDIR)\nsHTMLButtonElement.obj \
.\$(OBJDIR)\nsHTMLDListElement.obj \
.\$(OBJDIR)\nsHTMLDelElement.obj \
.\$(OBJDIR)\nsHTMLDirectoryElement.obj \
.\$(OBJDIR)\nsHTMLDivElement.obj \
.\$(OBJDIR)\nsHTMLEmbedElement.obj \
.\$(OBJDIR)\nsHTMLFieldSetElement.obj \
.\$(OBJDIR)\nsHTMLFontElement.obj \
.\$(OBJDIR)\nsHTMLFormElement.obj \
.\$(OBJDIR)\nsHTMLFrameElement.obj \
.\$(OBJDIR)\nsHTMLFrameSetElement.obj \
.\$(OBJDIR)\nsHTMLHRElement.obj \
.\$(OBJDIR)\nsHTMLHeadElement.obj \
.\$(OBJDIR)\nsHTMLHeadingElement.obj \
.\$(OBJDIR)\nsHTMLHtmlElement.obj \
.\$(OBJDIR)\nsHTMLIFrameElement.obj \
.\$(OBJDIR)\nsHTMLImageElement.obj \
.\$(OBJDIR)\nsHTMLInputElement.obj \
.\$(OBJDIR)\nsHTMLInsElement.obj \
.\$(OBJDIR)\nsHTMLIsIndexElement.obj \
.\$(OBJDIR)\nsHTMLLIElement.obj \
.\$(OBJDIR)\nsHTMLLabelElement.obj \
.\$(OBJDIR)\nsHTMLLayerElement.obj \
.\$(OBJDIR)\nsHTMLLegendElement.obj \
.\$(OBJDIR)\nsHTMLLinkElement.obj \
.\$(OBJDIR)\nsHTMLMapElement.obj \
.\$(OBJDIR)\nsHTMLMenuElement.obj \
.\$(OBJDIR)\nsHTMLMetaElement.obj \
.\$(OBJDIR)\nsHTMLModElement.obj \
.\$(OBJDIR)\nsHTMLOListElement.obj \
.\$(OBJDIR)\nsHTMLObjectElement.obj \
.\$(OBJDIR)\nsHTMLOptionElement.obj \
.\$(OBJDIR)\nsHTMLOptGroupElement.obj \
.\$(OBJDIR)\nsHTMLParagraphElement.obj \
.\$(OBJDIR)\nsHTMLParamElement.obj \
.\$(OBJDIR)\nsHTMLPreElement.obj \
.\$(OBJDIR)\nsHTMLQuoteElement.obj \
.\$(OBJDIR)\nsHTMLScriptElement.obj \
.\$(OBJDIR)\nsHTMLSelectElement.obj \
.\$(OBJDIR)\nsHTMLSpacerElement.obj \
.\$(OBJDIR)\nsHTMLSpanElement.obj \
.\$(OBJDIR)\nsHTMLStyleElement.obj \
.\$(OBJDIR)\nsHTMLTableElement.obj \
.\$(OBJDIR)\nsHTMLTableCaptionElement.obj \
.\$(OBJDIR)\nsHTMLTableCellElement.obj \
.\$(OBJDIR)\nsHTMLTableColElement.obj \
.\$(OBJDIR)\nsHTMLTableColGroupElement.obj \
.\$(OBJDIR)\nsHTMLTableRowElement.obj \
.\$(OBJDIR)\nsHTMLTableSectionElement.obj \
.\$(OBJDIR)\nsHTMLTextAreaElement.obj \
.\$(OBJDIR)\nsHTMLTitleElement.obj \
.\$(OBJDIR)\nsHTMLUListElement.obj \
.\$(OBJDIR)\nsHTMLWBRElement.obj \
.\$(OBJDIR)\nsEditorController.obj \
$(NULL)
LINCS=-I$(PUBLIC)\xpcom -I$(PUBLIC)\raptor -I$(PUBLIC)\js \
-I$(PUBLIC)\dom -I$(PUBLIC)\netlib \
-I..\..\style\src \
-I..\..\..\base\src -I..\..\base\src \
-I$(PUBLIC)\plugin -I$(PUBLIC)\oji -I$(PUBLIC)\java
LCFLAGS = \
$(LCFLAGS) \
$(DEFINES) \
$(NULL)
include <$(DEPTH)\config\rules.mak>
install:: $(LIBRARY)
$(MAKE_INSTALL) $(LIBRARY) $(DIST)\lib
clobber::
rm -f $(DIST)\lib\$(LIBRARY_NAME).lib

View File

@@ -0,0 +1,547 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIAttributeContent.h"
#include "nsGenericElement.h"
#include "nsIDocument.h"
#include "nsIEventListenerManager.h"
#include "nsIDocument.h"
#include "nsIDOMRange.h"
#include "nsIDOMDocument.h"
#include "nsIDOMDocumentFragment.h"
#include "nsXIFConverter.h"
#include "nsRange.h"
#include "nsIDOMSelection.h"
#include "nsIEnumerator.h"
#include "nsCRT.h"
#include "nsIEventStateManager.h"
#include "nsIPrivateDOMEvent.h"
#include "nsISizeOfHandler.h"
#include "nsDOMEvent.h"
#include "nsIDOMText.h"
#include "nsIDOMScriptObjectFactory.h"
#include "prprf.h"
#include "nsCOMPtr.h"
#include "nsIContent.h"
#include "nsTextFragment.h"
#include "nsVoidArray.h"
#include "nsINameSpaceManager.h"
#include "nsITextContent.h"
class nsIDOMAttr;
class nsIDOMEventListener;
class nsIDOMNodeList;
class nsIEventListenerManager;
class nsIFrame;
class nsIStyleContext;
class nsIStyleRule;
class nsISupportsArray;
class nsIDOMText;
// XXX share all id's in this dir
NS_DEFINE_IID(kIDOMCharacterDataIID, NS_IDOMCHARACTERDATA_IID);
static NS_DEFINE_IID(kIPrivateDOMEventIID, NS_IPRIVATEDOMEVENT_IID);
static NS_DEFINE_IID(kIEnumeratorIID, NS_IENUMERATOR_IID);
static NS_DEFINE_IID(kIDOMDocumentIID, NS_IDOMDOCUMENT_IID);
static NS_DEFINE_IID(kIDOMTextIID, NS_IDOMTEXT_IID);
static NS_DEFINE_IID(kITextContentIID, NS_ITEXT_CONTENT_IID);
class nsAttributeContent : public nsIContent, public nsITextContent, public nsIAttributeContent {
public:
friend nsresult NS_NewAttributeContent(nsAttributeContent** aNewFrame);
nsAttributeContent();
virtual ~nsAttributeContent();
NS_IMETHOD Init(nsIContent* aContent, PRInt32 aNameSpaceID, nsIAtom* aAttrName);
// nsISupports
NS_DECL_ISUPPORTS
// Implementation for nsIContent
NS_IMETHOD GetDocument(nsIDocument*& aResult) const;
NS_IMETHOD SetDocument(nsIDocument* aDocument, PRBool aDeep);
NS_IMETHOD GetParent(nsIContent*& aResult) const;
NS_IMETHOD SetParent(nsIContent* aParent);
NS_IMETHOD IsSynthetic(PRBool& aResult) {
aResult = PR_FALSE;
return NS_OK;
}
NS_IMETHOD GetNameSpaceID(PRInt32& aID) const {
aID = kNameSpaceID_None;
return NS_OK;
}
NS_IMETHOD GetTag(nsIAtom*& aResult) const {
aResult = nsnull;
return NS_OK;
}
NS_IMETHOD ParseAttributeString(const nsString& aStr,
nsIAtom*& aName,
PRInt32& aNameSpaceID) {
aName = nsnull;
aNameSpaceID = kNameSpaceID_None;
return NS_OK;
}
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID,
nsIAtom*& aPrefix) {
aPrefix = nsnull;
return NS_OK;
}
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, const nsString& aValue,
PRBool aNotify) { return NS_OK; }
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, PRBool aNotify) { return NS_OK; }
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom *aAttribute, nsString &aResult) const {return NS_CONTENT_ATTR_NOT_THERE; }
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, PRInt32& aNameSpaceID, nsIAtom*& aName) const {
aName = nsnull;
return NS_ERROR_ILLEGAL_VALUE;
}
NS_IMETHOD GetAttributeCount(PRInt32& aResult) const { aResult = 0; return NS_OK; }
NS_IMETHOD List(FILE* out, PRInt32 aIndent) const { return NS_OK; }
NS_IMETHOD SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const;
NS_IMETHOD HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus);
NS_IMETHOD GetContentID(PRUint32* aID) {
*aID = 0;
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHOD SetContentID(PRUint32 aID) {
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHOD RangeAdd(nsIDOMRange& aRange);
NS_IMETHOD RangeRemove(nsIDOMRange& aRange);
NS_IMETHOD GetRangeList(nsVoidArray*& aResult) const;
// Implementation for nsIContent
NS_IMETHOD BeginConvertToXIF(nsXIFConverter& aConverter) const;
NS_IMETHOD ConvertContentToXIF(nsXIFConverter& aConverter) const;
NS_IMETHOD FinishConvertToXIF(nsXIFConverter& aConverter) const;
NS_IMETHOD CanContainChildren(PRBool& aResult) const { aResult = PR_FALSE; return NS_OK; }
NS_IMETHOD ChildCount(PRInt32& aResult) const { aResult = 0; return NS_OK; }
NS_IMETHOD ChildAt(PRInt32 aIndex, nsIContent*& aResult) const { aResult = nsnull; return NS_OK; }
NS_IMETHOD IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const { aResult = -1; return NS_OK; }
NS_IMETHOD InsertChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify) { return NS_OK; }
NS_IMETHOD ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify) { return NS_OK; }
NS_IMETHOD AppendChildTo(nsIContent* aKid, PRBool aNotify) { return NS_OK; }
NS_IMETHOD RemoveChildAt(PRInt32 aIndex, PRBool aNotify) { return NS_OK; }
NS_IMETHOD SplitText(PRUint32 aOffset, nsIDOMText** aReturn){ return NS_OK; }
///////////////////
// Implementation for nsITextContent
NS_IMETHOD GetText(const nsTextFragment** aFragmentsResult);
NS_IMETHOD GetTextLength(PRInt32* aLengthResult);
NS_IMETHOD CopyText(nsString& aResult);
NS_IMETHOD SetText(const PRUnichar* aBuffer,
PRInt32 aLength,
PRBool aNotify);
NS_IMETHOD SetText(const char* aBuffer,
PRInt32 aLength,
PRBool aNotify);
NS_IMETHOD IsOnlyWhitespace(PRBool* aResult);
//----------------------------------------
void ValidateTextFragment();
void ToCString(nsString& aBuf, PRInt32 aOffset, PRInt32 aLen) const;
// Up pointer to the real content object that we are
// supporting. Sometimes there is work that we just can't do
// ourselves, so this is needed to ask the real object to do the
// work.
nsIContent* mContent;
nsIDocument* mDocument;
nsIContent* mParent;
nsTextFragment mText;
PRInt32 mNameSpaceID;
nsIAtom* mAttrName;
};
NS_IMPL_ADDREF(nsAttributeContent)
NS_IMPL_RELEASE(nsAttributeContent)
nsresult
NS_NewAttributeContent(nsIContent** aContent)
{
NS_PRECONDITION(aContent, "null OUT ptr");
if (nsnull == aContent) {
return NS_ERROR_NULL_POINTER;
}
nsAttributeContent* it = new nsAttributeContent;
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return NS_SUCCEEDED(it->QueryInterface(nsCOMTypeInfo<nsIContent>::GetIID(), (void **)aContent)) ?
NS_OK : NS_ERROR_FAILURE;
}
//----------------------------------------------------------------------
nsAttributeContent::nsAttributeContent()
: mText()
{
NS_INIT_REFCNT();
mDocument = nsnull;
mParent = nsnull;
mContent = nsnull;
mAttrName = nsnull;
}
//----------------------------------------------------------------------
nsAttributeContent::~nsAttributeContent()
{
NS_IF_RELEASE(mAttrName);
//NS_IF_RELEASE(mDocument);
}
//----------------------------------------------------------------------
NS_IMETHODIMP
nsAttributeContent::Init(nsIContent* aContent, PRInt32 aNameSpaceID, nsIAtom* aAttrName)
{
NS_ASSERTION((nsnull == mContent) && (nsnull != aContent), "null ptr");
mContent = aContent;
NS_IF_RELEASE(mAttrName);
mNameSpaceID = aNameSpaceID;
mAttrName = aAttrName;
NS_ADDREF(mAttrName);
return NS_OK;
}
/**
* @param aIID The name of the class implementing the method
* @param _classiiddef The name of the #define symbol that defines the IID
* for the class (e.g. NS_ISUPPORTS_IID)
*
*/
nsresult nsAttributeContent::QueryInterface(const nsIID& aIID, void** aInstancePtr)
{
if (NULL == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
if (aIID.Equals(nsCOMTypeInfo<nsIContent>::GetIID())) {
*aInstancePtr = (void*) ((nsIContent*)this);
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(nsCOMTypeInfo<nsITextContent>::GetIID())) {
*aInstancePtr = (void*) ((nsITextContent*)this);
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(nsCOMTypeInfo<nsIAttributeContent>::GetIID())) {
*aInstancePtr = (void*) ((nsIAttributeContent*)this);
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(nsCOMTypeInfo<nsISupports>::GetIID())) {
*aInstancePtr = (void*) ((nsISupports*)(nsIContent*)this);
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
//----------------------------------------------------------------------
// Implementation of nsIContent
nsresult
nsAttributeContent::BeginConvertToXIF(nsXIFConverter& aConverter) const
{
return NS_OK;
}
nsresult
nsAttributeContent::FinishConvertToXIF(nsXIFConverter& aConverter) const
{
return NS_OK;
}
/**
* Translate the content object into the (XIF) XML Interchange Format
* XIF is an intermediate form of the content model, the buffer
* will then be parsed into any number of formats including HTML, TXT, etc.
*/
nsresult
nsAttributeContent::ConvertContentToXIF(nsXIFConverter& aConverter) const
{
return NS_OK;
}
void
nsAttributeContent::ToCString(nsString& aBuf, PRInt32 aOffset,
PRInt32 aLen) const
{
}
nsresult
nsAttributeContent::GetDocument(nsIDocument*& aResult) const
{
aResult = mDocument;
NS_IF_ADDREF(mDocument);
return NS_OK;
}
nsresult
nsAttributeContent::SetDocument(nsIDocument* aDocument, PRBool aDeep)
{
mDocument = aDocument;
//NS_IF_ADDREF(mDocument);
return NS_OK;
}
nsresult
nsAttributeContent::GetParent(nsIContent*& aResult) const
{
NS_IF_ADDREF(mParent);
aResult = mParent;
return NS_OK;;
}
nsresult
nsAttributeContent::SetParent(nsIContent* aParent)
{
mParent = aParent;
return NS_OK;
}
nsresult
nsAttributeContent::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
nsresult ret = NS_OK;
return ret;
}
nsresult
nsAttributeContent::RangeAdd(nsIDOMRange& aRange)
{
return NS_ERROR_FAILURE;
}
nsresult
nsAttributeContent::RangeRemove(nsIDOMRange& aRange)
{
return NS_ERROR_FAILURE;
}
nsresult
nsAttributeContent::GetRangeList(nsVoidArray*& aResult) const
{
return NS_ERROR_FAILURE;
}
//----------------------------------------------------------------------
// Implementation of the nsITextContent interface
void
nsAttributeContent::ValidateTextFragment()
{
if (nsnull != mContent) {
nsAutoString result;
mContent->GetAttribute(mNameSpaceID, mAttrName, result);
PRUnichar * text = result.ToNewUnicode();
mText.SetTo(text, result.Length());
nsCRT::free(text);
}
else {
mText.SetTo("", 0);
}
}
nsresult
nsAttributeContent::GetText(const nsTextFragment** aFragmentsResult)
{
ValidateTextFragment();
if (nsnull != mContent) {
*aFragmentsResult = &mText;
return NS_OK;
}
// XXX is this a good idea, or should we just return an empty
// fragment with no data in it?
return NS_ERROR_FAILURE;
}
nsresult
nsAttributeContent::GetTextLength(PRInt32* aLengthResult)
{
if (!aLengthResult) {
return NS_ERROR_NULL_POINTER;
}
ValidateTextFragment();
*aLengthResult = mText.GetLength();
return NS_OK;
}
nsresult
nsAttributeContent::CopyText(nsString& aResult)
{
ValidateTextFragment();
if (mText.Is2b()) {
aResult.SetString(mText.Get2b(), mText.GetLength());
}
else {
aResult.SetString(mText.Get1b(), mText.GetLength());
}
return NS_OK;
}
// XXX shouldn't these update mContent's attribute?
nsresult
nsAttributeContent::SetText(const PRUnichar* aBuffer, PRInt32 aLength,
PRBool aNotify)
{
NS_PRECONDITION((aLength >= 0) && (nsnull != aBuffer), "bad args");
if (aLength < 0) {
return NS_ERROR_ILLEGAL_VALUE;
}
if (nsnull == aBuffer) {
return NS_ERROR_NULL_POINTER;
}
mText.SetTo(aBuffer, aLength);
// Trigger a reflow
if (aNotify && (nsnull != mDocument)) {
mDocument->ContentChanged(mContent, nsnull);
}
return NS_OK;
}
// XXX shouldn't these update mContent's attribute?
nsresult
nsAttributeContent::SetText(const char* aBuffer,
PRInt32 aLength,
PRBool aNotify)
{
NS_PRECONDITION((aLength >= 0) && (nsnull != aBuffer), "bad args");
if (aLength < 0) {
return NS_ERROR_ILLEGAL_VALUE;
}
if (nsnull == aBuffer) {
return NS_ERROR_NULL_POINTER;
}
mText.SetTo(aBuffer, aLength);
// Trigger a reflow
if (aNotify && (nsnull != mDocument)) {
mDocument->ContentChanged(mContent, nsnull);
}
return NS_OK;
}
nsresult
nsAttributeContent::IsOnlyWhitespace(PRBool* aResult)
{
ValidateTextFragment();
nsTextFragment& frag = mText;
if (frag.Is2b()) {
const PRUnichar* cp = frag.Get2b();
const PRUnichar* end = cp + frag.GetLength();
while (cp < end) {
PRUnichar ch = *cp++;
if (!XP_IS_SPACE(ch)) {
*aResult = PR_FALSE;
return NS_OK;
}
}
}
else {
const char* cp = frag.Get1b();
const char* end = cp + frag.GetLength();
while (cp < end) {
PRUnichar ch = PRUnichar(*(unsigned char*)cp);
cp++;
if (!XP_IS_SPACE(ch)) {
*aResult = PR_FALSE;
return NS_OK;
}
}
}
*aResult = PR_TRUE;
return NS_OK;
}
NS_IMETHODIMP
nsAttributeContent::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
if (!aResult) return NS_ERROR_NULL_POINTER;
*aResult = sizeof(*this);
return NS_OK;
}

View File

@@ -0,0 +1,82 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nslayout.h"
#include "nsGenericDOMHTMLCollection.h"
nsGenericDOMHTMLCollection::nsGenericDOMHTMLCollection()
{
mRefCnt = 0;
mScriptObject = nsnull;
}
nsGenericDOMHTMLCollection::~nsGenericDOMHTMLCollection()
{
}
nsresult
nsGenericDOMHTMLCollection::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
if (NULL == aInstancePtr) {
return NS_ERROR_NULL_POINTER;
}
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
static NS_DEFINE_IID(kIDOMHTMLCollectionIID, NS_IDOMHTMLCOLLECTION_IID);
static NS_DEFINE_IID(kIScriptObjectOwnerIID, NS_ISCRIPTOBJECTOWNER_IID);
if (aIID.Equals(kIDOMHTMLCollectionIID)) {
*aInstancePtr = (void*)(nsIDOMHTMLCollection*)this;
AddRef();
return NS_OK;
}
if (aIID.Equals(kIScriptObjectOwnerIID)) {
*aInstancePtr = (void*)(nsIScriptObjectOwner*)this;
AddRef();
return NS_OK;
}
if (aIID.Equals(kISupportsIID)) {
*aInstancePtr = (void*)(nsISupports*)(nsIDOMHTMLCollection*)this;
AddRef();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMPL_ADDREF(nsGenericDOMHTMLCollection)
NS_IMPL_RELEASE(nsGenericDOMHTMLCollection)
NS_IMETHODIMP
nsGenericDOMHTMLCollection::GetScriptObject(nsIScriptContext *aContext, void** aScriptObject)
{
nsresult res = NS_OK;
if (nsnull == mScriptObject) {
res = NS_NewScriptHTMLCollection(aContext, (nsISupports *)(nsIDOMHTMLCollection *)this, nsnull, (void**)&mScriptObject);
}
*aScriptObject = mScriptObject;
return res;
}
NS_IMETHODIMP
nsGenericDOMHTMLCollection::SetScriptObject(void *aScriptObject)
{
mScriptObject = aScriptObject;
return NS_OK;
}

View File

@@ -0,0 +1,62 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsGenericDOMHTMLCollection_h__
#define nsGenericDOMHTMLCollection_h__
#include "nsISupports.h"
#include "nsIDOMHTMLCollection.h"
#include "nsIScriptObjectOwner.h"
/**
* This is a base class for a generic HTML collection. The base class
* provides implementations for nsISupports and nsIScriptObjectOwner,
* but it is up to the subclass to implement the core HTML collection
* methods:
* GetLength
* Item
* NamedItem
*
*/
class nsGenericDOMHTMLCollection : public nsIDOMHTMLCollection,
public nsIScriptObjectOwner
{
public:
nsGenericDOMHTMLCollection();
virtual ~nsGenericDOMHTMLCollection();
NS_DECL_ISUPPORTS
NS_IMETHOD GetScriptObject(nsIScriptContext *aContext, void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// The following need to be defined in the subclass
// nsIDOMHTMLCollection interface
NS_IMETHOD GetLength(PRUint32* aLength)=0;
NS_IMETHOD Item(PRUint32 aIndex, nsIDOMNode** aReturn)=0;
NS_IMETHOD NamedItem(const nsString& aName, nsIDOMNode** aReturn)=0;
protected:
void* mScriptObject;
};
#endif // nsGenericDOMHTMLCollection_h__

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,651 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#ifndef nsGenericHTMLElement_h___
#define nsGenericHTMLElement_h___
#include "nsGenericElement.h"
#include "nsHTMLParts.h"
#include "nsIDOMHTMLElement.h"
#include "nsIContent.h"
#include "nsHTMLValue.h"
#include "nsVoidArray.h"
#include "nsIJSScriptObject.h"
#include "nsINameSpaceManager.h" // for kNameSpaceID_HTML
extern const nsIID kIDOMHTMLElementIID;
extern const nsIID kIHTMLContentIID;
class nsIDOMAttr;
class nsIDOMEventListener;
class nsIDOMNodeList;
class nsIEventListenerManager;
class nsIFrame;
class nsIHTMLAttributes;
class nsIHTMLMappedAttributes;
class nsIHTMLContent;
class nsIMutableStyleContext;
class nsIStyleRule;
class nsISupportsArray;
class nsIDOMScriptObjectFactory;
class nsChildContentList;
class nsDOMCSSDeclaration;
class nsIDOMCSSStyleDeclaration;
class nsIURI;
class nsIFormControlFrame;
class nsIFormControl;
class nsIForm;
class nsGenericHTMLElement : public nsGenericElement {
public:
nsGenericHTMLElement();
~nsGenericHTMLElement();
nsresult CopyInnerTo(nsIContent* aSrcContent,
nsGenericHTMLElement* aDest,
PRBool aDeep);
// Implementation for nsIDOMNode
nsresult GetNodeName(nsString& aNodeName);
// Implementation for nsIDOMElement
nsresult GetAttribute(const nsString& aName, nsString& aReturn)
{
return nsGenericElement::GetAttribute(aName, aReturn);
}
nsresult SetAttribute(const nsString& aName, const nsString& aValue)
{
return nsGenericElement::SetAttribute(aName, aValue);
}
nsresult GetTagName(nsString& aTagName);
// Implementation for nsIDOMHTMLElement
nsresult GetId(nsString& aId);
nsresult SetId(const nsString& aId);
nsresult GetTitle(nsString& aTitle);
nsresult SetTitle(const nsString& aTitle);
nsresult GetLang(nsString& aLang);
nsresult SetLang(const nsString& aLang);
nsresult GetDir(nsString& aDir);
nsresult SetDir(const nsString& aDir);
nsresult GetClassName(nsString& aClassName);
nsresult SetClassName(const nsString& aClassName);
nsresult GetStyle(nsIDOMCSSStyleDeclaration** aStyle);
// Implementation for nsIContent
nsresult GetNameSpaceID(PRInt32& aNameSpaceID) const;
nsresult SetDocument(nsIDocument* aDocument, PRBool aDeep);
nsresult ParseAttributeString(const nsString& aStr,
nsIAtom*& aName,
PRInt32& aNameSpaceID);
nsresult GetNameSpacePrefixFromId(PRInt32 aNameSpaceID,
nsIAtom*& aPrefix);
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
PRBool aNotify);
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, nsString& aResult) const;
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, PRBool aNotify);
nsresult GetAttributeNameAt(PRInt32 aIndex,
PRInt32& aNameSpaceID,
nsIAtom*& aName) const;
nsresult GetAttributeCount(PRInt32& aResult) const;
nsresult List(FILE* out, PRInt32 aIndent) const;
nsresult SetParentForFormControls(nsIContent* aParent,
nsIFormControl* aControl,
nsIForm* aForm);
nsresult SetDocumentForFormControls(nsIDocument* aDocument,
PRBool aDeep,
nsIFormControl* aControl,
nsIForm* aForm);
// Implementation for nsIHTMLContent
nsresult Compact();
nsresult SetHTMLAttribute(nsIAtom* aAttribute, const nsHTMLValue& aValue,
PRBool aNotify);
nsresult GetHTMLAttribute(nsIAtom* aAttribute, nsHTMLValue& aValue) const;
nsresult GetID(nsIAtom*& aResult) const;
nsresult GetClasses(nsVoidArray& aArray) const;
nsresult HasClass(nsIAtom* aClass) const;
nsresult GetContentStyleRules(nsISupportsArray* aRules);
nsresult GetInlineStyleRules(nsISupportsArray* aRules);
nsresult GetBaseURL(nsIURI*& aBaseURL) const;
nsresult GetBaseTarget(nsString& aBaseTarget) const;
nsresult ToHTMLString(nsString& aResult) const;
nsresult ToHTML(FILE* out) const;
nsresult SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult,
size_t aInstanceSize) const;
//----------------------------------------
nsresult AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const;
void ListAttributes(FILE* out) const;
//----------------------------------------
// Attribute parsing utilities
struct EnumTable {
const char* tag;
PRInt32 value;
};
static PRBool ParseEnumValue(const nsString& aValue,
EnumTable* aTable,
nsHTMLValue& aResult);
static PRBool ParseCaseSensitiveEnumValue(const nsString& aValue,
EnumTable* aTable,
nsHTMLValue& aResult);
static PRBool EnumValueToString(const nsHTMLValue& aValue,
EnumTable* aTable,
nsString& aResult);
static PRBool ParseValueOrPercent(const nsString& aString,
nsHTMLValue& aResult,
nsHTMLUnit aValueUnit);
static PRBool ParseValueOrPercentOrProportional(const nsString& aString,
nsHTMLValue& aResult,
nsHTMLUnit aValueUnit);
static PRBool ValueOrPercentToString(const nsHTMLValue& aValue,
nsString& aResult);
static PRBool ValueOrPercentOrProportionalToString(const nsHTMLValue& aValue,
nsString& aResult);
static PRBool ParseValue(const nsString& aString, PRInt32 aMin,
nsHTMLValue& aResult, nsHTMLUnit aValueUnit);
static PRBool ParseValue(const nsString& aString, PRInt32 aMin, PRInt32 aMax,
nsHTMLValue& aResult, nsHTMLUnit aValueUnit);
static PRBool ParseColor(const nsString& aString, nsIDocument* aDocument,
nsHTMLValue& aResult);
static PRBool ColorToString(const nsHTMLValue& aValue,
nsString& aResult);
static PRBool ParseCommonAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult);
static PRBool ParseAlignValue(const nsString& aString, nsHTMLValue& aResult);
PRBool ParseDivAlignValue(const nsString& aString,
nsHTMLValue& aResult) const;
PRBool DivAlignValueToString(const nsHTMLValue& aValue,
nsString& aResult) const;
PRBool ParseTableHAlignValue(const nsString& aString,
nsHTMLValue& aResult) const;
PRBool TableHAlignValueToString(const nsHTMLValue& aValue,
nsString& aResult) const;
PRBool ParseTableCellHAlignValue(const nsString& aString,
nsHTMLValue& aResult) const;
PRBool TableCellHAlignValueToString(const nsHTMLValue& aValue,
nsString& aResult) const;
static PRBool ParseTableVAlignValue(const nsString& aString,
nsHTMLValue& aResult);
static PRBool TableVAlignValueToString(const nsHTMLValue& aValue,
nsString& aResult);
static PRBool AlignValueToString(const nsHTMLValue& aValue,
nsString& aResult);
static PRBool ParseImageAttribute(nsIAtom* aAttribute,
const nsString& aString,
nsHTMLValue& aResult);
static PRBool ImageAttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult);
static PRBool ParseFrameborderValue(PRBool aStandardMode,
const nsString& aString,
nsHTMLValue& aResult);
static PRBool FrameborderValueToString(PRBool aStandardMode,
const nsHTMLValue& aValue,
nsString& aResult);
static PRBool ParseScrollingValue(PRBool aStandardMode,
const nsString& aString,
nsHTMLValue& aResult);
static PRBool ScrollingValueToString(PRBool aStandardMode,
const nsHTMLValue& aValue,
nsString& aResult);
nsresult ReparseStyleAttribute(void);
nsresult ParseStyleAttribute(const nsString& aValue, nsHTMLValue& aResult);
/** Attribute Mapping Helpers
*
* All attributes that are mapped into style contexts must have a
* matched set of mapping function and impact getter
*/
static void MapCommonAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aStyleContext,
nsIPresContext* aPresContext);
static PRBool GetCommonMappedAttributesImpact(const nsIAtom* aAttribute,
PRInt32& aHint);
static void MapImageAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
static PRBool GetImageMappedAttributesImpact(const nsIAtom* aAttribute,
PRInt32& aHint);
static void MapImageAlignAttributeInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
static PRBool GetImageAlignAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint);
static void MapImageBorderAttributeInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext,
nscolor aBorderColors[4]);
static PRBool GetImageBorderAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint);
static void MapBackgroundAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
static PRBool GetBackgroundAttributesImpact(const nsIAtom* aAttribute,
PRInt32& aHint);
//XXX These two creates a dependency between content and frames
static nsresult GetPrimaryFrame(nsIHTMLContent* aContent,
nsIFormControlFrame *&aFormControlFrame);
static nsresult GetPresContext(nsIHTMLContent* aContent, nsIPresContext** aPresContext);
static nsresult GetBaseURL(const nsHTMLValue& aBaseHref,
nsIDocument* aDocument,
nsIURI** aResult);
// See if the content object is in a document that has nav-quirks
// mode enabled.
PRBool InNavQuirksMode() const;
nsIHTMLAttributes* mAttributes;
};
//----------------------------------------------------------------------
class nsGenericHTMLLeafElement : public nsGenericHTMLElement {
public:
nsGenericHTMLLeafElement();
~nsGenericHTMLLeafElement();
nsresult CopyInnerTo(nsIContent* aSrcContent,
nsGenericHTMLLeafElement* aDest,
PRBool aDeep);
// Remainder of nsIDOMHTMLElement (and nsIDOMNode)
nsresult GetChildNodes(nsIDOMNodeList** aChildNodes);
nsresult HasChildNodes(PRBool* aHasChildNodes) {
*aHasChildNodes = PR_FALSE;
return NS_OK;
}
nsresult GetFirstChild(nsIDOMNode** aFirstChild) {
*aFirstChild = nsnull;
return NS_OK;
}
nsresult GetLastChild(nsIDOMNode** aLastChild) {
*aLastChild = nsnull;
return NS_OK;
}
nsresult InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild,
nsIDOMNode** aReturn) {
return NS_ERROR_FAILURE;
}
nsresult ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild,
nsIDOMNode** aReturn) {
return NS_ERROR_FAILURE;
}
nsresult RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn) {
return NS_ERROR_FAILURE;
}
nsresult AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn) {
return NS_ERROR_FAILURE;
}
// Remainder of nsIHTMLContent (and nsIContent)
nsresult BeginConvertToXIF(nsXIFConverter& aConverter) const;
nsresult ConvertContentToXIF(nsXIFConverter& aConverter) const;
nsresult FinishConvertToXIF(nsXIFConverter& aConverter) const;
nsresult Compact() {
return NS_OK;
}
nsresult CanContainChildren(PRBool& aResult) const {
aResult = PR_FALSE;
return NS_OK;
}
nsresult ChildCount(PRInt32& aResult) const {
aResult = 0;
return NS_OK;
}
nsresult ChildAt(PRInt32 aIndex, nsIContent*& aResult) const {
aResult = nsnull;
return NS_OK;
}
nsresult IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const {
aResult = -1;
return NS_OK;
}
nsresult InsertChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify) {
return NS_OK;
}
nsresult ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify) {
return NS_OK;
}
nsresult AppendChildTo(nsIContent* aKid, PRBool aNotify) {
return NS_OK;
}
nsresult RemoveChildAt(PRInt32 aIndex, PRBool aNotify) {
return NS_OK;
}
};
//----------------------------------------------------------------------
class nsGenericHTMLContainerElement : public nsGenericHTMLElement {
public:
nsGenericHTMLContainerElement();
~nsGenericHTMLContainerElement();
nsresult CopyInnerTo(nsIContent* aSrcContent,
nsGenericHTMLContainerElement* aDest,
PRBool aDeep);
// Remainder of nsIDOMHTMLElement (and nsIDOMNode)
nsresult GetChildNodes(nsIDOMNodeList** aChildNodes);
nsresult HasChildNodes(PRBool* aHasChildNodes);
nsresult GetFirstChild(nsIDOMNode** aFirstChild);
nsresult GetLastChild(nsIDOMNode** aLastChild);
nsresult InsertBefore(nsIDOMNode* aNewChild, nsIDOMNode* aRefChild,
nsIDOMNode** aReturn);
nsresult ReplaceChild(nsIDOMNode* aNewChild, nsIDOMNode* aOldChild,
nsIDOMNode** aReturn);
nsresult RemoveChild(nsIDOMNode* aOldChild, nsIDOMNode** aReturn);
nsresult AppendChild(nsIDOMNode* aNewChild, nsIDOMNode** aReturn);
// Remainder of nsIHTMLContent (and nsIContent)
nsresult BeginConvertToXIF(nsXIFConverter& aConverter) const;
nsresult ConvertContentToXIF(nsXIFConverter& aConverter) const;
nsresult FinishConvertToXIF(nsXIFConverter& aConverter) const;
nsresult Compact();
nsresult CanContainChildren(PRBool& aResult) const;
nsresult ChildCount(PRInt32& aResult) const;
nsresult ChildAt(PRInt32 aIndex, nsIContent*& aResult) const;
nsresult IndexOf(nsIContent* aPossibleChild, PRInt32& aResult) const;
nsresult InsertChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify);
nsresult ReplaceChildAt(nsIContent* aKid, PRInt32 aIndex, PRBool aNotify);
nsresult AppendChildTo(nsIContent* aKid, PRBool aNotify);
nsresult RemoveChildAt(PRInt32 aIndex, PRBool aNotify);
nsVoidArray mChildren;
};
//----------------------------------------------------------------------
/**
* Implement the nsIDOMHTMLElement API by forwarding the methods to a
* generic content object (either nsGenericHTMLLeafElement or
* nsGenericHTMLContainerContent)
*/
#define NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(_g) \
NS_IMETHOD GetId(nsString& aId) { \
return _g.GetId(aId); \
} \
NS_IMETHOD SetId(const nsString& aId) { \
return _g.SetId(aId); \
} \
NS_IMETHOD GetTitle(nsString& aTitle) { \
return _g.GetTitle(aTitle); \
} \
NS_IMETHOD SetTitle(const nsString& aTitle) { \
return _g.SetTitle(aTitle); \
} \
NS_IMETHOD GetLang(nsString& aLang) { \
return _g.GetLang(aLang); \
} \
NS_IMETHOD SetLang(const nsString& aLang) { \
return _g.SetLang(aLang); \
} \
NS_IMETHOD GetDir(nsString& aDir) { \
return _g.GetDir(aDir); \
} \
NS_IMETHOD SetDir(const nsString& aDir) { \
return _g.SetDir(aDir); \
} \
NS_IMETHOD GetClassName(nsString& aClassName) { \
return _g.GetClassName(aClassName); \
} \
NS_IMETHOD SetClassName(const nsString& aClassName) { \
return _g.SetClassName(aClassName); \
} \
NS_IMETHOD GetStyle(nsIDOMCSSStyleDeclaration** aStyle) { \
return _g.GetStyle(aStyle); \
}
#define NS_IMPL_IHTMLCONTENT_USING_GENERIC(_g) \
NS_IMETHOD Compact() { \
return _g.Compact(); \
} \
NS_IMETHOD SetHTMLAttribute(nsIAtom* aAttribute, \
const nsHTMLValue& aValue, PRBool aNotify) { \
return _g.SetHTMLAttribute(aAttribute, aValue, aNotify); \
} \
NS_IMETHOD GetHTMLAttribute(nsIAtom* aAttribute, \
nsHTMLValue& aValue) const { \
return _g.GetHTMLAttribute(aAttribute, aValue); \
} \
NS_IMETHOD GetID(nsIAtom*& aResult) const { \
return _g.GetID(aResult); \
} \
NS_IMETHOD GetClasses(nsVoidArray& aArray) const { \
return _g.GetClasses(aArray); \
} \
NS_IMETHOD HasClass(nsIAtom* aClass) const { \
return _g.HasClass(aClass); \
} \
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules) { \
return _g.GetContentStyleRules(aRules); \
} \
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules) { \
return _g.GetInlineStyleRules(aRules); \
} \
NS_IMETHOD GetBaseURL(nsIURI*& aBaseURL) const { \
return _g.GetBaseURL(aBaseURL); \
} \
NS_IMETHOD GetBaseTarget(nsString& aBaseTarget) const { \
return _g.GetBaseTarget(aBaseTarget); \
} \
NS_IMETHOD ToHTMLString(nsString& aResult) const { \
return _g.ToHTMLString(aResult); \
} \
NS_IMETHOD ToHTML(FILE* out) const { \
return _g.ToHTML(out); \
} \
NS_IMETHOD StringToAttribute(nsIAtom* aAttribute, \
const nsString& aValue, \
nsHTMLValue& aResult); \
NS_IMETHOD AttributeToString(nsIAtom* aAttribute, \
const nsHTMLValue& aValue, \
nsString& aResult) const; \
NS_IMETHOD GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc, \
nsMapAttributesFunc& aMapFunc) const; \
NS_IMETHOD GetMappedAttributeImpact(const nsIAtom* aAttribute, \
PRInt32& aHint) const;
#define NS_IMPL_IHTMLCONTENT_USING_GENERIC2(_g) \
NS_IMETHOD Compact() { \
return _g.Compact(); \
} \
NS_IMETHOD SetHTMLAttribute(nsIAtom* aAttribute, \
const nsHTMLValue& aValue, PRBool aNotify) { \
return _g.SetHTMLAttribute(aAttribute, aValue, aNotify); \
} \
NS_IMETHOD GetHTMLAttribute(nsIAtom* aAttribute, \
nsHTMLValue& aValue) const { \
return _g.GetHTMLAttribute(aAttribute, aValue); \
} \
NS_IMETHOD GetID(nsIAtom*& aResult) const { \
return _g.GetID(aResult); \
} \
NS_IMETHOD GetClasses(nsVoidArray& aArray) const { \
return _g.GetClasses(aArray); \
} \
NS_IMETHOD HasClass(nsIAtom* aClass) const { \
return _g.HasClass(aClass); \
} \
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules); \
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules); \
NS_IMETHOD GetBaseURL(nsIURI*& aBaseURL) const { \
return _g.GetBaseURL(aBaseURL); \
} \
NS_IMETHOD GetBaseTarget(nsString& aBaseTarget) const { \
return _g.GetBaseTarget(aBaseTarget); \
} \
NS_IMETHOD ToHTMLString(nsString& aResult) const { \
return _g.ToHTMLString(aResult); \
} \
NS_IMETHOD ToHTML(FILE* out) const { \
return _g.ToHTML(out); \
} \
NS_IMETHOD StringToAttribute(nsIAtom* aAttribute, \
const nsString& aValue, \
nsHTMLValue& aResult); \
NS_IMETHOD AttributeToString(nsIAtom* aAttribute, \
const nsHTMLValue& aValue, \
nsString& aResult) const; \
NS_IMETHOD GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc, \
nsMapAttributesFunc& aMapFunc) const; \
NS_IMETHOD GetMappedAttributeImpact(const nsIAtom* aAttribute, \
PRInt32& aHint) const;
/**
* This macro implements the portion of query interface that is
* generic to all html content objects.
*/
#define NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(_id, _iptr, _this) \
NS_IMPL_CONTENT_QUERY_INTERFACE(_id, _iptr, _this, nsIHTMLContent) \
if (_id.Equals(kIDOMHTMLElementIID)) { \
nsIDOMHTMLElement* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIHTMLContentIID)) { \
nsIHTMLContent* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
} \
if (_id.Equals(kIStyledContentIID)) { \
nsIStyledContent* tmp = _this; \
*_iptr = (void*) tmp; \
NS_ADDREF_THIS(); \
return NS_OK; \
}
/**
* A macro to implement the getter and setter for a given string
* valued content property. The method uses the generic SetAttr and
* GetAttribute methods.
*/
#define NS_IMPL_STRING_ATTR(_class, _method, _atom) \
NS_IMETHODIMP \
_class::Get##_method(nsString& aValue) \
{ \
mInner.GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::_atom, aValue); \
return NS_OK; \
} \
NS_IMETHODIMP \
_class::Set##_method(const nsString& aValue) \
{ \
return mInner.SetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::_atom, aValue, PR_TRUE); \
}
/**
* A macro to implement the getter and setter for a given boolean
* valued content property. The method uses the generic SetAttr and
* GetAttribute methods.
*/
#define NS_IMPL_BOOL_ATTR(_class, _method, _atom) \
NS_IMETHODIMP \
_class::Get##_method(PRBool* aValue) \
{ \
nsHTMLValue val; \
nsresult rv = mInner.GetHTMLAttribute(nsHTMLAtoms::_atom, val); \
*aValue = NS_CONTENT_ATTR_NOT_THERE != rv; \
return NS_OK; \
} \
NS_IMETHODIMP \
_class::Set##_method(PRBool aValue) \
{ \
nsHTMLValue empty(eHTMLUnit_Empty); \
if (aValue) { \
return mInner.SetHTMLAttribute(nsHTMLAtoms::_atom, empty, PR_TRUE); \
} \
else { \
mInner.UnsetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::_atom, PR_TRUE); \
return NS_OK; \
} \
}
/**
* A macro to implement the getter and setter for a given integer
* valued content property. The method uses the generic SetAttr and
* GetAttribute methods.
*/
#define NS_IMPL_INT_ATTR(_class, _method, _atom) \
NS_IMETHODIMP \
_class::Get##_method(PRInt32* aValue) \
{ \
nsHTMLValue value; \
*aValue = -1; \
if (NS_CONTENT_ATTR_HAS_VALUE == \
mInner.GetHTMLAttribute(nsHTMLAtoms::_atom, value)) { \
if (value.GetUnit() == eHTMLUnit_Integer) { \
*aValue = value.GetIntValue(); \
} \
} \
return NS_OK; \
} \
NS_IMETHODIMP \
_class::Set##_method(PRInt32 aValue) \
{ \
nsHTMLValue value(aValue, eHTMLUnit_Integer); \
return mInner.SetHTMLAttribute(nsHTMLAtoms::_atom, value, PR_TRUE); \
}
#endif /* nsGenericHTMLElement_h___ */

View File

@@ -0,0 +1,486 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLAnchorElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsINameSpaceManager.h"
#include "nsIURL.h"
#include "nsIFocusableContent.h"
#include "nsIEventStateManager.h"
#include "nsDOMEvent.h"
#include "nsNetUtil.h"
#include "nsCOMPtr.h"
#include "nsIFrameManager.h"
#include "nsIPresShell.h"
#include "nsIDocument.h"
// XXX suppress
// XXX either suppress is handled in the event code below OR we need a
// custom frame
static NS_DEFINE_IID(kIDOMHTMLAnchorElementIID, NS_IDOMHTMLANCHORELEMENT_IID);
static NS_DEFINE_IID(kIFocusableContentIID, NS_IFOCUSABLECONTENT_IID);
class nsHTMLAnchorElement : public nsIDOMHTMLAnchorElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent,
public nsIFocusableContent
{
public:
nsHTMLAnchorElement(nsIAtom* aTag);
virtual ~nsHTMLAnchorElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLAnchorElement
NS_IMETHOD GetAccessKey(nsString& aAccessKey);
NS_IMETHOD SetAccessKey(const nsString& aAccessKey);
NS_IMETHOD GetCharset(nsString& aCharset);
NS_IMETHOD SetCharset(const nsString& aCharset);
NS_IMETHOD GetCoords(nsString& aCoords);
NS_IMETHOD SetCoords(const nsString& aCoords);
NS_IMETHOD GetHref(nsString& aHref);
NS_IMETHOD SetHref(const nsString& aHref);
NS_IMETHOD GetHreflang(nsString& aHreflang);
NS_IMETHOD SetHreflang(const nsString& aHreflang);
NS_IMETHOD GetName(nsString& aName);
NS_IMETHOD SetName(const nsString& aName);
NS_IMETHOD GetRel(nsString& aRel);
NS_IMETHOD SetRel(const nsString& aRel);
NS_IMETHOD GetRev(nsString& aRev);
NS_IMETHOD SetRev(const nsString& aRev);
NS_IMETHOD GetShape(nsString& aShape);
NS_IMETHOD SetShape(const nsString& aShape);
NS_IMETHOD GetTabIndex(PRInt32* aTabIndex);
NS_IMETHOD SetTabIndex(PRInt32 aTabIndex);
NS_IMETHOD GetTarget(nsString& aTarget);
NS_IMETHOD SetTarget(const nsString& aTarget);
NS_IMETHOD GetType(nsString& aType);
NS_IMETHOD SetType(const nsString& aType);
NS_IMETHOD Blur();
NS_IMETHOD Focus();
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
// nsIFocusableContent
NS_IMETHOD SetFocus(nsIPresContext* aPresContext);
NS_IMETHOD RemoveFocus(nsIPresContext* aPresContext);
protected:
nsGenericHTMLContainerElement mInner;
};
nsresult
NS_NewHTMLAnchorElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLAnchorElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLAnchorElement::nsHTMLAnchorElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLAnchorElement::~nsHTMLAnchorElement()
{
}
NS_IMPL_ADDREF(nsHTMLAnchorElement)
NS_IMPL_RELEASE(nsHTMLAnchorElement)
nsresult
nsHTMLAnchorElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLAnchorElementIID)) {
nsIDOMHTMLAnchorElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
else if (aIID.Equals(kIFocusableContentIID)) {
*aInstancePtr = (void*)(nsIFocusableContent*) this;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLAnchorElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLAnchorElement* it = new nsHTMLAnchorElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, AccessKey, accesskey)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Charset, charset)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Coords, coords)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Hreflang, hreflang)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Name, name)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Rel, rel)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Rev, rev)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Shape, shape)
NS_IMPL_INT_ATTR(nsHTMLAnchorElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Target, target)
NS_IMPL_STRING_ATTR(nsHTMLAnchorElement, Type, type)
NS_IMETHODIMP
nsHTMLAnchorElement::Blur()
{
// XXX write me
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAnchorElement::Focus()
{
nsIDocument* doc; // Strong
nsresult rv = GetDocument(doc);
if (NS_FAILED(rv)) { return rv; }
if (!doc) { return NS_ERROR_NULL_POINTER; }
PRInt32 numShells = doc->GetNumberOfShells();
nsIPresShell* shell = nsnull; // Strong
nsCOMPtr<nsIPresContext> context;
for (PRInt32 i=0; i<numShells; i++)
{
shell = doc->GetShellAt(i);
if (!shell) { return NS_ERROR_NULL_POINTER; }
rv = shell->GetPresContext(getter_AddRefs(context));
if (NS_FAILED(rv)) { return rv; }
if (!context) { return NS_ERROR_NULL_POINTER; }
rv = SetFocus(context);
if (NS_FAILED(rv)) { return rv; }
NS_RELEASE(shell);
}
NS_RELEASE(doc);
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAnchorElement::SetFocus(nsIPresContext* aPresContext)
{
// don't make the link grab the focus if there is no link handler
nsILinkHandler* handler;
nsresult rv = aPresContext->GetLinkHandler(&handler);
if (NS_SUCCEEDED(rv) && (nsnull != handler)) {
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(this, NS_EVENT_STATE_FOCUS);
nsCOMPtr<nsIPresShell> presShell;
aPresContext->GetShell(getter_AddRefs(presShell));
if (presShell) {
nsCOMPtr<nsIFrameManager> frameManager;
presShell->GetFrameManager(getter_AddRefs(frameManager));
if (frameManager) {
nsIFrame* frame = nsnull;
frameManager->GetPrimaryFrameFor(this, &frame);
if (frame) {
presShell->ScrollFrameIntoView(frame,
NS_PRESSHELL_SCROLL_ANYWHERE,NS_PRESSHELL_SCROLL_ANYWHERE);
}
}
}
NS_RELEASE(stateManager);
}
NS_RELEASE(handler);
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAnchorElement::RemoveFocus(nsIPresContext* aPresContext)
{
// XXX write me
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAnchorElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if (aAttribute == nsHTMLAtoms::tabindex) {
if (nsGenericHTMLElement::ParseValue(aValue, 0, 32767, aResult,
eHTMLUnit_Integer)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
else if (aAttribute == nsHTMLAtoms::suppress) {
if (aValue.EqualsIgnoreCase("true")) {
aResult.SetEmptyValue(); // XXX? shouldn't just leave "true"
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLAnchorElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLAnchorElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAnchorElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
// XXX support suppress in here
NS_IMETHODIMP
nsHTMLAnchorElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
NS_ENSURE_ARG(aPresContext);
NS_ENSURE_ARG_POINTER(aEventStatus);
// Try script event handlers first
nsresult ret = mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
if ((NS_OK == ret) && (nsEventStatus_eIgnore == *aEventStatus) &&
!(aFlags & NS_EVENT_FLAG_CAPTURE)) {
// If this anchor element has an HREF then it is sensitive to
// mouse events (otherwise ignore them).
nsAutoString href;
nsresult result = GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::href, href);
if (NS_CONTENT_ATTR_HAS_VALUE == result) {
switch (aEvent->message) {
case NS_MOUSE_LEFT_BUTTON_DOWN:
{
// don't make the link grab the focus if there is no link handler
nsILinkHandler* handler;
nsresult rv = aPresContext->GetLinkHandler(&handler);
if (NS_SUCCEEDED(rv) && (nsnull != handler)) {
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(this, NS_EVENT_STATE_ACTIVE | NS_EVENT_STATE_FOCUS);
NS_RELEASE(stateManager);
}
NS_RELEASE(handler);
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
}
break;
case NS_MOUSE_LEFT_CLICK:
case NS_KEY_PRESS:
{
if (nsEventStatus_eConsumeNoDefault != *aEventStatus) {
nsKeyEvent * keyEvent;
if (aEvent->eventStructType == NS_KEY_EVENT) {
//Handle key commands from keys with char representation here, not on KeyDown
keyEvent = (nsKeyEvent *)aEvent;
}
//Click or return key
if (aEvent->message == NS_MOUSE_LEFT_CLICK || keyEvent->keyCode == NS_VK_RETURN) {
nsAutoString target;
nsIURI* baseURL = nsnull;
GetBaseURL(baseURL);
GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::target, target);
if (target.Length() == 0) {
GetBaseTarget(target);
}
mInner.TriggerLink(aPresContext, eLinkVerb_Replace,
baseURL, href, target, PR_TRUE);
NS_IF_RELEASE(baseURL);
*aEventStatus = nsEventStatus_eConsumeDoDefault;
}
}
}
break;
case NS_MOUSE_RIGHT_BUTTON_DOWN:
// XXX Bring up a contextual menu provided by the application
break;
case NS_MOUSE_ENTER:
{
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(this, NS_EVENT_STATE_HOVER);
NS_RELEASE(stateManager);
}
nsAutoString target;
nsIURI* baseURL = nsnull;
GetBaseURL(baseURL);
GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::target, target);
if (target.Length() == 0) {
GetBaseTarget(target);
}
mInner.TriggerLink(aPresContext, eLinkVerb_Replace,
baseURL, href, target, PR_FALSE);
NS_IF_RELEASE(baseURL);
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
break;
case NS_MOUSE_EXIT:
{
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(nsnull, NS_EVENT_STATE_HOVER);
NS_RELEASE(stateManager);
}
nsAutoString empty;
mInner.TriggerLink(aPresContext, eLinkVerb_Replace, nsnull, empty, empty, PR_FALSE);
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
break;
default:
break;
}
}
}
return ret;
}
NS_IMETHODIMP
nsHTMLAnchorElement::GetHref(nsString& aValue)
{
// Resolve url to an absolute url
nsresult rv = NS_OK;
nsAutoString relURLSpec;
nsIURI* baseURL = nsnull;
// Get base URL.
mInner.GetBaseURL(baseURL);
// Get href= attribute (relative URL).
mInner.GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::href, relURLSpec);
// If there is no href=, then use base target.
if (relURLSpec.Length() == 0) {
mInner.GetBaseTarget(relURLSpec);
}
if (nsnull != baseURL) {
// Get absolute URL.
rv = NS_MakeAbsoluteURI(relURLSpec, baseURL, aValue);
}
else {
// Absolute URL is same as relative URL.
aValue = relURLSpec;
}
NS_IF_RELEASE(baseURL);
return rv;
}
NS_IMETHODIMP
nsHTMLAnchorElement::SetHref(const nsString& aValue)
{
return mInner.SetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::href, aValue, PR_TRUE);
}
NS_IMETHODIMP
nsHTMLAnchorElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,354 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLAppletElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsIDocument.h"
#include "nsIPresShell.h"
#include "nsIFrame.h"
#include "nsIServiceManager.h"
#include "nsIJVMManager.h"
#include "nsILiveConnectManager.h"
#include "nsIPluginInstance.h"
#include "nsIJVMPluginInstance.h"
// XXX this is to get around conflicts with windows.h defines
// introduced through jni.h
#ifdef XP_PC
#undef GetClassName
#undef GetObject
#endif
static NS_DEFINE_IID(kIDOMHTMLAppletElementIID, NS_IDOMHTMLAPPLETELEMENT_IID);
class nsHTMLAppletElement : public nsIDOMHTMLAppletElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLAppletElement(nsIAtom* aTag);
virtual ~nsHTMLAppletElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLAppletElement
NS_IMETHOD GetAlign(nsString& aAlign);
NS_IMETHOD SetAlign(const nsString& aAlign);
NS_IMETHOD GetAlt(nsString& aAlt);
NS_IMETHOD SetAlt(const nsString& aAlt);
NS_IMETHOD GetArchive(nsString& aArchive);
NS_IMETHOD SetArchive(const nsString& aArchive);
NS_IMETHOD GetCode(nsString& aCode);
NS_IMETHOD SetCode(const nsString& aCode);
NS_IMETHOD GetCodeBase(nsString& aCodeBase);
NS_IMETHOD SetCodeBase(const nsString& aCodeBase);
NS_IMETHOD GetHeight(nsString& aHeight);
NS_IMETHOD SetHeight(const nsString& aHeight);
NS_IMETHOD GetHspace(nsString& aHspace);
NS_IMETHOD SetHspace(const nsString& aHspace);
NS_IMETHOD GetName(nsString& aName);
NS_IMETHOD SetName(const nsString& aName);
NS_IMETHOD GetObject(nsString& aObject);
NS_IMETHOD SetObject(const nsString& aObject);
NS_IMETHOD GetVspace(nsString& aVspace);
NS_IMETHOD SetVspace(const nsString& aVspace);
NS_IMETHOD GetWidth(nsString& aWidth);
NS_IMETHOD SetWidth(const nsString& aWidth);
// nsIScriptObjectOwner
NS_IMETHOD GetScriptObject(nsIScriptContext* aContext,
void** aScriptObject);
NS_IMETHOD SetScriptObject(void *aScriptObject);
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
protected:
nsGenericHTMLContainerElement mInner;
PRBool mReflectedApplet;
};
nsresult
NS_NewHTMLAppletElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLAppletElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLAppletElement::nsHTMLAppletElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
mReflectedApplet = PR_FALSE;
}
nsHTMLAppletElement::~nsHTMLAppletElement()
{
}
NS_IMPL_ADDREF(nsHTMLAppletElement)
NS_IMPL_RELEASE(nsHTMLAppletElement)
nsresult
nsHTMLAppletElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLAppletElementIID)) {
nsIDOMHTMLAppletElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLAppletElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLAppletElement* it = new nsHTMLAppletElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Align, align)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Alt, alt)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Archive, archive)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Code, code)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, CodeBase, codebase)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Height, height)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Hspace, hspace)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Name, name)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Object, object)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Vspace, vspace)
NS_IMPL_STRING_ATTR(nsHTMLAppletElement, Width, width)
NS_IMETHODIMP
nsHTMLAppletElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if (aAttribute == nsHTMLAtoms::align) {
if (nsGenericHTMLElement::ParseAlignValue(aValue, aResult)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
else if (nsGenericHTMLElement::ParseImageAttribute(aAttribute,
aValue, aResult)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLAppletElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
if (aAttribute == nsHTMLAtoms::align) {
if (eHTMLUnit_Enumerated == aValue.GetUnit()) {
nsGenericHTMLElement::AlignValueToString(aValue, aResult);
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
else if (nsGenericHTMLElement::ImageAttributeToString(aAttribute,
aValue, aResult)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
nsGenericHTMLElement::MapImageAttributesInto(aAttributes, aContext, aPresContext);
nsGenericHTMLElement::MapImageAlignAttributeInto(aAttributes, aContext, aPresContext);
nsGenericHTMLElement::MapImageBorderAttributeInto(aAttributes, aContext, aPresContext, nsnull);
}
NS_IMETHODIMP
nsHTMLAppletElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
if (! nsGenericHTMLElement::GetImageMappedAttributesImpact(aAttribute, aHint)) {
if (! nsGenericHTMLElement::GetImageAlignAttributeImpact(aAttribute, aHint)) {
if (! nsGenericHTMLElement::GetImageBorderAttributeImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
}
}
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAppletElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAppletElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
extern nsresult NS_GetObjectFramePluginInstance(nsIFrame* aFrame, nsIPluginInstance*& aPluginInstance);
/**
* For backwards compatibility an applet element's JavaScript object should expose both the public
* fields of the applet, and the attributes of the applet tag. The call to nsGenericElement::GetScriptObject
* takes case of the tag attributes. Here we generate a JavaScript reference to the applet object itself,
* and set its __proto__ property to the tag object. That way, if the Java applet has public fields that
* shadow the tag attributes, the applet's fields take precedence.
*/
NS_IMETHODIMP
nsHTMLAppletElement::GetScriptObject(nsIScriptContext* aContext,
void** aScriptObject)
{
nsresult rv = NS_OK;
NS_WITH_SERVICE(nsIJVMManager, jvm, nsIJVMManager::GetCID(), &rv);
if (NS_SUCCEEDED(rv)) {
// nsresult rv = NS_OK;
if (!mReflectedApplet) {
// 1. get the script object corresponding to the <APPLET> element itself.
JSObject* elementObject = nsnull;
rv = mInner.GetScriptObject(aContext, (void**)&elementObject);
if (NS_OK != rv)
return rv;
// 2. get the plugin instance corresponding to this element.
nsIPresShell* shell = mInner.mDocument->GetShellAt(0);
if (nsnull == shell)
return NS_ERROR_FAILURE;
nsIFrame* frame = nsnull;
shell->GetPrimaryFrameFor(mInner.mContent, &frame);
NS_RELEASE(shell);
// 3. get the Java object corresponding to this applet, and reflect it into
// JavaScript using the LiveConnect manager.
JSContext* context = (JSContext*)aContext->GetNativeContext();
JSObject* wrappedAppletObject = nsnull;
nsIPluginInstance* pluginInstance = nsnull;
rv = NS_GetObjectFramePluginInstance(frame, pluginInstance);
if ((rv == NS_OK) && (nsnull != pluginInstance)) {
nsIJVMPluginInstance* javaPluginInstance = nsnull;
if (pluginInstance->QueryInterface(nsIJVMPluginInstance::GetIID(), (void**)&javaPluginInstance) == NS_OK) {
jobject appletObject = nsnull;
rv = javaPluginInstance->GetJavaObject(&appletObject);
if (NS_OK == rv) {
nsILiveConnectManager* manager = NULL;
rv = nsServiceManager::GetService(nsIJVMManager::GetCID(),
nsILiveConnectManager::GetIID(),
(nsISupports **)&manager);
if (rv == NS_OK) {
rv = manager->WrapJavaObject(context, appletObject, &wrappedAppletObject);
nsServiceManager::ReleaseService(nsIJVMManager::GetCID(), manager);
}
}
NS_RELEASE(javaPluginInstance);
}
NS_RELEASE(pluginInstance);
}
// 4. set the __proto__ field of the applet object to be the element script object.
if (nsnull != wrappedAppletObject) {
JS_SetPrototype(context, wrappedAppletObject, elementObject);
mInner.SetScriptObject(wrappedAppletObject);
mReflectedApplet = PR_TRUE;
}
*aScriptObject = wrappedAppletObject;
} else {
rv = mInner.GetScriptObject(aContext, aScriptObject);
}
return rv;
}
else
return mInner.GetScriptObject(aContext, aScriptObject);
}
// TODO: if this method ever gets called, it will destroy the prototype type chain.
NS_IMETHODIMP
nsHTMLAppletElement::SetScriptObject(void *aScriptObject)
{
return mInner.SetScriptObject(aScriptObject);
}
NS_IMETHODIMP
nsHTMLAppletElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,258 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLAreaElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsIFocusableContent.h"
#include "nsIEventStateManager.h"
static NS_DEFINE_IID(kIDOMHTMLAreaElementIID, NS_IDOMHTMLAREAELEMENT_IID);
static NS_DEFINE_IID(kIFocusableContentIID, NS_IFOCUSABLECONTENT_IID);
class nsHTMLAreaElement : public nsIDOMHTMLAreaElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent,
public nsIFocusableContent
{
public:
nsHTMLAreaElement(nsIAtom* aTag);
virtual ~nsHTMLAreaElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLAreaElement
NS_IMETHOD GetAccessKey(nsString& aAccessKey);
NS_IMETHOD SetAccessKey(const nsString& aAccessKey);
NS_IMETHOD GetAlt(nsString& aAlt);
NS_IMETHOD SetAlt(const nsString& aAlt);
NS_IMETHOD GetCoords(nsString& aCoords);
NS_IMETHOD SetCoords(const nsString& aCoords);
NS_IMETHOD GetHref(nsString& aHref);
NS_IMETHOD SetHref(const nsString& aHref);
NS_IMETHOD GetNoHref(PRBool* aNoHref);
NS_IMETHOD SetNoHref(PRBool aNoHref);
NS_IMETHOD GetShape(nsString& aShape);
NS_IMETHOD SetShape(const nsString& aShape);
NS_IMETHOD GetTabIndex(PRInt32* aTabIndex);
NS_IMETHOD SetTabIndex(PRInt32 aTabIndex);
NS_IMETHOD GetTarget(nsString& aTarget);
NS_IMETHOD SetTarget(const nsString& aTarget);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
// nsIFocusableContent
NS_IMETHOD SetFocus(nsIPresContext* aPresContext);
NS_IMETHOD RemoveFocus(nsIPresContext* aPresContext);
protected:
nsGenericHTMLLeafElement mInner;
};
nsresult
NS_NewHTMLAreaElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLAreaElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLAreaElement::nsHTMLAreaElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLAreaElement::~nsHTMLAreaElement()
{
}
NS_IMPL_ADDREF(nsHTMLAreaElement)
NS_IMPL_RELEASE(nsHTMLAreaElement)
nsresult
nsHTMLAreaElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLAreaElementIID)) {
nsIDOMHTMLAreaElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
else if (aIID.Equals(kIFocusableContentIID)) {
*aInstancePtr = (void*)(nsIFocusableContent*) this;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLAreaElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLAreaElement* it = new nsHTMLAreaElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, AccessKey, accesskey)
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Alt, alt)
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Coords, coords)
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Href, href)
NS_IMPL_BOOL_ATTR(nsHTMLAreaElement, NoHref, nohref)
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Shape, shape)
NS_IMPL_INT_ATTR(nsHTMLAreaElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLAreaElement, Target, target)
NS_IMETHODIMP
nsHTMLAreaElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if (aAttribute == nsHTMLAtoms::nohref) {
aResult.SetEmptyValue();
return NS_CONTENT_ATTR_HAS_VALUE;
}
else if (aAttribute == nsHTMLAtoms::tabindex) {
if (nsGenericHTMLElement::ParseValue(aValue, 0, aResult, eHTMLUnit_Integer)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLAreaElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLAreaElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAreaElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAreaElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsHTMLAreaElement::SetFocus(nsIPresContext* aPresContext)
{
nsIEventStateManager* esm;
if (NS_OK == aPresContext->GetEventStateManager(&esm)) {
esm->SetContentState(this, NS_EVENT_STATE_FOCUS);
NS_RELEASE(esm);
}
// XXX write me
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAreaElement::RemoveFocus(nsIPresContext* aPresContext)
{
// XXX write me
return NS_OK;
}
NS_IMETHODIMP
nsHTMLAreaElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,225 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLBRElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsIHTMLAttributes.h"
static NS_DEFINE_IID(kIDOMHTMLBRElementIID, NS_IDOMHTMLBRELEMENT_IID);
class nsHTMLBRElement : public nsIDOMHTMLBRElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLBRElement(nsIAtom* aTag);
virtual ~nsHTMLBRElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLBRElement
NS_IMETHOD GetClear(nsString& aClear);
NS_IMETHOD SetClear(const nsString& aClear);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
protected:
nsGenericHTMLLeafElement mInner;
};
nsresult
NS_NewHTMLBRElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLBRElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLBRElement::nsHTMLBRElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLBRElement::~nsHTMLBRElement()
{
}
NS_IMPL_ADDREF(nsHTMLBRElement)
NS_IMPL_RELEASE(nsHTMLBRElement)
nsresult
nsHTMLBRElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLBRElementIID)) {
nsIDOMHTMLBRElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLBRElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLBRElement* it = new nsHTMLBRElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLBRElement, Clear, clear)
static nsGenericHTMLElement::EnumTable kClearTable[] = {
{ "left", NS_STYLE_CLEAR_LEFT },
{ "right", NS_STYLE_CLEAR_RIGHT },
{ "all", NS_STYLE_CLEAR_LEFT_AND_RIGHT },
{ "both", NS_STYLE_CLEAR_LEFT_AND_RIGHT },
{ 0 }
};
NS_IMETHODIMP
nsHTMLBRElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if (aAttribute == nsHTMLAtoms::clear) {
if (nsGenericHTMLElement::ParseEnumValue(aValue, kClearTable, aResult)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLBRElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
if (aAttribute == nsHTMLAtoms::clear) {
if (eHTMLUnit_Enumerated == aValue.GetUnit()) {
nsGenericHTMLElement::EnumValueToString(aValue, kClearTable, aResult);
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsStyleDisplay* display = (nsStyleDisplay*)
aContext->GetMutableStyleData(eStyleStruct_Display);
nsHTMLValue value;
aAttributes->GetAttribute(nsHTMLAtoms::clear, value);
if (value.GetUnit() == eHTMLUnit_Enumerated) {
display->mBreakType = value.GetIntValue();
}
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLBRElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
if (nsHTMLAtoms::clear == aAttribute) {
aHint = NS_STYLE_HINT_REFLOW;
}
else {
aHint = NS_STYLE_HINT_CONTENT;
}
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBRElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBRElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsHTMLBRElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,195 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLBaseElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
static NS_DEFINE_IID(kIDOMHTMLBaseElementIID, NS_IDOMHTMLBASEELEMENT_IID);
class nsHTMLBaseElement : public nsIDOMHTMLBaseElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLBaseElement(nsIAtom* aTag);
virtual ~nsHTMLBaseElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLBaseElement
NS_IMETHOD GetHref(nsString& aHref);
NS_IMETHOD SetHref(const nsString& aHref);
NS_IMETHOD GetTarget(nsString& aTarget);
NS_IMETHOD SetTarget(const nsString& aTarget);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
protected:
nsGenericHTMLLeafElement mInner;
};
nsresult
NS_NewHTMLBaseElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLBaseElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLBaseElement::nsHTMLBaseElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLBaseElement::~nsHTMLBaseElement()
{
}
NS_IMPL_ADDREF(nsHTMLBaseElement)
NS_IMPL_RELEASE(nsHTMLBaseElement)
nsresult
nsHTMLBaseElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLBaseElementIID)) {
nsIDOMHTMLBaseElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLBaseElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLBaseElement* it = new nsHTMLBaseElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLBaseElement, Href, href)
NS_IMPL_STRING_ATTR(nsHTMLBaseElement, Target, target)
NS_IMETHODIMP
nsHTMLBaseElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLBaseElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLBaseElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBaseElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBaseElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsHTMLBaseElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,215 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLBaseFontElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
static NS_DEFINE_IID(kIDOMHTMLBaseFontElementIID, NS_IDOMHTMLBASEFONTELEMENT_IID);
class nsHTMLBaseFontElement : public nsIDOMHTMLBaseFontElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLBaseFontElement(nsIAtom* aTag);
virtual ~nsHTMLBaseFontElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLBaseElement
NS_IMETHOD GetColor(nsString& aColor);
NS_IMETHOD SetColor(const nsString& aColor);
NS_IMETHOD GetFace(nsString& aFace);
NS_IMETHOD SetFace(const nsString& aFace);
NS_IMETHOD GetSize(nsString& aSize);
NS_IMETHOD SetSize(const nsString& aSize);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
protected:
nsGenericHTMLLeafElement mInner;
};
nsresult
NS_NewHTMLBaseFontElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLBaseFontElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLBaseFontElement::nsHTMLBaseFontElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLBaseFontElement::~nsHTMLBaseFontElement()
{
}
NS_IMPL_ADDREF(nsHTMLBaseFontElement)
NS_IMPL_RELEASE(nsHTMLBaseFontElement)
nsresult
nsHTMLBaseFontElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLBaseFontElementIID)) {
nsIDOMHTMLBaseFontElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLBaseFontElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLBaseFontElement* it = new nsHTMLBaseFontElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLBaseFontElement, Color, color)
NS_IMPL_STRING_ATTR(nsHTMLBaseFontElement, Face, face)
NS_IMPL_STRING_ATTR(nsHTMLBaseFontElement, Size, size)
NS_IMETHODIMP
nsHTMLBaseFontElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
// XXX write me
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLBaseFontElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
// XXX write me
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapFontAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
// XXX write me
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLBaseFontElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if ((nsHTMLAtoms::color == aAttribute) ||
(nsHTMLAtoms::face == aAttribute) ||
(nsHTMLAtoms::size == aAttribute)) {
aHint = NS_STYLE_HINT_RECONSTRUCT_ALL; // XXX this seems a bit harsh, perhaps we need a reflow_all?
}
else if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBaseFontElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = &MapFontAttributesInto;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBaseFontElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsHTMLBaseFontElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,827 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsCOMPtr.h"
#include "nsIDOMHTMLBodyElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsIPresShell.h"
#include "nsStyleUtil.h"
#include "nsIDocument.h"
#include "nsIHTMLDocument.h"
#include "nsIHTMLStyleSheet.h"
#include "nsIHTMLCSSStyleSheet.h"
#include "nsICSSStyleRule.h"
#include "nsIWebShell.h"
#include "nsIContentViewer.h"
#include "nsIMarkupDocumentViewer.h"
#include "nsIHTMLAttributes.h"
#include "nsIHTMLContentContainer.h"
#include "nsISupportsArray.h"
static NS_DEFINE_IID(kIHTMLDocumentIID, NS_IHTMLDOCUMENT_IID);
static NS_DEFINE_IID(kIStyleRuleIID, NS_ISTYLE_RULE_IID);
static NS_DEFINE_IID(kICSSStyleRuleIID, NS_ICSS_STYLE_RULE_IID);
static NS_DEFINE_IID(kIWebShellIID, NS_IWEB_SHELL_IID);
static NS_DEFINE_IID(kIDOMHTMLBodyElementIID, NS_IDOMHTMLBODYELEMENT_IID);
static NS_DEFINE_IID(kIHTMLContentContainerIID, NS_IHTMLCONTENTCONTAINER_IID);
//----------------------------------------------------------------------
class nsHTMLBodyElement;
class BodyRule: public nsIStyleRule {
public:
BodyRule(nsHTMLBodyElement* aPart, nsIHTMLStyleSheet* aSheet);
virtual ~BodyRule();
NS_DECL_ISUPPORTS
NS_IMETHOD Equals(const nsIStyleRule* aRule, PRBool& aResult) const;
NS_IMETHOD HashValue(PRUint32& aValue) const;
NS_IMETHOD GetStyleSheet(nsIStyleSheet*& aSheet) const;
// Strength is an out-of-band weighting, always 0 here
NS_IMETHOD GetStrength(PRInt32& aStrength) const;
NS_IMETHOD MapFontStyleInto(nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
NS_IMETHOD MapStyleInto(nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
NS_IMETHOD List(FILE* out = stdout, PRInt32 aIndent = 0) const;
nsHTMLBodyElement* mPart; // not ref-counted, cleared by content
nsIHTMLStyleSheet* mSheet; // not ref-counted, cleared by content
};
//----------------------------------------------------------------------
class BodyFixupRule : public nsIStyleRule {
public:
BodyFixupRule(nsHTMLBodyElement* aPart, nsIHTMLCSSStyleSheet* aSheet);
virtual ~BodyFixupRule();
NS_DECL_ISUPPORTS
NS_IMETHOD Equals(const nsIStyleRule* aRule, PRBool& aValue) const;
NS_IMETHOD HashValue(PRUint32& aValue) const;
NS_IMETHOD GetStyleSheet(nsIStyleSheet*& aSheet) const;
// Strength is an out-of-band weighting, always maxint here
NS_IMETHOD GetStrength(PRInt32& aStrength) const;
NS_IMETHOD MapFontStyleInto(nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
NS_IMETHOD MapStyleInto(nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext);
NS_IMETHOD List(FILE* out = stdout, PRInt32 aIndent = 0) const;
nsHTMLBodyElement* mPart; // not ref-counted, cleared by content
nsIHTMLCSSStyleSheet* mSheet; // not ref-counted, cleared by content
};
//----------------------------------------------------------------------
// special subclass of inner class to override set document
class nsBodyInner: public nsGenericHTMLContainerElement
{
public:
nsBodyInner();
virtual ~nsBodyInner();
nsresult SetDocument(nsIDocument* aDocument, PRBool aDeep);
BodyRule* mContentStyleRule;
BodyFixupRule* mInlineStyleRule;
};
nsBodyInner::nsBodyInner()
: nsGenericHTMLContainerElement(),
mContentStyleRule(nsnull),
mInlineStyleRule(nsnull)
{
}
nsBodyInner::~nsBodyInner()
{
if (nsnull != mContentStyleRule) {
mContentStyleRule->mPart = nsnull;
mContentStyleRule->mSheet = nsnull;
NS_RELEASE(mContentStyleRule);
}
if (nsnull != mInlineStyleRule) {
mInlineStyleRule->mPart = nsnull;
mInlineStyleRule->mSheet = nsnull;
NS_RELEASE(mInlineStyleRule);
}
}
nsresult nsBodyInner::SetDocument(nsIDocument* aDocument, PRBool aDeep)
{
if (nsnull != mContentStyleRule) {
mContentStyleRule->mPart = nsnull;
mContentStyleRule->mSheet = nsnull;
NS_RELEASE(mContentStyleRule); // destroy old style rule since the sheet will probably change
}
if (nsnull != mInlineStyleRule) {
mInlineStyleRule->mPart = nsnull;
mInlineStyleRule->mSheet = nsnull;
NS_RELEASE(mInlineStyleRule); // destroy old style rule since the sheet will probably change
}
return nsGenericHTMLContainerElement::SetDocument(aDocument, aDeep);
}
//----------------------------------------------------------------------
class nsHTMLBodyElement : public nsIDOMHTMLBodyElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLBodyElement(nsIAtom* aTag);
virtual ~nsHTMLBodyElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLBodyElement
NS_IMETHOD GetALink(nsString& aALink);
NS_IMETHOD SetALink(const nsString& aALink);
NS_IMETHOD GetBackground(nsString& aBackground);
NS_IMETHOD SetBackground(const nsString& aBackground);
NS_IMETHOD GetBgColor(nsString& aBgColor);
NS_IMETHOD SetBgColor(const nsString& aBgColor);
NS_IMETHOD GetLink(nsString& aLink);
NS_IMETHOD SetLink(const nsString& aLink);
NS_IMETHOD GetText(nsString& aText);
NS_IMETHOD SetText(const nsString& aText);
NS_IMETHOD GetVLink(nsString& aVLink);
NS_IMETHOD SetVLink(const nsString& aVLink);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC2(mInner)
protected:
nsBodyInner mInner;
friend class BodyRule;
friend class BodyFixupRule;
};
//----------------------------------------------------------------------
BodyRule::BodyRule(nsHTMLBodyElement* aPart, nsIHTMLStyleSheet* aSheet)
{
NS_INIT_REFCNT();
mPart = aPart;
mSheet = aSheet;
}
BodyRule::~BodyRule()
{
}
NS_IMPL_ISUPPORTS(BodyRule, kIStyleRuleIID);
NS_IMETHODIMP
BodyRule::Equals(const nsIStyleRule* aRule, PRBool& aResult) const
{
aResult = PRBool(this == aRule);
return NS_OK;
}
NS_IMETHODIMP
BodyRule::HashValue(PRUint32& aValue) const
{
aValue = (PRUint32)(mPart);
return NS_OK;
}
NS_IMETHODIMP
BodyRule::GetStyleSheet(nsIStyleSheet*& aSheet) const
{
NS_IF_ADDREF(mSheet);
aSheet = mSheet;
return NS_OK;
}
// Strength is an out-of-band weighting, useful for mapping CSS ! important
// always 0 here
NS_IMETHODIMP
BodyRule::GetStrength(PRInt32& aStrength) const
{
aStrength = 0;
return NS_OK;
}
NS_IMETHODIMP
BodyRule::MapFontStyleInto(nsIMutableStyleContext* aContext, nsIPresContext* aPresContext)
{
// set up the basefont (defaults to 3)
nsStyleFont* font = (nsStyleFont*)aContext->GetMutableStyleData(eStyleStruct_Font);
PRInt32 scaler;
aPresContext->GetFontScaler(&scaler);
float scaleFactor = nsStyleUtil::GetScalingFactor(scaler);
// apply font scaling to the body
font->mFont.size = NSToCoordFloor(float(font->mFont.size) * scaleFactor);
if (font->mFont.size < 1) {
font->mFont.size = 1;
}
font->mFixedFont.size = NSToCoordFloor(float(font->mFixedFont.size) * scaleFactor);
if (font->mFixedFont.size < 1) {
font->mFixedFont.size = 1;
}
return NS_OK;
}
NS_IMETHODIMP
BodyRule::MapStyleInto(nsIMutableStyleContext* aContext, nsIPresContext* aPresContext)
{
if (nsnull != mPart) {
nsStyleSpacing* styleSpacing = (nsStyleSpacing*)(aContext->GetMutableStyleData(eStyleStruct_Spacing));
if (nsnull != styleSpacing) {
nsHTMLValue value;
PRInt32 attrCount;
float p2t;
mPart->GetAttributeCount(attrCount);
aPresContext->GetScaledPixelsToTwips(&p2t);
nscoord bodyMarginWidth = -1;
nscoord bodyMarginHeight = -1;
if (0 < attrCount) {
// if marginwidth/marginheigth is set reflect them as 'margin'
mPart->GetHTMLAttribute(nsHTMLAtoms::marginwidth, value);
if (eHTMLUnit_Pixel == value.GetUnit()) {
bodyMarginWidth = NSIntPixelsToTwips(value.GetPixelValue(), p2t);
if (bodyMarginWidth < 0) {
bodyMarginWidth = 0;
}
nsStyleCoord widthCoord(bodyMarginWidth);
styleSpacing->mMargin.SetLeft(widthCoord);
styleSpacing->mMargin.SetRight(widthCoord);
}
mPart->GetHTMLAttribute(nsHTMLAtoms::marginheight, value);
if (eHTMLUnit_Pixel == value.GetUnit()) {
bodyMarginHeight = NSIntPixelsToTwips(value.GetPixelValue(), p2t);
if (bodyMarginHeight < 0) {
bodyMarginHeight = 0;
}
nsStyleCoord heightCoord(bodyMarginHeight);
styleSpacing->mMargin.SetTop(heightCoord);
styleSpacing->mMargin.SetBottom(heightCoord);
}
}
// XXX This is all pretty hokey...
// if marginwidth or marginheight is set in the <frame> and not set in the <body>
// reflect them as margin in the <body>
if ((0 > bodyMarginWidth) || (0 > bodyMarginHeight)) {
nsISupports* container;
aPresContext->GetContainer(&container);
if (nsnull != container) {
nsCompatibility mode;
aPresContext->GetCompatibilityMode(&mode);
nsIWebShell* webShell = nsnull;
container->QueryInterface(kIWebShellIID, (void**) &webShell);
if (nsnull != webShell) {
nscoord pixel = NSIntPixelsToTwips(1, p2t);
nscoord frameMarginWidth=-1; // default value
nscoord frameMarginHeight=-1; // default value
webShell->GetMarginWidth(&frameMarginWidth); // -1 indicates not set
webShell->GetMarginHeight(&frameMarginHeight);
if ((frameMarginWidth >= 0) && (0 > bodyMarginWidth)) { // set in <frame> & not in <body>
if (eCompatibility_NavQuirks == mode) { // allow 0 margins
if ((0 > bodyMarginHeight) && (0 > frameMarginHeight)) { // another nav quirk
frameMarginHeight = 0;
}
} else { // margins are at least 1 pixel
if (0 == frameMarginWidth) {
frameMarginWidth = pixel;
}
}
}
if ((frameMarginHeight >= 0) && (0 > bodyMarginHeight)) { // set in <frame> & not in <body>
if (eCompatibility_NavQuirks == mode) { // allow 0 margins
if ((0 > bodyMarginWidth) && (0 > frameMarginWidth)) { // another nav quirk
frameMarginWidth = 0;
}
} else { // margins are at least 1 pixel
if (0 == frameMarginHeight) {
frameMarginHeight = pixel;
}
}
}
if ((0 > bodyMarginWidth) && (frameMarginWidth >= 0)) {
nsStyleCoord widthCoord(frameMarginWidth);
styleSpacing->mMargin.SetLeft(widthCoord);
styleSpacing->mMargin.SetRight(widthCoord);
}
if ((0 > bodyMarginHeight) && (frameMarginHeight >= 0)) {
nsStyleCoord heightCoord(frameMarginHeight);
styleSpacing->mMargin.SetTop(heightCoord);
styleSpacing->mMargin.SetBottom(heightCoord);
}
NS_RELEASE(webShell);
}
NS_RELEASE(container);
}
}
}
}
return NS_OK;
}
NS_IMETHODIMP
BodyRule::List(FILE* out, PRInt32 aIndent) const
{
return NS_OK;
}
//----------------------------------------------------------------------
BodyFixupRule::BodyFixupRule(nsHTMLBodyElement* aPart, nsIHTMLCSSStyleSheet* aSheet)
: mPart(aPart),
mSheet(aSheet)
{
NS_INIT_REFCNT();
}
BodyFixupRule::~BodyFixupRule()
{
}
NS_IMPL_ADDREF(BodyFixupRule);
NS_IMPL_RELEASE(BodyFixupRule);
nsresult BodyFixupRule::QueryInterface(const nsIID& aIID,
void** aInstancePtrResult)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null pointer");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
// static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
if (aIID.Equals(kIStyleRuleIID)) {
*aInstancePtrResult = (void*) ((nsIStyleRule*)this);
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kISupportsIID)) {
*aInstancePtrResult = (void*) ((nsISupports*)this);
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMETHODIMP
BodyFixupRule::Equals(const nsIStyleRule* aRule, PRBool& aResult) const
{
aResult = PRBool(this == aRule);
return NS_OK;
}
NS_IMETHODIMP
BodyFixupRule::HashValue(PRUint32& aValue) const
{
aValue = (PRUint32)(mPart);
return NS_OK;
}
NS_IMETHODIMP
BodyFixupRule::GetStyleSheet(nsIStyleSheet*& aSheet) const
{
NS_IF_ADDREF(mSheet);
aSheet = mSheet;
return NS_OK;
}
// Strength is an out-of-band weighting, always MaxInt here
NS_IMETHODIMP
BodyFixupRule::GetStrength(PRInt32& aStrength) const
{
aStrength = 2000000000;
return NS_OK;
}
NS_IMETHODIMP
BodyFixupRule::MapFontStyleInto(nsIMutableStyleContext* aContext, nsIPresContext* aPresContext)
{
return NS_OK;
}
NS_IMETHODIMP
BodyFixupRule::MapStyleInto(nsIMutableStyleContext* aContext, nsIPresContext* aPresContext)
{
// XXX do any other body processing here
const nsStyleColor* styleColor;
styleColor = (const nsStyleColor*)aContext->GetStyleData(eStyleStruct_Color);
// Use the CSS precedence rules for dealing with BODY background: if the value
// of the 'background' property for the HTML element is different from
// 'transparent' then use it, else use the value of the 'background' property
// for the BODY element
// See if the BODY has a background specified
if (!styleColor->BackgroundIsTransparent()) {
// Get the parent style context
nsIStyleContext* parentContext = aContext->GetParent();
// Look at its 'background' property
const nsStyleColor* parentStyleColor;
parentStyleColor = (const nsStyleColor*)parentContext->GetStyleData(eStyleStruct_Color);
// See if it's 'transparent' or set by us
if (parentStyleColor->BackgroundIsTransparent() ||
(NS_STYLE_BG_PROPOGATED == (parentStyleColor->mBackgroundFlags & NS_STYLE_BG_PROPOGATED))) {
// Have the parent (initial containing block) use the BODY's background
nsStyleColor* mutableStyleColor;
mutableStyleColor = (nsStyleColor*)parentContext->GetMutableStyleData(eStyleStruct_Color);
mutableStyleColor->mBackgroundAttachment = styleColor->mBackgroundAttachment;
mutableStyleColor->mBackgroundFlags = styleColor->mBackgroundFlags | NS_STYLE_BG_PROPOGATED;
mutableStyleColor->mBackgroundRepeat = styleColor->mBackgroundRepeat;
mutableStyleColor->mBackgroundColor = styleColor->mBackgroundColor;
mutableStyleColor->mBackgroundXPosition = styleColor->mBackgroundXPosition;
mutableStyleColor->mBackgroundYPosition = styleColor->mBackgroundYPosition;
mutableStyleColor->mBackgroundImage = styleColor->mBackgroundImage;
// Reset the BODY's background to transparent
mutableStyleColor = (nsStyleColor*)aContext->GetMutableStyleData(eStyleStruct_Color);
mutableStyleColor->mBackgroundFlags = NS_STYLE_BG_COLOR_TRANSPARENT |
NS_STYLE_BG_IMAGE_NONE;
mutableStyleColor->mBackgroundImage.SetLength(0);
mutableStyleColor->mBackgroundAttachment = NS_STYLE_BG_ATTACHMENT_SCROLL;
}
NS_RELEASE(parentContext);
}
nsCOMPtr<nsIPresShell> presShell;
aPresContext->GetShell(getter_AddRefs(presShell));
if (presShell) {
nsCOMPtr<nsIDocument> doc;
presShell->GetDocument(getter_AddRefs(doc));
if (doc) {
nsIHTMLContentContainer* htmlContainer;
if (NS_OK == doc->QueryInterface(kIHTMLContentContainerIID,
(void**)&htmlContainer)) {
nsIHTMLStyleSheet* styleSheet;
if (NS_OK == htmlContainer->GetAttributeStyleSheet(&styleSheet)) {
styleSheet->SetDocumentForegroundColor(styleColor->mColor);
if (!(styleColor->mBackgroundFlags & NS_STYLE_BG_COLOR_TRANSPARENT)) {
styleSheet->SetDocumentBackgroundColor(styleColor->mBackgroundColor);
}
NS_RELEASE(styleSheet);
}
NS_RELEASE(htmlContainer);
}
}
}
return NS_OK;
}
NS_IMETHODIMP
BodyFixupRule::List(FILE* out, PRInt32 aIndent) const
{
// Indent
for (PRInt32 index = aIndent; --index >= 0; ) fputs(" ", out);
fputs("Special BODY tag fixup rule\n", out);
return NS_OK;
}
//----------------------------------------------------------------------
nsresult
NS_NewHTMLBodyElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLBodyElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLBodyElement::nsHTMLBodyElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLBodyElement::~nsHTMLBodyElement()
{
}
NS_IMPL_ADDREF(nsHTMLBodyElement)
NS_IMPL_RELEASE(nsHTMLBodyElement)
nsresult
nsHTMLBodyElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLBodyElementIID)) {
nsIDOMHTMLBodyElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLBodyElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLBodyElement* it = new nsHTMLBodyElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLBodyElement, ALink, alink)
NS_IMPL_STRING_ATTR(nsHTMLBodyElement, Background, background)
NS_IMPL_STRING_ATTR(nsHTMLBodyElement, BgColor, bgcolor)
NS_IMPL_STRING_ATTR(nsHTMLBodyElement, Link, link)
NS_IMPL_STRING_ATTR(nsHTMLBodyElement, Text, text)
NS_IMPL_STRING_ATTR(nsHTMLBodyElement, VLink, vlink)
NS_IMETHODIMP
nsHTMLBodyElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if ((aAttribute == nsHTMLAtoms::bgcolor) ||
(aAttribute == nsHTMLAtoms::text) ||
(aAttribute == nsHTMLAtoms::link) ||
(aAttribute == nsHTMLAtoms::alink) ||
(aAttribute == nsHTMLAtoms::vlink)) {
if (nsGenericHTMLElement::ParseColor(aValue, mInner.mDocument, aResult)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
else if ((aAttribute == nsHTMLAtoms::marginwidth) ||
(aAttribute == nsHTMLAtoms::marginheight)) {
if (nsGenericHTMLElement::ParseValue(aValue, 0, aResult, eHTMLUnit_Pixel)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLBodyElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
if (nsnull != aAttributes) {
nsHTMLValue value;
nsGenericHTMLElement::MapBackgroundAttributesInto(aAttributes, aContext, aPresContext);
aAttributes->GetAttribute(nsHTMLAtoms::text, value);
if ((eHTMLUnit_Color == value.GetUnit()) ||
(eHTMLUnit_ColorName == value.GetUnit())){
nsStyleColor* color = (nsStyleColor*)
aContext->GetMutableStyleData(eStyleStruct_Color);
color->mColor = value.GetColorValue();
}
nsCOMPtr<nsIPresShell> presShell;
aPresContext->GetShell(getter_AddRefs(presShell));
if (presShell) {
nsCOMPtr<nsIDocument> doc;
presShell->GetDocument(getter_AddRefs(doc));
if (doc) {
nsIHTMLContentContainer* htmlContainer;
if (NS_OK == doc->QueryInterface(kIHTMLContentContainerIID,
(void**)&htmlContainer)) {
nsIHTMLStyleSheet* styleSheet;
if (NS_OK == htmlContainer->GetAttributeStyleSheet(&styleSheet)) {
aAttributes->GetAttribute(nsHTMLAtoms::link, value);
if ((eHTMLUnit_Color == value.GetUnit()) ||
(eHTMLUnit_ColorName == value.GetUnit())) {
styleSheet->SetLinkColor(value.GetColorValue());
}
aAttributes->GetAttribute(nsHTMLAtoms::alink, value);
if ((eHTMLUnit_Color == value.GetUnit()) ||
(eHTMLUnit_ColorName == value.GetUnit())) {
styleSheet->SetActiveLinkColor(value.GetColorValue());
}
aAttributes->GetAttribute(nsHTMLAtoms::vlink, value);
if ((eHTMLUnit_Color == value.GetUnit()) ||
(eHTMLUnit_ColorName == value.GetUnit())) {
styleSheet->SetVisitedLinkColor(value.GetColorValue());
}
NS_RELEASE(styleSheet);
}
NS_RELEASE(htmlContainer);
}
}
}
}
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLBodyElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBodyElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
static nsIHTMLStyleSheet* GetAttrStyleSheet(nsIDocument* aDocument)
{
nsIHTMLStyleSheet* sheet = nsnull;
nsIHTMLContentContainer* htmlContainer;
if (nsnull != aDocument) {
if (NS_OK == aDocument->QueryInterface(kIHTMLContentContainerIID, (void**)&htmlContainer)) {
htmlContainer->GetAttributeStyleSheet(&sheet);
NS_RELEASE(htmlContainer);
}
}
NS_ASSERTION(nsnull != sheet, "can't get attribute style sheet");
return sheet;
}
NS_IMETHODIMP
nsHTMLBodyElement::GetContentStyleRules(nsISupportsArray* aRules)
{
mInner.GetContentStyleRules(aRules);
if (nsnull == mInner.mContentStyleRule) {
nsIHTMLStyleSheet* sheet = nsnull;
if (nsnull != mInner.mDocument) { // find style sheet
sheet = GetAttrStyleSheet(mInner.mDocument);
}
mInner.mContentStyleRule = new BodyRule(this, sheet);
NS_IF_RELEASE(sheet);
NS_IF_ADDREF(mInner.mContentStyleRule);
}
if (aRules && mInner.mContentStyleRule) {
aRules->AppendElement(mInner.mContentStyleRule);
}
return NS_OK;
}
static nsIHTMLCSSStyleSheet* GetInlineStyleSheet(nsIDocument* aDocument)
{
nsIHTMLCSSStyleSheet* sheet = nsnull;
nsIHTMLContentContainer* htmlContainer;
if (nsnull != aDocument) {
if (NS_OK == aDocument->QueryInterface(kIHTMLContentContainerIID, (void**)&htmlContainer)) {
htmlContainer->GetInlineStyleSheet(&sheet);
NS_RELEASE(htmlContainer);
}
}
NS_ASSERTION(nsnull != sheet, "can't get inline style sheet");
return sheet;
}
NS_IMETHODIMP
nsHTMLBodyElement::GetInlineStyleRules(nsISupportsArray* aRules)
{
mInner.GetInlineStyleRules(aRules);
if (nsnull == mInner.mInlineStyleRule) {
nsIHTMLCSSStyleSheet* sheet = nsnull;
if (nsnull != mInner.mDocument) { // find style sheet
sheet = GetInlineStyleSheet(mInner.mDocument);
}
mInner.mInlineStyleRule = new BodyFixupRule(this, sheet);
NS_IF_RELEASE(sheet);
NS_IF_ADDREF(mInner.mInlineStyleRule);
}
if (aRules && mInner.mInlineStyleRule) {
aRules->AppendElement(mInner.mInlineStyleRule);
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBodyElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if ((aAttribute == nsHTMLAtoms::link) ||
(aAttribute == nsHTMLAtoms::vlink) ||
(aAttribute == nsHTMLAtoms::alink) ||
(aAttribute == nsHTMLAtoms::text)) {
aHint = NS_STYLE_HINT_VISUAL;
}
else if ((aAttribute == nsHTMLAtoms::marginwidth) ||
(aAttribute == nsHTMLAtoms::marginheight)) {
aHint = NS_STYLE_HINT_REFLOW;
}
else if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
if (! nsGenericHTMLElement::GetBackgroundAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLBodyElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,560 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLButtonElement.h"
#include "nsIDOMNSHTMLButtonElement.h"
#include "nsIDOMHTMLFormElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsIFormControl.h"
#include "nsIForm.h"
#include "nsIURL.h"
#include "nsIFocusableContent.h"
#include "nsIFormControlFrame.h"
#include "nsIEventStateManager.h"
#include "nsDOMEvent.h"
#include "nsISizeOfHandler.h"
static NS_DEFINE_IID(kIDOMHTMLButtonElementIID, NS_IDOMHTMLBUTTONELEMENT_IID);
static NS_DEFINE_IID(kIFocusableContentIID, NS_IFOCUSABLECONTENT_IID);
class nsHTMLButtonElement : public nsIDOMHTMLButtonElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent,
public nsIFormControl,
public nsIFocusableContent
{
public:
nsHTMLButtonElement(nsIAtom* aTag);
virtual ~nsHTMLButtonElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLButtonElement
NS_IMETHOD GetForm(nsIDOMHTMLFormElement** aForm);
NS_IMETHOD GetAccessKey(nsString& aAccessKey);
NS_IMETHOD SetAccessKey(const nsString& aAccessKey);
NS_IMETHOD GetDisabled(PRBool* aDisabled);
NS_IMETHOD SetDisabled(PRBool aDisabled);
NS_IMETHOD GetName(nsString& aName);
NS_IMETHOD SetName(const nsString& aName);
NS_IMETHOD GetTabIndex(PRInt32* aTabIndex);
NS_IMETHOD SetTabIndex(PRInt32 aTabIndex);
NS_IMETHOD GetType(nsString& aType);
NS_IMETHOD GetValue(nsString& aValue);
NS_IMETHOD SetValue(const nsString& aValue);
// nsIDOMHTMLButtonElement
NS_IMETHOD Blur();
NS_IMETHOD Focus();
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_NO_SETPARENT_NO_SETDOCUMENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
// nsIFormControl
NS_IMETHOD SetForm(nsIDOMHTMLFormElement* aForm);
NS_IMETHOD GetType(PRInt32* aType);
NS_IMETHOD Init() { return NS_OK; }
// nsIFocusableContent
NS_IMETHOD SetFocus(nsIPresContext* aPresContext);
NS_IMETHOD RemoveFocus(nsIPresContext* aPresContext);
protected:
nsGenericHTMLContainerElement mInner;
nsIForm* mForm;
PRInt32 mType;
};
static NS_DEFINE_IID(kIDOMHTMLFormElementIID, NS_IDOMHTMLFORMELEMENT_IID);
static NS_DEFINE_IID(kIFormIID, NS_IFORM_IID);
static NS_DEFINE_IID(kIFormControlIID, NS_IFORMCONTROL_IID);
// Construction, destruction
nsresult
NS_NewHTMLButtonElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLButtonElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLButtonElement::nsHTMLButtonElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
mForm = nsnull;
mType = NS_FORM_BUTTON_BUTTON; // default
}
nsHTMLButtonElement::~nsHTMLButtonElement()
{
if (nsnull != mForm) {
// prevent mForm from decrementing its ref count on us
mForm->RemoveElement(this, PR_FALSE);
NS_RELEASE(mForm);
}
}
// nsISupports
NS_IMPL_ADDREF(nsHTMLButtonElement);
nsresult
nsHTMLButtonElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLButtonElementIID)) {
*aInstancePtr = (void*)(nsIDOMHTMLButtonElement*)this;
NS_ADDREF_THIS();
return NS_OK;
}
else if (aIID.Equals(kIFormControlIID)) {
*aInstancePtr = (void*)(nsIFormControl*) this;
NS_ADDREF_THIS();
return NS_OK;
}
else if (aIID.Equals(kIFocusableContentIID)) {
*aInstancePtr = (void*)(nsIFocusableContent*) this;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
NS_IMETHODIMP_(nsrefcnt)
nsHTMLButtonElement::Release()
{
--mRefCnt;
NS_LOG_RELEASE(this, mRefCnt, "nsHTMLButtonElement");
if (mRefCnt <= 0) {
delete this;
return 0;
} else if ((1 == mRefCnt) && mForm) {
mRefCnt = 0;
delete this;
return 0;
} else {
return mRefCnt;
}
}
// nsIDOMHTMLButtonElement
nsresult
nsHTMLButtonElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLButtonElement* it = new nsHTMLButtonElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
// nsIContent
NS_IMETHODIMP
nsHTMLButtonElement::SetParent(nsIContent* aParent)
{
return mInner.SetParentForFormControls(aParent, this, mForm);
}
NS_IMETHODIMP
nsHTMLButtonElement::SetDocument(nsIDocument* aDocument, PRBool aDeep)
{
return mInner.SetDocumentForFormControls(aDocument, aDeep, this, mForm);
}
NS_IMETHODIMP
nsHTMLButtonElement::GetForm(nsIDOMHTMLFormElement** aForm)
{
nsresult result = NS_OK;
*aForm = nsnull;
if (nsnull != mForm) {
nsIDOMHTMLFormElement* formElem = nsnull;
result = mForm->QueryInterface(kIDOMHTMLFormElementIID, (void**)&formElem);
if (NS_OK == result) {
*aForm = formElem;
}
}
return result;
}
NS_IMETHODIMP
nsHTMLButtonElement::GetType(nsString& aType)
{
aType.SetString("button");
return NS_OK;
}
NS_IMPL_STRING_ATTR(nsHTMLButtonElement, AccessKey, accesskey)
//NS_IMPL_BOOL_ATTR(nsHTMLButtonElement, Disabled, disabled)
NS_IMETHODIMP
nsHTMLButtonElement::GetDisabled(PRBool* aValue)
{
nsHTMLValue val;
nsresult rv = mInner.GetHTMLAttribute(nsHTMLAtoms::disabled, val);
*aValue = NS_CONTENT_ATTR_NOT_THERE != rv;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLButtonElement::SetDisabled(PRBool aValue)
{
nsHTMLValue empty(eHTMLUnit_Empty);
if (aValue) {
nsresult status = mInner.SetHTMLAttribute(nsHTMLAtoms::disabled, empty, PR_TRUE);
mInner.SetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::kClass, "DISABLED", PR_TRUE);
return status;
}
else {
mInner.UnsetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::disabled, PR_TRUE);
mInner.SetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::kClass, "", PR_TRUE);
return NS_OK;
}
}
NS_IMPL_STRING_ATTR(nsHTMLButtonElement, Name, name)
NS_IMPL_INT_ATTR(nsHTMLButtonElement, TabIndex, tabindex)
NS_IMPL_STRING_ATTR(nsHTMLButtonElement, Value, value)
NS_IMETHODIMP
nsHTMLButtonElement::Blur()
{
nsIFormControlFrame* formControlFrame = nsnull;
nsresult rv = nsGenericHTMLElement::GetPrimaryFrame(this, formControlFrame);
if (NS_SUCCEEDED(rv)) {
// Ask the frame to Deselect focus (i.e Blur).
formControlFrame->SetFocus(PR_FALSE, PR_TRUE);
return NS_OK;
}
return rv;
}
NS_IMETHODIMP
nsHTMLButtonElement::Focus()
{
nsIFormControlFrame* formControlFrame = nsnull;
nsresult rv = nsGenericHTMLElement::GetPrimaryFrame(this, formControlFrame);
if (NS_SUCCEEDED(rv)) {
formControlFrame->SetFocus(PR_TRUE, PR_TRUE);
return NS_OK;
}
return rv;
}
NS_IMETHODIMP
nsHTMLButtonElement::SetFocus(nsIPresContext* aPresContext)
{
// first see if we are disabled or not. If disabled then do nothing.
nsAutoString disabled;
if (NS_CONTENT_ATTR_HAS_VALUE == mInner.GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::disabled, disabled))
return NS_OK;
nsIEventStateManager* esm;
if (NS_OK == aPresContext->GetEventStateManager(&esm)) {
esm->SetContentState(this, NS_EVENT_STATE_FOCUS);
NS_RELEASE(esm);
}
Focus();
nsIFormControlFrame* formControlFrame = nsnull;
nsresult rv = nsGenericHTMLElement::GetPrimaryFrame(this, formControlFrame);
if (NS_SUCCEEDED(rv)) {
formControlFrame->ScrollIntoView(aPresContext);
}
return rv;
}
NS_IMETHODIMP
nsHTMLButtonElement::RemoveFocus(nsIPresContext* aPresContext)
{
Blur();
return NS_OK;
}
static nsGenericHTMLElement::EnumTable kButtonTypeTable[] = {
{ "button", NS_FORM_BUTTON_BUTTON },
{ "reset", NS_FORM_BUTTON_RESET },
{ "submit", NS_FORM_BUTTON_SUBMIT },
{ 0 }
};
NS_IMETHODIMP
nsHTMLButtonElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if (aAttribute == nsHTMLAtoms::tabindex) {
if (nsGenericHTMLElement::ParseValue(aValue, 0, 32767, aResult,
eHTMLUnit_Integer)) {
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
else if (aAttribute == nsHTMLAtoms::type) {
nsGenericHTMLElement::EnumTable *table = kButtonTypeTable;
while (nsnull != table->tag) {
if (aValue.EqualsIgnoreCase(table->tag)) {
aResult.SetIntValue(table->value, eHTMLUnit_Enumerated);
mType = table->value;
return NS_CONTENT_ATTR_HAS_VALUE;
}
table++;
}
}
else if (aAttribute == nsHTMLAtoms::disabled) {
aResult.SetEmptyValue();
return NS_CONTENT_ATTR_HAS_VALUE;
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLButtonElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
if (aAttribute == nsHTMLAtoms::type) {
if (eHTMLUnit_Enumerated == aValue.GetUnit()) {
nsGenericHTMLElement::EnumValueToString(aValue, kButtonTypeTable, aResult);
return NS_CONTENT_ATTR_HAS_VALUE;
}
}
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLButtonElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLButtonElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLButtonElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
NS_ENSURE_ARG(aPresContext);
NS_ENSURE_ARG_POINTER(aEventStatus);
// Do not process any DOM events if the element is disabled
PRBool disabled;
nsresult rv = GetDisabled(&disabled);
if (NS_FAILED(rv) || disabled) {
return rv;
}
// Try script event handlers first
nsresult ret = mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
if ((NS_OK == ret) && (nsEventStatus_eIgnore == *aEventStatus) &&
!(aFlags & NS_EVENT_FLAG_CAPTURE)) {
switch (aEvent->message) {
case NS_MOUSE_LEFT_BUTTON_DOWN:
{
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(this, NS_EVENT_STATE_ACTIVE | NS_EVENT_STATE_FOCUS);
NS_RELEASE(stateManager);
}
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
break;
case NS_MOUSE_LEFT_BUTTON_UP:
{
nsIEventStateManager *stateManager;
nsIContent *activeLink = nsnull;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
//stateManager->GetActiveLink(&activeLink);
NS_RELEASE(stateManager);
}
if (activeLink == this) {
if (nsEventStatus_eConsumeNoDefault != *aEventStatus) {
nsAutoString href, target, disabled;
nsIURI* baseURL = nsnull;
GetBaseURL(baseURL);
GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::href, href);
GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::target, target);
GetAttribute(kNameSpaceID_HTML, nsHTMLAtoms::disabled, disabled);
if (target.Length() == 0) {
GetBaseTarget(target);
}
mInner.TriggerLink(aPresContext, eLinkVerb_Replace, baseURL, href, target, PR_TRUE);
NS_IF_RELEASE(baseURL);
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
}
}
break;
case NS_MOUSE_RIGHT_BUTTON_DOWN:
// XXX Bring up a contextual menu provided by the application
break;
case NS_MOUSE_ENTER:
{
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(this, NS_EVENT_STATE_HOVER);
NS_RELEASE(stateManager);
}
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
break;
// XXX this doesn't seem to do anything yet
case NS_MOUSE_EXIT:
{
nsIEventStateManager *stateManager;
if (NS_OK == aPresContext->GetEventStateManager(&stateManager)) {
stateManager->SetContentState(nsnull, NS_EVENT_STATE_HOVER);
NS_RELEASE(stateManager);
}
*aEventStatus = nsEventStatus_eConsumeNoDefault;
}
break;
default:
break;
}
}
return ret;
}
NS_IMETHODIMP
nsHTMLButtonElement::GetType(PRInt32* aType)
{
if (aType) {
*aType = mType;
return NS_OK;
} else {
return NS_FORM_NOTOK;
}
}
// An important assumption is that if aForm is null, the previous mForm will not be released
// This allows nsHTMLFormElement to deal with circular references.
NS_IMETHODIMP
nsHTMLButtonElement::SetForm(nsIDOMHTMLFormElement* aForm)
{
nsresult result = NS_OK;
if (nsnull == aForm) {
mForm = nsnull;
return NS_OK;
} else {
NS_IF_RELEASE(mForm);
nsIFormControl* formControl = nsnull;
result = QueryInterface(kIFormControlIID, (void**)&formControl);
if ((NS_OK == result) && formControl) {
result = aForm->QueryInterface(kIFormIID, (void**)&mForm); // keep the ref
if ((NS_OK == result) && mForm) {
mForm->AddElement(formControl);
}
NS_RELEASE(formControl);
}
}
return result;
}
NS_IMETHODIMP
nsHTMLButtonElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
if (!aResult) return NS_ERROR_NULL_POINTER;
#ifdef DEBUG
mInner.SizeOf(aSizer, aResult, sizeof(*this));
if (mForm) {
PRBool recorded;
aSizer->RecordObject(mForm, &recorded);
if (!recorded) {
PRUint32 formSize;
mForm->SizeOf(aSizer, &formSize);
aSizer->AddSize(nsHTMLAtoms::iform, formSize);
}
}
#endif
return NS_OK;
}

View File

@@ -0,0 +1,209 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLDListElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
#include "nsIHTMLAttributes.h"
static NS_DEFINE_IID(kIDOMHTMLDListElementIID, NS_IDOMHTMLDLISTELEMENT_IID);
class nsHTMLDListElement : public nsIDOMHTMLDListElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLDListElement(nsIAtom* aTag);
virtual ~nsHTMLDListElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLDListElement
NS_IMETHOD GetCompact(PRBool* aCompact);
NS_IMETHOD SetCompact(PRBool aCompact);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
protected:
nsGenericHTMLContainerElement mInner;
};
nsresult
NS_NewHTMLDListElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLDListElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLDListElement::nsHTMLDListElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLDListElement::~nsHTMLDListElement()
{
}
NS_IMPL_ADDREF(nsHTMLDListElement)
NS_IMPL_RELEASE(nsHTMLDListElement)
nsresult
nsHTMLDListElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLDListElementIID)) {
nsIDOMHTMLDListElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLDListElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLDListElement* it = new nsHTMLDListElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_BOOL_ATTR(nsHTMLDListElement, Compact, compact)
NS_IMETHODIMP
nsHTMLDListElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
if (aAttribute == nsHTMLAtoms::compact) {
aResult.SetEmptyValue();
return NS_CONTENT_ATTR_NO_VALUE;
}
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLDListElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
if (nsnull != aAttributes) {
nsHTMLValue value;
// compact: empty
aAttributes->GetAttribute(nsHTMLAtoms::compact, value);
if (value.GetUnit() == eHTMLUnit_Empty) {
// XXX set
}
}
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLDListElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (aAttribute == nsHTMLAtoms::compact) {
aHint = NS_STYLE_HINT_CONTENT; // handled by ua.css?
}
else if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLDListElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLDListElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsHTMLDListElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

View File

@@ -0,0 +1,199 @@
/* -*- 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.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.
*
* 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.
*
* Contributor(s):
*/
#include "nsIDOMHTMLModElement.h"
#include "nsIScriptObjectOwner.h"
#include "nsIDOMEventReceiver.h"
#include "nsIHTMLContent.h"
#include "nsGenericHTMLElement.h"
#include "nsHTMLAtoms.h"
#include "nsHTMLIIDs.h"
#include "nsIStyleContext.h"
#include "nsIMutableStyleContext.h"
#include "nsStyleConsts.h"
#include "nsIPresContext.h"
static NS_DEFINE_IID(kIDOMHTMLModElementIID, NS_IDOMHTMLMODELEMENT_IID);
class nsHTMLDelElement : public nsIDOMHTMLModElement,
public nsIScriptObjectOwner,
public nsIDOMEventReceiver,
public nsIHTMLContent
{
public:
nsHTMLDelElement(nsIAtom* aTag);
virtual ~nsHTMLDelElement();
// nsISupports
NS_DECL_ISUPPORTS
// nsIDOMNode
NS_IMPL_IDOMNODE_USING_GENERIC(mInner)
// nsIDOMElement
NS_IMPL_IDOMELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLElement
NS_IMPL_IDOMHTMLELEMENT_USING_GENERIC(mInner)
// nsIDOMHTMLModElement
NS_IMETHOD GetCite(nsString& aCite);
NS_IMETHOD SetCite(const nsString& aCite);
NS_IMETHOD GetDateTime(nsString& aDateTime);
NS_IMETHOD SetDateTime(const nsString& aDateTime);
// nsIScriptObjectOwner
NS_IMPL_ISCRIPTOBJECTOWNER_USING_GENERIC(mInner)
// nsIDOMEventReceiver
NS_IMPL_IDOMEVENTRECEIVER_USING_GENERIC(mInner)
// nsIContent
NS_IMPL_ICONTENT_USING_GENERIC(mInner)
// nsIHTMLContent
NS_IMPL_IHTMLCONTENT_USING_GENERIC(mInner)
protected:
nsGenericHTMLContainerElement mInner;
};
nsresult
NS_NewHTMLDelElement(nsIHTMLContent** aInstancePtrResult, nsIAtom* aTag)
{
NS_PRECONDITION(nsnull != aInstancePtrResult, "null ptr");
if (nsnull == aInstancePtrResult) {
return NS_ERROR_NULL_POINTER;
}
nsIHTMLContent* it = new nsHTMLDelElement(aTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
return it->QueryInterface(kIHTMLContentIID, (void**) aInstancePtrResult);
}
nsHTMLDelElement::nsHTMLDelElement(nsIAtom* aTag)
{
NS_INIT_REFCNT();
mInner.Init(this, aTag);
}
nsHTMLDelElement::~nsHTMLDelElement()
{
}
NS_IMPL_ADDREF(nsHTMLDelElement)
NS_IMPL_RELEASE(nsHTMLDelElement)
nsresult
nsHTMLDelElement::QueryInterface(REFNSIID aIID, void** aInstancePtr)
{
NS_IMPL_HTML_CONTENT_QUERY_INTERFACE(aIID, aInstancePtr, this)
if (aIID.Equals(kIDOMHTMLModElementIID)) {
nsIDOMHTMLModElement* tmp = this;
*aInstancePtr = (void*) tmp;
NS_ADDREF_THIS();
return NS_OK;
}
return NS_NOINTERFACE;
}
nsresult
nsHTMLDelElement::CloneNode(PRBool aDeep, nsIDOMNode** aReturn)
{
nsHTMLDelElement* it = new nsHTMLDelElement(mInner.mTag);
if (nsnull == it) {
return NS_ERROR_OUT_OF_MEMORY;
}
mInner.CopyInnerTo(this, &it->mInner, aDeep);
return it->QueryInterface(kIDOMNodeIID, (void**) aReturn);
}
NS_IMPL_STRING_ATTR(nsHTMLDelElement, Cite, cite)
NS_IMPL_STRING_ATTR(nsHTMLDelElement, DateTime, datetime)
NS_IMETHODIMP
nsHTMLDelElement::StringToAttribute(nsIAtom* aAttribute,
const nsString& aValue,
nsHTMLValue& aResult)
{
// XXX write me
return NS_CONTENT_ATTR_NOT_THERE;
}
NS_IMETHODIMP
nsHTMLDelElement::AttributeToString(nsIAtom* aAttribute,
const nsHTMLValue& aValue,
nsString& aResult) const
{
// XXX write me
return mInner.AttributeToString(aAttribute, aValue, aResult);
}
static void
MapAttributesInto(const nsIHTMLMappedAttributes* aAttributes,
nsIMutableStyleContext* aContext,
nsIPresContext* aPresContext)
{
// XXX write me
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
NS_IMETHODIMP
nsHTMLDelElement::GetMappedAttributeImpact(const nsIAtom* aAttribute,
PRInt32& aHint) const
{
if (! nsGenericHTMLElement::GetCommonMappedAttributesImpact(aAttribute, aHint)) {
aHint = NS_STYLE_HINT_CONTENT;
}
return NS_OK;
}
NS_IMETHODIMP
nsHTMLDelElement::GetAttributeMappingFunctions(nsMapAttributesFunc& aFontMapFunc,
nsMapAttributesFunc& aMapFunc) const
{
aFontMapFunc = nsnull;
aMapFunc = &MapAttributesInto;
return NS_OK;
}
NS_IMETHODIMP
nsHTMLDelElement::HandleDOMEvent(nsIPresContext* aPresContext,
nsEvent* aEvent,
nsIDOMEvent** aDOMEvent,
PRUint32 aFlags,
nsEventStatus* aEventStatus)
{
return mInner.HandleDOMEvent(aPresContext, aEvent, aDOMEvent,
aFlags, aEventStatus);
}
NS_IMETHODIMP
nsHTMLDelElement::SizeOf(nsISizeOfHandler* aSizer, PRUint32* aResult) const
{
return mInner.SizeOf(aSizer, aResult, sizeof(*this));
}

Some files were not shown because too many files have changed in this diff Show More