Chromium Code Reviews| Index: components/autofill/core/common/autofill_param_traits_macros.h |
| diff --git a/components/autofill/core/common/autofill_param_traits_macros.h b/components/autofill/core/common/autofill_param_traits_macros.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..ab4f0bbe2cb6128dcac90cd01fec6b87a1e81c85 |
| --- /dev/null |
| +++ b/components/autofill/core/common/autofill_param_traits_macros.h |
| @@ -0,0 +1,120 @@ |
| +// Copyright 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
|
jam
2013/09/05 16:07:16
a macros.h file is done to share serialization tra
blundell
2013/09/05 16:33:58
Done.
|
| +// found in the LICENSE file. |
| + |
| +// Singly or multiply-included shared traits file depending on circumstances. |
| +// This allows the use of Autofill IPC serialization macros in more than one IPC |
| +// message file. |
| +#ifndef COMPONENTS_AUTOFILL_CORE_COMMON_AUTOFILL_PARAM_TRAITS_MACROS_H_ |
| +#define COMPONENTS_AUTOFILL_CORE_COMMON_AUTOFILL_PARAM_TRAITS_MACROS_H_ |
| + |
| +#include "components/autofill/core/common/form_data.h" |
| +#include "components/autofill/core/common/form_data_predictions.h" |
| +#include "components/autofill/core/common/form_field_data.h" |
| +#include "components/autofill/core/common/form_field_data_predictions.h" |
| +#include "components/autofill/core/common/forms_seen_state.h" |
| +#include "components/autofill/core/common/password_form.h" |
| +#include "components/autofill/core/common/password_form_fill_data.h" |
| +#include "components/autofill/core/common/web_element_descriptor.h" |
| +#include "ipc/ipc_message_macros.h" |
| +#include "third_party/WebKit/public/web/WebFormElement.h" |
| + |
| +IPC_ENUM_TRAITS(autofill::PasswordForm::Type) |
| + |
| +IPC_ENUM_TRAITS_MAX_VALUE(autofill::FormsSeenState, |
| + autofill::FORMS_SEEN_STATE_NUM_STATES - 1) |
| +IPC_ENUM_TRAITS_MAX_VALUE(base::i18n::TextDirection, |
| + base::i18n::TEXT_DIRECTION_NUM_DIRECTIONS - 1) |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::WebElementDescriptor) |
| + IPC_STRUCT_TRAITS_MEMBER(descriptor) |
| + IPC_STRUCT_TRAITS_MEMBER(retrieval_method) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_ENUM_TRAITS_MAX_VALUE(autofill::WebElementDescriptor::RetrievalMethod, |
| + autofill::WebElementDescriptor::NONE) |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::FormFieldData) |
| + IPC_STRUCT_TRAITS_MEMBER(label) |
| + IPC_STRUCT_TRAITS_MEMBER(name) |
| + IPC_STRUCT_TRAITS_MEMBER(value) |
| + IPC_STRUCT_TRAITS_MEMBER(form_control_type) |
| + IPC_STRUCT_TRAITS_MEMBER(autocomplete_attribute) |
| + IPC_STRUCT_TRAITS_MEMBER(max_length) |
| + IPC_STRUCT_TRAITS_MEMBER(is_autofilled) |
| + IPC_STRUCT_TRAITS_MEMBER(is_checked) |
| + IPC_STRUCT_TRAITS_MEMBER(is_checkable) |
| + IPC_STRUCT_TRAITS_MEMBER(is_focusable) |
| + IPC_STRUCT_TRAITS_MEMBER(should_autocomplete) |
| + IPC_STRUCT_TRAITS_MEMBER(text_direction) |
| + IPC_STRUCT_TRAITS_MEMBER(option_values) |
| + IPC_STRUCT_TRAITS_MEMBER(option_contents) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::FormFieldDataPredictions) |
| + IPC_STRUCT_TRAITS_MEMBER(field) |
| + IPC_STRUCT_TRAITS_MEMBER(signature) |
| + IPC_STRUCT_TRAITS_MEMBER(heuristic_type) |
| + IPC_STRUCT_TRAITS_MEMBER(server_type) |
| + IPC_STRUCT_TRAITS_MEMBER(overall_type) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::FormData) |
| + IPC_STRUCT_TRAITS_MEMBER(name) |
| + IPC_STRUCT_TRAITS_MEMBER(method) |
| + IPC_STRUCT_TRAITS_MEMBER(origin) |
| + IPC_STRUCT_TRAITS_MEMBER(action) |
| + IPC_STRUCT_TRAITS_MEMBER(user_submitted) |
| + IPC_STRUCT_TRAITS_MEMBER(fields) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::FormDataPredictions) |
| + IPC_STRUCT_TRAITS_MEMBER(data) |
| + IPC_STRUCT_TRAITS_MEMBER(signature) |
| + IPC_STRUCT_TRAITS_MEMBER(experiment_id) |
| + IPC_STRUCT_TRAITS_MEMBER(fields) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::UsernamesCollectionKey) |
| + IPC_STRUCT_TRAITS_MEMBER(username) |
| + IPC_STRUCT_TRAITS_MEMBER(password) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::PasswordForm) |
| +IPC_STRUCT_TRAITS_MEMBER(signon_realm) |
|
jam
2013/09/05 16:07:16
nit: need indentation
blundell
2013/09/05 16:33:58
Done.
|
| +IPC_STRUCT_TRAITS_MEMBER(origin) |
| +IPC_STRUCT_TRAITS_MEMBER(action) |
| +IPC_STRUCT_TRAITS_MEMBER(submit_element) |
| +IPC_STRUCT_TRAITS_MEMBER(username_element) |
| +IPC_STRUCT_TRAITS_MEMBER(username_value) |
| +IPC_STRUCT_TRAITS_MEMBER(other_possible_usernames) |
| +IPC_STRUCT_TRAITS_MEMBER(password_element) |
| +IPC_STRUCT_TRAITS_MEMBER(password_value) |
| +IPC_STRUCT_TRAITS_MEMBER(password_autocomplete_set) |
| +IPC_STRUCT_TRAITS_MEMBER(old_password_element) |
| +IPC_STRUCT_TRAITS_MEMBER(old_password_value) |
| +IPC_STRUCT_TRAITS_MEMBER(ssl_valid) |
| +IPC_STRUCT_TRAITS_MEMBER(preferred) |
| +IPC_STRUCT_TRAITS_MEMBER(blacklisted_by_user) |
| +IPC_STRUCT_TRAITS_MEMBER(type) |
| +IPC_STRUCT_TRAITS_MEMBER(times_used) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::PasswordFormFillData) |
| + IPC_STRUCT_TRAITS_MEMBER(basic_data) |
| + IPC_STRUCT_TRAITS_MEMBER(preferred_realm) |
| + IPC_STRUCT_TRAITS_MEMBER(additional_logins) |
| + IPC_STRUCT_TRAITS_MEMBER(other_possible_usernames) |
| + IPC_STRUCT_TRAITS_MEMBER(wait_for_username) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_STRUCT_TRAITS_BEGIN(autofill::PasswordAndRealm) |
| + IPC_STRUCT_TRAITS_MEMBER(password) |
| + IPC_STRUCT_TRAITS_MEMBER(realm) |
| +IPC_STRUCT_TRAITS_END() |
| + |
| +IPC_ENUM_TRAITS_MAX_VALUE( |
| + WebKit::WebFormElement::AutocompleteResult, |
| + WebKit::WebFormElement::AutocompleteResultErrorInvalid) |
| + |
| +#endif // COMPONENTS_AUTOFILL_CORE_COMMON_AUTOFILL_PARAM_TRAITS_MACROS_H_ |