ContentResolverResourceProvider: honor also absolute file references in theme resources (#823)

This commit is contained in:
Emux 2021-03-31 15:04:26 +03:00 committed by GitHub
parent 1245158ba3
commit ef2d2dd197
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -98,7 +98,9 @@ public class ContentResolverResourceProvider implements XmlThemeResourceProvider
if (doc.isDirectory) {
buildCacheLevel(prefix + doc.name + "/", doc.uri);
} else {
resourceUriCache.put(prefix + doc.name, doc.uri);
// Store both relative urls and absolute urls
resourceUriCache.put(CanvasAdapter.PREFIX_FILE + prefix + doc.name, doc.uri);
resourceUriCache.put(CanvasAdapter.PREFIX_FILE + "/" + prefix + doc.name, doc.uri);
}
}
}
@ -172,6 +174,6 @@ public class ContentResolverResourceProvider implements XmlThemeResourceProvider
// Convert "tree uri" to a "document uri"
dirUri = DocumentsContract.buildDocumentUriUsingTree(dirUri, DocumentsContract.getTreeDocumentId(dirUri));
}
buildCacheLevel(CanvasAdapter.PREFIX_FILE, dirUri);
buildCacheLevel("", dirUri);
}
}