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. 33 IPC_MESSAGE_CONTROL3(ProfileImportProcessMsg_StartImport, 34 importer::SourceProfile, 35 int /* Bitmask of items to import. */, 36 base::DictionaryValue /* Localized strings. */) 37 38 IPC_MESSAGE_CONTROL0(ProfileImportProcessMsg_CancelImport) 39 40 IPC_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. 48 IPC_MESSAGE_CONTROL0(ProfileImportProcessHostMsg_Import_Started) 49 50 IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_Import_Finished, 51 bool /* was import successful? */, 52 std::string /* error message, if any */) 53 54 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_ImportItem_Started, 55 int /* ImportItem */) 56 57 IPC_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. 62 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyHistoryImportStart, 63 int /* total number of ImporterURLRow items */) 64 65 IPC_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 70 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyHomePageImportReady, 71 GURL /* GURL of home page */) 72 73 IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyBookmarksImportStart, 74 base::string16 /* first folder name */, 75 int /* total number of bookmarks */) 76 77 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyBookmarksImportGroup, 78 std::vector<ImportedBookmarkEntry>) 79 80 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFaviconsImportStart, 81 int /* total number of favicons */) 82 83 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFaviconsImportGroup, 84 std::vector<ImportedFaviconUsage>) 85 86 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyPasswordFormReady, 87 autofill::PasswordForm) 88 89 IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyKeywordsReady, 90 std::vector<importer::URLKeywordInfo>, // url_keywords 91 bool /* unique on host and path */) 92 93 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFirefoxSearchEngData, 94 std::vector<std::string>) // search_engine_data 95 96 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_AutofillFormDataImportStart, 97 int /* total number of entries to be imported */) 98 99 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_AutofillFormDataImportGroup, 100 std::vector<ImporterAutofillFormDataEntry>) 101 102 #if defined(OS_WIN) 103 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyIE7PasswordInfo, 104 importer::ImporterIE7PasswordInfo) // password_info 105 #endif 106