Commit Graph

56 Commits

Author SHA1 Message Date
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Robert O'Callahan
fede4b2197 Bug 754556. Ensure that setting scroll positions in CSS pixels doesn't unexpectedly move the scroll position, especially not in the wrong direction. r=matspal
If the current scroll position is fractional, e.g. y=N.4 CSS pixels, and something tries to read the
position in CSS pixels and scroll to that position (e.g. calling window.scrollTo(0, rootElem.scrollTop),
or equivalently window.scrollBy(0, 0)), it can actually end up scrolling backwards. So create a new
method nsIScrollableFrame::ScrollToCSSPixels which ensures that scrolling to a CSS pixel offset tries to
preserve the current fractional scroll position if that's possible, and if that's not possible at least does
not allow the scroll position to move in the wrong direction.
2012-05-15 17:58:09 +12:00
Oleg Romashin
6f6b0b1b72 Bug 681192. Part 1: Add "allowed scroll destination range" to nsIScrollableFrame::ScrollTo and nsGfxScrollFrame implementation. r=roc,matspal
--HG--
extra : rebase_source : 51d04f7e7db35c02de3401a3481d4cc3827c19ec
2012-02-07 16:53:18 -08:00
Avi Halachmi (:avih)
5d73a5eeb8 Bug 737758: part 1: Propagate mouse wheel event origin from ESM [r=roc] 2012-03-26 11:50:30 +02:00
Jared Wein
bcbb16588c Bug 725700 - Keyboard arrow keys and scrollbar buttons should have consistent scrolling distances. 2012-02-20 11:24:36 -05:00
Michael Wu
d2b70213ac Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Jan Küchler
c510bc3046 Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Markus Stange
06e7adb9c1 Bug 607464 - Don't use smooth scrolling for pixel scrolling. r=roc, a=roc 2011-02-04 09:00:06 +01:00
Robert O'Callahan
3b653c5345 Bug 564991. Part 14: Scroll using the layer system. r=mats,sr=dbaron 2010-07-16 09:08:02 +12:00
Robert O'Callahan
15976008ca Bug 539331 - browser_sanitizeDialog.js is failing, r=matspal 2010-01-14 05:00:00 -08:00
Robert O'Callahan
0de717dfb6 Bug 526394. Part 31: Move scroll implementation into nsGfxScrollFrame. r=mats 2009-10-08 16:01:15 +13:00
Robert O'Callahan
e1cb17b65b Bug 526394. Part 28: Remove nsIScrollableFrame::GetScrollableView. r=mats 2009-09-16 12:11:40 +12:00
Robert O'Callahan
6a5cc88a0d Bug 526394. Part 18: Remove nsIScrollableViewProvider and its implementations, now that we've removed all its users. r=mats 2009-09-09 17:40:01 +12:00
Robert O'Callahan
1035bd73ed Bug 526394. Part 3: Add all necessary new APIs to nsIScrollableFrame. r=mats,sr=dbaron 2009-09-01 16:11:11 +12:00
Roy Frostig
928ef7f116 Fire MozScrolledAreaChanged from nsDocShell::RestoreFromHistory() in case document root scroll frame isn't reflowed by the restore. r=roc 2009-10-25 00:04:18 -07:00
Zack Weinberg
d47e0f433b Bug 497495 part 3: Add methods to every nsFrame subclass that expose the as-allocated identity of every frame object. Also some cleanups to the QueryFrame implementation. r=dbaron sr=roc 2009-09-12 17:49:24 +01:00
Robert O'Callahan
4453cced60 Backed out changeset e2927bb26412 2009-08-26 14:49:18 -07:00
Zack Weinberg
64f6d4d0dd Bug 497495 part 3a: rationalize the queryframe-implementation macro naming scheme, restructure the implementation to detect duplicate entries, and a couple fixes to the frame ID enumeration. r=dbaron sr=roc
Bug 497495 part 3b: update users of queryframe macros (strictly mechanical change). r=dbaron

--HG--
extra : rebase_source : ee672a17934227b408b83dc6b5cc4e4909652f72
2009-08-26 09:27:42 -07:00
Benjamin Smedberg
3498a5f86e Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.

