| #include "libcef/common/resource_bundle_delegate.h" |
| |
| #include "libcef/common/content_client.h" |
| |
| base::FilePath CefResourceBundleDelegate::GetPathForResourcePack( |
| const base::FilePath& pack_path, |
| ui::ScaleFactor scale_factor) { |
| // Only allow the cef pack file to load. |
| if (!content_client_->pack_loading_disabled() && |
| content_client_->allow_pack_file_load()) { |
| return pack_path; |
| } |
| return base::FilePath(); |
| } |
| |
| base::FilePath CefResourceBundleDelegate::GetPathForLocalePack( |
| const base::FilePath& pack_path, |
| const std::string& locale) { |
| if (!content_client_->pack_loading_disabled()) |
| return pack_path; |
| return base::FilePath(); |
| } |
| |
| gfx::Image CefResourceBundleDelegate::GetImageNamed(int resource_id) { |
| return gfx::Image(); |
| } |
| |
| gfx::Image CefResourceBundleDelegate::GetNativeImageNamed(int resource_id) { |
| return gfx::Image(); |
| } |
| |
| base::RefCountedStaticMemory* CefResourceBundleDelegate::LoadDataResourceBytes( |
| int resource_id, |
| ui::ScaleFactor scale_factor) { |
| return nullptr; |
| } |
| |
| bool CefResourceBundleDelegate::GetRawDataResource(int resource_id, |
| ui::ScaleFactor scale_factor, |
| base::StringPiece* value) { |
| if (content_client_->application().get()) { |
| CefRefPtr<CefResourceBundleHandler> handler = |
| content_client_->application()->GetResourceBundleHandler(); |
| if (handler.get()) { |
| void* data = nullptr; |
| size_t data_size = 0; |
| if (scale_factor != ui::SCALE_FACTOR_NONE) { |
| if (handler->GetDataResourceForScale( |
| resource_id, static_cast<cef_scale_factor_t>(scale_factor), |
| data, data_size)) { |
| *value = base::StringPiece(static_cast<char*>(data), data_size); |
| } |
| } else if (handler->GetDataResource(resource_id, data, data_size)) { |
| *value = base::StringPiece(static_cast<char*>(data), data_size); |
| } |
| } |
| } |
| |
| return (content_client_->pack_loading_disabled() || !value->empty()); |
| } |
| |
| bool CefResourceBundleDelegate::GetLocalizedString(int message_id, |
| base::string16* value) { |
| if (content_client_->application().get()) { |
| CefRefPtr<CefResourceBundleHandler> handler = |
| content_client_->application()->GetResourceBundleHandler(); |
| if (handler.get()) { |
| CefString cef_str; |
| if (handler->GetLocalizedString(message_id, cef_str)) |
| *value = cef_str; |
| } |
| } |
| |
| return (content_client_->pack_loading_disabled() || !value->empty()); |
| } |