// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_SAFE_BROWSING_CONTENT_BROWSER_PASSWORD_PROTECTION_PASSWORD_PROTECTION_COMMIT_DEFERRING_CONDITION_H_ #define COMPONENTS_SAFE_BROWSING_CONTENT_BROWSER_PASSWORD_PROTECTION_PASSWORD_PROTECTION_COMMIT_DEFERRING_CONDITION_H_ #include "base/memory/weak_ptr.h" #include "content/public/browser/commit_deferring_condition.h" namespace content { class NavigationHandle; } // namespace content namespace safe_browsing { class PasswordProtectionRequestContent; // PasswordProtectionCommitDeferringCondition defers navigations under the // following conditions: // (1) The navigation starts while there is a on-going sync password // reuse ping. When the verdict comes back, if the verdict results in // showing a modal warning dialog, the navigation continues to be deferred; // otherwise, the deferred navigation will be resumed. // (2) The navigation starts while there is a modal warning showing. // // If a modal warning is showing, the navigation will continue to be deferred // until the user takes an action and dismisses the dialog, at which point the // navigation will resume. class PasswordProtectionCommitDeferringCondition : public content::CommitDeferringCondition { … }; } // namespace safe_browsing #endif // COMPONENTS_SAFE_BROWSING_CONTENT_BROWSER_PASSWORD_PROTECTION_PASSWORD_PROTECTION_COMMIT_DEFERRING_CONDITION_H_