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(has_notranslate
)
25 IPC_STRUCT_TRAITS_MEMBER(html_root_language
)
26 IPC_STRUCT_TRAITS_MEMBER(adopted_language
)
27 IPC_STRUCT_TRAITS_MEMBER(contents
)
28 IPC_STRUCT_TRAITS_END()
30 //-----------------------------------------------------------------------------
31 // RenderView messages
32 // These are messages sent from the browser to the renderer process.
34 // Tells the renderer to translate the page contents from one language to
36 IPC_MESSAGE_ROUTED4(ChromeViewMsg_TranslatePage
,
37 int /* page_seq_no */,
38 std::string
, /* the script injected in the page */
39 std::string
, /* BCP 47/RFC 5646 language code the page
41 std::string
/* BCP 47/RFC 5646 language code to translate
44 // Tells the renderer to revert the text of translated page to its original
46 IPC_MESSAGE_ROUTED1(ChromeViewMsg_RevertTranslation
,
49 //-----------------------------------------------------------------------------
51 // These are messages sent from the renderer to the browser process.
53 // Notification that the current page was assigned a sequence number.
54 IPC_MESSAGE_ROUTED1(ChromeViewHostMsg_TranslateAssignedSequenceNumber
,
55 int /* page_seq_no */)
57 // Notification that the language for the tab has been determined.
59 ChromeViewHostMsg_TranslateLanguageDetermined
,
60 translate::LanguageDetectionDetails
/* details about lang detection */,
61 bool /* whether the page needs translation */)
63 // Notifies the browser that a page has been translated.
65 ChromeViewHostMsg_PageTranslated
,
66 std::string
/* the original language */,
67 std::string
/* the translated language */,
68 translate::TranslateErrors::Type
/* the error type if available */)