Hello Jean-Marc,

> >          RowPainter rp(pi, bv.buffer().text(), cur.bottom().pit(), row,
bidi, 0,
> > -       rp.paintOnlyInsets();
> > +       //rp.paintOnlyInsets();
> > +       rp.paintText();
> 
> I think you are right. It might also be that we should use both.

For now I put only rp.paintText(); as it seems to work fine for this bug.

> > This happens because as the cux_x resets to the leftmost position of the
> > relevant row. Because of that, it meets the following condition.
> > // If need to slide right
> >     if (cur_x < left_edge + 10) {
> >             left_edge = cur_x - 10;
> >     }
> > There cur.getLeftEdge() becomes 0. Actually I could not mention, here I have
> > checked leftedge value after calling cur.setLeftEdge(left_edge).
> 
> So the problem will not happen anymore if we fix our bugs?

I checked whether the left edge remains at 0 with the above fix. It did not.
So, I think now it is fine.


> > Sure. I will try to solve the other bugs relating to
> > *selecting text position in an already slid row
> > *selecting range of text
> > *Home/ End problem (this also works fine after a simple mouse pointer
movement)
> 
> Perfect.

For now removed this code segment as it is something to do with Home/End.
-       if (cur.getLeftEdge() != left_edge
-           && strategy == NoScreenUpdate) {
-               ScreenUpdateStrategy const oldstrat = strategy;
-               strategy = SingleParUpdate;
-               LYXERR0("leftEdge: " << cur.getLeftEdge() << " => " << left_edge
-                       << ", Update strategy " << oldstrat << " => " << strateg
-       }
-

Commit:
http://git.lyx.org/?p=gsoc.git;a=commitdiff;h=a28f630222a8c47b1366649c8bd2df8b852dee08

Identified another two bugs...
1) When moving from the left most position of a row to the above too wide
row using left arrow, row does not get slide. (I think I found a fix for
this, have to test more)
2) When selecting rage of text from left to right, we cannot drag and select
if the screen is maximized. We can select beyond screen limit if LyX screen
is not maximized (have some space between the right edge of original
computer screen and LyX scree's right edge). But i out example, cannot
select beyond the '{' character. Do not know the reason for this.

Thanks
Hashini

Reply via email to