OLD | NEW |
1 // Copyright (c) 2012 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/shared_impl/ppp_instance_combined.h" | 5 #include "ppapi/shared_impl/ppp_instance_combined.h" |
6 #include "ppapi/shared_impl/proxy_lock.h" | |
7 | 6 |
8 namespace ppapi { | 7 namespace ppapi { |
9 | 8 |
10 PPP_Instance_Combined::PPP_Instance_Combined( | 9 PPP_Instance_Combined::PPP_Instance_Combined( |
11 const PPP_Instance_1_0& instance_if) | 10 const PPP_Instance_1_0& instance_if) |
12 : did_change_view_1_0_(instance_if.DidChangeView) { | 11 : did_change_view_1_0_(instance_if.DidChangeView) { |
13 instance_1_1_.DidCreate = instance_if.DidCreate; | 12 instance_1_1_.DidCreate = instance_if.DidCreate; |
14 instance_1_1_.DidDestroy = instance_if.DidDestroy; | 13 instance_1_1_.DidDestroy = instance_if.DidDestroy; |
15 instance_1_1_.DidChangeView = NULL; | 14 instance_1_1_.DidChangeView = NULL; |
16 instance_1_1_.DidChangeFocus = instance_if.DidChangeFocus; | 15 instance_1_1_.DidChangeFocus = instance_if.DidChangeFocus; |
17 instance_1_1_.HandleDocumentLoad = instance_if.HandleDocumentLoad; | 16 instance_1_1_.HandleDocumentLoad = instance_if.HandleDocumentLoad; |
18 } | 17 } |
19 | 18 |
20 PPP_Instance_Combined::PPP_Instance_Combined( | 19 PPP_Instance_Combined::PPP_Instance_Combined( |
21 const PPP_Instance_1_1& instance_if) | 20 const PPP_Instance_1_1& instance_if) |
22 : instance_1_1_(instance_if), | 21 : instance_1_1_(instance_if), |
23 did_change_view_1_0_(NULL) { | 22 did_change_view_1_0_(NULL) { |
24 } | 23 } |
25 | 24 |
26 PP_Bool PPP_Instance_Combined::DidCreate(PP_Instance instance, | 25 PP_Bool PPP_Instance_Combined::DidCreate(PP_Instance instance, |
27 uint32_t argc, | 26 uint32_t argc, |
28 const char* argn[], | 27 const char* argn[], |
29 const char* argv[]) { | 28 const char* argv[]) { |
30 return CallWhileUnlocked(instance_1_1_.DidCreate, instance, argc, argn, argv); | 29 return instance_1_1_.DidCreate(instance, argc, argn, argv); |
31 } | 30 } |
32 | 31 |
33 void PPP_Instance_Combined::DidDestroy(PP_Instance instance) { | 32 void PPP_Instance_Combined::DidDestroy(PP_Instance instance) { |
34 return CallWhileUnlocked(instance_1_1_.DidDestroy, instance); | 33 return instance_1_1_.DidDestroy(instance); |
35 } | 34 } |
36 | 35 |
37 void PPP_Instance_Combined::DidChangeView(PP_Instance instance, | 36 void PPP_Instance_Combined::DidChangeView(PP_Instance instance, |
38 PP_Resource view_changed_resource, | 37 PP_Resource view_changed_resource, |
39 const struct PP_Rect* position, | 38 const struct PP_Rect* position, |
40 const struct PP_Rect* clip) { | 39 const struct PP_Rect* clip) { |
41 if (instance_1_1_.DidChangeView) { | 40 if (instance_1_1_.DidChangeView) |
42 CallWhileUnlocked(instance_1_1_.DidChangeView, | 41 instance_1_1_.DidChangeView(instance, view_changed_resource); |
43 instance, | 42 else |
44 view_changed_resource); | 43 did_change_view_1_0_(instance, position, clip); |
45 } else { | |
46 CallWhileUnlocked(did_change_view_1_0_, instance, position, clip); | |
47 } | |
48 } | 44 } |
49 | 45 |
50 void PPP_Instance_Combined::DidChangeFocus(PP_Instance instance, | 46 void PPP_Instance_Combined::DidChangeFocus(PP_Instance instance, |
51 PP_Bool has_focus) { | 47 PP_Bool has_focus) { |
52 CallWhileUnlocked(instance_1_1_.DidChangeFocus, instance, has_focus); | 48 instance_1_1_.DidChangeFocus(instance, has_focus); |
53 } | 49 } |
54 | 50 |
55 PP_Bool PPP_Instance_Combined::HandleDocumentLoad(PP_Instance instance, | 51 PP_Bool PPP_Instance_Combined::HandleDocumentLoad(PP_Instance instance, |
56 PP_Resource url_loader) { | 52 PP_Resource url_loader) { |
57 return CallWhileUnlocked(instance_1_1_.HandleDocumentLoad, | 53 return instance_1_1_.HandleDocumentLoad(instance, url_loader); |
58 instance, | |
59 url_loader); | |
60 } | 54 } |
61 | 55 |
62 } // namespace ppapi | 56 } // namespace ppapi |
63 | 57 |
OLD | NEW |