View Issue Details

IDProjectCategoryView StatusLast Update
0018134LazarusIDEpublic2011-12-01 11:25
ReporterTeemu Valo Assigned ToMartin Friebe  
Status closedResolutionfixed 
Product Version0.9.29 (SVN) 
Target Version0.9.30Fixed in Version0.9.30 
Summary0018134: Caret isn't showing in source editor when x=1
DescriptionWith arrow keys or mouse, doesn't matter, when caret goes to far left in Source editor it goes invisible. Move caret again anywhere else and it shows.

I first thought it might be some environment option but on second thought this is behavior that shouldn't happen in any case.
Additional InformationSVN 28578 (2010-12-01)
TagsNo tags attached.
Fixed in Revision28600
Attached Files


Teemu Valo

2010-12-02 10:12

reporter   ~0043877

It seemed to have something to do with environment options too. I went to:
Editor -> Display and enabled "Visible gutter" so caret became visible in the first column.

Martin Friebe

2010-12-02 14:54

manager   ~0043890

Please test and close if ok.

Yes it only happened if the gutter was hidden. The editor moved the text to far left, not leaving any space for the caret (the caret is between characters, so half the caret would be before the first char)

Teemu Valo

2010-12-02 16:56

reporter   ~0043895

Last edited: 2010-12-03 13:23

It didn't seem to be fixed at least yet.
This was actually first time i updated with Tortoise SVN, but it shows revision 28600. Do they update instantly, have i configured it wrong or is it just matter of waiting?

And the problem exactly wasn't only when the caret x=1 but it was same way hidden at the edge when the code is scrolled offscreen to left, which you propably noticed anyway :)

edit: SVN 28607, problem still remains. (Win32)

Also noticed this today, when going Project options and editing paths to for example "Other unit files", the memo where paths are written also hides caret in far left column.

Martin Friebe

2010-12-03 14:01

manager   ~0043938

The path memo is a SynEdit, so yes.

If you have problems with SVN, in the meantime it should be available as snapshot.

You can check, if your SVN updatewas successful:
Open SynEdit.pp (from components/SynEdit foldeR) and go to line 6952. You find the function "TCustomSynEdit.TextLeftPixelOffset", it contains the line:
      inc(Result, 1); // include space for caret at pos.x=1 (if FOffsetX = -1)
If it has that comment then you did update.

If you updated via SVN, you must rebuild the entire Lazarus, not only the IDE.
Use the Last entry from the "Tools" menu (Config rebuild Lazarus), and make sure at least SynEdit and IDE are rebuild. But better rebuild all parts.

You can always ensure that it does try to build SynEdit, by temporarily putting some trash into the file, and check you get a syntax error.

Teemu Valo

2010-12-03 16:09

reporter   ~0043944

No, it didn't have that line after doing SVN update on Lazarus root folder or that file individually.

Then i right clicked the SynEdit.pp and "Diff with previous version". Browsed to like 6952 where on the left side revision had the line you mentioned but it was marked as cancelled or something. I right clicked the revision version and "Use the whole file" and saved it on top of current "working version". Rebuilt Lazarus and the bug is gone.

So i guess its something wrong with SVN updater now... may have to search forums or something.

Anyway this issue can be closed now unless you have more tips about SVN updating :)

Martin Friebe

2010-12-03 17:20

manager   ~0043951

thanks for the feedback.

For help on SVN please use the forum, or mailing-list

Issue History

Date Modified Username Field Change
2010-12-02 08:54 Teemu Valo New Issue
2010-12-02 08:54 Teemu Valo Widgetset => Win32/Win64
2010-12-02 10:12 Teemu Valo Note Added: 0043877
2010-12-02 13:08 Vincent Snijders LazTarget => 1.0
2010-12-02 13:08 Vincent Snijders Assigned To => Martin Friebe
2010-12-02 13:08 Vincent Snijders Status new => assigned
2010-12-02 13:08 Vincent Snijders Target Version => 1.0.0
2010-12-02 14:54 Martin Friebe Fixed in Revision => 28600
2010-12-02 14:54 Martin Friebe Status assigned => resolved
2010-12-02 14:54 Martin Friebe Fixed in Version => 0.9.30
2010-12-02 14:54 Martin Friebe Resolution open => fixed
2010-12-02 14:54 Martin Friebe Note Added: 0043890
2010-12-02 14:54 Martin Friebe Target Version 1.0.0 => 0.9.30
2010-12-02 16:56 Teemu Valo Note Added: 0043895
2010-12-03 13:17 Teemu Valo Note Edited: 0043895
2010-12-03 13:17 Teemu Valo Status resolved => assigned
2010-12-03 13:17 Teemu Valo Resolution fixed => reopened
2010-12-03 13:23 Teemu Valo Note Edited: 0043895
2010-12-03 14:01 Martin Friebe Note Added: 0043938
2010-12-03 16:09 Teemu Valo Note Added: 0043944
2010-12-03 17:20 Martin Friebe Status assigned => resolved
2010-12-03 17:20 Martin Friebe Resolution reopened => fixed
2010-12-03 17:20 Martin Friebe Note Added: 0043951
2011-12-01 11:25 Marc Weustink Status resolved => closed