--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
Benjamin Smedberg
73a6fab34b Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal. 2009-01-09 11:35:24 -05:00
Benjamin Smedberg
802d1a10c7 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
Markus Stange
1b2252f6c6 Bug 462793 - Changing listbox selection with keyboard no longer scrolls to make the newly selected item visible, r+sr=roc 2008-11-04 15:38:16 +01:00
roc+@cs.cmu.edu
0a70ba3e53 Bug 425253. Propagate reflow-depth tracking through XUL box layout. r+sr=dbaron,a=damon 2008-04-09 21:39:41 -07:00
dbaron%dbaron.org
0e88f73bc6 Single line comments to describe files (helpful in LXR) 2006-03-29 18:29:03 +00:00
bsmedberg%covad.net
78f6d0683d Bug 313309 part 2 - change the NS_DEFINE_STATIC_IID_ACCESSOR macro to NS_DECLARE, and make a NS_DEFINE_ macro that's outside the class declaration, r=shaver 2005-11-11 14:36:26 +00:00
roc+%cs.cmu.edu
49188025d3 Bug 307158. Half-heartedly account for vertical scrollbar presence when positioning absolute children relative to the right edge of a scrollable container. r+sr=dbaron with regrets. 2005-10-18 05:00:24 +00:00
roc+%cs.cmu.edu
3876d7f8c7 Bug 296315. Remove unimplemented nsIScrollableView::GetScrollbarVisibility, implement nsDocShell::GetScrollbarVisibiilty to use nsIScrollableFrame::GetActualScrollbarSizes, which actually works. r+sr=bzbarsky,a=asa 2005-06-17 02:48:29 +00:00
bryner%brianryner.com
f67d250152 Unify box and frame trees by moving nsIBox methods onto nsIFrame. XUL-box frames can call the superclass nsBox implementation, all other frames get the nsFrame implementation of the box methods, which acts like nsBoxToBlockAdaptor used to. Bug 258513, r+sr=roc. 2004-09-28 18:37:50 +00:00
roc+%cs.cmu.edu
6255acffd9 Bug 254039. deCOMtaminate nsIScrollableFrame. r+sr=roc, patch by Will Levine 2004-09-06 02:44:43 +00:00
dbaron%dbaron.org
3827991ce7 Land bug 72747 in pieces: Implement overflow-x and overflow-y. b=72747 r+sr=roc 2004-09-05 00:04:04 +00:00
dbaron%dbaron.org
cb5add0739 Land bug 72747 in pieces: Implement scrolling='yes' (and equivalents) on frames and iframes. b=72747 r+sr=roc 2004-09-04 23:03:04 +00:00
dbaron%dbaron.org
ee55fda1f1 Back out previous round of bug 72747 changes due to Tp regression. 2004-09-04 08:34:55 +00:00
dbaron%dbaron.org
fff31dd733 Land bug 72747 in pieces: Add default constructor for ScrollbarStyles. b=72747 r+sr=roc 2004-09-04 07:35:12 +00:00
dbaron%dbaron.org
cc5c573459 Land bug 72747 in pieces: Change types on ScrollbarStyles from PRInt32 to PRUint8. b=72747 r+sr=roc 2004-09-04 07:02:46 +00:00
dbaron%dbaron.org
9a61205ad8 Back out text input changes from bug 72747. 2004-09-04 03:17:18 +00:00
dbaron%dbaron.org
d2d8096ade Land bug 72747 in pieces: use CSS instead of C++ to ensure single line text inputs don't have scrollbars. b=72747 r+sr=roc 2004-09-03 23:22:15 +00:00
dbaron%dbaron.org
7dc30e0f2f Land bug 72747 in pieces: remove nsIScrollableFrame::GetScrollPreference. b=72747 r+sr=roc 2004-09-03 22:28:34 +00:00
dbaron%dbaron.org
77d25b92c6 Land bug 72747 in pieces: remove nsIScrollableFrame::GetScrollPreference. b=72747 r+sr=roc 2004-09-03 00:46:43 +00:00
dbaron%dbaron.org
c200b49750 Back out the rest of bug 72747 due to Tp regression. 2004-08-27 01:26:55 +00:00
dbaron%dbaron.org
5948a3cb75 Implement 'overflow-x' and 'overflow-y' CSS properties, long implemented by IE for Windows and proposed for CSS3. Implement scrolling='yes' and equivalents on frame and iframe. Various pieces of related cleanup (see comment 22 in bug). b=72747 r+sr=roc 2004-08-26 17:11:20 +00:00
bryner%brianryner.com
5c02a6978c Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
roc+%cs.cmu.edu
72e061457e Bug 217120. Always make an attempt to scroll to history position after restoring scroll position in EndLoad, just in case no reflows happen again. r+sr=dbaron 2004-07-23 21:39:47 +00:00
roc+%cs.cmu.edu
c81d937cfe Bug 240276. Fork nsGfxScrollFrame into nsHTMLScrollFrame and nsXULScrollFrame. No behaviour is changed yet. r+sr=dbaron 2004-06-18 02:08:19 +00:00
roc+%cs.cmu.edu
a6dd695671 Bug 240276. Trim fat from nsGfxScrollFrame, move functionality into nsGfxScrollFrameInner so that when we fork nsGfxScrollFrame, it will be shared 2004-05-05 02:32:27 +00:00
gerv%gerv.net
708b56cff4 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
roc+%cs.cmu.edu
3bfe589ac4 Bug 210269. Reduce use of SetAttr during reflow. Also, fix up the API that gets the scrollbar dimensions of a scrollframe to always work right for RTL. r+sr=bryner 2004-01-09 19:21:20 +00:00
roc+%cs.cmu.edu
12c5a8aa8b Bug 201300. Get rid of document observer from nsGfxScrollFrame. r+sr=bz 2003-04-09 11:27:09 +00:00
roc+%cs.cmu.edu
3936b4c393 Bug 126263. Whack comboboxes/listboxes to use Gfx scrollbars. Also, make scrollbars attach their XBL content only when they become visible, to avoid pageload hit. r+sr=dbaron 2003-04-08 20:50:57 +00:00
caillon%returnzero.com
d1da452d1f comment fixes r+sr=bzbarsky 2003-01-22 08:01:37 +00:00
gerv%gerv.net
4e12e44b2f Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00