Commit Graph

451 Commits

Author SHA1 Message Date
anthonyd%netscape.com
9a23850613 r: mjudge
table bacgrounds now sleected properly with disabled selection
(grey selection)
2000-04-30 18:56:26 +00:00
mjudge%netscape.com
7e5a6b3cd7 change to move selection interfaces to nsISelectionController and away from nsIPresShell or nsIDocument 2000-04-28 06:21:31 +00:00
mjudge%netscape.com
2c0953e1be ender lite checkin. 2000-04-27 07:37:12 +00:00
anthonyd%netscape.com
a3535292d9 r: mjudge
bug fix for 34397, broken IME selection
2000-04-26 03:54:21 +00:00
anthonyd%netscape.com
b5b3122ac2 r=mjudge. Removing redundant call to SetColor for ::RenderString. all places have allready set the color before calling this method. this removal should be a no-op. Selection color now should look correct 2000-04-21 21:38:08 +00:00
rods%netscape.com
21de9f3e8a Add ifdef'ed Performance Reflow Counting code 2000-04-21 14:59:47 +00:00
anthonyd%netscape.com
815b66f915 drawing selection as tri-state. on-off-disabled. hardcoded disable color to grey right now. r=mjudge 2000-04-20 23:11:41 +00:00
buster%netscape.com
f40b76249a bug 588 (text justification) for Robert O'Callahan <roc+moz@cs.cmu.edu>
r=buster

bug 18545 ([FLOAT] Problem Centering <TABLE> with <DIV> tag)
r=troy

bugs 18827, 19579, 22327 24782, 26512, 30124, 31849, 32846 (floater behavior wrong)
The primary change here is to determine if a block is impacted by a floater, and if so
mark the block's lines dirty when appropriate.
r=troy

