troy%netscape.com
d79892b99d
Changed nsTextFrame to be derived from nsFrame instead of nsSplittableFrame.
...
nsTextFrame now has only a next-in-flow pointer and no prev-in-flow pointer.
Subclass nsContinuingTextFrame is used for continuing text frames; it has a
prev-in-flow pointer. This saves 4 bytes
git-svn-id: svn://10.0.0.236/trunk@51664 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-23 23:19:14 +00:00
mjudge%netscape.com
64c9150aab
massive checkin for underlying implementation of key handling from javascript and home/end breakage and.. selecting around NON-text frames. like arrowing around an image for example. 16636,16655 and another i cannot find. r=kin r=hyatt a=me
...
git-svn-id: svn://10.0.0.236/trunk@51467 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-22 00:19:18 +00:00
ftang%netscape.com
908e81fe11
change the input method highligh code from 2 style to 4 styles. r=mjudge
...
git-svn-id: svn://10.0.0.236/trunk@51427 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-21 22:01:18 +00:00
kipp%netscape.com
c54e23defe
r=troy; Optimize append text reflows to only reflow the new part of the text
...
git-svn-id: svn://10.0.0.236/trunk@51400 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-21 20:46:05 +00:00
kipp%netscape.com
bbbab95269
update to new nsTextTransformer api
...
git-svn-id: svn://10.0.0.236/trunk@51206 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-19 23:01:58 +00:00
kipp%netscape.com
66125fa907
r=troy; revised nsITextContent api to simplify it and the consumers; this is done as prep work for bug 9101
...
git-svn-id: svn://10.0.0.236/trunk@50895 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-15 23:36:07 +00:00
mjudge%netscape.com
dcd63f4da3
bugs 15547,15645,13665,13277,5761, r=akkana,kin,hyatt. fixing selection bugs, keyboard navigation, triple clicking and drag scrolling.
...
git-svn-id: svn://10.0.0.236/trunk@50536 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-13 01:15:26 +00:00
kipp%netscape.com
b7194daf71
r=kin,troy; Fixed reflow bug with optimization logic to avoid measuring text (no bug #)
...
git-svn-id: svn://10.0.0.236/trunk@50512 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-12 23:29:01 +00:00
troy%netscape.com
69fbd973a0
Fix for blocker #15839 . r=kipp@netscape.com,kin@netscape.com
...
Typing into a text area wasn't working properly. Problem was that when the text
changed we were reflowing the text frames with a resize reflow command and
we thought we could optimize the reflow. So I changed ContentChanged() to
mark each text frame dirty so we would know not to do the optimization
git-svn-id: svn://10.0.0.236/trunk@50261 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-08 22:04:31 +00:00
mjudge%netscape.com
007d73a460
fixing optimizations for table selection as well as making sure all flags are turned on/off for text frames when one frame is selected..
...
git-svn-id: svn://10.0.0.236/trunk@49352 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-29 20:36:00 +00:00
kin%netscape.com
1806b9519b
First pass implementation of selection auto scrolling.
...
layout/base/public/nsIFrame.h
- Added GetContentAndOffsetsFromPoint() method. This
method will eventually replace GetPosition().
layout/base/public/nsIFrameSelection.h
- Added HandleDrag() and Start/StopAutoScrollTimer() methods.
layout/base/src/nsRangeList.cpp
- Added implementation for HandleDrag() and
Start/StopAutoScrollTimer() methods.
layout/html/base/src/nsBRFrame.cpp
- Added implementation for GetContentAndOffsetsFromPoint().
layout/html/base/src/nsFrame.cpp
layout/html/base/src/nsFrame.h
- Added implementation for GetContentAndOffsetsFromPoint().
- Added GetClosestViewForFrame() utility method.
- Modified HandleEvent() to call HandleRelease() which now
stops the auto scrolling timers.
- Modified HandleDrag() to call nsIFrameSelection's HandleDrag()
and Start/StopAutoScrollTimer() methods.
layout/html/base/src/nsTextFrame.cpp
- Added implementation for GetContentAndOffsetsFromPoint().
git-svn-id: svn://10.0.0.236/trunk@49313 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-29 20:04:05 +00:00
mjudge%netscape.com
12908f2dd0
fixes for M11 a=shaver r=cmanske. this will add 1 enumerator value to en enum in nsIFrame so dont be scared. this is for tweaking selection should not affect anyone outside of selection/editor
...
git-svn-id: svn://10.0.0.236/trunk@49076 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-25 23:33:02 +00:00
mjudge%netscape.com
b8eaf7bac4
tweaked word left and word right again. got double click working on edge cases! yeah
...
git-svn-id: svn://10.0.0.236/trunk@48829 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-22 07:09:41 +00:00
mjudge%netscape.com
e27650740e
approved by Dagley. fixes for CTRL_LEFT and CTRL_RIGHT navigation and wrapping
...
git-svn-id: svn://10.0.0.236/trunk@48797 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-22 05:56:44 +00:00
mjudge%netscape.com
807d5be104
fixes for line/frame traversal. now we use more common code inside nsFrame rather than nsTextFrame specific code all the time.
...
git-svn-id: svn://10.0.0.236/trunk@48778 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-22 04:12:23 +00:00
kipp%netscape.com
ffbaac75aa
Whoops, left some noise on
...
git-svn-id: svn://10.0.0.236/trunk@48687 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-22 00:41:13 +00:00
kipp%netscape.com
16349cdbd1
Fixed various bugs including part of 14486 and 14427; cleaned up the usage of stack based buffers to avoid future issues
...
git-svn-id: svn://10.0.0.236/trunk@48686 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-22 00:40:56 +00:00
mjudge%netscape.com
124711cde1
changes to selection code to stop a never ending loop
...
git-svn-id: svn://10.0.0.236/trunk@48665 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-21 22:58:14 +00:00
kipp%netscape.com
a1c8b975ba
Bring TrimTrailingWhiteSpace back to life after troy's changes
...
git-svn-id: svn://10.0.0.236/trunk@48435 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-21 00:12:50 +00:00
mjudge%netscape.com
179e58ff5f
checking in fixes for selection around nodes where get primary frame will not lead to the discovery of all frames
...
git-svn-id: svn://10.0.0.236/trunk@48406 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-20 21:47:37 +00:00
troy%netscape.com
9a25e04f8b
Optimized Reflow() some more. In the case where we're not measuring text but
...
we need to peek ahead and so we need to know the length of the last word, if
there's only one word in the text run then we can avoid measuring
git-svn-id: svn://10.0.0.236/trunk@48240 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-19 04:42:54 +00:00
troy%netscape.com
545ba4350f
Backed out some changes that aren't needed and were fixed with a change
...
to the frame construction code
git-svn-id: svn://10.0.0.236/trunk@48233 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-19 00:59:38 +00:00
troy%netscape.com
28ffdcaf30
Optimized reflow to skip measuring of the text for a resize reflow (when
...
possible)
git-svn-id: svn://10.0.0.236/trunk@48189 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-18 16:22:34 +00:00
alecf%netscape.com
ca2cea5ccd
fix a bunch of null-derefing problems when accessing http://webmail.netscape.com/ and add some assertions when these things happen
...
git-svn-id: svn://10.0.0.236/trunk@48133 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-18 01:00:43 +00:00
alecf%netscape.com
ee585f6ea5
fix dereferencing error on slashdot.org
...
git-svn-id: svn://10.0.0.236/trunk@48130 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-18 00:48:51 +00:00
kipp%netscape.com
b19648bac9
Fixed a glitch in word-breaking look ahead that was using the wrong content to compute the next fragments width (whoops!)
...
git-svn-id: svn://10.0.0.236/trunk@48049 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-17 23:14:47 +00:00
troy%netscape.com
590a741dbd
Minor changes to reduce the amount of unnecessary ref counting and speed
...
things up a little
git-svn-id: svn://10.0.0.236/trunk@47864 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-16 23:31:59 +00:00
mjudge%netscape.com
f48fd77b70
changes for bug fixes for dogfood. finding frames left and right should find the correct frame and not give up so easily. nsTextFrame needed to change getpositionslowly.
...
git-svn-id: svn://10.0.0.236/trunk@47495 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-15 01:57:50 +00:00
mjudge%netscape.com
8462665913
content iter not initing properly for reuse. text frame not selecting slowly properly, bad bounds checking :(. rangelist now traversing each node in a spaniter with a normal iter to make SURE we get all the children!
...
git-svn-id: svn://10.0.0.236/trunk@47447 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-14 23:16:22 +00:00
mjudge%netscape.com
139d6944f4
fixes for selection. up/down arrow behavior and also extending selection. all should be in peek offset ect. Also adding in a slight change to the hack (which should go away soon) that will stop the editor from scrolling when up/down left/right ect are clicked. when key events go in this code will be removed
...
git-svn-id: svn://10.0.0.236/trunk@47183 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-13 22:19:31 +00:00
mjudge%netscape.com
ad8dd5373b
fixes for crasher in tree
...
git-svn-id: svn://10.0.0.236/trunk@46898 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-11 00:18:02 +00:00
mjudge%netscape.com
a29a744b14
changes for peekoffset removal of extra parameters. also fixing some ownership issues with nsIenumerator and the rangelist iterator. fixing also some hit tests for line frames.
...
git-svn-id: svn://10.0.0.236/trunk@46783 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-10 18:29:37 +00:00
mjudge%netscape.com
3a2b08f57b
adding in begin line and end line enums for selection movement. this allows peeking to the start and end of and like given a content offset for any frame.
...
git-svn-id: svn://10.0.0.236/trunk@46251 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-07 23:40:17 +00:00
ftang%netscape.com
c09727aebc
fix bug 13063 12881
...
git-svn-id: svn://10.0.0.236/trunk@45955 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-03 22:46:16 +00:00
mjudge%netscape.com
d9a3b1a319
new selection code for dead areas. this is much better, trust me. the block frame now will look at its best line and look for a spot to select. if it finds another block frame now, it will continue the process in a while loop. each time looking for best x and y area. this reuses the code located in GetNextPrevLine.
...
git-svn-id: svn://10.0.0.236/trunk@45529 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-01 21:40:16 +00:00
kipp%netscape.com
eea3ab916a
Updated SizeOf methods to not waste space when doing a non-debug build
...
git-svn-id: svn://10.0.0.236/trunk@45397 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-01 01:02:16 +00:00
kipp%netscape.com
c9002f20df
Reimplemented SizeOf methods in some of the frame classes; partial rework of first-line handling snapshot
...
git-svn-id: svn://10.0.0.236/trunk@45274 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-31 03:09:40 +00:00
mjudge%netscape.com
72808fb95e
changes to allow selection in "dead" space between frames. still need work on "outside" and not in the window at all, but this is a very good chunk of the issue and it will solve many many bugs on my place. good for dogfood as well :)
...
git-svn-id: svn://10.0.0.236/trunk@44364 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-24 21:51:47 +00:00
ftang%netscape.com
bed550f28d
implement word jump for non Ascii
...
git-svn-id: svn://10.0.0.236/trunk@43559 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-19 06:06:57 +00:00
ftang%netscape.com
d4536e263f
tune performance by elimate unnecessary reference to nsIWordBreaker in nsTexTransformer. Add NS_PRECONDITION code into nsTextTransformer to make code better
...
git-svn-id: svn://10.0.0.236/trunk@42948 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-10 07:23:56 +00:00
sfraser%netscape.com
6a65d2857f
Optimization so that moving a collapsed selection does not cause the frame to redraw.
...
git-svn-id: svn://10.0.0.236/trunk@42782 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-09 19:15:04 +00:00
ftang%netscape.com
8b4d6e129c
fix bug 4240,5532,5529,7899 pass in current word buffer to ComputeWordWidth functions so we have the whole text that we can pass to line breaker.
...
git-svn-id: svn://10.0.0.236/trunk@41292 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-27 14:47:24 +00:00
brade%netscape.com
bbafb3d9ad
Implement InvertRect on Mac. r sfraser
...
git-svn-id: svn://10.0.0.236/trunk@40365 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-20 23:38:55 +00:00
ramiro%netscape.com
3903eb4d89
Adding support for XOR selection. Updated nsIRenderingContext interface
...
to support InvertRect() for the XOR-ing of rectangles. Makes selection
work as expected on windows and unix as opposed to the rectangle hack.
Stubs added for all other platforms.
git-svn-id: svn://10.0.0.236/trunk@40252 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-20 07:26:09 +00:00
troy%netscape.com
8d07a8a962
Added 'm' prefix to a couple more data members of nsHTMLReflowState struct
...
git-svn-id: svn://10.0.0.236/trunk@40217 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-20 03:51:46 +00:00
mjudge%netscape.com
329d39ba11
massive checkin for selection. adjusting nsIDOMSelection api and nsIFrameSelection. many "small" changes. this is not as bad as it looks. layout will not be affected other than "getter" calls for selection. and all consumers of selection should be in good shape.
...
git-svn-id: svn://10.0.0.236/trunk@39971 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-18 02:27:19 +00:00
sfraser%netscape.com
507def446e
Don't cast a char* to a PRUnichar* array when calling PaintTextDecorations.
...
git-svn-id: svn://10.0.0.236/trunk@39568 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-15 23:11:35 +00:00
mjudge%netscape.com
f9575d1f61
checkin for carpool for multiple seleciton/ime selection and api changes to nsIDOMselection
...
git-svn-id: svn://10.0.0.236/trunk@39541 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-15 18:19:03 +00:00
kipp%netscape.com
921f8fba89
Removed compiler warnings
...
git-svn-id: svn://10.0.0.236/trunk@39309 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 17:30:22 +00:00
troy%netscape.com
d21da38397
Changed Reflow() to invalidate bounds for an incremental reflow
...
git-svn-id: svn://10.0.0.236/trunk@39265 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-14 15:20:01 +00:00