On 24/03/2012 21:40, Martin wrote:
On 24/03/2012 21:31, Martin wrote:
On 24/03/2012 21:02, Bernd wrote:
2012/3/24 Martin<laza...@mfriebe.de>:

Compile the SynEdit package with the following defines
SynDebug
SynCaretDebug
SYNSCROLLDEBUG
VerboseSynEditInvalidate
SynCheckPaintLock

and get a logfile.

Please also try if switching the overview gutter (right hand site)
(Options/Editor/Display) makes a different. IIRC some WS does unnecessary
invalidates (but not as bad as you described)

Or switch off highlight of all occurrences of the word under caret
(obviously that can lead to a full invalidate, but usually it has a time
delay, so it does not affect editing)
I will try these defines and make the log (tomorrow). The right
overview gutter (and also the left gutter) does not have any notable
effect.


Ok, forget those defines. (WEll we maybe later...)

Try what happens with
  SynScrollBarWorkaround
defined

It may make both scrollbars permamently on.


There is an old bug in the gtk code, that will show a scrollbar, even if not requested.

That happens in SynEdit. SynEdit works around by hidding it again, before any painting is done. But it is possible that this still adds some extra work somewhere...

If I am guessing right, then it is a result of http://bugs.freepascal.org/view.php?id=16458

I added a workaround. Define:    SynNewScrollBarUpdate

BUT: This works in the IDE. It breaks standard SynEdit.
If Scrollbars are set to SSNone (or either one is forcefully hidden), then it is still possible to scroll (including by wheel) With the workaround that breaks. (Unless you configure the SynEdit with "MouseActions"


--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to