| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_COMMON_PASSWORD_GENERATION_UTIL_H_ |
| #define CHROME_COMMON_PASSWORD_GENERATION_UTIL_H_ |
| |
| namespace password_generation { |
| |
| // Enumerates various events related to the password generation process. |
| enum PasswordGenerationEvent { |
| // No Account creation form is detected. |
| NO_SIGN_UP_DETECTED, |
| |
| // Account creation form is detected. |
| SIGN_UP_DETECTED, |
| |
| // Password generation icon is shown inside the first password field. |
| ICON_SHOWN, |
| |
| // Password generation bubble is shown after user clicks on the icon. |
| BUBBLE_SHOWN, |
| |
| // Number of enum entries, used for UMA histogram reporting macros. |
| EVENT_ENUM_COUNT |
| }; |
| |
| // Wrapper to store the user interactions with the password generation bubble. |
| struct PasswordGenerationActions { |
| // Whether the user has clicked on the learn more link. |
| bool learn_more_visited; |
| |
| // Whether the user has accepted the generated password. |
| bool password_accepted; |
| |
| // Whether the user has manually edited password entry. |
| bool password_edited; |
| |
| // Whether the user has clicked on the regenerate button. |
| bool password_regenerated; |
| |
| PasswordGenerationActions(); |
| ~PasswordGenerationActions(); |
| }; |
| |
| void LogUserActions(PasswordGenerationActions actions); |
| |
| void LogPasswordGenerationEvent(PasswordGenerationEvent event); |
| |
| } // namespace password_generation |
| |
| #endif // CHROME_COMMON_PASSWORD_GENERATION_UTIL_H_ |