Commit Graph

206 Commits

Author SHA1 Message Date
Robert O'Callahan
aa6dce5b49 Bug 406646. Make sure to only search *visible* popups for mouse event targets. r=enndeakin
--HG--
extra : rebase_source : bd0825d6a6469a10dcdd9e4ae9e9c91dcbafbe99
2009-02-24 21:25:25 +13: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
Simon Montagu
8231106b44 Fix compiler warnings in nsCaret.cpp. Bug 470574, r+sr=dbaron 2008-12-28 04:08:22 -08:00
Simon Montagu
890194181a Make display of the directional hook on the caret dependent on the bidi.browser.ui pref. Bug 418513, r=uriber, sr=roc (for core) r=mano, gavin.sharp (for browser) 2008-12-14 01:05:39 -08:00
Robert O'Callahan
775dd33c74 Bug 450930. Fire a DOM event when painting so that content and chrome can track what's being repainted. r=smaug,sr=dbaron 2008-09-18 21:47:21 +12:00
Arpad Borsos
87878e68eb Bug 454766 - Add suggested parentheses to layout/; r+sr=roc; (with nits by sgautherie) 2008-09-15 17:40:25 +02:00
Oleg Romashin
862b8e5d2b Bug 453826 - MOZ_XUL define required for nsCaret::IsMenuPopupHidingCaret. r+sr=roc 2008-09-08 15:23:38 +03:00
Masayuki Nakano
d504a8c50f Bug 449955 – Remove #ifdef of nsCaret.cpp for IME r+sr=roc 2008-08-13 10:55:39 +09:00
John Daniels
b006229ae6 Bug 419532 – deCOMtaminate nsICaret. r+sr=roc 2008-07-16 12:52:01 +02:00
Karuna (karunasagark@gmail.com)
0eb449dd2a Bug 409331. Instead of QIing to nsBlockFrame in various places, call an nsLayoutUtils method to do it. r+sr=roc 2008-07-14 10:10:23 +12:00
Michael Ventnor
c6a1fd787c Bug 118308, NS_THEME_TEXTFIELD_CARET implementation (GTK), r+sr=roc 2008-06-23 11:50:52 +03:00
Simon Montagu
9faa7d6380 Remove unnecessary argument from SetBidiEnabled. Bug 435856, r+sr=roc 2008-06-16 02:28:17 -07:00
gavin@gavinsharp.com
4707993a0a Bug 430785: Caret not visible with right-clicking on a text input, patch by Martijn Wargers <martijn.martijn@gmail.com>, r+sr=roc, a=damon 2008-04-30 09:54:16 -07:00
roc+@cs.cmu.edu
9fe63cd0b9 Bug 335359. Make the caret thicker when it's at a Kanji character. r+sr=mrbkap,a=damon 2008-04-22 20:13:55 -07:00
roc+@cs.cmu.edu
6eb1cd4a0c Bug 420987. The caret size should be specified in CSS pixels and it should be rounded like borders --- rounding down to the nearest device pixel, but not down to zero. r+sr=mrbkap,a=schrep 2008-04-14 14:09:23 -07:00
reed@reedloden.com
52084d2065 Bug 427163 - "Crash [@ nsContentUtils::ContentIsDescendantOf] with contenteditable, right-clicking and document.write" (add null check) [p=chris@pearce.org.nz (Chris Pearce [cpearce]) r+sr=roc a1.9=damons] 2008-04-08 23:16:09 -07:00
reed@reedloden.com
3ada7e2c40 Bug 420499 - "Caret browsing mode wrongly engaged" (Mochitest) [p=chris@pearce.org.nz (Chris Pearce [cpearce]) r+sr=roc a=blocking1.9+] 2008-04-08 11:52:48 -07:00
reed@reedloden.com
e0e0118cf9 Bug 420499 - "Caret browsing mode wrongly engaged" [p=chris@pearce.org.nz (Chris Pearce [cpearce]) r+sr=roc a=blocking1.9+] 2008-04-01 01:35:11 -07:00
roc+@cs.cmu.edu
efc1d5a1dd Bug 400057. Make nsBlockInFlowLineIterator useful for finding the line containing a frame, searching across block continuations and their overflow lines. Use it in various places, especially in textrun construction. r+sr=dbaron 2008-02-27 01:53:48 -08:00
reed@reedloden.com
0ac3599db4 Bug 394473 - "caret/cursor in View Source is invisible since 20070628 {not rendered, seen, can't, cannot, shown, displayed}" [p=chris@pearce.org.nz (Chris Pearce [cpearce]) r=peterv r+sr=roc a1.9=beltzner] 2008-02-26 17:49:46 -08:00
Olli.Pettay@helsinki.fi
a0a74f16e7 Bug 368760, r=mats, sr=roc, a=blocking1.9+ 2007-11-22 12:47:33 -08:00
reed@reedloden.com
1ff7b5c5fd Bug 394473 - "caret/cursor in View Source is invisible since 20070628 {not rendered, seen, can't, cannot, shown, displayed}" [p=cpearce r=peterv sr=roc a1.9=schrep] 2007-11-12 21:42:52 -08:00
roc+@cs.cmu.edu
2992eec22e Bug 403048. Be more careful about looking for the line containing the caret. r+sr=mrbkap 2007-11-08 17:59:20 -08:00
reed@reedloden.com
788e2903bf Bug 336408 - Allow the caret to be positioned at the end of trimmed whitespace, as if the whitespace wasn't trimmed [p=roc r=smontagu sr=mrbkap a=blocking1.9+] 2007-11-07 20:07:00 -08:00
tglek@mozilla.com
8cf3fb1c90 Clean up prbool misuse in layout. bug 398312, r+sr+a=dbaron 2007-10-09 17:00:05 -07:00
joshmoz@gmail.com
f219b51c26 remove XP_MAC usage. b=281889 r=cbarrett sr=roc a=roc 2007-10-01 16:20:37 -07:00
philringnalda@gmail.com
42675246db Bug 390423 - Simplify the signature of nsIFrame::GetPointFromOffset, patch by Ben Karel <web+moz@eschew.org>, r=aaronlev/elif, sr=roc, a1.9=dbaron 2007-08-16 20:43:00 -07:00
mrbkap@gmail.com
f055907b89 Redragging over empty text field doesn't show drag caret, except for the last text field. bug 390228, r+sr=roc a=dbaron 2007-08-13 14:33:25 -07:00
mrbkap@gmail.com
dc890e2df6 Clamp the caret's position so that we always draw within the nearest scrollframe. Not doing this allows the scrollframe to clip the caret, causing it to not show up at all. bug 335560, r+sr=roc 2007-08-13 13:51:16 -07:00
peterv@propagandism.org
f7dd41f11e Fix for bug 387380 (No visible caret when caret browsing). r=smaug, sr=jst, a=dbaron. 2007-08-10 06:19:13 -07:00
sharparrow1@yahoo.com
ddf20f3ad6 Bug 390740: Pass lang-group into GetMetricsFor more consistently (general patch). r+sr=roc, a=dbaron 2007-08-07 12:07:43 -07:00
jwalden@mit.edu
6d7584839a Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros. 2007-07-08 00:08:04 -07:00
peterv@propagandism.org
6662efd338 Fix for bug 237964 (Allow editable areas in browser (contentEditable)). r/sr=sicking. 2007-06-27 19:48:16 -07:00
peterv@propagandism.org
90c374d7c3 Backing out to fix orange. 2007-06-27 16:21:05 -07:00
peterv@propagandism.org
7bf2741259 Fix for bug 237964 (Allow editable areas in browser (contentEditable)). r/sr=sicking. 2007-06-27 15:29:45 -07:00
sharparrow1%yahoo.com
4862938c93 Bug 370379: Create views less frequently. Stops creating views for -moz-hidden-unscrollable, opacity, fixed backgrounds, and scrollbars, plus removes some unneeded methods from views and view managers. r+sr=roc. 2007-02-24 00:23:42 +00:00
sharparrow1%yahoo.com
76a64e5c22 Bug 177805: Fix the use of units in Gecko. r+sr=roc 2007-02-07 07:46:44 +00:00
cvshook%sicking.cc
a39ff30284 Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128 2007-01-30 00:06:41 +00:00
uriber%gmail.com
3c3be786ad Bug 233348: BiDi marker is hidden when the caret is at the edge of a textarea. Patch by Haamed Gheibi <gheibi@gmail.com>. r=mrbkap sr=roc 2006-11-01 18:31:42 +00:00
uriber%gmail.com
38c1e056e9 Refactor nsIFrame::PeekOfset to use iteration instead of recursion, plus some more related refactoring. bug=300131 r+sr=roc 2006-09-11 20:43:01 +00:00
uriber%gmail.com
0fa608ce5e Backing out bug 300131 until I figure out how to deal with the bustage. 2006-09-11 08:03:28 +00:00
uriber%gmail.com
95b377fc13 Refactor nsIFrame::PeekOfset to use iteration instead of recursion, and some related refactoring. bug=300131 r+sr=roc 2006-09-11 06:39:56 +00:00
uriber%gmail.com
8982c70f78 Moved mCaretBidiLevel and its accessors from nsPresShell to nsFrameSelection. Also added sBidiKeyboard as a static service to nsContentUtils. bug=346891 r+sr=roc 2006-08-08 05:14:52 +00:00
uriber%gmail.com
cee7609648 Enable PeekOffset to find the visual beginning/end of a line, and use use it for bidi caret positioning. bug=302051 r=smontagu sr=roc 2006-08-03 06:24:11 +00:00
sharparrow1%yahoo.com
ca2fdec000 Bug 345371: add null checks for weak pointers in nsCaret. r+sr=roc. 2006-07-20 23:26:05 +00:00
smontagu%smontagu.org
952a1a4a12 Only display a bidirectional caret on platforms that implement nsIBidiKeyboard. Bug 272096, r+sr=roc 2006-07-06 08:29:53 +00:00
mrbkap%gmail.com
9f87463b44 Only recalculate the caret's rect when we're not currently drawn in an attempt to avoid caret turds when we're being notified of the caret movement after the frame has already been marked dirty. bug 335834, r+sr=roc 2006-05-04 00:05:22 +00:00
mrbkap%gmail.com
695809a291 Update the caret position after reflows to avoid turds. bug 334649, r+sr=roc 2006-04-28 04:33:41 +00:00