X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fjalview%2Fdatamodel%2FSequence.java;h=a01d185c24267ea6368818907139a0ce9d5a6c86;hb=d065bc916cb63af83cdab7319f5177a855724aba;hp=96a2fa17b5b6c3253130b8df9552b83cfc0a2ad8;hpb=bba9e58f08fc55c0f789f8354d1444e5c5e1b0e6;p=jalview.git diff --git a/src/jalview/datamodel/Sequence.java b/src/jalview/datamodel/Sequence.java index 96a2fa1..a01d185 100755 --- a/src/jalview/datamodel/Sequence.java +++ b/src/jalview/datamodel/Sequence.java @@ -1821,12 +1821,11 @@ public class Sequence extends ASequence implements SequenceI endPos, types); /* - * if the start or end column is gapped, startPos or endPos may be to the - * left or right, and we may have included adjacent or enclosing features; - * remove any that are not enclosing features + * if end column is gapped, endPos may be to the right, + * and we may have included adjacent or enclosing features; + * remove any that are not enclosing, non-contact features */ - if (endPos > this.end || Comparison.isGap(sequence[fromColumn - 1]) - || Comparison.isGap(sequence[toColumn - 1])) + if (endPos > this.end || Comparison.isGap(sequence[toColumn - 1])) { ListIterator it = result.listIterator(); while (it.hasNext()) @@ -1847,6 +1846,13 @@ public class Sequence extends ASequence implements SequenceI { it.remove(); } + else if (featureEndColumn > toColumn && sf.isContactFeature()) + { + /* + * remove an enclosing feature if it is a contact feature + */ + it.remove(); + } } } }