no bug number.  performance work.  reduced the size of some reflow data structures by
collapsing multiple fields into a single bit field.
r=troy
2000-04-17 14:40:46 +00:00
scc%netscape.com
52bdf65d60 making string conversions explicit 2000-04-15 21:18:29 +00:00
troy%netscape.com
41bb5435ed b=35749 Fixed Purify warning 2000-04-13 20:55:40 +00:00
troy%netscape.com
391a9f5e58 b=35312 Made sure we don't mesure in chunks if letter spacing is
specified
2000-04-13 20:43:48 +00:00
dveditz%netscape.com
1eae54e4e0 get VC5 Mozilla build back off the floor, a=granrose 2000-04-12 22:48:54 +00:00
troy%netscape.com
890549a10c b=35603, r=jinjin@pacbell.net Fix for blocker (crash when selecting
text)
2000-04-12 22:22:58 +00:00
troy%netscape.com
a37259c6bd Fix for build bustage 2000-04-12 15:42:55 +00:00
troy%netscape.com
43ba4ad192 Added support for measuring text runs in ascii, and changed text transformer
to leave the text as ascii if possible
2000-04-12 14:54:43 +00:00
ftang%netscape.com
9cf267b815 mjudge at ftangs machine. last fix to stop crashing. still problem with event from external IME window not getting to ESM 2000-04-10 21:35:52 +00:00
ftang%netscape.com
43e62d6dfa mjudge checkin in from ftangs machine. fixing japanese lockup. this will not fix the strange loss of the commit event to the ESM however. that was making thisproblem obvious. 2000-04-10 21:02:25 +00:00
mjudge%netscape.com
f7d9bfc8c0 a=leaf r=ftang. I will be more carefull with ime when doing selection.. I will be more carefull with ime... 2000-04-08 00:17:14 +00:00
mjudge%netscape.com
8132899a96 a=leaf. r=sfraser. fixing ime lockup. stupid mistake on my part 2000-04-07 19:32:46 +00:00
troy%netscape.com
ac77c942fa Eliminated buffering that the text frame was doing when measuring
text in runs and changed the text transformer code to do the buffering
instead. It was already copying the transformed text into its internal
buffer anyway, so this saves the extra copy
2000-04-04 14:14:47 +00:00
pierre%netscape.com
e35773094b Use the system colors to paint the text selection (and added NS_DONT_CHANGE_COLOR to support the Mac selection scheme where colored text keeps its colors when selected). 2000-04-04 09:07:41 +00:00
scc%netscape.com
e37740acdb making string conversions explicit 2000-04-03 11:39:09 +00:00
mjudge%netscape.com
ad7071118d selecting generated content works now. subtree iterator and all. incredible... added new private method to nsTextFrame to factor out some things on getting correct offsets from generated frames. its a no-op almost for non generated frames 2000-04-02 05:05:31 +00:00
cls%seawood.org
adf25840d6 Please use PR_TRUE & PR_FALSE. Not all C++ compilers support the keywords true & false. 2000-03-31 11:09:28 +00:00
mjudge%netscape.com
6ce1fbbb34 changed alot here having to do with get position. made it much faster for non-slow frames. (slow=char spacing ect) also removed some code to make the ::GetWidth call factored out so I can reuse it. selection now has a DrawSelectionIterator that spits out the next series of chars and their color ect when drawing selection. this allows us to combine many different types of selection. This also means that XOR is not used here any more. we will hook up selection colors to style shortly in the next week. 2000-03-31 07:26:07 +00:00
troy%netscape.com
3438f7ea3e Fix for divide by zero I accidently introduced 2000-03-31 05:40:35 +00:00
troy%netscape.com
380605b839 Fix non Win32 compiler bustage 2000-03-31 05:10:36 +00:00
troy%netscape.com
fb978dd3bb Changed text measurement code to use the new rendering context function
that measures chunks or words. Because that function is only implemented
on Win32 the code is #ifdef _WIN32
2000-03-31 04:27:43 +00:00
jim_nance%yahoo.com
dc0e139673 Bug 33322 - Fix compiler warnings. Its been on n.p.m.builds for a few
days for module owners to comment on.  r=troy@netscape.com
2000-03-30 03:21:26 +00:00
sfraser%netscape.com
80126fb4fa Fixes to nsTextFrame so that every text frame no longer AddRefs the blink timer, and tidyup of blink timer code. r=troy 2000-03-25 00:49:58 +00:00
troy%netscape.com
7007f487f2 Fixed problem with previous checkin. Made sure "mColumn" is set
correctly
2000-03-24 05:04:15 +00:00
troy%netscape.com
d44a7da8ab No change in functionality. I factored out the loop that measures text into
member function MeasureIndividualWords()
2000-03-23 22:58:43 +00:00
mjudge%netscape.com
ca22489c81 this should have NOT used ABS. if negative there is NO ROUNDING ERROR! ;)r=akkana 2000-03-22 02:10:37 +00:00
pierre%netscape.com
22030d523c 32252 "Small Caps font too small". Changed the ratio for small-caps from 0.7 to 0.8 (same as MacIE5). 2000-03-19 07:47:23 +00:00
pierre%netscape.com
4d43de09aa Fix 32199 (visibility:collapse is not being interpreted as hidden on block and inline level elements) and parts of 21701 (misuse of style attr mVisible). In the following files, replacing disp->mVisible with disp->IsVisible() is a BUG FIX: nsBlockFrame, nsBulletFrame, nsHRFrame, nsHTMLContainerFrame, nsImageFrame, nsTextFrame. In all the other files, replacing disp->mVisible with disp->IsVisible() or disp->IsVisibleOrCollapsed() is merely a SYNTACTICAL CHANGE. The respective owners will later review the use of IsVisibleOrCollapsed() and in some cases replace it with IsVisible(). See bug 21701. 2000-03-17 10:15:13 +00:00
troy%netscape.com
dfd7864b4c b=30391 r=troy@netscape.com Patch from rbs@maths.uq.edu.au to add parens when
necessary to PR_ABS macro
2000-03-11 16:50:52 +00:00
buster%netscape.com
66696f0a23 bug 26840 r=mjudge 2000-02-14 01:54:20 +00:00
nisheeth%netscape.com
99f85886b8 r=Troy. We were specifying the incorrect child as a reflow dirty target in some cases. 2000-02-11 07:11:43 +00:00
mjudge%netscape.com
90364fa4e5 fix for memory leak bug 24332 2000-02-10 07:55:34 +00:00
mjudge%netscape.com
b3444d6801 fix for bug 18528. fixing tabs controls in selection guessing. 2000-02-10 07:48:17 +00:00
ftang%netscape.com
2928361af0 r=nhotta, fix 24451. Change the IME hightlight code so
it won't draw out the clip boundary. It now draw by different color
instead of different hight.
2000-02-02 23:39:25 +00:00
pp%ludusdesign.com
58065dda04 Converting ::GetIID() into NS_GET_IID(). Bug #20232. r=scc, r=mozbot 2000-02-02 22:24:56 +00:00
troy%netscape.com
8a78d916a5 b=21657 a=chofmann@netscape.com Made "overflow list" a full fledged
child list and changed ReparentFrameView() to check it.
2000-01-22 01:16:50 +00:00
michael.lowe%bigfoot.com
6696fa133b Repeating, prioritised timer implementation for Windows and Gtk (bug 22979). author={Win32=michael.lowe@bigfoot.com, Gtk=alex@cendio.se}, r={kmcclusk,rods,sfraser,et al} a=brendan 2000-01-21 21:56:09 +00:00
nisheeth%netscape.com
1af2ec200b r=troy. Changed block, inline, and text frames to call the parent's ReflowDirtyChild() method instead of generating reflow commands. 2000-01-19 03:58:05 +00:00
rbs%maths.uq.edu.au
401406c143 [MATHML] Change of the character coordinate system of the bounding metrics 2000-01-17 07:34:24 +00:00
mjudge%netscape.com
118e690267 small changes for 22752 ctrl left and right. r=cmanske 2000-01-12 21:39:36 +00:00
mjudge%netscape.com
3ec359f588 bug 15982 r=cmanske. needed more places to add checks for style turning off normal selection. 2000-01-11 19:44:59 +00:00
mjudge%netscape.com
dcbf3266bd r= kin. fix for another parameter. fixing m13 bug with multiple selection. 2000-01-08 00:31:32 +00:00
rbs%maths.uq.edu.au
fb509ee983 [MATHML] Added code to enable Reflow() to return, if requested, the bounding metrics needed for precise MathML placements. This is a WIP approved by Troy. 2000-01-07 14:33:11 +00:00
sspitzer%netscape.com
bfc18b87ab initialize some variables, fix a comment, fix a FMM 1999-12-22 00:41:38 +00:00
rginda%netscape.com
34a05a535b Adding check for null document. Prevents crash described in bug 20677.
r=brendan@mozilla.org
1999-12-07 22:04:52 +00:00
hyatt%netscape.com
de2eaede42 Implementing a generalized recycler and arena for all layout frames. Hoping to improve
bug #9489.  Should also definitely fix bug #15916. r=troy
1999-12-04 23:49:50 +00:00
ftang%netscape.com
6773500b62 fix bug 18398. Make sure the startOffset and textWidth get reset in the while loop 1999-11-30 22:16:12 +00:00
tbogard%aol.net
af1ce8d410 Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc 1999-11-24 06:03:41 +00:00
mjudge%netscape.com
d1b5f823f1 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) 1999-11-24 01:10:22 +00:00
mjudge%netscape.com
d7fbad6cea 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? 1999-11-23 20:30:21 +00:00
dmose%mozilla.org
5312eacf8c updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:40:37 +00:00
kipp%netscape.com
ca39ca7b10 r=vidur; bug=17372; found a case where a trailing shy character on a line would trigger an infinite loop iff the shy character was the only piece of text after a text frame had been continued 1999-11-04 19:34:36 +00:00
kipp%netscape.com
c93281e841 r=troy; fixed bugs 2636 and 17636 - line layout issues for some more edge cases (nobr's with floaters in them) and handling of nbsp 1999-11-02 15:44:57 +00:00
troy%netscape.com
1585a751fb Moved a bunch of stuff out to a nsIFrameDebug interface 1999-11-01 22:12:45 +00:00
kipp%netscape.com
80998e8d8c r=ftang (someday); fixed bug 17130 - the problem was that nbsp's were being mapped into spaces by the text-transformer which is normally good, but for the purposes of line-breaking look-ahead was bad. I added code to revert the post-transformed spaces into nbsp's before using the line-breaker 1999-11-01 15:36:02 +00:00
kin%netscape.com
74852c1b92 Fix for bug #16176: [DOGFOOD] need to annotate line frames with whitespace trim
layout/base/src/nsCaret.cpp
        - Modified DrawCaretWithContext so that we only
          adjust the caret position if we are within the
          frame's bounds.

    layout/html/base/src/nsTextFrame.cpp
        - Modified GetPointFromOffset() to add the width
          of a space if the offset is after a trailing space
          and it was trimmed off the frame.

r=sfraser@netscape.com
1999-10-29 13:43:11 +00:00
troy%netscape.com
87afecabc0 Changed SetView/GetView to take an additional argument which is the
pres context
1999-10-26 04:44:41 +00:00
ftang%netscape.com
0b2a09b76d fix not enough gap between IME selection problem. r=erik 1999-10-25 22:18:41 +00:00
troy%netscape.com
29963d8875 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
1999-10-23 23:19:14 +00:00
mjudge%netscape.com
7d0e807931 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 1999-10-22 00:19:18 +00:00
ftang%netscape.com
e1475842c4 change the input method highligh code from 2 style to 4 styles. r=mjudge 1999-10-21 22:01:18 +00:00
kipp%netscape.com
584976d119 r=troy; Optimize append text reflows to only reflow the new part of the text 1999-10-21 20:46:05 +00:00
kipp%netscape.com
a03246a1e0 update to new nsTextTransformer api 1999-10-19 23:01:58 +00:00
kipp%netscape.com
15a0ec26fa r=troy; revised nsITextContent api to simplify it and the consumers; this is done as prep work for bug 9101 1999-10-15 23:36:07 +00:00
mjudge%netscape.com
fc71fb36d1 bugs 15547,15645,13665,13277,5761, r=akkana,kin,hyatt. fixing selection bugs, keyboard navigation, triple clicking and drag scrolling. 1999-10-13 01:15:26 +00:00
kipp%netscape.com
02b64f135d r=kin,troy; Fixed reflow bug with optimization logic to avoid measuring text (no bug #) 1999-10-12 23:29:01 +00:00
troy%netscape.com
0d79fa2c78 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
1999-10-08 22:04:31 +00:00
mjudge%netscape.com
54829b853b fixing optimizations for table selection as well as making sure all flags are turned on/off for text frames when one frame is selected.. 1999-09-29 20:36:00 +00:00
kin%netscape.com
ca92ac282c 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().
1999-09-29 20:04:05 +00:00
mjudge%netscape.com
2c78141fa6 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 1999-09-25 23:33:02 +00:00
mjudge%netscape.com
e989c3be45 tweaked word left and word right again. got double click working on edge cases! yeah 1999-09-22 07:09:41 +00:00
mjudge%netscape.com
99dadf07b9 approved by Dagley. fixes for CTRL_LEFT and CTRL_RIGHT navigation and wrapping 1999-09-22 05:56:44 +00:00
mjudge%netscape.com
88c407b158 fixes for line/frame traversal. now we use more common code inside nsFrame rather than nsTextFrame specific code all the time. 1999-09-22 04:12:23 +00:00
kipp%netscape.com
574daaa6d8 Whoops, left some noise on 1999-09-22 00:41:13 +00:00
kipp%netscape.com
5a777fb9ed Fixed various bugs including part of 14486 and 14427; cleaned up the usage of stack based buffers to avoid future issues 1999-09-22 00:40:56 +00:00
mjudge%netscape.com
1e48363fd7 changes to selection code to stop a never ending loop 1999-09-21 22:58:14 +00:00
kipp%netscape.com
22df009a37 Bring TrimTrailingWhiteSpace back to life after troy's changes 1999-09-21 00:12:50 +00:00
mjudge%netscape.com
3c9065ac80 checking in fixes for selection around nodes where get primary frame will not lead to the discovery of all frames 1999-09-20 21:47:37 +00:00
troy%netscape.com
f004ab4be8 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
1999-09-19 04:42:54 +00:00
troy%netscape.com
0d253cf419 Backed out some changes that aren't needed and were fixed with a change
to the frame construction code
1999-09-19 00:59:38 +00:00
troy%netscape.com
a3551f363b Optimized reflow to skip measuring of the text for a resize reflow (when
possible)
1999-09-18 16:22:34 +00:00
alecf%netscape.com
8bc490a93b fix a bunch of null-derefing problems when accessing http://webmail.netscape.com/ and add some assertions when these things happen 1999-09-18 01:00:43 +00:00
alecf%netscape.com
d4a731ec92 fix dereferencing error on slashdot.org 1999-09-18 00:48:51 +00:00
kipp%netscape.com
2652daef33 Fixed a glitch in word-breaking look ahead that was using the wrong content to compute the next fragments width (whoops!) 1999-09-17 23:14:47 +00:00
troy%netscape.com
a5d89af219 Minor changes to reduce the amount of unnecessary ref counting and speed
things up a little
1999-09-16 23:31:59 +00:00
mjudge%netscape.com
d71f4104da 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. 1999-09-15 01:57:50 +00:00
mjudge%netscape.com
611e47bbd4 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! 1999-09-14 23:16:22 +00:00
mjudge%netscape.com
e2d1d73278 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 1999-09-13 22:19:31 +00:00
mjudge%netscape.com
eaa78b424a fixes for crasher in tree 1999-09-11 00:18:02 +00:00
mjudge%netscape.com
046cdcb844 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. 1999-09-10 18:29:37 +00:00
mjudge%netscape.com
a5ac5b186c 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. 1999-09-07 23:40:17 +00:00
ftang%netscape.com
31de89ab0f fix bug 13063 12881 1999-09-03 22:46:16 +00:00
mjudge%netscape.com
fa5d3c3459 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. 1999-09-01 21:40:16 +00:00
kipp%netscape.com
7fe2679e86 Updated SizeOf methods to not waste space when doing a non-debug build 1999-09-01 01:02:16 +00:00
kipp%netscape.com
f808fbb193 Reimplemented SizeOf methods in some of the frame classes; partial rework of first-line handling snapshot 1999-08-31 03:09:40 +00:00
mjudge%netscape.com
5531d305c5 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 :) 1999-08-24 21:51:47 +00:00
ftang%netscape.com
5a577f62d9 implement word jump for non Ascii 1999-08-19 06:06:57 +00:00
ftang%netscape.com
b71a536920 tune performance by elimate unnecessary reference to nsIWordBreaker in nsTexTransformer. Add NS_PRECONDITION code into nsTextTransformer to make code better 1999-08-10 07:23:56 +00:00
sfraser%netscape.com
0166147f3c Optimization so that moving a collapsed selection does not cause the frame to redraw. 1999-08-09 19:15:04 +00:00
ftang%netscape.com
67c7d1e316 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. 1999-07-27 14:47:24 +00:00
brade%netscape.com
0621f4050e Implement InvertRect on Mac. r sfraser 1999-07-20 23:38:55 +00:00
ramiro%netscape.com
12f5c30340 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.
1999-07-20 07:26:09 +00:00
troy%netscape.com
c3e32b0b65 Added 'm' prefix to a couple more data members of nsHTMLReflowState struct 1999-07-20 03:51:46 +00:00
mjudge%netscape.com
c0b1525970 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. 1999-07-18 02:27:19 +00:00
sfraser%netscape.com
14f2e71bab Don't cast a char* to a PRUnichar* array when calling PaintTextDecorations. 1999-07-15 23:11:35 +00:00
mjudge%netscape.com
f447570414 checkin for carpool for multiple seleciton/ime selection and api changes to nsIDOMselection 1999-07-15 18:19:03 +00:00
kipp%netscape.com
23518e9968 Removed compiler warnings 1999-07-14 17:30:22 +00:00
troy%netscape.com
84cc1d3e34 Changed Reflow() to invalidate bounds for an incremental reflow 1999-07-14 15:20:01 +00:00
kipp%netscape.com
457c3003fb Fixed bug 6574 - the problem was that the current color was being reset when the text decoration, in this case an underline, was being drawn so that the next chunk of text rendered in the smallcaps font was drawn in the wrong color 1999-07-08 19:52:57 +00:00
mjudge%netscape.com
f98938bdfd up/down selection BRFrames dont allow selecting upon them for now. horizontal bars are now drawn selected. ect. 1999-06-19 20:36:44 +00:00
sfraser%netscape.com
99112db1a1 Fix for bug 8317 -- leaked caret causes crash. r mjudge, a leaf. 1999-06-16 23:55:48 +00:00
mjudge%netscape.com
24d312aeba minor changes to tweak fix from before. GetPositionSlowly was returning wrong thing causing small caps and other wierd spacing letters to be selected incorrectly. 1999-06-10 21:55:14 +00:00
mjudge%netscape.com
225111bf33 fixing table selection again. also adding parameter to nsIFocusTracker that allows us to get the current caret location. I am also stopping nsTableRowFrame from putting blue border around itself since cells are a high enough granularity. made a change to nsIFrame GetPosition to remove some useless parameters ect. this caused me to change nsDOMEvent.cpp and some other places.
MJ
1999-06-10 21:08:17 +00:00
kmcclusk%netscape.com
8479bc35a4 Replaced reference with pointer for accessing plainFont in nsTextFrame::Reflow. 1999-06-08 18:12:20 +00:00
joki%netscape.com
7e2352ba3a Adding new method to nsIDOMNSUIEvent to give event pos as range offset. 1999-06-08 02:19:26 +00:00
kmcclusk%netscape.com
7273a1f2b8 Modified TextStyle constructor to reuse the TextFrame's mFont rather than creating
a new font. The creation of the new font show up during profiling as a big hit.
1999-06-07 21:18:51 +00:00
mjudge%netscape.com
7b5035c20f fixes for selection and memory leaks 1999-06-04 23:00:24 +00:00
peterl%netscape.com
cdd55f947d fixed warnings 1999-06-03 02:09:03 +00:00
mjudge%netscape.com
864e061209 new table selection code drag inside and outside of tables with ease. added some overriding methods to nsTableCellFrame and nsTableFrame to make selection "draw" correctly for those containers. 1999-06-01 23:04:13 +00:00
mjudge%netscape.com
4bff71e096 reviewed sfraser approved choffman 6771 6762 UMR and Extreemly inefficient table selection code fixed simply 1999-05-20 00:52:00 +00:00
mjudge%netscape.com
abf1f5225c oops fogot default boolean for non start or end node selection 1999-05-18 22:29:27 +00:00
mjudge%netscape.com
e36da4f13c wrong initial boolean value for redraw 1999-05-17 22:31:10 +00:00
mjudge%netscape.com
d0b617b231 accidentally left out a parameter to GetPositionSlowly for small caps ect. 1999-05-17 19:50:29 +00:00
mjudge%netscape.com
a15e7eb5ac adding in selection of non text frames in editor only 1999-05-17 00:21:18 +00:00
mjudge%netscape.com
c0ad47dc75 adding back in keyboard navigation. removing const from peekoffset to stop the const creep. changing peekoffset to do the right thing for content based peeking... 1999-05-13 00:44:23 +00:00
kipp%netscape.com
4846f41f1f Reworked frame factory methods; fixed bug 4519 1999-05-11 22:03:29 +00:00
kipp%netscape.com
751e2a2073 Fixed bug 5255 and removed some compiler warnings 1999-05-03 20:55:12 +00:00
mjudge%netscape.com
e60293b6e6 fixing bugs for unnecessary drawing in text fram as well as other assorted selection bugs. 1999-04-28 02:43:02 +00:00
mjudge%netscape.com
a6a19b2656 fixing skippage of some frames during selection 1999-04-27 22:35:41 +00:00
kipp%netscape.com
abc872974f Removed compiler warnings; dump more info out in List method 1999-04-27 22:13:42 +00:00
mjudge%netscape.com
f302ca2537 selection changes for new model of content only. frames no longer contain variables referring to selection state outside of 1 bit. keyboard selection will now be disabled until i can get it working in the new selection world order. 1999-04-26 04:02:04 +00:00
kipp%netscape.com
fac60d4643 Fixed word lookahead logic to not look at continuations to avoid duplicate information 1999-04-21 19:59:16 +00:00
kipp%netscape.com
5ccd9c28e6 Work around windoze compiler lossage 1999-04-20 01:53:28 +00:00
kipp%netscape.com
ba08510759 Eliminate a bunch of warnings 1999-04-20 00:23:33 +00:00
akkana%netscape.com
ac974362ad Get rid of selection cursor for Unix now that caret is working 1999-04-15 20:42:53 +00:00
sfraser%netscape.com
e4b0d79daa Removal of nsSelectionRange, nsSelectionPoint, and fixing up resulting include problems. 1999-04-13 01:15:16 +00:00
mjudge%netscape.com
fae945861f indexes returned from prepareunicodestring are mContentOffset based. 3641 3772 Hoffman approved 1999-04-07 22:56:09 +00:00
ftang%netscape.com
cb00111a4d add one boolean to indicate word break or line break 1999-04-06 22:41:44 +00:00
sfraser%netscape.com
b3d54b4ca9 Remove caret->Refresh calls. The presshell now refreshes the caret after painting. 1999-04-02 00:01:05 +00:00
sfraser%netscape.com
fa7a59405f Fix a problem with tab expansion when filling the offset indices array. 1999-03-31 20:12:42 +00:00
kipp%netscape.com
7829c0b04c Support MOZ_PRE_WRAP 1999-03-31 04:12:46 +00:00
akkana%netscape.com
32b54070f7 Turn on triangle cursor temporarily for Unix, until bug 4202 gets fixed 1999-03-29 22:02:16 +00:00
troy%netscape.com
325b563f8e Changed ComputeWordFragmentWidth() to handle the case where the content
object's document pointer is NULL
1999-03-29 04:15:07 +00:00
mjudge%netscape.com
48fad89b7b fixing errors with pre spaced text. prepareunicode string was not filling the index array correctly for thatn 1999-03-27 00:18:32 +00:00
kipp%netscape.com
94b81992a1 Work around some first-letter bugs 1999-03-26 00:41:36 +00:00
kipp%netscape.com
75735878ad Ask line if we are breakable instead of using our own logic 1999-03-21 01:13:17 +00:00
kipp%netscape.com
bc13a8339b Removed some debris 1999-03-19 23:07:38 +00:00
kipp%netscape.com
a98c3d799b Fixed bug #3918 with measuring small-caps text; ported to use new line-layout API's 1999-03-18 21:02:40 +00:00
kin%netscape.com
a788e9d0a6 Fix for bug #3758: Drag selecting entire content, then deleting, causes crash.
Added check for mContentLength <= 0 to TextFrame::GetPointFromOffset().
Reviewed by jfrancis@netscape.com and sfraser@netscape.com.
Approved by chofmann@netscape.com.
1999-03-16 22:55:49 +00:00
kipp%netscape.com
9c705031c7 Only set ends-in-newline flag for pre text (bug #3262) 1999-03-16 19:36:49 +00:00
mjudge%netscape.com
f2625f7693 needed to get caret to draw at end of line and on an empty text element 1999-03-13 21:33:34 +00:00
mjudge%netscape.com
27a2f67b20 fixed GetWidth to "do the right thing" and take smallcaps and spaced words/chars into account. 1999-03-12 21:38:16 +00:00
mjudge%netscape.com
26d8cc3a13 fixed memory leaks in nsRangelist.cpp. uninitialized memory in nsTextframe, simplified APIs in nsIFrame and the underlying implementations. see layout.checkins 1999-03-12 00:17:14 +00:00
akkana%netscape.com
a909698500 Fix purify UMR error -- thanks to braddr & bruce @ puremagic.com 1999-03-10 22:30:23 +00:00
kipp%netscape.com
f9b2b82a67 Output rects in twips; eliminated some typo bugs with selection directions 1999-03-05 04:28:40 +00:00
mjudge%netscape.com
cba888fc69 updates and fixes for CTRL left arrow and right arrow. also fixes for releasing the presshell correctly. the selection code was leaking it. updates for PREV and NEXT in nsFrameTraversal 1999-03-03 01:51:21 +00:00
ftang%netscape.com
ffc1e146ac fix SmallCap to make it work for the whole range of unicode 1999-03-02 18:25:22 +00:00
troy%netscape.com
3bdf672129 Removed nsIFrame::CreateContinuingFrame() 1999-02-25 05:31:15 +00:00
troy%netscape.com
da4193eab6 Changed nsIFrame::Init() to take an additional parameter 1999-02-25 03:27:57 +00:00
ftang%netscape.com
81894ce107 change nsTextTransformer to break line by calling nsILineBreak and make nsTextFrame pass the nsILineBreaker to nsTextTransformer 1999-02-24 18:21:23 +00:00
troy%netscape.com
eb48a80e30 Added nsLayoutAtoms::textFrame 1999-02-24 05:33:40 +00:00
kipp%netscape.com
50a388ca59 Fixed bug #2885 - the linebreaker couldn't handle a special case... 1999-02-24 05:24:06 +00:00
troy%netscape.com
03c5c1f520 Changed GetNextInFlow() and GetPrevInFlow() to be pointer arguments and
not references
1999-02-24 04:48:08 +00:00
kipp%netscape.com
921f7d5d90 For now text acts like a replaced element 1999-02-23 19:35:21 +00:00
mjudge%netscape.com
b13e4da265 Added, jump to prev word, modified INIT of nsTextTransformer to better prepare for a start offset at the end of the mFrags list. added implementation of extra parameter to nsIFrame::PeekOffset to keep state for the next word problem of eating ws. nsTextFrame should be all set on implementation of jumping words. 1999-02-22 04:59:52 +00:00
mjudge%netscape.com
eaf1a3cc93 gettig word jumping to work, adding GetPrevWord to texttransformer 1999-02-22 03:20:59 +00:00
mjudge%netscape.com
fb3a597e8a nsPresShell now listens to changes in the domselection. (also modified nsIEnumerator to use NS_IMETHOD instead of virtual nsresult). Added batching for selection changes. you can move the selection, do things then turn off batching for an update if necessary. also prevented circular referencing by adding listener removal to PresShell::endDocumentListening(sp) 1999-02-19 23:47:36 +00:00
mjudge%netscape.com
90ade6856e fixing some things for selection to allow keyboard navigation. not hooked up to caret yet. also removed some not used calls in nsFrame for the "old" selection model. 1999-02-16 02:42:08 +00:00
kipp%netscape.com
7d24721c1b Be more careful about returning break-before status 1999-02-13 19:18:45 +00:00
sfraser%netscape.com
006010c385 Ensure the caret is refreshed after the text frame containing it is redrawn 1999-02-13 04:46:47 +00:00
troy%netscape.com
0debd6f0d1 Fixed some errors related to switch to using nsCOMPtr 1999-02-12 18:41:26 +00:00
kipp%netscape.com
36c243cdc0 COMized nsIPresShell and nsIPresContext 1999-02-12 17:45:58 +00:00
sfraser%netscape.com
f220577393 #ifdef tbe blue selection triangles in until the caret code is turned on 1999-02-12 00:05:19 +00:00
sfraser%netscape.com
9ab69a922e Add two new methods needed for caret support (and other things): GetPointFromOffset, to get frame-relative coordinates of a given content offset, and GetChildFrameContainingOffset, to find the child frame that really contains the given content offset 1999-02-12 00:02:31 +00:00
akkana%netscape.com
7982a421d6 Rename nsISelection to nsIFrameSelection 1999-02-11 23:12:28 +00:00
mjudge%netscape.com
d6da223dbd Keyboard navigation, removing nsICollection(not used) adding PeekOffset to have the nsIFrame tell us where to go when moving a character ect. adding nsFrameTraversal to traverse frames, based on nsIEnumerator. mjudge x4661 1999-02-10 18:55:25 +00:00
troy%netscape.com
9d570499cf Changed a bunch more nsIFrame member functions to be pointer arguments
instead of references
1999-02-10 05:38:18 +00:00
troy%netscape.com
b974e26cea Changed some nsIFrame member functions to use ** instead of *& for OUT
paremeters
1999-02-10 00:42:56 +00:00
mjudge%netscape.com
ceb08a0190 scoping incorrect for for loops on vc5.0 didnt catch this. nasty habbit of mine. 1999-02-02 01:18:41 +00:00
mjudge%netscape.com
cd2d3d137c keyboard navigation of selection. adding API for nsIFrame. fixing nsFrame and nstextframe to reflect the implementations of the nsIFrame API. nsRangeList implements the handlekeyevent now. 1999-02-02 00:23:40 +00:00
michaelp%netscape.com
0084e8879d modified for new DrawString()/GetWidth() APIs. 1999-01-28 05:03:58 +00:00
mjudge%netscape.com
bec224216c turning off printf debug statements in debug to speed up resizing 1999-01-26 00:40:39 +00:00
mjudge%netscape.com
9bb5d8a906 changing paintunicodestring and paintasciistring to map from content coordinates to painttext coordinatres. in get position, i am now mapping from paint coordinates to content coordinates. also, the frames themselves now set the focus and anchor for a nsIFocusTracker passed in object. 1999-01-25 23:29:53 +00:00
mjudge%netscape.com
110a084f10 adding same code to paintAscii as i did to paintUnicode 1999-01-25 01:53:40 +00:00
mjudge%netscape.com
55f9005e7a ok I am changing nsPresShell to "do the right thing". The virtual methods to support nsIFocusTracker needed to use the MACROS the same as the rest of the methods. I also moved the growing inline methods to their own method declarations. pres shell also needs to send itself as a focus tracker to "reset selection" to allow a callback to reset the frames that will be the focus and anchor frames for the future. getting frames from content is easy, getting the exact frame with an offset as well is difficult. nsTextFrame does some funny things with whitespaces that was throwing off the selection code. one minute the beginning of a word is offset 1 then it grows to 2 if the whitespace on the previous line wraps. I also put limits on the selection drawing. the drawing was happening after reflow, but before reset selection. this made the selection drawing extend beyond the legal limits of the "textlength". P.S. since the paint unicode and paint ascii are so similar, is it better to make a helper func to do the common things? or maybe make another method just to save namespace? 1999-01-25 01:48:01 +00:00
akkana%netscape.com
56752ba2ed 2028: Get selection highlighting working on Linux 1999-01-23 00:00:46 +00:00
mjudge%netscape.com
ee295b609b selection rocks ass 1999-01-22 22:04:54 +00:00
mjudge%netscape.com
769d4b5a86 chagnes for selection to work 1999-01-22 18:58:14 +00:00
mjudge%netscape.com
d52a50ae45 fiximg text selection for frames in frames 1999-01-19 23:36:06 +00:00
mjudge%netscape.com
dd0328320e selection should work now more or less 1999-01-19 06:42:39 +00:00
mjudge%netscape.com
34430366b2 Files for selection across frames. 1999-01-18 22:57:12 +00:00
kipp%netscape.com
7f96144059 Spanked away SizeOf methods and nsIListFilter 1999-01-16 00:00:50 +00:00
troy%netscape.com
036e6852f2 Removed the content-parent frame pointer. Now we just have the one geometric
parent
1999-01-14 05:16:23 +00:00
troy%netscape.com
4b3e1eebad Replaced "maxSize" member if nsReflowState with "availableWidth" and
"availableHeight"
1999-01-05 23:31:18 +00:00
kipp%netscape.com
844a41c615 Use macros from nsTextFragment 1999-01-05 23:02:27 +00:00
troy%netscape.com
7b5cc03059 Moved logic that deals with moving absolutely positioned frames out of the
flow to the frame construction code
1998-12-29 03:38:16 +00:00
kipp%netscape.com
c29e5116c7 Revised frame Paint API 1998-12-18 15:54:23 +00:00
mjudge%netscape.com
2f5ca67ece adding in selection 1998-12-14 18:34:14 +00:00
kipp%netscape.com
ea17e7a1d7 I disabled selection rendering until it works again 1998-12-12 03:05:24 +00:00
kipp%netscape.com
c51740de2d Only zero out the height/ascent/descent if the empty text is not a pre-formatted piece of empty text, otherwise blank lines in PRE sections disappear 1998-12-10 00:30:52 +00:00
mjudge%netscape.com
948d2e6638 chagnes to selection 1998-12-08 18:26:06 +00:00
mjudge%netscape.com
2d6a42cd38 new use of enumerator class changed IsDone to return NS_COMFALSE if not done 1998-12-03 21:44:54 +00:00
troy%netscape.com
2a4b2c503f Added Init() member function to nsIFrame 1998-12-03 06:31:43 +00:00
wtc%netscape.com
59b32f50ef This checkin (under mozilla/layout) is all about 'const'. Digital Unix's
C++ compiler is strict about getting 'const' right.  Most of the changes
are to add 'const' to the type casts for the second argument of the
GetStyleData method, which wants a const reference.
1998-12-02 16:45:20 +00:00
michaelp%netscape.com
8732a493d7 fixed memory leak. 1998-11-28 04:24:46 +00:00
kipp%netscape.com
a6926809f0 Added DumpRegressionData; revised ListTag; added GetFrameName 1998-11-19 17:22:29 +00:00
joki%netscape.com
77fd9c2652 Reworking internal event code to use nsIFrame::GetFrameForPoint
Adding new functionality through nsEventStateManager (cursor change, enter/exit events, tab navig)
1998-11-18 05:25:26 +00:00
peterl%netscape.com
265c4ca8a7 cleaned up cursor style handling 1998-11-18 02:11:54 +00:00
vidur%netscape.com
026c273104 Changes to allow disabling and enabling of style sheets. Introduced ReconstructFrames to nsIFrameConstructor. CSSStyleSheets now remember their document. Temporary fix to allow text content inside CSS tables. 1998-11-17 02:14:38 +00:00
kipp%netscape.com
6bc24733d4 Basic support for :first-letter pseudo-elements 1998-11-14 21:01:26 +00:00
kipp%netscape.com
45356c7502 Some support for first-letter style 1998-11-12 16:31:38 +00:00
peterl%netscape.com
eb27d38c27 turned bilnking off when the attribute goes away 1998-11-06 00:50:27 +00:00
kipp%netscape.com
c4da295fd8 Eliminated hacky version of :first-line support; lay some groundwork for :first-letter support 1998-11-05 19:27:42 +00:00
peterl%netscape.com
cedec7bc27 sync to style resolution api changes 1998-11-03 20:33:43 +00:00
kipp%netscape.com
de68bd9637 Removed a private assert 1998-10-31 22:50:38 +00:00
kipp%netscape.com
3371afc510 Use revised line-layout whitespace compression methods; fixed trim to not trim out compressed whitespace; fixed code to break multi-span words when the first placable frame contains a breakable point 1998-10-31 22:48:21 +00:00
michaelp%netscape.com
fc225bf7c1 changes to support nsIRenderingContext that conforms to COM conventions. 1998-10-30 02:08:25 +00:00
kipp%netscape.com
18aaa0bf5a Use normal font always when rendering text-decorations, not the small-caps font 1998-10-28 02:03:40 +00:00
kipp%netscape.com
f9c31f6b2d Fixed underlining bug; support justification 1998-10-27 16:52:34 +00:00
peterl%netscape.com
04a0fce0ba renamed cursor defines 1998-10-26 23:14:17 +00:00
kipp%netscape.com
a05bb7ee66 Support letter and word spacing 1998-10-26 17:27:53 +00:00
kipp%netscape.com
a08c68342d Removed premature optimization of pre vs. non-pre 1998-10-21 20:03:54 +00:00
kipp%netscape.com
44bf493a8a Implement capitalization trasnform and small-caps font-variant 1998-10-20 16:46:14 +00:00
kipp%netscape.com
6f95672654 Spanked hard to use the nsTextTransformer 1998-10-20 00:21:18 +00:00
kipp%netscape.com
981d874132 Return break-before when none of the text gets used 1998-10-12 18:44:58 +00:00
kipp%netscape.com
367bee9920 Implement look-ahead logic for word breaking 1998-10-10 04:35:21 +00:00
kipp%netscape.com
c6db34691b Removed skid marks; implement FindTextRuns again 1998-10-09 23:46:02 +00:00
troy%netscape.com
d25a9a35a2 Removed GetContentIndex() from nsIFrame 1998-10-08 20:35:16 +00:00
troy%netscape.com
b5b596a60a Removed nsIInlineReflow and folded it into nsIHTMLReflow 1998-10-03 04:28:05 +00:00
kipp%netscape.com
2fc6c5cce8 Fixed to not render trailing whitespace 1998-10-03 00:48:19 +00:00
troy%netscape.com
7aceb4270d Eliminated nsIRunaround interface, and folded space manager parameter into
nsHTMLReflowState structure
1998-10-02 04:10:00 +00:00
michaelp%netscape.com
9b82a28284 modified for new fontmetrics/renderingcontext. 1998-10-02 01:12:39 +00:00
troy%netscape.com
ba3c7125c2 Separated reflow process out of nsIFrame and into nsIFrameReflow. Also
added nsIHTMLReflow, which is an HTML specific reflow interface
1998-10-01 04:46:11 +00:00
peterl%netscape.com
7891e67337 moved attribute change code to style sheete
cleaned up content change api
1998-09-29 23:48:07 +00:00
kipp%netscape.com
c8eeac02cd Fixed nbsp bug on some win95 systems - it turns out the nbsp wasn't being mapped to space in a few of the compression cases (doh!) 1998-09-29 16:24:32 +00:00
kipp%netscape.com
c2091a6dff use line-layout's pres-context as a ref not a pointer 1998-09-23 02:32:17 +00:00
troy%netscape.com
c76915c71d Added CreateContinuingFrame() 1998-09-18 02:47:03 +00:00
peterl%netscape.com
10de7afe92 added decoration rendering code to deal with CSSisms 1998-09-17 00:18:25 +00:00
kipp%netscape.com
8f2807a027 Removed css/layout directory 1998-09-15 00:19:49 +00:00
kipp%netscape.com
f877659693 Fixup AddRef/Release and some constructors to use NS_ADDREF (etc) macros 1998-09-12 19:33:48 +00:00
rods%netscape.com
ac66bf8936 GetPosition now uses a binary search for locating the cursor poistion. Also, selection now
uses the half width of a character for moving selection to the next character.
1998-09-10 19:18:01 +00:00
kipp%netscape.com
d1380d78b9 Removed some cruft 1998-09-09 16:18:40 +00:00
rods%netscape.com
4a4b4a34b2 XPCOM'ed the Selection and Search methods 1998-09-09 16:11:59 +00:00