diff --git a/src/com/android/contacts/ContactsUtils.java b/src/com/android/contacts/ContactsUtils.java
index 4dd9036..ee79dbb 100644
--- a/src/com/android/contacts/ContactsUtils.java
+++ b/src/com/android/contacts/ContactsUtils.java
@@ -293,7 +293,7 @@
                 return new ImActions(
                         new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message")),
                         new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?call")),
-                        android.R.drawable.sym_action_chat,
+                        R.drawable.sym_action_talk_holo_light,
                         R.drawable.sym_action_videochat
                         );
             } else if ((chatCapability & Im.CAPABILITY_HAS_VOICE) != 0) {
@@ -301,14 +301,14 @@
                 return new ImActions(
                         new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message")),
                         new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?call")),
-                        android.R.drawable.sym_action_chat,
+                        R.drawable.sym_action_talk_holo_light,
                         R.drawable.sym_action_audiochat
                         );
             } else {
                 return new ImActions(
                         new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message")),
                         null,
-                        android.R.drawable.sym_action_chat,
+                        R.drawable.sym_action_talk_holo_light,
                         -1
                         );
             }
@@ -328,7 +328,7 @@
                 return new ImActions(
                         new Intent(Intent.ACTION_SENDTO, imUri),
                         null,
-                        android.R.drawable.sym_action_chat,
+                        R.drawable.sym_action_talk_holo_light,
                         -1
                         );
             } else {
diff --git a/src/com/android/contacts/model/FallbackAccountType.java b/src/com/android/contacts/model/FallbackAccountType.java
index e30ad89..2b40634 100644
--- a/src/com/android/contacts/model/FallbackAccountType.java
+++ b/src/com/android/contacts/model/FallbackAccountType.java
@@ -299,7 +299,7 @@
         DataKind kind = getKindForMimetype(Im.CONTENT_ITEM_TYPE);
         if (kind == null) {
             kind = addKind(new DataKind(Im.CONTENT_ITEM_TYPE, R.string.imLabelsGroup,
-                    android.R.drawable.sym_action_chat, 20, true));
+                    R.drawable.sym_action_talk_holo_light, 20, true));
             kind.actionHeader = new ImActionInflater();
             kind.actionBody = new SimpleInflater(Im.DATA);
         }
