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#ifndef ANDROID_WEBVIEW_NATIVE_AW_PICTURE_H_ 6#define ANDROID_WEBVIEW_NATIVE_AW_PICTURE_H_ 7 8#include <jni.h> 9 10#include "base/android/jni_weak_ref.h" 11#include "base/android/scoped_java_ref.h" 12#include "base/memory/scoped_ptr.h" 13#include "content/public/browser/web_contents_observer.h" 14#include "skia/ext/refptr.h" 15 16class SkPicture; 17 18namespace android_webview { 19 20class AwPicture { 21 public: 22 AwPicture(skia::RefPtr<SkPicture> picture); 23 ~AwPicture(); 24 25 // Methods called from Java. 26 void Destroy(JNIEnv* env, jobject obj); 27 jint GetWidth(JNIEnv* env, jobject obj); 28 jint GetHeight(JNIEnv* env, jobject obj); 29 void Draw(JNIEnv* env, jobject obj, jobject canvas); 30 31 private: 32 skia::RefPtr<SkPicture> picture_; 33 34 DISALLOW_IMPLICIT_CONSTRUCTORS(AwPicture); 35}; 36 37bool RegisterAwPicture(JNIEnv* env); 38 39} // android_webview 40 41#endif // ANDROID_WEBVIEW_NATIVE_AW_PICTURE_ 42