No longer scrolling list if selection already visible

Change-Id: I2829e717c2605f6bd8d33d0c07aad50a1313250f
diff --git a/src/com/android/contacts/widget/ListViewUtils.java b/src/com/android/contacts/widget/ListViewUtils.java
index f5af63b..cd77d22 100644
--- a/src/com/android/contacts/widget/ListViewUtils.java
+++ b/src/com/android/contacts/widget/ListViewUtils.java
@@ -37,6 +37,12 @@
      */
     public static void requestPositionToScreen(
             final ListView listView, final int position, boolean smoothScroll) {
+        int firstPosition = listView.getFirstVisiblePosition() + 1;
+        int lastPosition = listView.getLastVisiblePosition();
+        if (position >= firstPosition && position <= lastPosition) {
+            return; // Already on screen
+        }
+
         if (!smoothScroll) {
             final int offset = (int) (listView.getHeight() * PREFERRED_SELECTION_OFFSET_FROM_TOP);
             listView.setSelectionFromTop(position, offset);