1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Custom binding for the pageActions API.
7 var binding = require('binding').Binding.create('pageActions');
9 var Event = require('event_bindings').Event;
10 var pageActionsNatives = requireNative('page_actions');
12 binding.registerCustomHook(function(bindingsAPI, extensionId) {
13 var pageActions = pageActionsNatives.GetCurrentPageActions(extensionId);
14 var pageActionsApi = bindingsAPI.compiledApi;
15 var oldStyleEventName = 'pageActions';
16 for (var i = 0; i < pageActions.length; ++i) {
17 // Setup events for each extension_id/page_action_id string we find.
18 pageActionsApi[pageActions[i]] = new Event(oldStyleEventName);
22 exports.binding = binding.generate();