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
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
40 std::string
/* BCP 47/RFC 5646 language code to translate
43 // Tells the renderer to revert the text of translated page to its original
45 IPC_MESSAGE_ROUTED1(ChromeViewMsg_RevertTranslation
,
48 //-----------------------------------------------------------------------------
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.
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.
64 ChromeViewHostMsg_PageTranslated
,
65 std::string
/* the original language */,
66 std::string
/* the translated language */,
67 translate::TranslateErrors::Type
/* the error type if available */)