1 // Copyright 2017 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 #ifndef COMPONENTS_SECURITY_STATE_CONTENT_SSL_STATUS_INPUT_EVENT_DATA_H_ 6 #define COMPONENTS_SECURITY_STATE_CONTENT_SSL_STATUS_INPUT_EVENT_DATA_H_ 7 8 #include <memory> 9 10 #include "components/security_state/core/insecure_input_event_data.h" 11 #include "content/public/browser/ssl_status.h" 12 13 namespace security_state { 14 15 using content::SSLStatus; 16 17 // Stores flags about Input Events in the SSLStatus UserData to 18 // influence the Security Level of the page. 19 class SSLStatusInputEventData : public SSLStatus::UserData { 20 public: 21 SSLStatusInputEventData(); 22 explicit SSLStatusInputEventData(const InsecureInputEventData& initial_data); 23 ~SSLStatusInputEventData() override; 24 25 InsecureInputEventData* input_events(); 26 27 // SSLStatus::UserData: 28 std::unique_ptr<SSLStatus::UserData> Clone() override; 29 30 private: 31 InsecureInputEventData data_; 32 33 DISALLOW_COPY_AND_ASSIGN(SSLStatusInputEventData); 34 }; 35 36 } // namespace security_state 37 38 #endif // COMPONENTS_SECURITY_STATE_CONTENT_SSL_STATUS_INPUT_EVENT_DATA_H_ 39