X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSeqCanvas.java;h=795faffd3f0705eec5c09b2395c4bf2bf31e2804;hb=3cdfc5e46776dbb8127f0a5b64df3545b988e3d9;hp=2a370c4713a2f433c11dec2f911f0f59a712cdfa;hpb=985fd5ff517f3eb5221a7aefec88138341514779;p=jalview.git diff --git a/src/jalview/gui/SeqCanvas.java b/src/jalview/gui/SeqCanvas.java index 2a370c4..795faff 100755 --- a/src/jalview/gui/SeqCanvas.java +++ b/src/jalview/gui/SeqCanvas.java @@ -500,6 +500,9 @@ public class SeqCanvas extends JComponent implements ViewportListenerI labelWidthWest = av.getScaleLeftWrapped() ? labelWidth : 0; + System.out.println(Thread.currentThread().getName() + + " " + System.currentTimeMillis() + " labelWidthWest: " + + labelWidthWest); return (canvasWidth - labelWidthEast - labelWidthWest) / charWidth; } @@ -1655,7 +1658,7 @@ public class SeqCanvas extends JComponent implements ViewportListenerI } ViewportRanges vpRanges = av.getRanges(); - int range = vpRanges.getEndRes() - vpRanges.getStartRes(); + int range = vpRanges.getEndRes() - vpRanges.getStartRes() + 1; if (scrollX > range) { scrollX = range; @@ -1724,10 +1727,10 @@ public class SeqCanvas extends JComponent implements ViewportListenerI { ViewportRanges ranges = av.getRanges(); - if (Math.abs(scrollX) > ranges.getViewportWidth()) + if (Math.abs(scrollX) >= ranges.getViewportWidth()) { /* - * shift of more than one view width is + * shift of one view width or more is * overcomplicated to handle in this method */ fastPaint = false; @@ -1918,10 +1921,17 @@ public class SeqCanvas extends JComponent implements ViewportListenerI while (y >= 0) { + /* + * shift 'widthToCopy' residues by 'positions' places to the right + */ gg.copyArea(copyFromLeftStart, y, widthToCopy, heightToCopy, positions * charWidth, 0); if (y > 0) { + /* + * copy 'positions' residue from the row above (right hand end) + * to this row's left hand end + */ gg.copyArea(copyFromRightStart, y - wrappedRepeatHeightPx, positions * charWidth, heightToCopy, -widthToCopy, wrappedRepeatHeightPx);