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 REMOTING_CLIENT_IOS_APP_CLIENT_CONNECTION_VIEW_CONTROLLER_H_ | |
6 #define REMOTING_CLIENT_IOS_APP_CLIENT_CONNECTION_VIEW_CONTROLLER_H_ | |
7 | |
8 #import <UIKit/UIKit.h> | |
9 | |
10 // This enumerated the differnt modes this Client Connection View can be in. | |
11 typedef NS_ENUM(NSInteger, ClientConnectionViewState) { | |
12 ClientViewConnecting, | |
13 ClientViewPinPrompt, | |
14 ClientViewConnected, | |
15 ClientViewClosed, | |
16 }; | |
17 | |
18 // The host connection view controller delegate provides feedback for state | |
19 // changes on Host Connection that the calling view should respond to. | |
20 @protocol ClientConnectionViewControllerDelegate<NSObject> | |
21 | |
22 // Notifies the delegate the client is connected to the host. | |
23 - (void)clientConnected; | |
24 | |
25 // Gets the current host name the client is attempting to connect to. | |
26 - (NSString*)getConnectingHostName; | |
27 | |
28 @end | |
29 | |
30 // This is the view that shows the user feedback while the client connection is | |
31 // being established. If requested the view can also display the pin entry view. | |
32 // State communication for this view is handled by NSNotifications, it listens | |
33 // to kHostSessionStatusChanged events on the default NSNotificationCenter. | |
34 // Internally the notification is tied to [self setState] so view setup will | |
35 // work the same way if state is set directly. | |
36 @interface ClientConnectionViewController : UIViewController | |
37 | |
38 // Setting state will change the view | |
39 @property(nonatomic, assign) ClientConnectionViewState state; | |
40 | |
41 // This delegate is used to ask for Host Name and to notify when the connection | |
42 // has been established. | |
43 @property(weak, nonatomic) id<ClientConnectionViewControllerDelegate> delegate; | |
44 | |
45 @end | |
46 | |
47 #endif // REMOTING_CLIENT_IOS_APP_CLIENT_CONNECTION_VIEW_CONTROLLER_H_ | |
OLD | NEW |