• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 // From trusted/ppb_file_chooser_trusted.idl,
6 //   modified Tue Aug 20 08:13:36 2013.
7 
8 #include "ppapi/c/pp_completion_callback.h"
9 #include "ppapi/c/pp_errors.h"
10 #include "ppapi/c/trusted/ppb_file_chooser_trusted.h"
11 #include "ppapi/shared_impl/tracked_callback.h"
12 #include "ppapi/thunk/enter.h"
13 #include "ppapi/thunk/ppapi_thunk_export.h"
14 #include "ppapi/thunk/ppb_file_chooser_api.h"
15 
16 namespace ppapi {
17 namespace thunk {
18 
19 namespace {
20 
ShowWithoutUserGesture_0_5(PP_Resource chooser,PP_Bool save_as,struct PP_Var suggested_file_name,struct PP_CompletionCallback callback)21 int32_t ShowWithoutUserGesture_0_5(PP_Resource chooser,
22                                    PP_Bool save_as,
23                                    struct PP_Var suggested_file_name,
24                                    struct PP_CompletionCallback callback) {
25   VLOG(4) << "PPB_FileChooserTrusted::ShowWithoutUserGesture()";
26   EnterResource<PPB_FileChooser_API> enter(chooser, callback, true);
27   if (enter.failed())
28     return enter.retval();
29   return enter.SetResult(enter.object()->ShowWithoutUserGesture0_5(
30       save_as,
31       suggested_file_name,
32       enter.callback()));
33 }
34 
ShowWithoutUserGesture(PP_Resource chooser,PP_Bool save_as,struct PP_Var suggested_file_name,struct PP_ArrayOutput output,struct PP_CompletionCallback callback)35 int32_t ShowWithoutUserGesture(PP_Resource chooser,
36                                PP_Bool save_as,
37                                struct PP_Var suggested_file_name,
38                                struct PP_ArrayOutput output,
39                                struct PP_CompletionCallback callback) {
40   VLOG(4) << "PPB_FileChooserTrusted::ShowWithoutUserGesture()";
41   EnterResource<PPB_FileChooser_API> enter(chooser, callback, true);
42   if (enter.failed())
43     return enter.retval();
44   return enter.SetResult(enter.object()->ShowWithoutUserGesture(
45       save_as,
46       suggested_file_name,
47       output,
48       enter.callback()));
49 }
50 
51 const PPB_FileChooserTrusted_0_5 g_ppb_filechoosertrusted_thunk_0_5 = {
52   &ShowWithoutUserGesture_0_5
53 };
54 
55 const PPB_FileChooserTrusted_0_6 g_ppb_filechoosertrusted_thunk_0_6 = {
56   &ShowWithoutUserGesture
57 };
58 
59 }  // namespace
60 
61 PPAPI_THUNK_EXPORT const PPB_FileChooserTrusted_0_5*
GetPPB_FileChooserTrusted_0_5_Thunk()62     GetPPB_FileChooserTrusted_0_5_Thunk() {
63   return &g_ppb_filechoosertrusted_thunk_0_5;
64 }
65 
66 PPAPI_THUNK_EXPORT const PPB_FileChooserTrusted_0_6*
GetPPB_FileChooserTrusted_0_6_Thunk()67     GetPPB_FileChooserTrusted_0_6_Thunk() {
68   return &g_ppb_filechoosertrusted_thunk_0_6;
69 }
70 
71 }  // namespace thunk
72 }  // namespace ppapi
73