summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/extensions/set_icon_natives.h
diff options
context:
space:
mode:
authorkoz@chromium.org <koz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-05 07:19:29 +0000
committerkoz@chromium.org <koz@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-04-05 07:19:29 +0000
commitd0920e9890ab5770925fd9ced9baf52263ccbc2f (patch)
treef64fa195a0de62050ddeeb6f24fbe9bb3a879a30 /chrome/renderer/extensions/set_icon_natives.h
parentcf881f057a14eacb46c60be6dbbc39af41d104bc (diff)
downloadchromium_src-d0920e9890ab5770925fd9ced9baf52263ccbc2f.zip
chromium_src-d0920e9890ab5770925fd9ced9baf52263ccbc2f.tar.gz
chromium_src-d0920e9890ab5770925fd9ced9baf52263ccbc2f.tar.bz2
Split SchemaGeneratedBindings up into smaller, more targetted native handlers.
BUG=104100 TEST=existing browser tests Review URL: http://codereview.chromium.org/9918006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130855 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/extensions/set_icon_natives.h')
-rw-r--r--chrome/renderer/extensions/set_icon_natives.h39
1 files changed, 39 insertions, 0 deletions
diff --git a/chrome/renderer/extensions/set_icon_natives.h b/chrome/renderer/extensions/set_icon_natives.h
new file mode 100644
index 0000000..4d22b78
--- /dev/null
+++ b/chrome/renderer/extensions/set_icon_natives.h
@@ -0,0 +1,39 @@
+// 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 CHROME_RENDERER_EXTENSIONS_SET_ICON_NATIVES_H_
+#define CHROME_RENDERER_EXTENSIONS_SET_ICON_NATIVES_H_
+#pragma once
+
+#include "chrome/renderer/extensions/chrome_v8_extension.h"
+#include "chrome/renderer/extensions/extension_dispatcher.h"
+
+#include "v8/include/v8.h"
+
+class ExtensionRequestSender;
+
+namespace base {
+class Value;
+}
+
+namespace extensions {
+
+// Functions exposed to extension JS to implement the setIcon extension API.
+class SetIconNatives : public ChromeV8Extension {
+ public:
+ SetIconNatives(ExtensionDispatcher* extension_dispatcher,
+ ExtensionRequestSender* request_sender);
+
+ private:
+ bool ConvertImageDataToBitmapValue(const v8::Arguments& args,
+ Value** bitmap_value);
+ v8::Handle<v8::Value> SetIconCommon(const v8::Arguments& args);
+ ExtensionRequestSender* request_sender_;
+
+ DISALLOW_COPY_AND_ASSIGN(SetIconNatives);
+};
+
+} // namespace extensions
+
+#endif // CHROME_RENDERER_EXTENSIONS_SET_ICON_NATIVES_H_