Improve classic skins for Android

Major changes are:
- Modify the shadows of the major category buttons to keep consistency with other buttons.
- Change the color of the narrow frame on blue_darkgray skin.

This is just a cosmetic fix.  No functional change is intended.

BUG=none
TEST=manually done with Nexus 5 / Android 5.0.1 (LRX22C)

git-svn-id: https://mozc.googlecode.com/svn/trunk@475 a6090854-d499-a067-5803-1114d4e51264
diff --git a/src/android/src/com/google/android/inputmethod/japanese/view/SymbolMajorCategoryButtonDrawableFactory.java b/src/android/src/com/google/android/inputmethod/japanese/view/SymbolMajorCategoryButtonDrawableFactory.java
index 133c648..a917a2b 100644
--- a/src/android/src/com/google/android/inputmethod/japanese/view/SymbolMajorCategoryButtonDrawableFactory.java
+++ b/src/android/src/com/google/android/inputmethod/japanese/view/SymbolMajorCategoryButtonDrawableFactory.java
@@ -35,14 +35,17 @@
 import com.google.common.base.Preconditions;
 
 import android.content.res.Resources;
+import android.graphics.BlurMaskFilter;
+import android.graphics.BlurMaskFilter.Blur;
 import android.graphics.Canvas;
+import android.graphics.Color;
 import android.graphics.LinearGradient;
 import android.graphics.Paint;
+import android.graphics.Paint.Style;
 import android.graphics.Path;
 import android.graphics.Path.Direction;
 import android.graphics.Rect;
 import android.graphics.RectF;
-import android.graphics.Shader;
 import android.graphics.Shader.TileMode;
 import android.graphics.drawable.Drawable;
 import android.graphics.drawable.LayerDrawable;
@@ -141,21 +144,32 @@
 
   private static class ButtonDrawable extends BaseBackgroundDrawable {
 
+    private static final int BLUR_SIZE = 3;
+
     private final PathFactory pathFactory;
     private final int topColor;
     private final int bottomColor;
-    private final int shadowColor;
 
-    private final Paint paint = new Paint();
+    private final Paint backgroundPaint = new Paint();
+    private final Optional<Paint> shadowPaint;
     private Optional<Path> path = Optional.absent();
-    private Optional<Shader> shader = Optional.absent();
 
     ButtonDrawable(PathFactory pathFactory, int topColor, int bottomColor, int shadowColor) {
       super(0, 0, 0, 0);  // No padding.
       this.pathFactory = Preconditions.checkNotNull(pathFactory);
       this.topColor = topColor;
       this.bottomColor = bottomColor;
-      this.shadowColor = shadowColor;
+
+      backgroundPaint.setAntiAlias(true);
+
+      if (Color.alpha(shadowColor) != 0) {
+        shadowPaint = Optional.of(new Paint());
+        shadowPaint.get().setColor(shadowColor);
+        shadowPaint.get().setStyle(Style.FILL);
+        shadowPaint.get().setMaskFilter(new BlurMaskFilter(BLUR_SIZE, Blur.NORMAL));
+      } else {
+        shadowPaint = Optional.absent();
+      }
     }
 
     @Override
@@ -164,26 +178,17 @@
         return;
       }
 
-      Paint paint = this.paint;
-      if ((shadowColor & 0xFF000000) != 0) {
-        paint.reset();
-        paint.setAntiAlias(true);
-        paint.setColor(shadowColor);
+      if (shadowPaint.isPresent()) {
         int saveCount = canvas.save();
         try {
-          canvas.translate(1, 1);
-          canvas.drawPath(path.get(), paint);
+          canvas.translate(0, 2);
+          canvas.drawPath(path.get(), shadowPaint.get());
         } finally {
           canvas.restoreToCount(saveCount);
         }
       }
 
-      paint.reset();
-      paint.setAntiAlias(true);
-      if (shader.isPresent()) {
-        paint.setShader(shader.get());
-      }
-      canvas.drawPath(path.get(), paint);
+      canvas.drawPath(path.get(), backgroundPaint);
     }
 
     @Override
