blob: 9a37677a504787781a09f56da662607a3d3c5566 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support."
#endif
#import "remoting/ios/ui/pin_entry_view_controller.h"
#import "remoting/ios/utility.h"
@implementation PinEntryViewController
@synthesize delegate = _delegate;
@synthesize shouldPrompt = _shouldPrompt;
@synthesize pairingSupported = _pairingSupported;
// Override UIViewController
- (id)initWithNibName:(NSString*)nibNameOrNil bundle:(NSBundle*)nibBundleOrNil {
// NibName is the * part of your *.xib file
if ([Utility isPad]) {
self = [super initWithNibName:@"pin_entry_view_controller_ipad" bundle:nil];
} else {
self =
[super initWithNibName:@"pin_entry_view_controller_iphone" bundle:nil];
}
if (self) {
// Custom initialization
}
return self;
}
// Override UIViewController
// Controls are not created immediately, properties must be set before the form
// is displayed
- (void)viewWillAppear:(BOOL)animated {
_host.text = _hostName;
[_switchAskAgain setOn:!_shouldPrompt];
// TODO (aboone) The switch is being hidden in all cases, this functionality
// is not scheduled for QA yet.
// if (!_pairingSupported) {
_switchAskAgain.hidden = YES;
_shouldSavePin.hidden = YES;
_switchAskAgain.enabled = NO;
//}
[_hostPin becomeFirstResponder];
}
// @protocol UITextFieldDelegate, called when the 'enter' key is pressed
- (BOOL)textFieldShouldReturn:(UITextField*)textField {
[textField resignFirstResponder];
if (textField == _hostPin)
[self buttonConnectClicked:self];
return YES;
}
- (IBAction)buttonCancelClicked:(id)sender {
[_delegate cancelledConnectToHostWithPin:self];
}
- (IBAction)buttonConnectClicked:(id)sender {
[_delegate connectToHostWithPin:self
hostPin:_hostPin.text
shouldPrompt:!_switchAskAgain.isOn];
}
@end