165 Commits

Author SHA1 Message Date
buster%netscape.com
31a79a4925 bug 56432 ()
the problem was a factorial algorithm for finding primary frames.
fixed by added a hinting mechanism that takes advantage of existing
primary frame cache, greatly reducing the cost for the common case.
r=rods
sr=waterson


git-svn-id: svn://10.0.0.236/trunk@84973 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-16 22:10:04 +00:00
rods%netscape.com
a6e0d47c5a removing most all NS_DEFINE_IID and replacing them with NS_GET_IID macros
Bug 61274, r=buster sr=waterson


git-svn-id: svn://10.0.0.236/trunk@84377 18797224-902f-48f8-a5cc-f745e15eee43
2001-01-04 20:44:42 +00:00
warren%netscape.com
a8b9664a8c Bug 47207. Backing out logging/PRINTF changes until we can fix stopwatch.h, introduce double parens, etc.
git-svn-id: svn://10.0.0.236/trunk@81967 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-28 22:17:53 +00:00
warren%netscape.com
c6b67eceeb Bug 47207. Changing printf to PRINTF to use new logging facility. r=valeski,sr=waterson
git-svn-id: svn://10.0.0.236/trunk@81885 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-27 22:43:51 +00:00
attinasi%netscape.com
ef0b5887c7 Added a new method to allow a frame to specify the frame that provides its parent style context. b=45210 r=karnaze
git-svn-id: svn://10.0.0.236/trunk@78918 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-12 22:45:33 +00:00
pinkerton%netscape.com
ecbc628010 making CaptureMouse a public interface on nsIFrame r=mjudge for bug 48250.
git-svn-id: svn://10.0.0.236/trunk@76305 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-14 22:28:41 +00:00
sfraser%netscape.com
7726da891c Fix for bug 25161 -- allow editor to handle pages with forms by implementing user-select and user-input for form controls. r=rods, pierre, mjudge.
git-svn-id: svn://10.0.0.236/trunk@75830 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-08 23:38:00 +00:00
pierre%netscape.com
db5d911ba9 42864 ('user-select:none' should make children non-selectable)
git-svn-id: svn://10.0.0.236/trunk@75641 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-05 04:41:33 +00:00
waterson%netscape.com
c607d4bc40 Bug 46693. Check to see if we CanContinueTextRun() while walking over the frames to FindNextText(). This revives the logic that I nuked when fixing 19051, and keeps you from trying to walk over <br> or other frames to erroneously continue a text run. r=akkana.
git-svn-id: svn://10.0.0.236/trunk@75085 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-28 22:29:28 +00:00
waterson%netscape.com
86cf521ec9 Bug 19051. Remove code that computed and maintained nsTextRun. Instead, compute 'next text' when required by crawling the frame tree in nsLineLayout::FindNextText(). r=roc+moz@cs.cmu.edu
git-svn-id: svn://10.0.0.236/trunk@74887 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-27 05:16:08 +00:00
mjudge%netscape.com
04f7c7cd04 46209 one of the last beta 2 blockers. adding ability to frames to tell if part of them is visible. idl change to allow nsISelectionController to give CheckVisibility. PresShell actually has the code for nsGfxTextControlFrame to call.
git-svn-id: svn://10.0.0.236/trunk@74807 18797224-902f-48f8-a5cc-f745e15eee43
2000-07-26 11:31:12 +00:00
buster%netscape.com
37a339735a fixed bug 29854
r=waterson


git-svn-id: svn://10.0.0.236/trunk@71991 18797224-902f-48f8-a5cc-f745e15eee43
2000-06-11 05:25:14 +00:00
kin%netscape.com
f0ffccdd37 Part2 of fix for bug #39821: Drag and Drop interferes with selection
Made GetSelectionController() a public method on the nsIFrame interface,
so that nsEventStateManager::GenerateDragGesture() has access to it. This
prevents D&D from interfering with selection in Ender-Lite.

    layout/base/public/nsIFrame.h
    layout/events/src/nsEventStateManager.cpp
    layout/html/base/src/nsFrame.h
    layout/html/base/src/nsFrame.cpp

