| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // Note that the single accessor, Module::Get(), is not actually implemented | 5 // Note that the single accessor, Module::Get(), is not actually implemented |
| 6 // in this file. This is an intentional hook that allows users of ppapi's | 6 // in this file. This is an intentional hook that allows users of ppapi's |
| 7 // C++ wrapper objects to provide difference semantics for how the singleton | 7 // C++ wrapper objects to provide difference semantics for how the singleton |
| 8 // object is accessed. | 8 // object is accessed. |
| 9 // | 9 // |
| 10 // In general, users of ppapi will also link in ppp_entrypoints.cc, which | 10 // In general, users of ppapi will also link in ppp_entrypoints.cc, which |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 125 PP_Resource pp_url_loader) { | 125 PP_Resource pp_url_loader) { |
| 126 Module* module_singleton = Module::Get(); | 126 Module* module_singleton = Module::Get(); |
| 127 if (!module_singleton) | 127 if (!module_singleton) |
| 128 return PP_FALSE; | 128 return PP_FALSE; |
| 129 Instance* instance = module_singleton->InstanceForPPInstance(pp_instance); | 129 Instance* instance = module_singleton->InstanceForPPInstance(pp_instance); |
| 130 if (!instance) | 130 if (!instance) |
| 131 return PP_FALSE; | 131 return PP_FALSE; |
| 132 return PP_FromBool(instance->HandleDocumentLoad(URLLoader(pp_url_loader))); | 132 return PP_FromBool(instance->HandleDocumentLoad(URLLoader(pp_url_loader))); |
| 133 } | 133 } |
| 134 | 134 |
| 135 #ifndef PPAPI_INSTANCE_REMOVE_SCRIPTING | |
| 136 PP_Var Instance_GetInstanceObject(PP_Instance pp_instance) { | |
| 137 Module* module_singleton = Module::Get(); | |
| 138 if (!module_singleton) | |
| 139 return Var().Detach(); | |
| 140 Instance* instance = module_singleton->InstanceForPPInstance(pp_instance); | |
| 141 if (!instance) | |
| 142 return Var().Detach(); | |
| 143 return instance->GetInstanceObject().Detach(); | |
| 144 } | |
| 145 #endif | |
| 146 | |
| 147 static PPP_Instance instance_interface = { | 135 static PPP_Instance instance_interface = { |
| 148 &Instance_DidCreate, | 136 &Instance_DidCreate, |
| 149 &Instance_DidDestroy, | 137 &Instance_DidDestroy, |
| 150 &Instance_DidChangeView, | 138 &Instance_DidChangeView, |
| 151 &Instance_DidChangeFocus, | 139 &Instance_DidChangeFocus, |
| 152 &Instance_HandleInputEvent, | 140 &Instance_HandleInputEvent, |
| 153 &Instance_HandleDocumentLoad, | 141 &Instance_HandleDocumentLoad |
| 154 #ifndef PPAPI_INSTANCE_REMOVE_SCRIPTING | |
| 155 &Instance_GetInstanceObject | |
| 156 #endif | |
| 157 }; | 142 }; |
| 158 | 143 |
| 159 // PPP_Messaging implementation ------------------------------------------------ | 144 // PPP_Messaging implementation ------------------------------------------------ |
| 160 | 145 |
| 161 void Messaging_HandleMessage(PP_Instance pp_instance, PP_Var var) { | 146 void Messaging_HandleMessage(PP_Instance pp_instance, PP_Var var) { |
| 162 Module* module_singleton = Module::Get(); | 147 Module* module_singleton = Module::Get(); |
| 163 if (!module_singleton) | 148 if (!module_singleton) |
| 164 return; | 149 return; |
| 165 Instance* instance = module_singleton->InstanceForPPInstance(pp_instance); | 150 Instance* instance = module_singleton->InstanceForPPInstance(pp_instance); |
| 166 if (!instance) | 151 if (!instance) |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 237 const PPB_Core* core = reinterpret_cast<const PPB_Core*>(GetBrowserInterface( | 222 const PPB_Core* core = reinterpret_cast<const PPB_Core*>(GetBrowserInterface( |
| 238 PPB_CORE_INTERFACE)); | 223 PPB_CORE_INTERFACE)); |
| 239 if (!core) | 224 if (!core) |
| 240 return false; | 225 return false; |
| 241 core_ = new Core(core); | 226 core_ = new Core(core); |
| 242 | 227 |
| 243 return Init(); | 228 return Init(); |
| 244 } | 229 } |
| 245 | 230 |
| 246 } // namespace pp | 231 } // namespace pp |
| OLD | NEW |