diff --git a/fmapp2/res/layout-800x480/fmradio.xml b/fmapp2/res/layout-800x480/fmradio.xml
index 83b9f7c..e209769 100644
--- a/fmapp2/res/layout-800x480/fmradio.xml
+++ b/fmapp2/res/layout-800x480/fmradio.xml
@@ -129,9 +129,9 @@
                 style="@style/ButtonStripLeft"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
@@ -139,9 +139,9 @@
                 style="@style/ButtonStripMiddle"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
@@ -149,9 +149,9 @@
                 style="@style/ButtonStripMiddle"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
@@ -159,9 +159,9 @@
                 style="@style/ButtonStripMiddle"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
@@ -169,9 +169,9 @@
                 style="@style/ButtonStripMiddle"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
@@ -179,9 +179,9 @@
                 style="@style/ButtonStripMiddle"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
@@ -189,9 +189,9 @@
                 style="@style/ButtonStripRight"
                 android:text="@string/add_station"
                 android:textAppearance="?android:attr/textAppearanceMedium"
-                android:textSize="15sp"
+                android:textSize="16sp"
                 android:singleLine="true"
-                android:layout_width="80dp"
+                android:layout_width="96dp"
                 android:layout_weight="1"
                 android:layout_height="wrap_content"/>
 
diff --git a/fmapp2/res/values-zh-rCN/arrays.xml b/fmapp2/res/values-zh-rCN/arrays.xml
index 773dd45..788b807 100644
--- a/fmapp2/res/values-zh-rCN/arrays.xml
+++ b/fmapp2/res/values-zh-rCN/arrays.xml
@@ -160,7 +160,7 @@
     <item>土耳其</item>
     <item>英国</item>
     <item>美国</item>
-    <item>用户定义的乐队</item>
+    <item>用户定义的频段</item>
   </string-array>
 
   <string-array name="regional_band_summary">
@@ -171,7 +171,7 @@
     <item>澳大利亚 (87.7MHz - 108.0MHz ， 步长 100 Khz)</item>
     <item>奥地利 (87.5MHz - 108.0MHz ， 步长 50 Khz)</item>
     <item>比利时 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
-    <item>巴西 (87.8MHz - 108.0MHz ，步长 200 Khz)</item>
+    <item>巴西 (87.5MHz - 108.0MHz ，步长 200 Khz)</item>
     <item>中国 (87.0MHz - 108.0MHz ，步长 100 Khz)</item>
     <item>捷克 (87.5MHz - 108.0MHz ， 步长 100 Khz)</item>
     <item>丹麦 (87.5MHz - 108.0MHz ，步长 50 Khz)</item>
@@ -188,7 +188,7 @@
     <item>荷兰 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
     <item>新西兰 (88.0MHz - 107.0MHz ，步长  100 Khz)</item>
     <item>挪威 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
-    <item>波兰 (88.0MHz - 108.0MHz ，步长 50 Khz)</item>
+    <item>波兰 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
     <item>葡萄牙 (87.5MHz - 108.0MHz ，步长 50 Khz)</item>
     <item>俄国 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
     <item>新加坡 (88.0MHz - 108.0MHz ，步长 100 Khz)</item>
@@ -200,6 +200,6 @@
     <item>土耳其 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
     <item>英国 (87.5MHz - 108.0MHz ，步长 100 Khz)</item>
     <item>美国 (88.1MHz - 107.9MHz ，步长 200 Khz)</item>
-    <item>用户定义的乐队</item>
+    <item>用户定义的频段</item>
   </string-array>
 </resources>
diff --git a/fmapp2/src/com/caf/fmradio/FMRadio.java b/fmapp2/src/com/caf/fmradio/FMRadio.java
index df97413..9d48888 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadio.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadio.java
@@ -2046,8 +2046,14 @@
             String display = "";
             if (station != null) {
                display = station.getName();
+                Log.e(LOGTAG, "Venkat:before" + display );
+                if (display.length() > 6)
+		 display = display.substring(0,6)+"...";
+	       Log.e(LOGTAG, "Venkat: after" + display );
+		mPresetButtons[buttonIndex].setEllipsize(TextUtils.TruncateAt.END);
                mPresetButtons[buttonIndex].setText(display);
                mPresetButtons[buttonIndex].setTag(station);
+               mPresetButtons[buttonIndex].setHeight(-1);
                addedStations++;
             }else {
                mPresetButtons[buttonIndex].setText(R.string.add_station);
diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java
index de566ae..a218893 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadioService.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java
@@ -1136,6 +1136,8 @@
                   return;
               }
               switch (msg.arg1) {
+                  case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:
+                      Log.v(LOGTAG, "AudioFocus: received AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK");
                   case AudioManager.AUDIOFOCUS_LOSS:
                       Log.v(LOGTAG, "AudioFocus: received AUDIOFOCUS_LOSS");
                       //intentional fall through.
@@ -1164,7 +1166,6 @@
                           startFM();
                       mStoppedOnFocusLoss = false;
                       break;
-                  case AudioManager.AUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK:
                   default:
                       Log.e(LOGTAG, "Unknown audio focus change code"+msg.arg1);
               }