r=buster@netscape.com,brade@netscape.com,cmanske@netscape.com   a=beppe@netscape.com


git-svn-id: svn://10.0.0.236/trunk@71139 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-31 03:20:02 +00:00
karnaze%netscape.com
8cc9e6956a nsbeta2+ bug 39885 - invalidate minimal areas. optimize reflows when cells don't change size. r=attinasi
git-svn-id: svn://10.0.0.236/trunk@70866 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-25 22:40:21 +00:00
waterson%netscape.com
b91dc8288d Bug 36401. Deal with inline-blocks better. Add nsFrameState bit that indicates whether or not a frame is part of a 'special' inline-block hierarchy; use the 'inlineFrameAnnotation' property to remember the next 'special sibling' so that we can traverse correctly; pull methods out of nsCSSFrameConstructor's public API. r=nisheeth,buster
git-svn-id: svn://10.0.0.236/trunk@70853 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-25 19:58:51 +00:00
akkana%netscape.com
a24273164d Partial work on 16311, 32807, 16352: code reorganization/cleanup of word/line/paragraph selection.
git-svn-id: svn://10.0.0.236/trunk@70135 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-16 22:48:28 +00:00
mjudge%netscape.com
e5b2003819 stealing new bit for frames with their own selection. changing caret to be able to handle multiple selected areas. if the bit doesnt work out i will back it out.
git-svn-id: svn://10.0.0.236/trunk@68219 18797224-902f-48f8-a5cc-f745e15eee43
2000-05-04 08:35:42 +00:00
dbaron%fas.harvard.edu
0936aaafab Fix event targetting bugs by using paint layers in GetFrameForPoint, testing for visibility, and trying GetFrameForPoint on additional views if one fails. r=joki@netscape.com(, hyatt@netscape.com) b=12232,20051,21304,24474,26785, and remaining issues from 23161.
git-svn-id: svn://10.0.0.236/trunk@63689 18797224-902f-48f8-a5cc-f745e15eee43
2000-03-22 02:43:08 +00:00
vidur%netscape.com
f1a9c3f401 Fix for bug 9140. Area elements now have event fired for them. r=joki
git-svn-id: svn://10.0.0.236/trunk@60399 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-11 01:24:59 +00:00
troy%netscape.com
05e293d03e r=vidur@netscape.com Performance. Added NS_FRAME_HAS_VIEW frame state flag
so we can quickly tell whether the frame has an associated view


git-svn-id: svn://10.0.0.236/trunk@59586 18797224-902f-48f8-a5cc-f745e15eee43
2000-02-03 00:51:37 +00:00
troy%netscape.com
60471abd92 b=21657 a=chofmann@netscape.com Made "overflow list" a full fledged
child list and changed ReparentFrameView() to check it.


