OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef IOS_CLEAN_CHROME_BROWSER_UI_WEB_CONTENTS_WEB_CONTENTS_MEDIATOR_H_ | 5 #ifndef IOS_CLEAN_CHROME_BROWSER_UI_WEB_CONTENTS_WEB_CONTENTS_MEDIATOR_H_ |
6 #define IOS_CLEAN_CHROME_BROWSER_UI_WEB_CONTENTS_WEB_CONTENTS_MEDIATOR_H_ | 6 #define IOS_CLEAN_CHROME_BROWSER_UI_WEB_CONTENTS_WEB_CONTENTS_MEDIATOR_H_ |
7 | 7 |
8 #import <Foundation/Foundation.h> | 8 #import <Foundation/Foundation.h> |
9 | 9 |
10 @protocol WebContentsConsumer; | 10 @protocol WebContentsConsumer; |
11 | 11 class WebStateList; |
12 namespace web { | |
13 class WebState; | |
14 } | |
15 | 12 |
16 // A mediator object that provides the relevant properties of a web state | 13 // A mediator object that provides the relevant properties of a web state |
17 // to a consumer. | 14 // to a consumer. |
18 @interface WebContentsMediator : NSObject | 15 @interface WebContentsMediator : NSObject |
19 | 16 |
20 // The WebState whose properties this object mediates. This can change during | 17 // Updates to this webStateList are mediated to the consumer. This can change |
21 // the lifetime of this object and may be null. | 18 // during the lifetime of this object and may be nil. |
22 @property(nonatomic, assign) web::WebState* webState; | 19 @property(nonatomic, assign) WebStateList* webStateList; |
23 | 20 |
24 // The consumer for this object. This can change during the lifetime of this | 21 // The consumer for this object. This can change during the lifetime of this |
25 // object and may be nil. | 22 // object and may be nil. |
26 @property(nonatomic, weak) id<WebContentsConsumer> consumer; | 23 @property(nonatomic, weak) id<WebContentsConsumer> consumer; |
27 | 24 |
| 25 // Stops observing all objects and sets the active webState's webUsageEnabled |
| 26 // to false. |
| 27 - (void)disconnect; |
| 28 |
28 @end | 29 @end |
29 | 30 |
30 #endif // IOS_CLEAN_CHROME_BROWSER_UI_WEB_CONTENTS_WEB_CONTENTS_MEDIATOR_H_ | 31 #endif // IOS_CLEAN_CHROME_BROWSER_UI_WEB_CONTENTS_WEB_CONTENTS_MEDIATOR_H_ |
OLD | NEW |