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_TAB_COLLECTION_TAB_COLLECTION_MEDIATOR_H_ | 5 #ifndef IOS_CLEAN_CHROME_BROWSER_UI_TAB_COLLECTION_TAB_COLLECTION_MEDIATOR_H_ |
6 #define IOS_CLEAN_CHROME_BROWSER_UI_TAB_COLLECTION_TAB_COLLECTION_MEDIATOR_H_ | 6 #define IOS_CLEAN_CHROME_BROWSER_UI_TAB_COLLECTION_TAB_COLLECTION_MEDIATOR_H_ |
7 | 7 |
8 #import "ios/chrome/browser/web_state_list/web_state_list_observer_bridge.h" | 8 #import "ios/chrome/browser/web_state_list/web_state_list_observer_bridge.h" |
9 #import "ios/clean/chrome/browser/ui/tab_collection/tab_collection_data_source.h
" | |
10 | 9 |
11 @protocol TabCollectionConsumer; | 10 @protocol TabCollectionConsumer; |
12 class WebStateList; | 11 class WebStateList; |
13 | 12 |
14 // Mediator listens for web state list changes, then updates the consumer. | 13 // Mediator listens for web state list changes, then updates the consumer. |
15 // This also serves as data source for a tab collection. | 14 // This also serves as data source for a tab collection. |
16 @interface TabCollectionMediator | 15 @interface TabCollectionMediator : NSObject<WebStateListObserving> |
17 : NSObject<TabCollectionDataSource, WebStateListObserving> | |
18 | 16 |
19 // The source of changes and backing of the data source. | 17 // The source of changes and backing of the data source. |
20 @property(nonatomic, assign) WebStateList* webStateList; | 18 @property(nonatomic, assign) WebStateList* webStateList; |
21 | 19 |
22 // This consumer is updated whenever there are relevant changes to the web state | 20 // This consumer is updated whenever there are relevant changes to the web state |
23 // list. | 21 // list. |
24 @property(nonatomic, weak) id<TabCollectionConsumer> consumer; | 22 @property(nonatomic, weak) id<TabCollectionConsumer> consumer; |
25 | 23 |
26 // Stops observing all objects. | 24 // Stops observing all objects. |
27 - (void)disconnect; | 25 - (void)disconnect; |
28 | 26 |
29 @end | 27 @end |
30 | 28 |
31 #endif // IOS_CLEAN_CHROME_BROWSER_UI_TAB_COLLECTION_TAB_COLLECTION_MEDIATOR_H_ | 29 #endif // IOS_CLEAN_CHROME_BROWSER_UI_TAB_COLLECTION_TAB_COLLECTION_MEDIATOR_H_ |
OLD | NEW |