diff --git a/ring-android/app/src/main/java/cx/ring/client/AccountWizard.java b/ring-android/app/src/main/java/cx/ring/client/AccountWizard.java
index 3ce8865..b0dd739 100644
--- a/ring-android/app/src/main/java/cx/ring/client/AccountWizard.java
+++ b/ring-android/app/src/main/java/cx/ring/client/AccountWizard.java
@@ -99,7 +99,7 @@
             finish();
             return true;
         default:
-            return true;
+            return super.onOptionsItemSelected(item);
         }
     }
 
diff --git a/ring-android/app/src/main/java/cx/ring/client/ConversationActivity.java b/ring-android/app/src/main/java/cx/ring/client/ConversationActivity.java
index 23cea84..99bc984 100644
--- a/ring-android/app/src/main/java/cx/ring/client/ConversationActivity.java
+++ b/ring-android/app/src/main/java/cx/ring/client/ConversationActivity.java
@@ -154,8 +154,6 @@
             } else {
                 numberSpinner.setVisibility(View.GONE);
             }
-
-            scrolltoBottom();
         }
 
         private int getIndex(Spinner spinner, String myString) {
@@ -178,12 +176,10 @@
         @Override
         public void onReceive(Context context, Intent intent) {
             Log.w(TAG, "onReceive " + intent.getAction() + " " + intent.getDataString());
-            //conversation = service.getConversation(conversation.getId());
             Conversation newc = service.getByContact(conversation.getContact());
             if (newc != null)
                 conversation = newc;
             adapter.updateDataset(conversation.getHistory());
-            scrolltoBottom();
             Conference conf = conversation.getCurrentCall();
             bottomPane.setVisibility(conf == null ? View.GONE : View.VISIBLE);
         }
@@ -259,16 +255,6 @@
         }
     }
 
