#1593 Rendering problems with SCI_SETCARETLINEVISIBLE and horizontal scrolling

Bug
closed-fixed
5
2014-05-22
2014-04-17
chinhster
No

I upgraded to 3.4.1. I found that when SCI_SETCARETLINEVISIBLE is enabled, horizontal scrolling will cause random lines to be highlighted in the area that is scrolled in. It's best to see the screenshot. Only line 17 is supposed to be highlighted.

This appears to only affect OS X 10.9 because I couldn't reproduce the problem in 10.8. I also tried compiling with both Xcode 5.0.2 and Xcode 4.6.3 and their respective SDKs and the problem exists regardless of which SDK it's compiled against.

1 Attachments

Discussion

  • Neil Hodgson

    Neil Hodgson - 2014-04-17
    • labels: --> scintilla, cocoa
    • status: open --> open-accepted
    • assigned_to: Neil Hodgson
     
  • Neil Hodgson

    Neil Hodgson - 2014-04-17

    It is highlighting lines that were previously highlighted. With responsive scrolling, Cocoa is caching image tiles and the extra lines are in tiles that are still considered valid.

    There should be a way of invalidating the previously highlighted areas or discarding the off-screen tiles but it would affect performance to be too aggressive with calling DiscardOverdraw to discard tiles on every vertical caret movement.

     
  • Neil Hodgson

    Neil Hodgson - 2014-04-20

    Here is a patch that appears to work on Cocoa. Haven't checked that it doesn't disrupt anything on other platforms.

    Edit for better patch.

     
    Last edit: Neil Hodgson 2014-04-21
  • chinhster

    chinhster - 2014-04-21

    The patch has fixed the problem. Thanks!

     
  • Neil Hodgson

    Neil Hodgson - 2014-04-22
    • status: open-accepted --> open-fixed
     
  • Neil Hodgson

    Neil Hodgson - 2014-04-22

    Similar patch committed as [318710].

     

    Related

    Commit: [318710]

  • Neil Hodgson

    Neil Hodgson - 2014-05-22
    • status: open-fixed --> closed-fixed
     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks