1effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 5effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// From private/ppb_find_private.idl modified Wed Mar 19 13:42:13 2014. 62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) 72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/c/pp_errors.h" 8effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "ppapi/c/private/ppb_find_private.h" 92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "ppapi/shared_impl/tracked_callback.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/thunk/enter.h" 115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "ppapi/thunk/ppapi_thunk_export.h" 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace ppapi { 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace thunk { 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace { 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)void SetPluginToHandleFindRequests(PP_Instance instance) { 19effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch VLOG(4) << "PPB_Find_Private::SetPluginToHandleFindRequests()"; 2023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) EnterInstance enter(instance); 2123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) if (enter.failed()) 2223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return; 2323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) enter.functions()->SetPluginToHandleFindRequests(instance); 2423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 2523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void NumberOfFindResultsChanged(PP_Instance instance, 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int32_t total, 282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles) PP_Bool final_result) { 29effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch VLOG(4) << "PPB_Find_Private::NumberOfFindResultsChanged()"; 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) EnterInstance enter(instance); 31c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) if (enter.failed()) 32c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) return; 33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) enter.functions()->NumberOfFindResultsChanged(instance, total, final_result); 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void SelectedFindResultChanged(PP_Instance instance, int32_t index) { 37effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch VLOG(4) << "PPB_Find_Private::SelectedFindResultChanged()"; 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) EnterInstance enter(instance); 39c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) if (enter.failed()) 40c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) return; 41c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) enter.functions()->SelectedFindResultChanged(instance, index); 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 44effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochvoid SetTickmarks(PP_Instance instance, 45effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch const struct PP_Rect tickmarks[], 46effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch uint32_t count) { 47effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch VLOG(4) << "PPB_Find_Private::SetTickmarks()"; 48effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch EnterInstance enter(instance); 49effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch if (enter.failed()) 50effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch return; 51effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch enter.functions()->SetTickmarks(instance, tickmarks, count); 52effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch} 53effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch 54effb81e5f8246d0db0270817048dc992db66e9fbBen Murdochconst PPB_Find_Private_0_3 g_ppb_find_private_thunk_0_3 = { 5523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) &SetPluginToHandleFindRequests, 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) &NumberOfFindResultsChanged, 57effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch &SelectedFindResultChanged, 58effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch &SetTickmarks 595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace 625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 63effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochPPAPI_THUNK_EXPORT const PPB_Find_Private_0_3* 64effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch GetPPB_Find_Private_0_3_Thunk() { 65effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch return &g_ppb_find_private_thunk_0_3; 665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace thunk 695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace ppapi 70