-    private void scrolltoBottom() {
-        histList.post(new Runnable() {
-            @Override
-            public void run() {
-                // Select the last row so it will scroll into view...
-                histList.setSelection(adapter.getCount() - 1);
-            }
-        });
-    }
-
     private class NumberAdapter extends BaseAdapter {
         final private Context context;
         private ArrayList<CallContact.Phone> numbers;
diff --git a/ring-android/app/src/main/java/cx/ring/client/NewConversationActivity.java b/ring-android/app/src/main/java/cx/ring/client/NewConversationActivity.java
index 440da28..d7bfd6f 100644
--- a/ring-android/app/src/main/java/cx/ring/client/NewConversationActivity.java
+++ b/ring-android/app/src/main/java/cx/ring/client/NewConversationActivity.java
@@ -10,11 +10,7 @@
 import android.net.Uri;
 import android.os.Bundle;
 import android.os.IBinder;
-import android.view.Menu;
-import android.view.MenuInflater;
 import android.view.MenuItem;
-import android.widget.RelativeLayout;
-import android.widget.SearchView;
 
 import cx.ring.R;
 import cx.ring.fragments.ContactListFragment;
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 327c8a5..4eb0db1 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
@@ -1,5 +1,5 @@
 /*
- *  Copyright (C) 2004-2015 Savoir-Faire Linux Inc.
+ *  Copyright (C) 2004-2015 Savoir-faire Linux Inc.
  *
  *  Author: Adrien Béraud <adrien.beraud@savoirfairelinux.com>
  *
@@ -30,7 +30,6 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.Loader;
-import android.content.res.Configuration;
 import android.graphics.Bitmap;
 import android.graphics.Color;
 import android.net.Uri;
@@ -39,6 +38,7 @@
 import android.support.design.widget.FloatingActionButton;
 import android.support.v4.view.MenuItemCompat;
 import android.support.v7.widget.SearchView;
+import android.support.v7.widget.Toolbar;
 import android.text.format.DateUtils;
 import android.util.Log;
 import android.util.LruCache;
@@ -52,6 +52,7 @@
 import android.view.View.OnDragListener;
 import android.view.ViewGroup;
 import android.view.animation.AnimationUtils;
+import android.view.inputmethod.EditorInfo;
 import android.widget.*;
 import android.widget.AdapterView.OnItemClickListener;
 import android.widget.AdapterView.OnItemLongClickListener;
@@ -82,7 +83,6 @@
     private static final String TAG = CallListFragment.class.getSimpleName();
 
     private LocalService.Callbacks mCallbacks = LocalService.DUMMY_CALLBACKS;
-    //private TextView mConversationsTitleTextView;
     private CallListAdapter mConferenceAdapter;
     private ContactsAdapter mListAdapter;
     private StarredContactsAdapter mGridAdapter;
@@ -93,14 +93,12 @@
     MenuItem searchMenuItem = null;
     private ListView list = null;
     private StickyListHeadersListView contactList = null;
-    //private ViewSwitcher listSwitcher = null;
 
     private String mCurFilter = null;
 
     private LinearLayout llMain;
     private GridView mStarredGrid;
     private TextView favHeadLabel;
-    //private SwipeListViewTouchListener mSwipeLvTouchListener;
     private LinearLayout mHeader;
     private ViewGroup newcontact;
     private ViewGroup error_msg_pane;
@@ -114,7 +112,6 @@
         intentFilter.addAction(LocalService.ACTION_CONF_UPDATE);
         intentFilter.addAction(LocalService.ACTION_ACCOUNT_UPDATE);
         getActivity().registerReceiver(receiver, intentFilter);
-        updateLists();
     }
 
     @Override
@@ -153,7 +150,7 @@
             if (mCallbacks.getService().isConnected()) {
                 error_msg_pane.setVisibility(View.GONE);
             } else {
-                error_msg_pane.setVisibility(mCallbacks.getService().isConnected() ? View.GONE : View.VISIBLE);
+                error_msg_pane.setVisibility(View.VISIBLE);
                 error_msg_txt.setText(R.string.error_no_network);
             }
         }
@@ -182,6 +179,7 @@
     public void onResume() {
         super.onResume();
         ((HomeActivity)getActivity()).setToolbarState(false, R.string.app_name);
+        updateLists();
     }
 
     @Override
@@ -218,16 +216,21 @@
 
         searchView = (SearchView) searchMenuItem.getActionView();
         searchView.setOnQueryTextListener(this);
+        searchView.setQueryHint(getString(R.string.searchbar_hint));
+        searchView.setLayoutParams(new Toolbar.LayoutParams(Toolbar.LayoutParams.MATCH_PARENT, Toolbar.LayoutParams.MATCH_PARENT));
     }
 
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
         switch (item.getItemId()) {
             case R.id.menu_contact_search:
-                searchView.setInputType(Configuration.KEYBOARD_UNDEFINED);
+                searchView.setInputType(EditorInfo.TYPE_CLASS_TEXT);
                 return false;
             case R.id.menu_contact_dial:
-                searchView.setInputType(Configuration.KEYBOARD_12KEY);
+                if (searchView.getInputType() == EditorInfo.TYPE_CLASS_PHONE)
+                    searchView.setInputType(EditorInfo.TYPE_CLASS_TEXT);
+                else
+                    searchView.setInputType(EditorInfo.TYPE_CLASS_PHONE);
                 searchMenuItem.expandActionView();
                 return true;
             case R.id.menu_clear_history:
diff --git a/ring-android/app/src/main/res/layout/activity_home.xml b/ring-android/app/src/main/res/layout/activity_home.xml
index 3392b03..23bbdbb 100644
--- a/ring-android/app/src/main/res/layout/activity_home.xml
+++ b/ring-android/app/src/main/res/layout/activity_home.xml
@@ -40,10 +40,8 @@
             android:layout_alignParentStart="true"
             android:layout_alignParentTop="true"
             android:background="@color/actionbar"
-
             android:elevation="4dp"
             android:gravity="bottom"
-            android:longClickable="true"
             android:minHeight="?attr/actionBarSize"
             android:popupTheme="@style/Theme.AppCompat.Light.NoActionBar"
             android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
@@ -74,10 +72,11 @@
             android:layout_marginStart="16dp"
             android:adjustViewBounds="false"
             android:baselineAlignBottom="false"
-            android:elevation="6dp"
             android:visibility="gone"
             app:elevation="6dp"
-            app:fabSize="mini" />
+            app:fabSize="mini"
+            app:pressedTranslationZ="12dp"
+            app:rippleColor="@android:color/white"/>
 
     </RelativeLayout>
 
diff --git a/ring-android/app/src/main/res/layout/frag_contact_list.xml b/ring-android/app/src/main/res/layout/frag_contact_list.xml
index d50376e..db6be4e 100644
--- a/ring-android/app/src/main/res/layout/frag_contact_list.xml
+++ b/ring-android/app/src/main/res/layout/frag_contact_list.xml
@@ -40,12 +40,14 @@
         android:id="@+id/contacts_stickylv"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
+        android:background="@android:color/white"
+        android:clipToPadding="false"
         android:divider="@null"
         android:drawSelectorOnTop="true"
         android:fastScrollEnabled="true"
-        android:scrollbarStyle="outsideOverlay"
         android:paddingBottom="8dp"
-        android:paddingTop="8dp" />
+        android:paddingTop="8dp"
+        android:scrollbarStyle="outsideOverlay" />
 
     <TextView
         android:id="@android:id/empty"
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 e0b2040..d15f525 100644
--- a/ring-android/app/src/main/res/layout/item_calllist.xml
+++ b/ring-android/app/src/main/res/layout/item_calllist.xml
@@ -40,7 +40,7 @@
 
     <TextView
         android:id="@+id/conv_participant"
-        android:layout_width="wrap_content"
+        android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_alignParentLeft="false"
         android:layout_alignParentTop="true"
@@ -51,7 +51,9 @@
         android:textSize="16sp"
         android:layout_toRightOf="@+id/photo"
         android:textColor="@color/text_color_primary"
-        android:layout_marginTop="2dp" />
+        android:layout_marginTop="2dp"
+        android:layout_toLeftOf="@+id/conv_last_time"
+        android:layout_toStartOf="@+id/conv_last_time" />
 
     <TextView
         android:id="@+id/conv_last_item"
@@ -61,7 +63,9 @@
         android:layout_below="@+id/conv_participant"
         android:textSize="14sp"
         android:layout_toRightOf="@+id/photo"
-        android:textColor="@color/text_color_secondary" />
+        android:textColor="@color/text_color_secondary"
+        android:layout_toLeftOf="@+id/conv_last_time"
+        android:layout_toStartOf="@+id/conv_last_time" />
 
     <TextView
         android:id="@+id/conv_last_time"
diff --git a/ring-android/app/src/main/res/layout/item_number.xml b/ring-android/app/src/main/res/layout/item_number.xml
index 755a4c0..6b5295f 100644
--- a/ring-android/app/src/main/res/layout/item_number.xml
+++ b/ring-android/app/src/main/res/layout/item_number.xml
@@ -1,5 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
+<?xml version="1.0" encoding="utf-8"?><!--
 Copyright (C) 2004-2015 Savoir-Faire Linux Inc.
 
 Author: Adrien Béraud <adrien.beraud@savoirfairelinux.com>
@@ -28,41 +27,41 @@
     android:padding="8dp">
 
     <ImageView
+        android:id="@+id/number_icon"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:id="@+id/number_icon"
         android:layout_alignParentLeft="true"
-        android:src="@drawable/ic_dialer_sip_black_24dp"
         android:layout_alignParentStart="true"
+        android:layout_alignParentTop="false"
+        android:layout_centerVertical="true"
         android:layout_marginEnd="8dp"
         android:layout_marginRight="8dp"
-        android:layout_alignParentTop="false"
-        android:layout_centerVertical="true" />
+        android:src="@drawable/ic_dialer_sip_black_24dp" />
 
     <TextView
         android:id="@+id/number_txt"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
+        android:layout_alignParentTop="true"
+        android:layout_marginTop="2dp"
+        android:layout_toRightOf="@+id/number_icon"
         android:ellipsize="marquee"
         android:marqueeRepeatLimit="marquee_forever"
         android:scrollHorizontally="true"
         android:singleLine="true"
-        android:textSize="16sp"
-        android:textColor="@color/text_color_primary"
-        android:layout_marginTop="2dp"
-        android:layout_toRightOf="@+id/number_icon"
         android:text="+15142792035"
-        android:layout_alignParentTop="true" />
+        android:textColor="@color/text_color_primary"
+        android:textSize="16sp" />
 
     <TextView
         android:id="@+id/number_label_txt"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
-        android:textSize="12sp"
-        android:textColor="@color/text_color_secondary"
-        android:text="Inde"
         android:layout_below="@+id/number_txt"
+        android:layout_toEndOf="@+id/number_icon"
         android:layout_toRightOf="@+id/number_icon"
-        android:layout_toEndOf="@+id/imageView4" />
+        android:text="Inde"
+        android:textColor="@color/text_color_secondary"
+        android:textSize="12sp" />
 
 </RelativeLayout>
\ No newline at end of file
diff --git a/ring-android/app/src/main/res/menu/ac_call.xml b/ring-android/app/src/main/res/menu/ac_call.xml
index eff7bf7..80578de 100644
--- a/ring-android/app/src/main/res/menu/ac_call.xml
+++ b/ring-android/app/src/main/res/menu/ac_call.xml
@@ -1,9 +1,10 @@
 <?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android" >
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto">
 
     <item
         android:id="@+id/menuitem_chat"
-        android:showAsAction="always"
+        app:showAsAction="always"
         android:icon="@drawable/ic_chat_white_24dp"
         android:title="@string/ab_action_chat"/>
 
diff --git a/ring-android/app/src/main/res/menu/call_list_menu.xml b/ring-android/app/src/main/res/menu/call_list_menu.xml
index 0efe998..2d5c120 100644
--- a/ring-android/app/src/main/res/menu/call_list_menu.xml
+++ b/ring-android/app/src/main/res/menu/call_list_menu.xml
@@ -6,6 +6,7 @@
         android:actionViewClass="android.widget.SearchView"
         android:icon="@drawable/ic_search_white_24dp"
         android:title="@string/searchbar_hint"
+        android:hint="@string/searchbar_hint"
         app:actionViewClass="android.support.v7.widget.SearchView"
         app:showAsAction="collapseActionView|ifRoom"/>
 
diff --git a/ring-android/app/src/main/res/menu/newconv_option_menu.xml b/ring-android/app/src/main/res/menu/newconv_option_menu.xml
index af70542..e82d5e2 100644
--- a/ring-android/app/src/main/res/menu/newconv_option_menu.xml
+++ b/ring-android/app/src/main/res/menu/newconv_option_menu.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:id="@+id/menu_contact_search"
-        android:title="Nom d'un contact ou numéro"
+        android:title="@string/searchbar_hint"
         android:icon="@drawable/ic_search_white_24dp"
         android:showAsAction="collapseActionView|ifRoom"
         android:actionViewClass="android.widget.SearchView" />
