#2928 Location Pane scrolling

Branch_+_Trunk
closed-accepted
nobody
GUI (476)
3
2010-12-08
2010-01-30
Matthias
No

releated to Location Pane, strange scrolling effect - ID: 2915350
In case of a high number of lines and moveing between bigger and smaler diffs it can happen that the cursor jumping in opposit direction.
Reason. If the diff is too small, WM is setting the cursor with a min hight over the center of the actual diff. So it looks like the curors is jumping.
I changed it so to keep the topposition of the cursor and setup the bottom to a minimal hight.

Discussion

  • Matthias

    Matthias - 2010-01-30

    LocationView

     
  • Kimmo Varis

    Kimmo Varis - 2010-02-01

    I've thought about this but I really am not sure this is correct. Can you explain why this patch works? I

    > + // if we have a high number of lines, it may be better
    May? So you aren't sure?

    If you just add to the top coordinate then it overflows if the diff is drawn for last line?

     
  • Matthias

    Matthias - 2010-02-06

    >May? So you aren't sure?
    we must dicide if we use topline, or bottomline that's all.
    I was digg in in that problem. And I found that on diff was displayed correct and if the next diff is very short behind after that diff, we can see that efect. Means the distance to next diff is smaller as 50% of min hight, so it seams the cursor is jumping up.
    So keeping on of these lines top or bottom soves that.
    >If you just add to the top coordinate then it overflows if the diff is
    drawn for last line?
    No it doesn't. At least it keeps the position, but can never higher than the last diff.

     
  • Kimmo Varis

    Kimmo Varis - 2010-02-21
    • milestone: 438014 --> 438013
    • priority: 5 --> 3
     
  • Kimmo Varis

    Kimmo Varis - 2010-02-21

    This kind of "jumping" is small problem with location pane. And definitely not for branch.

    > No it doesn't. At least it keeps the position, but can never
    > higher than the last diff.

    I'm not talking about lines in file or diff numbers. I'm talking about that you now will overflow the diff block in the bar. You must check the bar bottom before drawing. Simple example. You have two-line diff in last lines of very long file. You calculate the top coordinate and get it as one pix above bar bottom. But as our minimum diff block height is bigger than two lines you now have to draw it over bottom line of bar to get minimum size of block drawn.

     
  • Matthias

    Matthias - 2010-02-25

    that kinds of checking is allready there, just some lines around in same function.

     
  • Matthias

    Matthias - 2010-02-25

    that kinds of checking is allready there, just some lines around in same function.

     
  • Kimmo Varis

    Kimmo Varis - 2010-03-10
    • status: open --> closed-accepted
     
  • Kimmo Varis

    Kimmo Varis - 2010-03-10

    Ok.

    Committed to SVN trunk:
    Completed: At revision: 7127

     
  • Tim Gerundt

    Tim Gerundt - 2010-12-08
    • milestone: 438013 --> Branch_+_Trunk
     
  • Tim Gerundt

    Tim Gerundt - 2010-12-08

    Backported to SVN branch R2_14 (In Revision 7472)...

     

Log in to post a comment.

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

Sign up for the SourceForge newsletter:





No, thanks