Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 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 IOS_CLEAN_CHROME_BROWSER_UI_OVERLAYS_WEB_OVERLAY_COORDINATOR_H_ | |
| 6 #define IOS_CLEAN_CHROME_BROWSER_UI_OVERLAYS_WEB_OVERLAY_COORDINATOR_H_ | |
| 7 | |
| 8 #import <Foundation/Foundation.h> | |
| 9 | |
| 10 #import "ios/shared/chrome/browser/ui/coordinators/browser_coordinator.h" | |
| 11 | |
| 12 class OverlayQueue; | |
| 13 | |
| 14 // Interface exposing functionality to support being displayed via | |
| 15 // OverlayService. | |
| 16 @interface BrowserCoordinator (OverlaySupport) | |
| 17 | |
| 18 // Whether this BrowserCoordinator supports overlaying. If NO, it cannot be | |
| 19 // presented via OverlayService. If YES, this coordinator is expected to call | |
| 20 // |-overlayWasStopped| from its |-stop| to allow the next queued overlay to | |
| 21 // be started. | |
| 22 // Defaults to NO. | |
| 23 @property(nonatomic, readonly) BOOL supportsOverlaying; | |
|
kkhorimoto
2017/06/23 06:11:15
Not sure if this is the best solution. Originally
| |
| 24 | |
| 25 // The queue used to present this overlay. | |
| 26 @property(nonatomic, assign) OverlayQueue* queue; | |
| 27 | |
| 28 // Starts overlaying this coordinator over |overlayParent|. | |
| 29 - (void)startOverlayingCoordinator:(BrowserCoordinator*)overlayParent; | |
| 30 | |
| 31 // Called when the overay is stopped so that the OverlayService can be notified. | |
|
marq (ping after 24h)
2017/06/21 09:41:53
Spelling: overlay.
kkhorimoto
2017/06/23 06:11:15
Done.
| |
| 32 - (void)overlayWasStopped; | |
| 33 | |
| 34 // Performs cleanup tasks for the overlay. This allows for deterministic | |
| 35 // cleanup to occur for coordinators whose UI has not been started. Rather than | |
| 36 // relying on |-dealloc| to perform cleanup, |-cancelOverlay| can be used to | |
| 37 // perform cleanup tasks deterministically. | |
| 38 - (void)cancelOverlay; | |
| 39 | |
| 40 @end | |
| 41 | |
| 42 #endif // IOS_CLEAN_CHROME_BROWSER_UI_OVERLAYS_WEB_OVERLAY_COORDINATOR_H_ | |
| OLD | NEW |