X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSeqPanel.java;h=61cac46b0a3912fea31aec14212487be8ee79839;hb=07c06919a5e944dd12f751a5f23bcb79887cc11e;hp=9a5f6c6808ca3be7332635ac1ed50b493faa52f4;hpb=6716ff86e500acc2800936b3f3c7132927a9246b;p=jalview.git diff --git a/src/jalview/gui/SeqPanel.java b/src/jalview/gui/SeqPanel.java index 9a5f6c6..61cac46 100644 --- a/src/jalview/gui/SeqPanel.java +++ b/src/jalview/gui/SeqPanel.java @@ -363,8 +363,11 @@ public class SeqPanel extends JPanel int original = seqCanvas.cursorX - dx; int maxWidth = av.getAlignment().getWidth(); + // TODO: once JAL-2759 is ready, change this loop to something more + // efficient while (!hidden.isVisible(seqCanvas.cursorX) - && seqCanvas.cursorX < maxWidth && seqCanvas.cursorX > 0) + && seqCanvas.cursorX < maxWidth && seqCanvas.cursorX > 0 + && dx != 0) { seqCanvas.cursorX += dx; } @@ -419,7 +422,10 @@ public class SeqPanel extends JPanel { if (av.getWrapAlignment()) { - av.getRanges().scrollToWrappedVisible(seqCanvas.cursorX); + // scrollToWrappedVisible expects x-value to have hidden cols subtracted + int x = av.getAlignment().getHiddenColumns() + .findColumnPosition(seqCanvas.cursorX); + av.getRanges().scrollToWrappedVisible(x); } else { @@ -427,8 +433,12 @@ public class SeqPanel extends JPanel seqCanvas.cursorY); } } - setStatusMessage(av.getAlignment().getSequenceAt(seqCanvas.cursorY), + + if (av.getAlignment().getHiddenColumns().isVisible(seqCanvas.cursorX)) + { + setStatusMessage(av.getAlignment().getSequenceAt(seqCanvas.cursorY), seqCanvas.cursorX, seqCanvas.cursorY); + } if (repaintNeeded) {