| Index: extensions/renderer/resources/app_runtime_custom_bindings.js | 
| diff --git a/extensions/renderer/resources/app_runtime_custom_bindings.js b/extensions/renderer/resources/app_runtime_custom_bindings.js | 
| index f4fe24dbb67e216f91b27eeaee69b666530e099a..4ed568ff1e8528ce09875a88504b9f04058414d3 100644 | 
| --- a/extensions/renderer/resources/app_runtime_custom_bindings.js | 
| +++ b/extensions/renderer/resources/app_runtime_custom_bindings.js | 
| @@ -4,53 +4,58 @@ | 
|  | 
| // Custom binding for the chrome.app.runtime API. | 
|  | 
| -var binding = require('binding').Binding.create('app.runtime'); | 
| +define('app.runtime', [ | 
| +    'binding', | 
| +    'event_bindings', | 
| +    'entryIdManager', | 
| +    'file_system_natives', | 
| +    'app_runtime', | 
| +    'array', | 
| +    'console', | 
| +], function(bindings, eventBindings, entryIdManager, fileSystemHelpers, | 
| +            appNatives, $Array, console) { | 
| +  var binding = bindings.Binding.create('app.runtime'); | 
| +  var GetIsolatedFileSystem = fileSystemHelpers.GetIsolatedFileSystem; | 
| +  var DeserializeString = appNatives.DeserializeString; | 
| +  var SerializeToString = appNatives.SerializeToString; | 
| +  var CreateBlob = appNatives.CreateBlob; | 
|  | 
| -var eventBindings = require('event_bindings'); | 
| -var fileSystemHelpers = requireNative('file_system_natives'); | 
| -var GetIsolatedFileSystem = fileSystemHelpers.GetIsolatedFileSystem; | 
| -var appNatives = requireNative('app_runtime'); | 
| -var DeserializeString = appNatives.DeserializeString; | 
| -var SerializeToString = appNatives.SerializeToString; | 
| -var CreateBlob = appNatives.CreateBlob; | 
| -var entryIdManager = require('entryIdManager'); | 
| - | 
| -eventBindings.registerArgumentMassager('app.runtime.onLaunched', | 
| -    function(args, dispatch) { | 
| -  var launchData = args[0]; | 
| -  if (launchData.items) { | 
| -    // An onLaunched corresponding to file_handlers in the app's manifest. | 
| -    var items = []; | 
| -    var numItems = launchData.items.length; | 
| -    var itemLoaded = function(err, item) { | 
| -      if (err) { | 
| -        console.error('Error getting fileEntry, code: ' + err.code); | 
| -      } else { | 
| -        $Array.push(items, item); | 
| -      } | 
| -      if (--numItems === 0) { | 
| -        var data = { isKioskSession: launchData.isKioskSession }; | 
| -        if (items.length !== 0) { | 
| -          data.id = launchData.id; | 
| -          data.items = items; | 
| +  eventBindings.registerArgumentMassager('app.runtime.onLaunched', | 
| +      function(args, dispatch) { | 
| +    var launchData = args[0]; | 
| +    if (launchData.items) { | 
| +      // An onLaunched corresponding to file_handlers in the app's manifest. | 
| +      var items = []; | 
| +      var numItems = launchData.items.length; | 
| +      var itemLoaded = function(err, item) { | 
| +        if (err) { | 
| +          console.error('Error getting fileEntry, code: ' + err.code); | 
| +        } else { | 
| +          $Array.push(items, item); | 
| +        } | 
| +        if (--numItems === 0) { | 
| +          var data = { isKioskSession: launchData.isKioskSession }; | 
| +          if (items.length !== 0) { | 
| +            data.id = launchData.id; | 
| +            data.items = items; | 
| +          } | 
| +          dispatch([data]); | 
| } | 
| -        dispatch([data]); | 
| -      } | 
| -    }; | 
| -    $Array.forEach(launchData.items, function(item) { | 
| -      var fs = GetIsolatedFileSystem(item.fileSystemId); | 
| -      fs.root.getFile(item.baseName, {}, function(fileEntry) { | 
| -        entryIdManager.registerEntry(item.entryId, fileEntry); | 
| -        itemLoaded(null, { entry: fileEntry, type: item.mimeType }); | 
| -      }, function(fileError) { | 
| -        itemLoaded(fileError); | 
| +      }; | 
| +      $Array.forEach(launchData.items, function(item) { | 
| +        var fs = GetIsolatedFileSystem(item.fileSystemId); | 
| +        fs.root.getFile(item.baseName, {}, function(fileEntry) { | 
| +          entryIdManager.registerEntry(item.entryId, fileEntry); | 
| +          itemLoaded(null, { entry: fileEntry, type: item.mimeType }); | 
| +        }, function(fileError) { | 
| +          itemLoaded(fileError); | 
| +        }); | 
| }); | 
| -    }); | 
| -  } else { | 
| -    // Default case. This currently covers an onLaunched corresponding to | 
| -    // url_handlers in the app's manifest. | 
| -    dispatch([launchData]); | 
| -  } | 
| +    } else { | 
| +      // Default case. This currently covers an onLaunched corresponding to | 
| +      // url_handlers in the app's manifest. | 
| +      dispatch([launchData]); | 
| +    } | 
| +  }); | 
| +  return {binding: binding.generate()}; | 
| }); | 
| - | 
| -exports.binding = binding.generate(); | 
|  |