Home | History | Annotate | Download | only in common
      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 // Singly or multiply-included shared traits file depending on circumstances.
      6 // This allows the use of Autofill IPC serialization macros in more than one IPC
      7 // message file.
      8 #ifndef COMPONENTS_AUTOFILL_CONTENT_COMMON_AUTOFILL_PARAM_TRAITS_MACROS_H_
      9 #define COMPONENTS_AUTOFILL_CONTENT_COMMON_AUTOFILL_PARAM_TRAITS_MACROS_H_
     10 
     11 #include "components/autofill/core/common/password_form.h"
     12 #include "ipc/ipc_message_macros.h"
     13 
     14 IPC_ENUM_TRAITS_MAX_VALUE(autofill::PasswordForm::Type,
     15                           autofill::PasswordForm::TYPE_LAST)
     16 
     17 IPC_STRUCT_TRAITS_BEGIN(autofill::FormData)
     18   IPC_STRUCT_TRAITS_MEMBER(name)
     19   IPC_STRUCT_TRAITS_MEMBER(origin)
     20   IPC_STRUCT_TRAITS_MEMBER(action)
     21   IPC_STRUCT_TRAITS_MEMBER(user_submitted)
     22   IPC_STRUCT_TRAITS_MEMBER(fields)
     23 IPC_STRUCT_TRAITS_END()
     24 
     25 IPC_ENUM_TRAITS_MAX_VALUE(autofill::PasswordForm::Scheme,
     26                           autofill::PasswordForm::SCHEME_LAST)
     27 
     28 IPC_STRUCT_TRAITS_BEGIN(autofill::PasswordForm)
     29   IPC_STRUCT_TRAITS_MEMBER(scheme)
     30   IPC_STRUCT_TRAITS_MEMBER(signon_realm)
     31   IPC_STRUCT_TRAITS_MEMBER(origin)
     32   IPC_STRUCT_TRAITS_MEMBER(action)
     33   IPC_STRUCT_TRAITS_MEMBER(submit_element)
     34   IPC_STRUCT_TRAITS_MEMBER(username_element)
     35   IPC_STRUCT_TRAITS_MEMBER(username_value)
     36   IPC_STRUCT_TRAITS_MEMBER(other_possible_usernames)
     37   IPC_STRUCT_TRAITS_MEMBER(password_element)
     38   IPC_STRUCT_TRAITS_MEMBER(password_value)
     39   IPC_STRUCT_TRAITS_MEMBER(password_autocomplete_set)
     40   IPC_STRUCT_TRAITS_MEMBER(new_password_element)
     41   IPC_STRUCT_TRAITS_MEMBER(new_password_value)
     42   IPC_STRUCT_TRAITS_MEMBER(ssl_valid)
     43   IPC_STRUCT_TRAITS_MEMBER(preferred)
     44   IPC_STRUCT_TRAITS_MEMBER(blacklisted_by_user)
     45   IPC_STRUCT_TRAITS_MEMBER(type)
     46   IPC_STRUCT_TRAITS_MEMBER(times_used)
     47   IPC_STRUCT_TRAITS_MEMBER(form_data)
     48   // Excluding |use_additional_authentication| as it is only set and read in the
     49   // browser process and the renderer need not know about it.
     50 IPC_STRUCT_TRAITS_END()
     51 
     52 #endif  // COMPONENTS_AUTOFILL_CONTENT_COMMON_AUTOFILL_PARAM_TRAITS_MACROS_H_
     53