-    /**
-     * Obtains the contact list.
-     *
-     * @return A cursor for for accessing the contact list.
-     */
-    private Cursor getContacts()
-    {
-        // Run query
-        Uri uri = ContactsContract.Contacts.CONTENT_URI;
-        String[] projection = new String[] {
-                ContactsContract.Contacts._ID,
-                ContactsContract.Contacts.LOOKUP_KEY
-        };
-
-        boolean showInvisible = false;
-        String selection = ContactsContract.Contacts.IN_VISIBLE_GROUP + " = '" + 
-                (showInvisible ? "0" : "1") + "'";
-        String[] selectionArgs = null;
-        String sortOrder = ContactsContract.Contacts._ID + " DESC";
-
-        return getContext().getContentResolver().query(uri, projection, selection, selectionArgs, sortOrder);
+    private Cursor getLocalContacts(boolean include_hidden_contacts) {
+        return getContext().getContentResolver().query(
+                ContactsContract.Contacts.CONTENT_URI,
+                new String[] { ContactsContract.Contacts._ID,
+                        ContactsContract.Contacts.LOOKUP_KEY },
+                ContactsContract.Contacts.IN_VISIBLE_GROUP + " = ?",
+                new String[] { (include_hidden_contacts ? "0" : "1") },
+                ContactsContract.Contacts._ID + " DESC");