1// Copyright 2013 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, no traditonal include guard. 6#include <string> 7#include <vector> 8 9#include "base/basictypes.h" 10#include "base/strings/string16.h" 11#include "base/values.h" 12#include "chrome/common/common_param_traits_macros.h" 13#include "chrome/common/importer/imported_bookmark_entry.h" 14#include "chrome/common/importer/imported_favicon_usage.h" 15#include "chrome/common/importer/importer_autofill_form_data_entry.h" 16#include "chrome/common/importer/importer_data_types.h" 17#include "chrome/common/importer/importer_url_row.h" 18#include "chrome/common/importer/profile_import_process_param_traits_macros.h" 19#include "components/autofill/content/common/autofill_param_traits_macros.h" 20#include "components/autofill/core/common/password_form.h" 21#include "content/public/common/common_param_traits.h" 22#include "ipc/ipc_message_macros.h" 23#include "ipc/ipc_message_utils.h" 24 25// Force multiple inclusion of the param traits file to generate all methods. 26#undef CHROME_COMMON_IMPORTER_PROFILE_IMPORT_PROCESS_PARAM_TRAITS_MACROS_H_ 27 28#define IPC_MESSAGE_START ProfileImportMsgStart 29 30//----------------------------------------------------------------------------- 31// ProfileImportProcess messages 32// These are messages sent from the browser to the profile import process. 33IPC_MESSAGE_CONTROL3(ProfileImportProcessMsg_StartImport, 34 importer::SourceProfile, 35 int /* Bitmask of items to import. */, 36 base::DictionaryValue /* Localized strings. */) 37 38IPC_MESSAGE_CONTROL0(ProfileImportProcessMsg_CancelImport) 39 40IPC_MESSAGE_CONTROL1(ProfileImportProcessMsg_ReportImportItemFinished, 41 int /* ImportItem */) 42 43//--------------------------------------------------------------------------- 44// ProfileImportProcessHost messages 45// These are messages sent from the profile import process to the browser. 46// These messages send information about the status of the import and 47// individual import tasks. 48IPC_MESSAGE_CONTROL0(ProfileImportProcessHostMsg_Import_Started) 49 50IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_Import_Finished, 51 bool /* was import successful? */, 52 std::string /* error message, if any */) 53 54IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_ImportItem_Started, 55 int /* ImportItem */) 56 57IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_ImportItem_Finished, 58 int /* ImportItem */) 59 60// These messages send data from the external importer process back to 61// the process host so it can be written to the profile. 62IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyHistoryImportStart, 63 int /* total number of ImporterURLRow items */) 64 65IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyHistoryImportGroup, 66 std::vector<ImporterURLRow>, 67 int /* the source of URLs as in history::VisitSource.*/ 68 /* To simplify IPC call, pass as an integer */) 69 70IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyHomePageImportReady, 71 GURL /* GURL of home page */) 72 73IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyBookmarksImportStart, 74 base::string16 /* first folder name */, 75 int /* total number of bookmarks */) 76 77IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyBookmarksImportGroup, 78 std::vector<ImportedBookmarkEntry>) 79 80IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFaviconsImportStart, 81 int /* total number of favicons */) 82 83IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFaviconsImportGroup, 84 std::vector<ImportedFaviconUsage>) 85 86IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyPasswordFormReady, 87 autofill::PasswordForm) 88 89IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyKeywordsReady, 90 std::vector<importer::URLKeywordInfo>, // url_keywords 91 bool /* unique on host and path */) 92 93IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFirefoxSearchEngData, 94 std::vector<std::string>) // search_engine_data 95 96IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_AutofillFormDataImportStart, 97 int /* total number of entries to be imported */) 98 99IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_AutofillFormDataImportGroup, 100 std::vector<ImporterAutofillFormDataEntry>) 101 102#if defined(OS_WIN) 103IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyIE7PasswordInfo, 104 importer::ImporterIE7PasswordInfo) // password_info 105#endif 106