| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef PPAPI_PROXY_PLUGIN_PROXY_DELEGATE_H_ |
| #define PPAPI_PROXY_PLUGIN_PROXY_DELEGATE_H_ |
| |
| #include <string> |
| |
| namespace IPC { |
| class Sender; |
| } |
| |
| namespace ppapi { |
| namespace proxy { |
| |
| class PPAPI_PROXY_EXPORT PluginProxyDelegate { |
| public: |
| virtual ~PluginProxyDelegate() {} |
| |
| // Returns the channel for sending to the browser. |
| // Note: The returned sender must be thread-safe. It might be used while the |
| // proxy lock is not acquired. Please see the implementation of |
| // PluginGlobals::BrowserSender. |
| virtual IPC::Sender* GetBrowserSender() = 0; |
| |
| // Returns the language code of the current UI language. |
| virtual std::string GetUILanguage() = 0; |
| |
| // Performs Windows-specific font caching in the browser for the given |
| // LOGFONTW. Does nothing on non-Windows platforms. |
| // Note: This method must be thread-safe. |
| virtual void PreCacheFont(const void* logfontw) = 0; |
| |
| // Sets the active url which is reported by breakpad. |
| virtual void SetActiveURL(const std::string& url) = 0; |
| |
| // Validates the font description, and uses it to create a |
| // BrowserFontResource_Trusted resource. |
| virtual PP_Resource CreateBrowserFont( |
| Connection connection, |
| PP_Instance instance, |
| const PP_BrowserFont_Trusted_Description& desc, |
| const Preferences& prefs) = 0; |
| }; |
| |
| } // namespace proxy |
| } // namespace ppapi |
| |
| #endif // PPAPI_PROXY_PLUGIN_PROXY_DELEGATE_H_ |