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 // Multiply-included message file, hence no include guard 6 7 #include "ipc/ipc_message_macros.h" 8 #include "ui/gfx/range/range.h" 9 #include "ui/gfx/rect.h" 10 11 #if defined(OS_MACOSX) 12 #include "content/common/mac/attributed_string_coder.h" 13 #endif 14 15 #define IPC_MESSAGE_START TextInputClientMsgStart 16 #undef IPC_MESSAGE_EXPORT 17 #define IPC_MESSAGE_EXPORT CONTENT_EXPORT 18 19 // Browser -> Renderer Messages //////////////////////////////////////////////// 20 // These messages are sent from the browser to the renderer. Each one has a 21 // corresponding reply message. 22 //////////////////////////////////////////////////////////////////////////////// 23 24 // Tells the renderer to send back the character index for a point. 25 IPC_MESSAGE_ROUTED1(TextInputClientMsg_CharacterIndexForPoint, 26 gfx::Point) 27 28 // Tells the renderer to send back the rectangle for a given character range. 29 IPC_MESSAGE_ROUTED1(TextInputClientMsg_FirstRectForCharacterRange, 30 gfx::Range) 31 32 // Tells the renderer to send back the text fragment in a given range. 33 IPC_MESSAGE_ROUTED1(TextInputClientMsg_StringForRange, 34 gfx::Range) 35 36 // Tells the renderer to send back the word under the given point and its 37 // baseline point. 38 IPC_MESSAGE_ROUTED1(TextInputClientMsg_StringAtPoint, gfx::Point) 39 40 //////////////////////////////////////////////////////////////////////////////// 41 42 // Renderer -> Browser Replies ///////////////////////////////////////////////// 43 // These messages are sent in reply to the above messages. 44 //////////////////////////////////////////////////////////////////////////////// 45 46 // Reply message for TextInputClientMsg_CharacterIndexForPoint. 47 IPC_MESSAGE_ROUTED1(TextInputClientReplyMsg_GotCharacterIndexForPoint, 48 size_t /* character index */) 49 50 // Reply message for TextInputClientMsg_FirstRectForCharacterRange. 51 IPC_MESSAGE_ROUTED1(TextInputClientReplyMsg_GotFirstRectForRange, 52 gfx::Rect /* frame rectangle */) 53 54 #if defined(OS_MACOSX) 55 // Reply message for TextInputClientMsg_StringForRange. 56 IPC_MESSAGE_ROUTED1(TextInputClientReplyMsg_GotStringForRange, 57 mac::AttributedStringCoder::EncodedString) 58 59 // Reply message for TextInputClientMsg_StringAtPoint 60 IPC_MESSAGE_ROUTED2(TextInputClientReplyMsg_GotStringAtPoint, 61 mac::AttributedStringCoder::EncodedString, 62 gfx::Point) 63 #endif // defined(OS_MACOSX) 64 65