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.
5 // Multiply-included message file, no traditonal include guard.
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"
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_
28 #define IPC_MESSAGE_START ProfileImportMsgStart
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. */)
38 IPC_MESSAGE_CONTROL0(ProfileImportProcessMsg_CancelImport
)
40 IPC_MESSAGE_CONTROL1(ProfileImportProcessMsg_ReportImportItemFinished
,
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
)
50 IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_Import_Finished
,
51 bool /* was import successful? */,
52 std::string
/* error message, if any */)
54 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_ImportItem_Started
,
57 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_ImportItem_Finished
,
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 */)
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 */)
70 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyHomePageImportReady
,
71 GURL
/* GURL of home page */)
73 IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyBookmarksImportStart
,
74 base::string16
/* first folder name */,
75 int /* total number of bookmarks */)
77 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyBookmarksImportGroup
,
78 std::vector
<ImportedBookmarkEntry
>)
80 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFaviconsImportStart
,
81 int /* total number of favicons */)
83 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFaviconsImportGroup
,
84 std::vector
<ImportedFaviconUsage
>)
86 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyPasswordFormReady
,
87 autofill::PasswordForm
)
89 IPC_MESSAGE_CONTROL2(ProfileImportProcessHostMsg_NotifyKeywordsReady
,
90 std::vector
<importer::SearchEngineInfo
>, // search_engines
91 bool /* unique on host and path */)
93 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyFirefoxSearchEngData
,
94 std::vector
<std::string
>) // search_engine_data
96 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_AutofillFormDataImportStart
,
97 int /* total number of entries to be imported */)
99 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_AutofillFormDataImportGroup
,
100 std::vector
<ImporterAutofillFormDataEntry
>)
103 IPC_MESSAGE_CONTROL1(ProfileImportProcessHostMsg_NotifyIE7PasswordInfo
,
104 importer::ImporterIE7PasswordInfo
) // password_info