// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Multiply-included message file, hence no include guard. #include "components/translate/core/common/language_detection_details.h" #include "components/translate/core/common/translate_errors.h" #include "content/public/common/common_param_traits.h" #include "ipc/ipc_message_macros.h" #include "ipc/ipc_message_utils.h" #define IPC_MESSAGE_START TranslateMsgStart IPC_ENUM_TRAITS_MAX_VALUE(translate::TranslateErrors::Type, translate::TranslateErrors::TYPE_LAST) IPC_STRUCT_TRAITS_BEGIN(translate::LanguageDetectionDetails) IPC_STRUCT_TRAITS_MEMBER(time) IPC_STRUCT_TRAITS_MEMBER(url) IPC_STRUCT_TRAITS_MEMBER(content_language) IPC_STRUCT_TRAITS_MEMBER(cld_language) IPC_STRUCT_TRAITS_MEMBER(is_cld_reliable) IPC_STRUCT_TRAITS_MEMBER(has_notranslate) IPC_STRUCT_TRAITS_MEMBER(html_root_language) IPC_STRUCT_TRAITS_MEMBER(adopted_language) IPC_STRUCT_TRAITS_MEMBER(contents) IPC_STRUCT_TRAITS_END() //----------------------------------------------------------------------------- // RenderView messages // These are messages sent from the browser to the renderer process. // Tells the renderer to translate the page contents from one language to // another. IPC_MESSAGE_ROUTED4(ChromeViewMsg_TranslatePage, int /* page_seq_no */, std::string, /* the script injected in the page */ std::string, /* BCP 47/RFC 5646 language code the page is in */ std::string /* BCP 47/RFC 5646 language code to translate to */) // Tells the renderer to revert the text of translated page to its original // contents. IPC_MESSAGE_ROUTED1(ChromeViewMsg_RevertTranslation, int /* page id */) //----------------------------------------------------------------------------- // Host messages // These are messages sent from the renderer to the browser process. // Notification that the current page was assigned a sequence number. IPC_MESSAGE_ROUTED1(ChromeViewHostMsg_TranslateAssignedSequenceNumber, int /* page_seq_no */) // Notification that the language for the tab has been determined. IPC_MESSAGE_ROUTED2( ChromeViewHostMsg_TranslateLanguageDetermined, translate::LanguageDetectionDetails /* details about lang detection */, bool /* whether the page needs translation */) // Notifies the browser that a page has been translated. IPC_MESSAGE_ROUTED3( ChromeViewHostMsg_PageTranslated, std::string /* the original language */, std::string /* the translated language */, translate::TranslateErrors::Type /* the error type if available */)