Home | History | Annotate | Download | only in extensions
      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.
      4 
      5 // Custom binding for the systemIndicator API.
      6 // TODO(dewittj) Refactor custom binding to reduce redundancy between the
      7 // extension action APIs.
      8 
      9 var binding = require('binding').Binding.create('systemIndicator');
     10 
     11 var setIcon = require('setIcon').setIcon;
     12 var sendRequest = require('sendRequest').sendRequest;
     13 
     14 binding.registerCustomHook(function(bindingsAPI) {
     15   var apiFunctions = bindingsAPI.apiFunctions;
     16 
     17   apiFunctions.setHandleRequest('setIcon', function(details, callback) {
     18     setIcon(details, function(args) {
     19       sendRequest(this.name, [args, callback], this.definition.parameters);
     20     }.bind(this));
     21   });
     22 });
     23 
     24 exports.binding = binding.generate();
     25