1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "skia/ext/opacity_draw_filter.h" 6 #include "third_party/skia/include/core/SkPaint.h" 7 8 namespace skia { 9 10 OpacityDrawFilter::OpacityDrawFilter(float opacity, 11 bool disable_image_filtering) 12 : alpha_(SkScalarRoundToInt(opacity * 255)), 13 disable_image_filtering_(disable_image_filtering) {} 14 15 OpacityDrawFilter::~OpacityDrawFilter() {} 16 17 bool OpacityDrawFilter::filter(SkPaint* paint, Type type) { 18 if (alpha_ < 255) 19 paint->setAlpha(alpha_); 20 if (disable_image_filtering_) 21 paint->setFilterLevel(SkPaint::kNone_FilterLevel); 22 return true; 23 } 24 25 } // namespace skia 26 27 28