git-svn-id: svn://10.0.0.236/trunk@58373 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-22 01:16:50 +00:00
nisheeth%netscape.com
59dbaae9fb r=troy. Reflow commands are now coalesced by block and inline frames. This fixes bug 985 in which we now generate 6 reflow commands instead of 257.
git-svn-id: svn://10.0.0.236/trunk@57522 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-12 08:28:24 +00:00
rbs%maths.uq.edu.au
d5b174bfa7 [#ifdef MOZ_MATHML] Added extension to the reflow metrics to support the bounding metrics needed for precise MathML placements. This is a WIP approved by Troy.
git-svn-id: svn://10.0.0.236/trunk@57106 18797224-902f-48f8-a5cc-f745e15eee43
2000-01-07 14:36:43 +00:00
troy%netscape.com
1fce58468f Work-in-progress for having maximum width (needed by tables) be updated
incrementally


git-svn-id: svn://10.0.0.236/trunk@56615 18797224-902f-48f8-a5cc-f745e15eee43
1999-12-30 04:15:45 +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
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
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
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
troy%netscape.com
3513334988 Moved a bunch of stuff out to a nsIFrameDebug interface
git-svn-id: svn://10.0.0.236/trunk@52427 18797224-902f-48f8-a5cc-f745e15eee43
1999-11-01 22:12:45 +00:00
troy%netscape.com
23e130e01b Added nsHTMLReflowState.h
git-svn-id: svn://10.0.0.236/trunk@52326 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-30 16:16:45 +00:00
troy%netscape.com
88c4d96e2c Folded reflow functions into nsIFrame and eliminated nsIFrameReflow and
nsIHTMLReflow. This saves 4 bytes per frame and cleans things up


git-svn-id: svn://10.0.0.236/trunk@52309 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-30 02:52:11 +00:00
troy%netscape.com
fd1d6fc2a3 Changed view to be stored as a frame property instead of a member data
of nsFrame


git-svn-id: svn://10.0.0.236/trunk@51940 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-27 03:56:14 +00:00
troy%netscape.com
bd46e7911f Changed SetView/GetView to take an additional argument which is the
pres context


git-svn-id: svn://10.0.0.236/trunk@51822 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-26 04:44:41 +00:00
troy%netscape.com
d16381b6f3 Removed 5 convenience functions from nsIFrame
git-svn-id: svn://10.0.0.236/trunk@51531 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-22 14:53:52 +00:00
peterl%netscape.com
bba68903df Added namespace ID to the AttributeChanged notification
Part fo the fix for Bug 15153
r=troy


git-svn-id: svn://10.0.0.236/trunk@50888 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-15 23:16:45 +00:00
mjudge%netscape.com
01e83014a6 bugs 15547,15645,13665,13277,5761, r=akkana,kin,hyatt. fixing selection bugs, keyboard navigation, triple clicking and drag scrolling. get position not a valid call anymore to nsIFrame.h
git-svn-id: svn://10.0.0.236/trunk@50537 18797224-902f-48f8-a5cc-f745e15eee43
1999-10-13 01:16:09 +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
peterl%netscape.com
eeb2ec5d3e removed ReResolveStyleContext
added flag for style tree verify


git-svn-id: svn://10.0.0.236/trunk@48545 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-21 07:48:34 +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
peterl%netscape.com
d97f7ef6e1 added content state changed (vs content changed) notification
git-svn-id: svn://10.0.0.236/trunk@46718 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-10 05:50:02 +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
peterl%netscape.com
b5634c8488 added accessors to additional style contexts
git-svn-id: svn://10.0.0.236/trunk@45964 18797224-902f-48f8-a5cc-f745e15eee43
1999-09-03 23:35:14 +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
kipp%netscape.com
b10be9c548 Added NS_FRAME_IS_UNFLOWABLE bit for handling frame trees that are too deep
git-svn-id: svn://10.0.0.236/trunk@44907 18797224-902f-48f8-a5cc-f745e15eee43
1999-08-27 21:39:26 +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
troy%netscape.com
dd72d8029f Changed root frame class over to new reflow command handling
git-svn-id: svn://10.0.0.236/trunk@41287 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-27 14:15:42 +00:00
troy%netscape.com
ad761afe38 Defined it so that the NS_FRAME_IS_DIRTY flag is set for newly added frames in
SetInitialChildlist(), AppendFrames(), InsertFrames(), and ReplaceFrame()


git-svn-id: svn://10.0.0.236/trunk@40953 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-24 02:33:07 +00:00
troy%netscape.com
73690aa1c5 Added ReplaceFrame() member function to nsIFrame
git-svn-id: svn://10.0.0.236/trunk@40599 18797224-902f-48f8-a5cc-f745e15eee43
1999-07-22 04:32:31 +00:00