electron_content_client.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // Copyright (c) 2014 GitHub, Inc.
  2. // Use of this source code is governed by the MIT license that can be
  3. // found in the LICENSE file.
  4. #ifndef ELECTRON_SHELL_APP_ELECTRON_CONTENT_CLIENT_H_
  5. #define ELECTRON_SHELL_APP_ELECTRON_CONTENT_CLIENT_H_
  6. #include <string_view>
  7. #include <vector>
  8. #include "content/public/common/content_client.h"
  9. namespace electron {
  10. class ElectronContentClient : public content::ContentClient {
  11. public:
  12. ElectronContentClient();
  13. ~ElectronContentClient() override;
  14. // disable copy
  15. ElectronContentClient(const ElectronContentClient&) = delete;
  16. ElectronContentClient& operator=(const ElectronContentClient&) = delete;
  17. protected:
  18. // content::ContentClient:
  19. std::u16string GetLocalizedString(int message_id) override;
  20. std::string_view GetDataResource(int resource_id,
  21. ui::ResourceScaleFactor) override;
  22. gfx::Image& GetNativeImageNamed(int resource_id) override;
  23. base::RefCountedMemory* GetDataResourceBytes(int resource_id) override;
  24. void AddAdditionalSchemes(Schemes* schemes) override;
  25. void AddPlugins(std::vector<content::ContentPluginInfo>* plugins) override;
  26. void AddContentDecryptionModules(
  27. std::vector<content::CdmInfo>* cdms,
  28. std::vector<media::CdmHostFilePath>* cdm_host_file_paths) override;
  29. };
  30. } // namespace electron
  31. #endif // ELECTRON_SHELL_APP_ELECTRON_CONTENT_CLIENT_H_