diff --git a/src/com/android/contacts/editor/KindSectionView.java b/src/com/android/contacts/editor/KindSectionView.java
index e612361..dddc6aa 100644
--- a/src/com/android/contacts/editor/KindSectionView.java
+++ b/src/com/android/contacts/editor/KindSectionView.java
@@ -170,7 +170,6 @@
             for (ValuesDelta entry : mState.getMimeEntries(mKind.mimeType)) {
                 // Skip entries that aren't visible
                 if (!entry.isVisible()) continue;
-                if (isEmptyNoop(entry)) continue;
 
                 createEditorView(entry);
             }
@@ -206,20 +205,6 @@
     }
 
     /**
-     * Tests whether the given item has no changes (so it exists in the database) but is empty
-     */
-    private boolean isEmptyNoop(ValuesDelta item) {
-        if (!item.isNoop()) return false;
-        final int fieldCount = mKind.fieldList.size();
-        for (int i = 0; i < fieldCount; i++) {
-            final String column = mKind.fieldList.get(i).column;
-            final String value = item.getAsString(column);
-            if (!TextUtils.isEmpty(value)) return false;
-        }
-        return true;
-    }
-
-    /**
      * Updates the editors being displayed to the user removing extra empty
      * {@link Editor}s, so there is only max 1 empty {@link Editor} view at a time.
      */
