#ifndef ANDROID_WEBVIEW_BROWSER_GFX_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_
#define ANDROID_WEBVIEW_BROWSER_GFX_JAVA_BROWSER_VIEW_RENDERER_HELPER_H_
#include <jni.h>
#include <memory>
#include "base/android/jni_android.h"
#include "ui/gfx/geometry/point.h"
#include "ui/gfx/geometry/size.h"
class SkCanvas;
struct AwDrawSWFunctionTable;
namespace android_webview {
class SoftwareCanvasHolder {
public:
static std::unique_ptr<SoftwareCanvasHolder> Create(
const base::android::JavaRef<jobject>& java_canvas,
const gfx::Point& scroll_correction,
const gfx::Size& auxiliary_bitmap_size,
bool force_auxiliary_bitmap);
virtual ~SoftwareCanvasHolder() {}
virtual SkCanvas* GetCanvas() = 0;
};
void RasterHelperSetAwDrawSWFunctionTable(AwDrawSWFunctionTable* table);
}
#endif