diff options
Diffstat (limited to 'chromium/ppapi/proxy/browser_font_singleton_resource.h')
-rw-r--r-- | chromium/ppapi/proxy/browser_font_singleton_resource.h | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/chromium/ppapi/proxy/browser_font_singleton_resource.h b/chromium/ppapi/proxy/browser_font_singleton_resource.h new file mode 100644 index 00000000000..50b88dcbb29 --- /dev/null +++ b/chromium/ppapi/proxy/browser_font_singleton_resource.h @@ -0,0 +1,42 @@ +// 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_BROWSER_FONT_SINGLETON_RESOURCE_H_ +#define PPAPI_PROXY_BROWSER_FONT_SINGLETON_RESOURCE_H_ + +#include "ppapi/proxy/connection.h" +#include "ppapi/proxy/plugin_resource.h" +#include "ppapi/thunk/ppb_browser_font_singleton_api.h" + +namespace ppapi { +namespace proxy { + +// This handles the singleton calls (that don't take a PP_Resource parameter) +// on the browser font interface +class BrowserFontSingletonResource + : public PluginResource, + public thunk::PPB_BrowserFont_Singleton_API { + public: + BrowserFontSingletonResource(Connection connection, PP_Instance instance); + virtual ~BrowserFontSingletonResource(); + + // Resource override. + virtual thunk::PPB_BrowserFont_Singleton_API* + AsPPB_BrowserFont_Singleton_API() OVERRIDE; + + // thunk::PPB_BrowserFontSingleton_API implementation. + virtual PP_Var GetFontFamilies(PP_Instance instance) OVERRIDE; + + private: + // Lazily-filled-in list of font families. + std::string families_; + + DISALLOW_COPY_AND_ASSIGN(BrowserFontSingletonResource); +}; + +} // namespace proxy +} // namespace ppapi + +#endif // PPAPI_PROXY_BROWSER_FONT_SINGLETON_RESOURCE_H_ + |