Tweak shadow sample for demos.

BUG=skia:6119

Change-Id: I5b5d4298ee21bdcc2cc9ce1fae0826cd56752c2f
Reviewed-on: https://skia-review.googlesource.com/8081
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
diff --git a/samplecode/SampleAndroidShadows.cpp b/samplecode/SampleAndroidShadows.cpp
index 8f28592..0e0a4b4 100644
--- a/samplecode/SampleAndroidShadows.cpp
+++ b/samplecode/SampleAndroidShadows.cpp
@@ -8,6 +8,7 @@
 #include "SampleCode.h"
 #include "SkBlurMask.h"
 #include "SkBlurMaskFilter.h"
+#include "SkColorFilter.h"
 #include "SkCanvas.h"
 #include "SkGaussianEdgeShader.h"
 #include "SkPath.h"
@@ -28,6 +29,7 @@
     SkPath    fFunkyRRPath;
     SkPath    fCubicPath;
     SkPoint3  fLightPos;
+    SkScalar  fZDelta;
 
     bool      fShowAmbient;
     bool      fShowSpot;
@@ -36,8 +38,9 @@
     bool      fIgnoreShadowAlpha;
 
 public:
-    ShadowsView() 
-        : fShowAmbient(true)
+    ShadowsView()
+        : fZDelta(0.0f)
+        , fShowAmbient(true)
         , fShowSpot(true)
         , fUseAlt(true)
         , fShowObject(true)
@@ -68,7 +71,7 @@
         SkUnichar uni;
         if (SampleCode::CharQ(*evt, &uni)) {
             switch (uni) {
-                case 'B':
+                case 'W':
                     fShowAmbient = !fShowAmbient;
                     break;
                 case 'S':
@@ -81,10 +84,10 @@
                     fShowObject = !fShowObject;
                     break;
                 case '>':
-                    fLightPos.fZ += 10;
+                    fZDelta += 0.5f;
                     break;
                 case '<':
-                    fLightPos.fZ -= 10;
+                    fZDelta -= 0.5f;
                     break;
                 case '?':
                     fIgnoreShadowAlpha = !fIgnoreShadowAlpha;
@@ -219,6 +222,7 @@
                                       iRadius >> 8, iRadius & 0xff,
                                       (unsigned char)(4.0f*pad)));
 
+        paint.setColorFilter(SkColorFilter::MakeModeFilter(SK_ColorBLACK, SkBlendMode::kModulate));
         paint.setShader(SkGaussianEdgeShader::Make());
         canvas->drawRRect(pathRRect, paint);
     }
@@ -355,6 +359,7 @@
             paint.setStyle(SkPaint::kStroke_Style);
             paint.setStrokeWidth(strokeWidth);
         }
+        paint.setColorFilter(SkColorFilter::MakeModeFilter(SK_ColorBLACK, SkBlendMode::kModulate));
         paint.setShader(SkGaussianEdgeShader::Make());
         // handle scale of radius due to CTM
         radius *= scaleFactors[0];
@@ -440,33 +445,33 @@
         canvas->translate(200, 90);
         lightPos.fX += 200;
         lightPos.fY += 90;
-        this->drawShadowedPath(canvas, fRRPath, 2, paint, kAmbientAlpha,
+        this->drawShadowedPath(canvas, fRRPath, SkTMax(1.0f, 2+fZDelta), paint, kAmbientAlpha,
                                lightPos, kLightWidth, kSpotAlpha);
 
         paint.setColor(SK_ColorRED);
         canvas->translate(250, 0);
         lightPos.fX += 250;
-        this->drawShadowedPath(canvas, fRectPath, 4, paint, kAmbientAlpha,
+        this->drawShadowedPath(canvas, fRectPath, SkTMax(1.0f, 4+fZDelta), paint, kAmbientAlpha,
                                lightPos, kLightWidth, kSpotAlpha);
 
         paint.setColor(SK_ColorBLUE);
         canvas->translate(-250, 110);
         lightPos.fX -= 250;
         lightPos.fY += 110;
-        this->drawShadowedPath(canvas, fCirclePath, 8, paint, 0,
+        this->drawShadowedPath(canvas, fCirclePath, SkTMax(1.0f, 8+fZDelta), paint, 0,
                                lightPos, kLightWidth, 0.5f);
 
         paint.setColor(SK_ColorGREEN);
         canvas->translate(250, 0);
         lightPos.fX += 250;
-        this->drawShadowedPath(canvas, fRRPath, 64, paint, kAmbientAlpha,
+        this->drawShadowedPath(canvas, fRRPath, SkTMax(1.0f, 64+fZDelta), paint, kAmbientAlpha,
                                lightPos, kLightWidth, kSpotAlpha);
 
         paint.setColor(SK_ColorYELLOW);
         canvas->translate(-250, 110);
         lightPos.fX -= 250;
         lightPos.fY += 110;
-        this->drawShadowedPath(canvas, fFunkyRRPath, 8, paint, kAmbientAlpha,
+        this->drawShadowedPath(canvas, fFunkyRRPath, SkTMax(1.0f, 8+fZDelta), paint, kAmbientAlpha,
                                lightPos, kLightWidth, kSpotAlpha);
 
         paint.setColor(SK_ColorCYAN);