Roll src/third_party/WebKit f36d5e0:68b67cd (svn 193299:193303)
[chromium-blink-merge.git] / components / translate / content / common / translate_messages.h
blobf9a49db2f6c347aedda1a054bf938519d1a4bd93
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.
5 // Multiply-included message file, hence no include guard.
7 #include "components/translate/core/common/language_detection_details.h"
8 #include "components/translate/core/common/translate_errors.h"
9 #include "content/public/common/common_param_traits.h"
10 #include "ipc/ipc_message_macros.h"
11 #include "ipc/ipc_message_utils.h"
13 #define IPC_MESSAGE_START TranslateMsgStart
15 IPC_ENUM_TRAITS_MAX_VALUE(translate::TranslateErrors::Type,
16 translate::TranslateErrors::TYPE_LAST)
18 IPC_STRUCT_TRAITS_BEGIN(translate::LanguageDetectionDetails)
19 IPC_STRUCT_TRAITS_MEMBER(time)
20 IPC_STRUCT_TRAITS_MEMBER(url)
21 IPC_STRUCT_TRAITS_MEMBER(content_language)
22 IPC_STRUCT_TRAITS_MEMBER(cld_language)
23 IPC_STRUCT_TRAITS_MEMBER(is_cld_reliable)
24 IPC_STRUCT_TRAITS_MEMBER(html_root_language)
25 IPC_STRUCT_TRAITS_MEMBER(adopted_language)
26 IPC_STRUCT_TRAITS_MEMBER(contents)
27 IPC_STRUCT_TRAITS_END()
29 //-----------------------------------------------------------------------------
30 // RenderView messages
31 // These are messages sent from the browser to the renderer process.
33 // Tells the renderer to translate the page contents from one language to
34 // another.
35 IPC_MESSAGE_ROUTED4(ChromeViewMsg_TranslatePage,
36 int /* page_seq_no */,
37 std::string, /* the script injected in the page */
38 std::string, /* BCP 47/RFC 5646 language code the page
39 is in */
40 std::string /* BCP 47/RFC 5646 language code to translate
41 to */)
43 // Tells the renderer to revert the text of translated page to its original
44 // contents.
45 IPC_MESSAGE_ROUTED1(ChromeViewMsg_RevertTranslation,
46 int /* page id */)
48 //-----------------------------------------------------------------------------
49 // Host messages
50 // These are messages sent from the renderer to the browser process.
52 // Notification that the current page was assigned a sequence number.
53 IPC_MESSAGE_ROUTED1(ChromeViewHostMsg_TranslateAssignedSequenceNumber,
54 int /* page_seq_no */)
56 // Notification that the language for the tab has been determined.
57 IPC_MESSAGE_ROUTED2(
58 ChromeViewHostMsg_TranslateLanguageDetermined,
59 translate::LanguageDetectionDetails /* details about lang detection */,
60 bool /* whether the page needs translation */)
62 // Notifies the browser that a page has been translated.
63 IPC_MESSAGE_ROUTED3(
64 ChromeViewHostMsg_PageTranslated,
65 std::string /* the original language */,
66 std::string /* the translated language */,
67 translate::TranslateErrors::Type /* the error type if available */)