@@ -192,12 +197,12 @@
 
       if (isCanvasRectEmpty()) {
         path = Optional.absent();
-        shader = Optional.absent();
+        backgroundPaint.setShader(null);
         return;
       }
 
       path = Optional.of(pathFactory.newInstance(bounds));
-      shader = Optional.<Shader>of(new LinearGradient(
+      backgroundPaint.setShader(new LinearGradient(
           0, bounds.top, 0, bounds.bottom - 1, topColor, bottomColor, TileMode.CLAMP));
     }
   }
diff --git a/src/android/static_resources/resources_oss/res/xml/skin_blue_darkgray.xml b/src/android/static_resources/resources_oss/res/xml/skin_blue_darkgray.xml
index 64ed64d..b76d602 100644
--- a/src/android/static_resources/resources_oss/res/xml/skin_blue_darkgray.xml
+++ b/src/android/static_resources/resources_oss/res/xml/skin_blue_darkgray.xml
@@ -355,7 +355,7 @@
         android:color="#FF828282" />
     <Color
         android:name="symbolMajorButtonShadowColor"
-        android:color="#57000000" />
+        android:color="#FF1E1E1E" />
     <Color
         android:name="keyboardFoldingButtonBackgroundDefaultColor"
         android:color="#8C676767" />
@@ -425,7 +425,7 @@
         <inset android:drawable="@drawable/window_background_black" />
     </Drawable>
     <Drawable android:name="narrowFrameBackgroundDrawable" >
-        <color android:color="#524C51" />
+        <inset android:drawable="@drawable/window_background_black" />
     </Drawable>
     <Drawable
         android:name="keyboardFrameSeparatorBackgroundDrawable" >
diff --git a/src/android/static_resources/resources_oss/res/xml/skin_blue_lightgray.xml b/src/android/static_resources/resources_oss/res/xml/skin_blue_lightgray.xml
index 635cd78..1cde44c 100644
--- a/src/android/static_resources/resources_oss/res/xml/skin_blue_lightgray.xml
+++ b/src/android/static_resources/resources_oss/res/xml/skin_blue_lightgray.xml
@@ -355,7 +355,7 @@
         android:color="#FF828282" />
     <Color
         android:name="symbolMajorButtonShadowColor"
-        android:color="#57000000" />
+        android:color="#FF1E1E1E" />
     <Color
         android:name="keyboardFoldingButtonBackgroundDefaultColor"
         android:color="#8C676767" />
diff --git a/src/android/static_resources/resources_oss/res/xml/skin_orange_lightgray.xml b/src/android/static_resources/resources_oss/res/xml/skin_orange_lightgray.xml
index 35a5523..d8b3c85 100644
--- a/src/android/static_resources/resources_oss/res/xml/skin_orange_lightgray.xml
+++ b/src/android/static_resources/resources_oss/res/xml/skin_orange_lightgray.xml
@@ -355,7 +355,7 @@
         android:color="#FF828282" />
     <Color
         android:name="symbolMajorButtonShadowColor"
-        android:color="#57000000" />
+        android:color="#FF1E1E1E" />
     <Color
         android:name="keyboardFoldingButtonBackgroundDefaultColor"
         android:color="#8C676767" />
diff --git a/src/mozc_version_template.txt b/src/mozc_version_template.txt
index ba6be70..0593889 100644
--- a/src/mozc_version_template.txt
+++ b/src/mozc_version_template.txt
@@ -1,6 +1,6 @@
 MAJOR=2
 MINOR=16
-BUILD=2008
+BUILD=2009
 REVISION=102
 # NACL_DICTIONARY_VERSION is the target version of the system dictionary to be
 # downloaded by NaCl Mozc.