diff --git a/ring-android/app/src/main/java/cx/ring/adapters/ContactsAdapter.java b/ring-android/app/src/main/java/cx/ring/adapters/ContactsAdapter.java
index 8913f80f0b2a8a693dc73a13170855c12721080e..7464883a2020f428d1383082bee56c99f3ec9754 100644
--- a/ring-android/app/src/main/java/cx/ring/adapters/ContactsAdapter.java
+++ b/ring-android/app/src/main/java/cx/ring/adapters/ContactsAdapter.java
@@ -167,13 +167,6 @@ public class ContactsAdapter extends BaseAdapter implements StickyListHeadersAda
             }));
         }
 
-        convertView.setOnClickListener(new OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                parent.get().onTextContact(item);
-            }
-        });
-
         return convertView;
     }
 
diff --git a/ring-android/app/src/main/java/cx/ring/fragments/CallListFragment.java b/ring-android/app/src/main/java/cx/ring/fragments/CallListFragment.java
index dd584e957be76271da2c437feed6492333943d77..833ac0ffd5f9d1820f4c7f86b6b9c257395ab730 100644
--- a/ring-android/app/src/main/java/cx/ring/fragments/CallListFragment.java
+++ b/ring-android/app/src/main/java/cx/ring/fragments/CallListFragment.java
@@ -63,7 +63,6 @@ import cx.ring.adapters.ContactsAdapter;
 import cx.ring.adapters.StarredContactsAdapter;
 import cx.ring.client.ConversationActivity;
 import cx.ring.client.HomeActivity;
-import cx.ring.client.NewConversationActivity;
 import cx.ring.loaders.ContactsLoader;
 import cx.ring.loaders.LoaderConstants;
 import cx.ring.model.CallContact;
@@ -235,7 +234,6 @@ public class CallListFragment extends Fragment implements SearchView.OnQueryText
                     searchView.setInputType(EditorInfo.TYPE_CLASS_TEXT);
                 else
                     searchView.setInputType(EditorInfo.TYPE_CLASS_PHONE);
-                //searchMenuItem.expandActionView();
                 return true;
             case R.id.menu_clear_history:
                 mCallbacks.getService().clearHistory();
@@ -279,7 +277,7 @@ public class CallListFragment extends Fragment implements SearchView.OnQueryText
         newconv_btn.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View v) {
-                startActivity(new Intent().setClass(getActivity(), NewConversationActivity.class));
+                searchMenuItem.expandActionView();
             }
         });
 
@@ -292,6 +290,13 @@ public class CallListFragment extends Fragment implements SearchView.OnQueryText
         contactList = (StickyListHeadersListView) inflatedView.findViewById(R.id.contacts_stickylv);
         contactList.setDivider(null);
         contactList.addHeaderView(mHeader, null, false);
+        contactList.setOnItemClickListener(new OnItemClickListener() {
+            @Override
+            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
+                final CallContact item = (CallContact) parent.getItemAtPosition(position);
+                ((HomeActivity)getActivity()).onTextContact(item);
+            }
+        });
 
         mStarredGrid = (GridView) mHeader.findViewById(R.id.favorites_grid);
         llMain = (LinearLayout) mHeader.findViewById(R.id.llMain);
@@ -472,7 +477,7 @@ public class CallListFragment extends Fragment implements SearchView.OnQueryText
                 return;
             calls.clear();
             for (Conversation c : list) {
-                if (!c.getAccountsUsed().isEmpty() || c.getCurrentCall() != null)
+                if (!c.getContact().isUnknown() || !c.getAccountsUsed().isEmpty() || c.getCurrentCall() != null)
                     calls.add(c);
             }
             notifyDataSetChanged();
@@ -569,59 +574,10 @@ public class CallListFragment extends Fragment implements SearchView.OnQueryText
                     infos_fetcher.execute(task);
                 }
             }
-            convertView.setOnDragListener(dragListener);
             return convertView;
         }
     }
 
-    OnDragListener dragListener = new OnDragListener() {
-
-        @SuppressWarnings("deprecation")
-        // deprecated in API 16....
-        @Override
-        public boolean onDrag(View v, DragEvent event) {
-            switch (event.getAction()) {
-                case DragEvent.ACTION_DRAG_STARTED:
-                    // Do nothing
-                    // Log.w(TAG, "ACTION_DRAG_STARTED");
-                    break;
-                case DragEvent.ACTION_DRAG_ENTERED:
-                    // Log.w(TAG, "ACTION_DRAG_ENTERED");
-                    v.setBackgroundColor(Color.GREEN);
-                    break;
-                case DragEvent.ACTION_DRAG_EXITED:
-                    // Log.w(TAG, "ACTION_DRAG_EXITED");
-                    v.setBackgroundDrawable(getResources().getDrawable(cx.ring.R.drawable.item_generic_selector));
-                    break;
-                case DragEvent.ACTION_DROP:
-                    // Log.w(TAG, "ACTION_DROP");
-                    View view = (View) event.getLocalState();
-
-                    Item i = event.getClipData().getItemAt(0);
-                    Intent intent = i.getIntent();
-                    intent.setExtrasClassLoader(Conference.class.getClassLoader());
-
-                    Conversation initial = ((CallListAdapter.ViewHolder) view.getTag()).conv;
-                    Conversation target = ((CallListAdapter.ViewHolder) v.getTag()).conv;
-
-                    if (initial == target) {
-                        return true;
-                    }
-
-                    break;
-                case DragEvent.ACTION_DRAG_ENDED:
-                    // Log.w(TAG, "ACTION_DRAG_ENDED");
-                    View view1 = (View) event.getLocalState();
-                    view1.setVisibility(View.VISIBLE);
-                    v.setBackgroundDrawable(getResources().getDrawable(cx.ring.R.drawable.item_generic_selector));
-                default:
-                    break;
-            }
-            return true;
-        }
-
-    };
-
     @Override
     public void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
diff --git a/ring-android/app/src/main/java/cx/ring/service/LocalService.java b/ring-android/app/src/main/java/cx/ring/service/LocalService.java
index 2ed45b7f022a68ddb1cfe64c78b99e1252210229..c5d575bf9bb35502e3f1a1c2b4bfe9067460910c 100644
--- a/ring-android/app/src/main/java/cx/ring/service/LocalService.java
+++ b/ring-android/app/src/main/java/cx/ring/service/LocalService.java
@@ -1014,6 +1014,12 @@ public class LocalService extends Service implements SharedPreferences.OnSharedP
                 }
                 for (Conversation c : ret.values())
                     Log.w(TAG, "Conversation : " + c.getContact().getId() + " " + c.getContact().getDisplayName() + " " + c.getLastNumberUsed(c.getLastAccountUsed()) + " " + c.getLastInteraction().toString());
+                for (int i=0; i<localContactCache.size(); i++) {
+                    CallContact contact = localContactCache.valueAt(i);
+                    String key = contact.getIds().get(0);
+                    if (!ret.containsKey(key))
+                        ret.put(key, new Conversation(contact));
+                }
             } catch (RemoteException | SQLException e) {
                 e.printStackTrace();
             }
diff --git a/ring-android/app/src/main/res/layout/frag_call_list.xml b/ring-android/app/src/main/res/layout/frag_call_list.xml
index c131bdc82b6a9c3caec958b72b6260a9c9c055a9..81d153c2ae54b54d5031e91475db9bf644e4a2fd 100644
--- a/ring-android/app/src/main/res/layout/frag_call_list.xml
+++ b/ring-android/app/src/main/res/layout/frag_call_list.xml
@@ -53,10 +53,8 @@ along with this program; if not, write to the Free Software
         android:layout_height="match_parent"
         android:layout_alignParentLeft="true"
         android:layout_below="@+id/error_msg_pane"
-        android:background="@android:color/white"
         android:clipToPadding="false"
         android:divider="@null"
-        android:drawSelectorOnTop="true"
         android:elevation="2dp"
         android:fastScrollEnabled="true"
         android:paddingBottom="8dp"
@@ -72,7 +70,6 @@ along with this program; if not, write to the Free Software
         android:layout_below="@+id/error_msg_pane"
         android:layout_marginLeft="0dp"
         android:layout_marginTop="0dp"
-        android:background="@android:color/white"
         android:clipToPadding="false"
         android:divider="@null"
         android:elevation="2dp"
@@ -90,7 +87,7 @@ along with this program; if not, write to the Free Software
         android:layout_gravity="bottom|end"
         android:layout_margin="@dimen/fab_compat_margin"
         android:elevation="6dp"
-        android:src="@drawable/ic_add_white_24dp"
+        android:src="@drawable/ic_dialpad_white_24dp"
         app:backgroundTint="@color/color_primary_light"
         app:elevation="6dp"
         app:pressedTranslationZ="12dp"
