1/* Copyright 2014 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
6/* From private/ppp_find_private.idl modified Thu Mar 20 11:34:17 2014. */
7
8#ifndef PPAPI_C_PRIVATE_PPP_FIND_PRIVATE_H_
9#define PPAPI_C_PRIVATE_PPP_FIND_PRIVATE_H_
10
11#include "ppapi/c/pp_bool.h"
12#include "ppapi/c/pp_instance.h"
13#include "ppapi/c/pp_macros.h"
14#include "ppapi/c/pp_stdint.h"
15
16#define PPP_FIND_PRIVATE_INTERFACE_0_3 "PPP_Find_Private;0.3"
17#define PPP_FIND_PRIVATE_INTERFACE PPP_FIND_PRIVATE_INTERFACE_0_3
18
19/**
20 * @file
21 */
22
23
24/**
25 * @addtogroup Interfaces
26 * @{
27 */
28struct PPP_Find_Private_0_3 {
29  /**
30   * Finds the given UTF-8 text starting at the current selection. The number of
31   * results will be updated asynchronously via NumberOfFindResultsChanged in
32   * PPB_Find. Note that multiple StartFind calls can happen before StopFind is
33   * called in the case of the search term changing.
34   *
35   * Return PP_FALSE if the plugin doesn't support find in page. Consequently,
36   * it won't call any callbacks.
37   */
38  PP_Bool (*StartFind)(PP_Instance instance,
39                       const char* text,
40                       PP_Bool case_sensitive);
41  /**
42   * Go to the next/previous result.
43   */
44  void (*SelectFindResult)(PP_Instance instance, PP_Bool forward);
45  /**
46   * Tells the plugin that the find operation has stopped, so it should clear
47   * any highlighting.
48   */
49  void (*StopFind)(PP_Instance instance);
50};
51
52typedef struct PPP_Find_Private_0_3 PPP_Find_Private;
53/**
54 * @}
55 */
56
57#endif  /* PPAPI_C_PRIVATE_PPP_FIND_PRIVATE_H_ */
58
59