On Fri, 2005-12-16 at 11:56 +0100, Jean-Marc Lasgouttes wrote: > >>>>> "Martin" == Martin Vermeer <[EMAIL PROTECTED]> writes: > > Martin> I remember seeing this too. Attached a patch for two places > Martin> where full screen updates would be reasonable but are not > Martin> being done. The text3 one probably addresses Andre's problem. > > Could you elaborate on why these two chunks make sense?
Oops, unrelated experimentation. I thought I had removed them :-( > Martin> The insetcollapsable one is about the "jumping" of the inset > Martin> label from inlined to above, causing "turds" lying around. > > This one looks good, except that I am not sure coordcache.h is needed. Same story here. Junk DNA... > Martin> (And no, a similar patch for Delete is not needed. Don't ask.) > > OK, I won't ask :) The really intended patch attached (curse Evo for not displaying outgoing attachments!) - Martin
Index: text3.C =================================================================== RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/text3.C,v retrieving revision 1.321 diff -u -p -r1.321 text3.C --- text3.C 1 Dec 2005 10:28:49 -0000 1.321 +++ text3.C 16 Dec 2005 11:53:43 -0000 @@ -649,6 +649,9 @@ void LyXText::dispatch(LCursor & cur, Fu case LFUN_BACKSPACE: if (!cur.selection()) { if (bv->owner()->getIntl().getTransManager().backspace()) { + // Merging paragraphs should force update + if (cur.pos() == 0) + needsUpdate = true; backspace(cur); cur.resetAnchor(); // It is possible to make it a lot faster still Index: insets/insetcollapsable.C =================================================================== RCS file: /usr/local/lyx/cvsroot/lyx-devel/src/insets/insetcollapsable.C,v retrieving revision 1.280 diff -u -p -r1.280 insetcollapsable.C --- insets/insetcollapsable.C 24 Oct 2005 09:42:20 -0000 1.280 +++ insets/insetcollapsable.C 16 Dec 2005 11:53:43 -0000 @@ -138,7 +138,10 @@ void InsetCollapsable::metrics(MetricsIn dim = dimensionCollapsed(); if (status() == Open) { InsetText::metrics(mi, textdim_); + bool oldopeninlined = openinlined_; openinlined_ = (textdim_.wid + dim.wid <= mi.base.textwidth); + if (openinlined_ != oldopeninlined) + InsetText::metrics(mi, textdim_); if (openinlined_) { dim.wid += textdim_.wid; dim.des = max(dim.des - textdim_.asc + dim.asc, textdim_.des);
signature.asc
Description: This is a digitally signed message part