diff --git a/ring-android/app/src/main/res/layout/frag_contact_list_header.xml b/ring-android/app/src/main/res/layout/frag_contact_list_header.xml
index 42696c5937e45e2e66e5831f134380308cfb3d8e..49bff46ed8f85d7fdb57c72ba6ad1bf021ea70ac 100644
--- a/ring-android/app/src/main/res/layout/frag_contact_list_header.xml
+++ b/ring-android/app/src/main/res/layout/frag_contact_list_header.xml
@@ -16,7 +16,6 @@
         android:id="@+id/fav_head_label"
         android:layout_width="match_parent"
         android:layout_height="48dp"
-        android:background="@android:color/white"
         android:gravity="center_vertical"
         android:paddingLeft="16dp"
         android:paddingRight="16dp"
@@ -36,7 +35,6 @@
         android:id="@+id/llMain"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:background="@android:color/white"
         android:padding="8dp">
 
         <GridView
diff --git a/ring-android/app/src/main/res/layout/frag_home.xml b/ring-android/app/src/main/res/layout/frag_home.xml
index fc63c433521d405b72f33c7d7a054982e828e3be..9adffadf74aa62693f16b1be1ce2b8957b2ef4e1 100644
--- a/ring-android/app/src/main/res/layout/frag_home.xml
+++ b/ring-android/app/src/main/res/layout/frag_home.xml
@@ -2,7 +2,7 @@
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:orientation="vertical" >
+    android:orientation="vertical">
 <!--
     <ImageView
         android:layout_width="match_parent"
diff --git a/ring-android/app/src/main/res/layout/header.xml b/ring-android/app/src/main/res/layout/header.xml
index d8814ff38d38252657bfb3f3497619f6beac4a8b..d4d61c399ab19fb9464a5d1de573e461d1a5378a 100644
--- a/ring-android/app/src/main/res/layout/header.xml
+++ b/ring-android/app/src/main/res/layout/header.xml
@@ -2,7 +2,6 @@
 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="48dp"
-    android:background="@android:color/white"
     android:clickable="false"
     android:focusable="false"
     android:orientation="vertical" >
diff --git a/ring-android/app/src/main/res/layout/item_calllist.xml b/ring-android/app/src/main/res/layout/item_calllist.xml
index c32e81e9996f7f31a0ee00e81765308ed6af938c..0f88ddd45de0d196fe7309a8a6a8669e701e48cc 100644
--- a/ring-android/app/src/main/res/layout/item_calllist.xml
+++ b/ring-android/app/src/main/res/layout/item_calllist.xml
@@ -22,8 +22,8 @@ along with this program; if not, write to the Free Software
     android:id="@+id/call_entry"
     android:layout_width="match_parent"
     android:layout_height="72dp"
-    android:background="@drawable/item_history_selector"
-    android:descendantFocusability="blocksDescendants">
+    android:descendantFocusability="blocksDescendants"
+    android:padding="16dp">
 
     <ImageView
         android:id="@+id/photo"
diff --git a/ring-android/app/src/main/res/layout/item_contact.xml b/ring-android/app/src/main/res/layout/item_contact.xml
index 28bde0631e9e0f5d7a033685b0d489db7d93f53a..85502dd5ccf159a5afd99a41c1917a5202669ba0 100644
--- a/ring-android/app/src/main/res/layout/item_contact.xml
+++ b/ring-android/app/src/main/res/layout/item_contact.xml
@@ -23,7 +23,8 @@ along with this program; if not, write to the Free Software
     android:id="@+id/contactview"
     android:layout_width="match_parent"
     android:layout_height="72dp"
-    android:minHeight="72dp">
+    android:minHeight="72dp"
+    android:descendantFocusability="blocksDescendants">
 
     <ImageView
         android:id="@+id/photo"
@@ -52,14 +53,13 @@ along with this program; if not, write to the Free Software
     <ImageButton
         android:id="@+id/quick_call"
         android:layout_width="wrap_content"
-        android:layout_height="fill_parent"
+        android:layout_height="wrap_content"
         android:layout_alignParentEnd="true"
         android:layout_centerVertical="true"
-        android:background="@null"
         android:contentDescription="@string/contact_quick_call_description"
-        android:paddingLeft="32dp"
-        android:paddingRight="32dp"
         android:src="@drawable/ic_call_white_24dp"
-        android:tint="@color/black" />
+        android:tint="@color/black"
+        android:background="?selectableItemBackgroundBorderless"
+        android:padding="16dp" />
 
 </RelativeLayout>