Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(860)

Side by Side Diff: ppapi/cpp/instance.cc

Issue 7285010: Implement an input event resource. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 #include "ppapi/cpp/instance.h" 5 #include "ppapi/cpp/instance.h"
6 6
7 #include "ppapi/c/pp_errors.h"
8 #include "ppapi/c/ppb_input_event.h"
7 #include "ppapi/c/ppb_instance.h" 9 #include "ppapi/c/ppb_instance.h"
8 #include "ppapi/c/ppb_messaging.h" 10 #include "ppapi/c/ppb_messaging.h"
9 #include "ppapi/cpp/common.h" 11 #include "ppapi/cpp/common.h"
10 #include "ppapi/cpp/dev/surface_3d_dev.h" 12 #include "ppapi/cpp/dev/surface_3d_dev.h"
11 #include "ppapi/cpp/graphics_2d.h" 13 #include "ppapi/cpp/graphics_2d.h"
12 #include "ppapi/cpp/image_data.h" 14 #include "ppapi/cpp/image_data.h"
13 #include "ppapi/cpp/logging.h" 15 #include "ppapi/cpp/logging.h"
14 #include "ppapi/cpp/module.h" 16 #include "ppapi/cpp/module.h"
15 #include "ppapi/cpp/module_impl.h" 17 #include "ppapi/cpp/module_impl.h"
16 #include "ppapi/cpp/point.h" 18 #include "ppapi/cpp/point.h"
17 #include "ppapi/cpp/resource.h" 19 #include "ppapi/cpp/resource.h"
18 #include "ppapi/cpp/var.h" 20 #include "ppapi/cpp/var.h"
19 21
20 namespace pp { 22 namespace pp {
21 23
22 namespace { 24 namespace {
23 25
26 template <> const char* interface_name<PPB_InputEvent>() {
27 return PPB_INPUT_EVENT_INTERFACE;
28 }
29
24 template <> const char* interface_name<PPB_Instance>() { 30 template <> const char* interface_name<PPB_Instance>() {
25 return PPB_INSTANCE_INTERFACE; 31 return PPB_INSTANCE_INTERFACE;
26 } 32 }
27 33
28 template <> const char* interface_name<PPB_Messaging>() { 34 template <> const char* interface_name<PPB_Messaging>() {
29 return PPB_MESSAGING_INTERFACE; 35 return PPB_MESSAGING_INTERFACE;
30 } 36 }
31 37
32 } // namespace 38 } // namespace
33 39
(...skipping 24 matching lines...) Expand all
58 64
59 65
60 bool Instance::HandleDocumentLoad(const URLLoader& /*url_loader*/) { 66 bool Instance::HandleDocumentLoad(const URLLoader& /*url_loader*/) {
61 return false; 67 return false;
62 } 68 }
63 69
64 bool Instance::HandleInputEvent(const PP_InputEvent& /*event*/) { 70 bool Instance::HandleInputEvent(const PP_InputEvent& /*event*/) {
65 return false; 71 return false;
66 } 72 }
67 73
74 bool Instance::HandleInputEvent(const InputEvent& /*event*/) {
75 return false;
76 }
77
68 void Instance::HandleMessage(const Var& /*message*/) { 78 void Instance::HandleMessage(const Var& /*message*/) {
69 return; 79 return;
70 } 80 }
71 81
72 #ifndef PPAPI_INSTANCE_REMOVE_SCRIPTING 82 #ifndef PPAPI_INSTANCE_REMOVE_SCRIPTING
73 Var Instance::GetWindowObject() { 83 Var Instance::GetWindowObject() {
74 if (!has_interface<PPB_Instance>()) 84 if (!has_interface<PPB_Instance>())
75 return Var(); 85 return Var();
76 return Var(Var::PassRef(), 86 return Var(Var::PassRef(),
77 get_interface<PPB_Instance>()->GetWindowObject(pp_instance())); 87 get_interface<PPB_Instance>()->GetWindowObject(pp_instance()));
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 pp_instance(), graphics.pp_resource())); 124 pp_instance(), graphics.pp_resource()));
115 } 125 }
116 126
117 bool Instance::IsFullFrame() { 127 bool Instance::IsFullFrame() {
118 if (!has_interface<PPB_Instance>()) 128 if (!has_interface<PPB_Instance>())
119 return false; 129 return false;
120 return PPBoolToBool(get_interface<PPB_Instance>()->IsFullFrame( 130 return PPBoolToBool(get_interface<PPB_Instance>()->IsFullFrame(
121 pp_instance())); 131 pp_instance()));
122 } 132 }
123 133
134 int32_t Instance::RequestInputEvents(uint32_t event_classes) {
135 if (!has_interface<PPB_InputEvent>())
136 return PP_ERROR_NOINTERFACE;
137 return get_interface<PPB_InputEvent>()->RequestInputEvents(pp_instance(),
138 event_classes);
139 }
140
141 int32_t Instance::RequestFilteringInputEvents(uint32_t event_classes) {
142 if (!has_interface<PPB_InputEvent>())
143 return PP_ERROR_NOINTERFACE;
144 return get_interface<PPB_InputEvent>()->RequestFilteringInputEvents(
145 pp_instance(), event_classes);
146 }
147
148 void Instance::ClearInputEventRequest(uint32_t event_classes) {
149 if (!has_interface<PPB_InputEvent>())
150 return;
151 get_interface<PPB_InputEvent>()->ClearInputEventRequest(pp_instance(),
152 event_classes);
153 }
154
124 void Instance::PostMessage(const Var& message) { 155 void Instance::PostMessage(const Var& message) {
125 if (!has_interface<PPB_Messaging>()) 156 if (!has_interface<PPB_Messaging>())
126 return; 157 return;
127 get_interface<PPB_Messaging>()->PostMessage(pp_instance(), 158 get_interface<PPB_Messaging>()->PostMessage(pp_instance(),
128 message.pp_var()); 159 message.pp_var());
129 } 160 }
130 161
131 void Instance::AddPerInstanceObject(const std::string& interface_name, 162 void Instance::AddPerInstanceObject(const std::string& interface_name,
132 void* object) { 163 void* object) {
133 // Ensure we're not trying to register more than one object per interface 164 // Ensure we're not trying to register more than one object per interface
(...skipping 28 matching lines...) Expand all
162 if (!that) 193 if (!that)
163 return NULL; 194 return NULL;
164 InterfaceNameToObjectMap::iterator found = 195 InterfaceNameToObjectMap::iterator found =
165 that->interface_name_to_objects_.find(interface_name); 196 that->interface_name_to_objects_.find(interface_name);
166 if (found == that->interface_name_to_objects_.end()) 197 if (found == that->interface_name_to_objects_.end())
167 return NULL; 198 return NULL;
168 return found->second; 199 return found->second;
169 } 200 }
170 201
171 } // namespace pp 202 } // namespace pp
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698