OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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/c/dev/ppb_view_dev.h" | 5 #include "ppapi/c/dev/ppb_view_dev.h" |
6 #include "ppapi/c/ppb_view.h" | 6 #include "ppapi/c/ppb_view.h" |
7 #include "ppapi/shared_impl/ppb_view_shared.h" | 7 #include "ppapi/shared_impl/ppb_view_shared.h" |
8 #include "ppapi/thunk/enter.h" | 8 #include "ppapi/thunk/enter.h" |
9 #include "ppapi/thunk/ppb_view_api.h" | 9 #include "ppapi/thunk/ppb_view_api.h" |
10 #include "ppapi/thunk/thunk.h" | 10 #include "ppapi/thunk/thunk.h" |
11 | 11 |
12 namespace ppapi { | 12 namespace ppapi { |
13 namespace thunk { | 13 namespace thunk { |
14 | 14 |
15 namespace { | 15 namespace { |
16 | 16 |
17 typedef EnterResource<PPB_View_API> EnterView; | 17 typedef EnterResource<PPB_View_API> EnterView; |
18 | 18 |
19 bool IsRectVisible(const PP_Rect& rect) { | 19 bool IsRectVisible(const PP_Rect& rect) { |
20 return rect.size.width > 0 && rect.size.height > 0; | 20 return rect.size.width > 0 && rect.size.height > 0; |
21 } | 21 } |
22 | 22 |
23 PP_Bool IsView(PP_Resource resource) { | 23 PP_Bool IsView(PP_Resource resource) { |
24 EnterView enter(resource, false); | 24 EnterView enter(resource, false); |
25 return enter.succeeded() ? PP_TRUE : PP_FALSE; | 25 return enter.succeeded() ? PP_TRUE : PP_FALSE; |
26 } | 26 } |
27 | 27 |
28 PP_Bool GetSize(PP_Resource resource, PP_Size* size) { | |
29 EnterView enter(resource, true); | |
30 if (enter.failed() || !size) | |
31 return PP_FALSE; | |
32 *size = enter.object()->GetData().rect.size; | |
33 return PP_TRUE; | |
34 } | |
35 | |
36 PP_Bool GetRect(PP_Resource resource, PP_Rect* viewport) { | 28 PP_Bool GetRect(PP_Resource resource, PP_Rect* viewport) { |
37 EnterView enter(resource, true); | 29 EnterView enter(resource, true); |
38 if (enter.failed() || !viewport) | 30 if (enter.failed() || !viewport) |
39 return PP_FALSE; | 31 return PP_FALSE; |
40 *viewport = enter.object()->GetData().rect; | 32 *viewport = enter.object()->GetData().rect; |
41 return PP_TRUE; | 33 return PP_TRUE; |
42 } | 34 } |
43 | 35 |
44 PP_Bool IsFullscreen(PP_Resource resource) { | 36 PP_Bool IsFullscreen(PP_Resource resource) { |
45 EnterView enter(resource, true); | 37 EnterView enter(resource, true); |
(...skipping 10 matching lines...) Expand all Loading... |
56 IsRectVisible(enter.object()->GetData().clip_rect)); | 48 IsRectVisible(enter.object()->GetData().clip_rect)); |
57 } | 49 } |
58 | 50 |
59 PP_Bool IsPageVisible(PP_Resource resource) { | 51 PP_Bool IsPageVisible(PP_Resource resource) { |
60 EnterView enter(resource, true); | 52 EnterView enter(resource, true); |
61 if (enter.failed()) | 53 if (enter.failed()) |
62 return PP_FALSE; | 54 return PP_FALSE; |
63 return PP_FromBool(enter.object()->GetData().is_page_visible); | 55 return PP_FromBool(enter.object()->GetData().is_page_visible); |
64 } | 56 } |
65 | 57 |
66 PP_Bool IsClipVisible(PP_Resource resource) { | |
67 EnterView enter(resource, true); | |
68 if (enter.failed()) | |
69 return PP_FALSE; | |
70 return PP_FromBool(IsRectVisible(enter.object()->GetData().clip_rect)); | |
71 } | |
72 | |
73 PP_Bool GetClipRect(PP_Resource resource, PP_Rect* clip) { | 58 PP_Bool GetClipRect(PP_Resource resource, PP_Rect* clip) { |
74 EnterView enter(resource, true); | 59 EnterView enter(resource, true); |
75 if (enter.failed() || !clip) | 60 if (enter.failed() || !clip) |
76 return PP_FALSE; | 61 return PP_FALSE; |
77 *clip = enter.object()->GetData().clip_rect; | 62 *clip = enter.object()->GetData().clip_rect; |
78 return PP_TRUE; | 63 return PP_TRUE; |
79 } | 64 } |
80 | 65 |
81 float GetDeviceScale(PP_Resource resource) { | 66 float GetDeviceScale(PP_Resource resource) { |
82 EnterView enter(resource, true); | 67 EnterView enter(resource, true); |
(...skipping 28 matching lines...) Expand all Loading... |
111 const PPB_View* GetPPB_View_1_0_Thunk() { | 96 const PPB_View* GetPPB_View_1_0_Thunk() { |
112 return &g_ppb_view_thunk; | 97 return &g_ppb_view_thunk; |
113 } | 98 } |
114 | 99 |
115 const PPB_View_Dev* GetPPB_View_Dev_0_1_Thunk() { | 100 const PPB_View_Dev* GetPPB_View_Dev_0_1_Thunk() { |
116 return &g_ppb_view_dev_thunk; | 101 return &g_ppb_view_dev_thunk; |
117 } | 102 } |
118 | 103 |
119 } // namespace thunk | 104 } // namespace thunk |
120 } // namespace ppapi | 105 } // namespace ppapi |
OLD | NEW |