Index: chrome/browser/password_manager/password_store_factory.h |
diff --git a/chrome/browser/password_manager/password_store_factory.h b/chrome/browser/password_manager/password_store_factory.h |
index 6a13e67a994affc2eda273308c9c8fda8d137825..d11d2b84dc6599b882faa76b6d0c30d0e8cef037 100644 |
--- a/chrome/browser/password_manager/password_store_factory.h |
+++ b/chrome/browser/password_manager/password_store_factory.h |
@@ -11,6 +11,10 @@ |
#include "components/keyed_service/core/keyed_service.h" |
#include "components/keyed_service/core/service_access_type.h" |
+#if defined(USE_X11) |
+#include "base/nix/xdg_util.h" |
+#endif |
+ |
class Profile; |
namespace password_manager { |
@@ -73,6 +77,40 @@ class PasswordStoreFactory : public BrowserContextKeyedServiceFactory { |
content::BrowserContext* context) const override; |
bool ServiceIsNULLWhileTesting() const override; |
+#if defined(USE_X11) |
+ enum LinuxBackendUsage { |
+ KDE_NOFLAG_PLAINTEXT, |
+ KDE_NOFLAG_KWALLET, |
+ KDE_KWALLETFLAG_PLAINTEXT, |
+ KDE_KWALLETFLAG_KWALLET, |
+ KDE_GNOMEFLAG_PLAINTEXT, |
+ KDE_GNOMEFLAG_KEYRING, |
+ KDE_GNOMEFLAG_LIBSECRET, |
+ KDE_BASICFLAG_PLAINTEXT, |
+ GNOME_NOFLAG_PLAINTEXT, |
+ GNOME_NOFLAG_KEYRING, |
+ GNOME_NOFLAG_LIBSECRET, |
+ GNOME_GNOMEFLAG_PLAINTEXT, |
+ GNOME_GNOMEFLAG_KEYRING, |
+ GNOME_GNOMEFLAG_LIBSECRET, |
+ GNOME_KWALLETFLAG_PLAINTEXT, |
+ GNOME_KWALLETFLAG_KWALLET, |
+ GNOME_BASICFLAG_PLAINTEXT, |
+ OTHER_PLAINTEXT, |
+ OTHER_KWALLET, |
+ OTHER_KEYRING, |
+ OTHER_LIBSECRET, |
+ MAX_BACKEND_USAGE_VALUE |
+ }; |
+ |
+ enum LinuxBackendUsed { PLAINTEXT, GNOME_KEYRING, LIBSECRET, KWALLET }; |
+ |
+ static base::nix::DesktopEnvironment GetDesktopEnvironment(); |
+ static void RecordBackendStatistics(base::nix::DesktopEnvironment desktop_env, |
+ const std::string& command_line_flag, |
+ LinuxBackendUsed used_backend); |
+#endif |
+ |
DISALLOW_COPY_AND_ASSIGN(PasswordStoreFactory); |
}; |