pdfviewer: add indexed rbg image support, enhanche caching(setData) for SkPdfObject
Review URL: https://codereview.chromium.org/21738005
git-svn-id: http://skia.googlecode.com/svn/trunk@10534 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/experimental/PdfViewer/pdfparser/native/SkNativeParsedPDF.cpp b/experimental/PdfViewer/pdfparser/native/SkNativeParsedPDF.cpp
index 306bf07..6386f98 100644
--- a/experimental/PdfViewer/pdfparser/native/SkNativeParsedPDF.cpp
+++ b/experimental/PdfViewer/pdfparser/native/SkNativeParsedPDF.cpp
@@ -306,7 +306,7 @@
}
if (storeCatalog) {
- const SkPdfObject* ref = trailer->Root(NULL);
+ SkPdfObject* ref = trailer->Root(NULL);
if (ref == NULL || !ref->isReference()) {
// TODO(edisonn): oops, we have to fix the corrup pdf file
return current;
@@ -384,7 +384,7 @@
}
void SkNativeParsedPDF::fillPages(SkPdfPageTreeNodeDictionary* tree) {
- const SkPdfArray* kids = tree->Kids(this);
+ SkPdfArray* kids = tree->Kids(this);
if (kids == NULL) {
*fPages.append() = (SkPdfPageObjectDictionary*)tree;
return;
@@ -392,7 +392,7 @@
int cnt = kids->size();
for (int i = 0; i < cnt; i++) {
- const SkPdfObject* obj = resolveReference(kids->objAtAIndex(i));
+ SkPdfObject* obj = resolveReference(kids->objAtAIndex(i));
if (fMapper->mapPageObjectDictionary(obj) != kPageObjectDictionary_SkPdfObjectType) {
*fPages.append() = (SkPdfPageObjectDictionary*)obj;
} else {
@@ -506,7 +506,7 @@
// TODO(edisonn): fix infinite loop if ref to itself!
// TODO(edisonn): perf, fix refs at load, and resolve will simply return fResolvedReference?
-SkPdfObject* SkNativeParsedPDF::resolveReference(const SkPdfObject* ref) {
+SkPdfObject* SkNativeParsedPDF::resolveReference(SkPdfObject* ref) {
if (ref && ref->isReference()) {
int id = ref->referenceId();
// TODO(edisonn): generation/updates not supported now