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 #include "chrome/renderer/extensions/tts_custom_bindings.h" 6 7 #include <string> 8 9 #include "base/bind.h" 10 #include "grit/renderer_resources.h" 11 #include "v8/include/v8.h" 12 13 namespace extensions { 14 15 TTSCustomBindings::TTSCustomBindings( 16 Dispatcher* dispatcher, ChromeV8Context* context) 17 : ChromeV8Extension(dispatcher, context) { 18 RouteFunction("GetNextTTSEventId", 19 base::Bind(&TTSCustomBindings::GetNextTTSEventId, 20 base::Unretained(this))); 21 } 22 23 void TTSCustomBindings::GetNextTTSEventId( 24 const v8::FunctionCallbackInfo<v8::Value>& args) { 25 // Note: this works because the TTS API only works in the 26 // extension process, not content scripts. 27 static int32_t next_tts_event_id = 1; 28 args.GetReturnValue().Set(next_tts_event_id++); 29 } 30 31 } // namespace extensions 32