Add new certificateProvider extension API.
[chromium-blink-merge.git] / chrome / browser / extensions / api / declarative_content / declarative_content_condition_tracker_delegate.h
blob82791277e7f149b8f025f4bfe407c426727c47f0
1 // Copyright 2015 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.
5 #ifndef CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_CONTENT_DECLARATIVE_CONTENT_CONDITION_TRACKER_DELEGATE_H_
6 #define CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_CONTENT_DECLARATIVE_CONTENT_CONDITION_TRACKER_DELEGATE_H_
8 #include "base/macros.h"
10 namespace content {
11 class BrowserContext;
12 class WebContents;
15 namespace extensions {
17 // Interface that allows the declarative content condition trackers to request
18 // condition evaluation.
19 class DeclarativeContentConditionTrackerDelegate {
20 public:
21 // Requests re-evaluation of conditions for |contents|. This must be called
22 // whenever the URL or page state changes, even if the value of the condition
23 // itself doesn't change.
24 virtual void RequestEvaluation(content::WebContents* contents) = 0;
26 // Returns true if the evaluator should manage condition state for |context|.
27 virtual bool ShouldManageConditionsForBrowserContext(
28 content::BrowserContext* context) = 0;
30 protected:
31 DeclarativeContentConditionTrackerDelegate();
32 virtual ~DeclarativeContentConditionTrackerDelegate();
34 private:
35 DISALLOW_COPY_AND_ASSIGN(DeclarativeContentConditionTrackerDelegate);
38 } // namespace extensions
40 #endif // CHROME_BROWSER_EXTENSIONS_API_DECLARATIVE_CONTENT_DECLARATIVE_CONTENT_CONDITION_TRACKER_DELEGATE_H_