ui: improve welcome wizard

- add more options to share ringID
- better animation during account creation
- 'OK' button becomes 'Next'
- allow user to create an account with 'Unknown' name
- enable notifications by default

Tuleap: #366
Change-Id: Iada3d83aa94313a0082363808c5eeb79a5e5f394
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 52e9505..0682748 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -179,6 +179,7 @@
 
 SET(ring_ICONS
 ${CMAKE_CURRENT_SOURCE_DIR}/data/symbol_name.png
+${CMAKE_CURRENT_SOURCE_DIR}/data/symbol_blue.png
 ${CMAKE_CURRENT_SOURCE_DIR}/data/background_tile.png
 ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_action_accept.png
 ${CMAKE_CURRENT_SOURCE_DIR}/data/dark/ic_arrow_back.png
diff --git a/src/AppDelegate.mm b/src/AppDelegate.mm
index 30be3b7..7c66b6b 100644
--- a/src/AppDelegate.mm
+++ b/src/AppDelegate.mm
@@ -117,15 +117,37 @@
 }
 
 - (void) showIncomingNotification:(Call*) call{
-    NSUserNotification *notification = [[NSUserNotification alloc] init];
+    NSUserNotification* notification = [[NSUserNotification alloc] init];
     NSString* localizedTitle = [NSString stringWithFormat:
                                 NSLocalizedString(@"Incoming call from %@", @"Incoming call from {Name}"), call->peerName().toNSString()];
     [notification setTitle:localizedTitle];
     [notification setSoundName:NSUserNotificationDefaultSoundName];
 
+    // try to activate action button
+    @try {
+        [notification setValue:@YES forKey:@"_showsButtons"];
+    }
+    @catch (NSException *exception) {
+        // private API _showsButtons has changed...
+        NSLog(@"Action button not activable on notification");
+    }
+    [notification setActionButtonTitle:NSLocalizedString(@"Refuse", @"Button Action")];
+
     [[NSUserNotificationCenter defaultUserNotificationCenter] deliverNotification:notification];
 }
 
+- (void) userNotificationCenter:(NSUserNotificationCenter *)center didActivateNotification:(NSUserNotification *)notification
+{
+    if(notification.activationType == NSUserNotificationActivationTypeActionButtonClicked) {
+        CallModel::instance().selectedCall() << Call::Action::REFUSE;
+    } else {
+        [NSApp activateIgnoringOtherApps:YES];
+        if ([self.ringWindowController.window isMiniaturized]) {
+            [self.ringWindowController.window deminiaturize:self];
+        }
+    }
+}
+
 /**
  * click in MainMenu "Setup Ring"
  */
diff --git a/src/RingWizardWC.mm b/src/RingWizardWC.mm
index c562aa6..0ad6300 100644
--- a/src/RingWizardWC.mm
+++ b/src/RingWizardWC.mm
@@ -29,9 +29,10 @@
 #import <certificate.h>
 
 #import "AppDelegate.h"
+#import "Constants.h"
+#import "views/NSColor+RingTheme.h"
 
 @implementation RingWizardWC {
-    __unsafe_unretained IBOutlet NSButton* goToAppButton;
     __unsafe_unretained IBOutlet NSTextField* nicknameField;
     __unsafe_unretained IBOutlet NSProgressIndicator* progressBar;
     __unsafe_unretained IBOutlet NSTextField* indicationLabel;
@@ -39,6 +40,7 @@
     __unsafe_unretained IBOutlet NSButton* showCustomCertsButton;
     IBOutlet NSView *securityContainer;
 
+    __unsafe_unretained IBOutlet NSButton* shareButton;
     __unsafe_unretained IBOutlet NSSecureTextField* passwordField;
     __unsafe_unretained IBOutlet NSView* pvkContainer;
     __unsafe_unretained IBOutlet NSPathControl* certificatePathControl;
@@ -58,15 +60,14 @@
     [nicknameField setTag:NICKNAME_TAG];
 
     isExpanded = false;
-    [self.window makeKeyAndOrderFront:nil];
-    [self.window setLevel:NSStatusWindowLevel];
-    [self.window makeMainWindow];
-    AppDelegate *appDelegate = (AppDelegate *)[[NSApplication sharedApplication] delegate];
+    [self.window setBackgroundColor:[NSColor ringGreyHighlight]];
+
+    AppDelegate* appDelegate = (AppDelegate *)[[NSApplication sharedApplication] delegate];
 
     if(![appDelegate checkForRingAccount]) {
-        accountToCreate = AccountModel::instance().add("", Account::Protocol::RING);
+        accountToCreate = AccountModel::instance().add(QString::fromNSString(NSFullUserName()), Account::Protocol::RING);
         [nicknameField setStringValue:NSFullUserName()];
-        [self toggleCreateButton:NSFullUserName()];
+        [self controlTextDidChange:[NSNotification notificationWithName:@"PlaceHolder" object:nicknameField]];
     } else {
         [indicationLabel setStringValue:NSLocalizedString(@"Ring is already ready to work",
                                                           @"Display message to user")];
@@ -88,23 +89,29 @@
 
     [showCustomCertsButton setHidden:YES];
 
-    [goToAppButton setHidden:NO];
+    [shareButton setHidden:NO];
+    [shareButton sendActionOn:NSLeftMouseDownMask];
 
     NSSharingService* emailSharingService = [NSSharingService sharingServiceNamed:NSSharingServiceNameComposeEmail];
 
-    [createButton setTitle:NSLocalizedString(@"Share by mail",
-                                             @"Share button")];
-    [createButton setAlternateImage:emailSharingService.alternateImage];
-    [createButton setEnabled:YES];
+    [createButton setTitle:NSLocalizedString(@"Continue",
+                                             @"Continue button")];
+    [createButton setAction:@selector(goToApp:)];
+}
 
-    [createButton setAction:@selector(shareByEmail)];
+- (IBAction)shareRingID:(id)sender {
+    NSSharingServicePicker* sharingServicePicker = [[NSSharingServicePicker alloc] initWithItems:[NSArray arrayWithObject:[nicknameField stringValue]]];
+    [sharingServicePicker showRelativeToRect:[sender bounds]
+                                      ofView:sender
+                               preferredEdge:NSMinYEdge];
 }
 
 - (IBAction)createRingAccount:(id)sender
 {
     [nicknameField setHidden:YES];
     [progressBar setHidden:NO];
-    [createButton setEnabled:NO];
+    [createButton setHidden:YES];
+    [progressBar startAnimation:nil];
     [indicationLabel setStringValue:NSLocalizedString(@"Just a moment...",
                                                       @"Indication for user")];
 
@@ -118,19 +125,23 @@
     [showCustomCertsButton setHidden:YES];
 
     [self performSelector:@selector(saveAccount) withObject:nil afterDelay:1];
-    [self registerAutoStartup];
+    [self registerDefaultPreferences];
 }
 
 /**
- * Enable launch at startup by default
+ * Set default values for preferences
  */
-- (void) registerAutoStartup
+- (void) registerDefaultPreferences
 {
+    // enable AutoStartup
     LSSharedFileListRef loginItemsRef = LSSharedFileListCreate(NULL, kLSSharedFileListSessionLoginItems, NULL);
     if (loginItemsRef == nil) return;
     CFURLRef appUrl = (__bridge CFURLRef)[NSURL fileURLWithPath:[[NSBundle mainBundle] bundlePath]];
     LSSharedFileListItemRef itemRef = LSSharedFileListInsertItemURL(loginItemsRef, kLSSharedFileListItemLast, NULL, NULL, appUrl, NULL, NULL);
     if (itemRef) CFRelease(itemRef);
+
+    // enable Notifications
+    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:Preferences::Notifications];
 }
 
 - (void) saveAccount
@@ -146,7 +157,7 @@
                      [=](Account *account, const Account::RegistrationState state) {
                          NSLog(@"Account created!");
                          [progressBar setHidden:YES];
-                         [createButton setEnabled:YES];
+                         [createButton setHidden:NO];
                          [indicationLabel setStringValue:NSLocalizedString(@"This is your number, share it with your friends!", @"Indication to user")];
                          [self displayHash:account->username().toNSString()];
                      });
@@ -175,27 +186,13 @@
     }
 }
 
-- (void) toggleCreateButton:(NSString*) alias
-{
-    [createButton setEnabled:![alias isEqualToString:@""]];
-    accountToCreate->setAlias([alias UTF8String]);
-    accountToCreate->setDisplayName([alias UTF8String]);
-}
-
 - (IBAction)goToApp:(id)sender
 {
     [self.window close];
-    AppDelegate *appDelegate = (AppDelegate *)[[NSApplication sharedApplication] delegate];
+    AppDelegate* appDelegate = (AppDelegate *)[[NSApplication sharedApplication] delegate];
     [appDelegate showMainWindow];
 }
 
-- (void) shareByEmail
-{
-    NSMutableArray *shareItems = [[NSMutableArray alloc] initWithObjects:[nicknameField stringValue], nil];
-    NSSharingService* emailSharingService = [NSSharingService sharingServiceNamed:NSSharingServiceNameComposeEmail];
-    [emailSharingService performWithItems:shareItems];
-}
-
 #pragma mark - NSPathControl delegate methods
 
 - (IBAction)caListPathControlSingleClick:(id)sender
@@ -255,7 +252,6 @@
  */
 - (void)pathControl:(NSPathControl *)pathControl willDisplayOpenPanel:(NSOpenPanel *)openPanel
 {
-    NSLog(@"willDisplayOpenPanel");
     [openPanel setAllowsMultipleSelection:NO];
     [openPanel setCanChooseDirectories:NO];
     [openPanel setCanChooseFiles:YES];
@@ -307,14 +303,19 @@
     }
 
     // else it is NICKNAME_TAG field
-    [self toggleCreateButton:textField.stringValue];
+    NSString* alias = textField.stringValue;
+    if ([alias isEqualToString:@""]) {
+        alias = NSLocalizedString(@"Unknown", @"Name used when user leave field empty");
+    }
+    accountToCreate->setAlias([alias UTF8String]);
+    accountToCreate->setDisplayName([alias UTF8String]);
 }
 
 # pragma NSWindowDelegate methods
 
 - (void)windowWillClose:(NSNotification *)notification
 {
-    AppDelegate *appDelegate = (AppDelegate *)[[NSApplication sharedApplication] delegate];
+    AppDelegate* appDelegate = (AppDelegate *)[[NSApplication sharedApplication] delegate];
     if ([appDelegate checkForRingAccount]) {
         [appDelegate showMainWindow];
     }
diff --git a/ui/Base.lproj/AccAudio.strings b/ui/Base.lproj/AccAudio.strings
index bf4499e..d1ae715 100644
--- a/ui/Base.lproj/AccAudio.strings
+++ b/ui/Base.lproj/AccAudio.strings
@@ -1,4 +1,7 @@
 
+/* Class = "NSButtonCell"; title = "Play"; ObjectID = "8jq-XH-nJV"; */
+"8jq-XH-nJV.title" = "Play";
+
 /* Class = "NSButtonCell"; title = "Down"; ObjectID = "Bbz-hd-1CE"; */
 "Bbz-hd-1CE.title" = "Down";
 
diff --git a/ui/Base.lproj/Localizable.strings b/ui/Base.lproj/Localizable.strings
index a2ecc59..afe7881 100644
--- a/ui/Base.lproj/Localizable.strings
+++ b/ui/Base.lproj/Localizable.strings
@@ -28,6 +28,9 @@
 /* Contextual menu entry */
 "Choose file" = "Choose file";
 
+/* Continue button */
+"Continue" = "Continue";
+
 /* No comment provided by engineer. */
 "Copy" = "Copy";
 
@@ -43,6 +46,15 @@
 /* Message from {Name} */
 "Message from %@" = "Message from %@";
 
+/* Button label */
+"Pause" = "Pause";
+
+/* Button label */
+"Play" = "Play";
+
+/* Button Action */
+"Refuse" = "Refuse";
+
 /* Contextual menu entry */
 "Remove value" = "Remove value";
 
@@ -55,12 +67,12 @@
 /* No comment provided by engineer. */
 "Share" = "Share";
 
-/* Share button */
-"Share by mail" = "Share by mail";
-
 /* No comment provided by engineer. */
 "Text Actions" = "Text Actions";
 
 /* Indication to user */
 "This is your number, share it with your friends!" = "This is your number, share it with your friends!";
 
+/* Name used when user leave field empty */
+"Unknown" = "Unknown";
+
diff --git a/ui/Base.lproj/RingWindow.xib b/ui/Base.lproj/RingWindow.xib
index 490f906..8ba6e1a 100644
--- a/ui/Base.lproj/RingWindow.xib
+++ b/ui/Base.lproj/RingWindow.xib
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="9531" systemVersion="15B42" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="9532" systemVersion="15D21" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="9531"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="9532"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="RingWindowController">
@@ -19,7 +19,7 @@
             <windowCollectionBehavior key="collectionBehavior" fullScreenPrimary="YES"/>
             <windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
             <rect key="contentRect" x="196" y="240" width="1053" height="658"/>
-            <rect key="screenRect" x="0.0" y="0.0" width="1680" height="1050"/>
+            <rect key="screenRect" x="0.0" y="0.0" width="1680" height="1027"/>
             <view key="contentView" autoresizesSubviews="NO" id="se5-gp-TjO">
                 <rect key="frame" x="0.0" y="0.0" width="1053" height="658"/>
                 <autoresizingMask key="autoresizingMask"/>
@@ -200,7 +200,7 @@
                                                                                     <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" misplaced="YES" tag="500" translatesAutoresizingMaskIntoConstraints="NO" id="MYe-rn-qOP">
                                                                                         <rect key="frame" x="35" y="6" width="16" height="17"/>
                                                                                         <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="center" title="n" drawsBackground="YES" id="sGB-x7-gig">
-                                                                                            <font key="font" metaFont="system" size="11"/>
+                                                                                            <font key="font" metaFont="smallSystem"/>
                                                                                             <color key="textColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
                                                                                             <color key="backgroundColor" red="0.98431372549019602" green="0.28627450980392155" blue="0.28235294117647058" alpha="0.90000000000000002" colorSpace="calibratedRGB"/>
                                                                                         </textFieldCell>
diff --git a/ui/Base.lproj/RingWizard.strings b/ui/Base.lproj/RingWizard.strings
index f938125..83f0d56 100644
--- a/ui/Base.lproj/RingWizard.strings
+++ b/ui/Base.lproj/RingWizard.strings
@@ -1,18 +1,18 @@
 
-/* Class = "NSWindow"; title = "Ring"; ObjectID = "4LP-GX-BkH"; */
-"4LP-GX-BkH.title" = "Ring";
-
 /* Class = "NSTextFieldCell"; title = "Choose your own certificates"; ObjectID = "4ls-Yq-mDp"; */
 "4ls-Yq-mDp.title" = "Choose your own certificates";
 
+/* Class = "NSTextFieldCell"; placeholderString = "'Unknown' if empty..."; ObjectID = "5Z7-Wi-530"; */
+"5Z7-Wi-530.placeholderString" = "'Unknown' if empty...";
+
 /* Class = "NSTextFieldCell"; title = "Advanced security (optionnal)"; ObjectID = "Gnn-K9-PTH"; */
 "Gnn-K9-PTH.title" = "Advanced security (optionnal)";
 
 /* Class = "NSSecureTextFieldCell"; placeholderString = "Password..."; ObjectID = "Hsc-U9-2RV"; */
 "Hsc-U9-2RV.placeholderString" = "Password...";
 
-/* Class = "NSButtonCell"; title = "Continue"; ObjectID = "Kwr-LJ-K8C"; */
-"Kwr-LJ-K8C.title" = "Continue";
+/* Class = "NSButtonCell"; title = "Share"; ObjectID = "Kwr-LJ-K8C"; */
+"Kwr-LJ-K8C.title" = "Share";
 
 /* Class = "NSTextFieldCell"; title = "Certificate Authority list"; ObjectID = "SpA-zX-ytE"; */
 "SpA-zX-ytE.title" = "Certificate Authority list";
@@ -23,8 +23,8 @@
 /* Class = "NSButton"; ibShadowedToolTip = "Choose custom certificates"; ObjectID = "aZl-bU-psB"; */
 "aZl-bU-psB.ibShadowedToolTip" = "Choose custom certificates";
 
-/* Class = "NSTextFieldCell"; title = "First tell us who you are"; ObjectID = "meL-TZ-VQO"; */
-"meL-TZ-VQO.title" = "First tell us who you are";
+/* Class = "NSTextFieldCell"; title = "Choose your username"; ObjectID = "meL-TZ-VQO"; */
+"meL-TZ-VQO.title" = "Choose your username";
 
 /* Class = "NSTextFieldCell"; title = "Private key"; ObjectID = "poP-JD-MDa"; */
 "poP-JD-MDa.title" = "Private key";
@@ -32,5 +32,5 @@
 /* Class = "NSTextFieldCell"; title = "Welcome to Ring"; ObjectID = "uqu-uh-Wao"; */
 "uqu-uh-Wao.title" = "Welcome to Ring";
 
-/* Class = "NSButtonCell"; title = "OK"; ObjectID = "wDw-Ut-RUm"; */
-"wDw-Ut-RUm.title" = "OK";
+/* Class = "NSButtonCell"; title = "Next"; ObjectID = "wDw-Ut-RUm"; */
+"wDw-Ut-RUm.title" = "Next";
diff --git a/ui/Base.lproj/RingWizard.xib b/ui/Base.lproj/RingWizard.xib
index cd9853d..42e144b 100644
--- a/ui/Base.lproj/RingWizard.xib
+++ b/ui/Base.lproj/RingWizard.xib
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="9531" systemVersion="15B42" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="9532" systemVersion="15D21" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="9531"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="9532"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="RingWizardWC">
@@ -9,7 +9,6 @@
                 <outlet property="caListPathControl" destination="fnL-AL-k3N" id="5ad-Cb-mM5"/>
                 <outlet property="certificatePathControl" destination="1Hn-6F-5Pq" id="V5y-qn-MkJ"/>
                 <outlet property="createButton" destination="rC1-mU-Scu" id="JrT-qi-fF5"/>
-                <outlet property="goToAppButton" destination="hKA-b6-heE" id="voO-WW-sdE"/>
                 <outlet property="indicationLabel" destination="PZB-UI-B3R" id="t79-DV-rKR"/>
                 <outlet property="nicknameField" destination="Phj-na-SP1" id="e9d-3N-z9N"/>
                 <outlet property="passwordField" destination="1nU-BV-LdG" id="1fI-Xa-L9w"/>
@@ -17,34 +16,61 @@
                 <outlet property="pvkContainer" destination="he3-z9-OHD" id="rmf-aA-Lv6"/>
                 <outlet property="pvkPathControl" destination="Wk1-nk-8ES" id="Sb9-e1-mDQ"/>
                 <outlet property="securityContainer" destination="ftV-Pr-W0i" id="wUj-m3-EIE"/>
+                <outlet property="shareButton" destination="hKA-b6-heE" id="Asx-al-WgA"/>
                 <outlet property="showCustomCertsButton" destination="aZl-bU-psB" id="RQ2-RR-ufD"/>
                 <outlet property="window" destination="4LP-GX-BkH" id="vNm-J0-gmv"/>
             </connections>
         </customObject>
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
-        <window title="Ring" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" restorable="NO" oneShot="NO" showsToolbarButton="NO" animationBehavior="default" id="4LP-GX-BkH">
-            <windowStyleMask key="styleMask" titled="YES" closable="YES"/>
-            <rect key="contentRect" x="599" y="440" width="480" height="173"/>
+        <window allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" restorable="NO" oneShot="NO" showsToolbarButton="NO" animationBehavior="default" id="4LP-GX-BkH">
+            <windowStyleMask key="styleMask" titled="YES" closable="YES" texturedBackground="YES"/>
+            <rect key="contentRect" x="599" y="440" width="480" height="182"/>
             <rect key="screenRect" x="0.0" y="0.0" width="1680" height="1050"/>
             <view key="contentView" id="Wgr-xH-z0G">
-                <rect key="frame" x="0.0" y="5" width="480" height="173"/>
+                <rect key="frame" x="0.0" y="0.0" width="480" height="182"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
-                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="rAn-Kv-PgL">
-                        <rect key="frame" x="18" y="117" width="231" height="36"/>
+                    <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="rAn-Kv-PgL">
+                        <rect key="frame" x="126" y="143" width="229" height="36"/>
                         <textFieldCell key="cell" controlSize="mini" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Welcome to Ring" id="uqu-uh-Wao">
                             <font key="font" metaFont="system" size="30"/>
                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                         </textFieldCell>
                     </textField>
+                    <progressIndicator hidden="YES" wantsLayer="YES" maxValue="100" indeterminate="YES" style="spinning" translatesAutoresizingMaskIntoConstraints="NO" id="nRx-qJ-VIe">
+                        <rect key="frame" x="192" y="60" width="96" height="32"/>
+                        <constraints>
+                            <constraint firstAttribute="width" constant="96" id="EN6-qO-gH1"/>
+                        </constraints>
+                    </progressIndicator>
+                    <button hidden="YES" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hKA-b6-heE">
+                        <rect key="frame" x="306" y="17" width="80" height="29"/>
+                        <buttonCell key="cell" type="bevel" title="Share" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="Kwr-LJ-K8C">
+                            <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                            <font key="font" metaFont="system"/>
+                        </buttonCell>
+                        <connections>
+                            <action selector="shareRingID:" target="-2" id="gQ7-b3-r6R"/>
+                        </connections>
+                    </button>
+                    <button toolTip="Choose custom certificates" horizontalHuggingPriority="750" verticalHuggingPriority="750" ambiguous="YES" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="aZl-bU-psB">
+                        <rect key="frame" x="342" y="62" width="39" height="38"/>
+                        <buttonCell key="cell" type="round" bezelStyle="circular" image="NSAddTemplate" imagePosition="only" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="b1Z-dE-vrA">
+                            <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                            <font key="font" metaFont="system"/>
+                        </buttonCell>
+                        <connections>
+                            <action selector="chooseOwnCertificates:" target="-2" id="Tel-fO-O2f"/>
+                        </connections>
+                    </button>
                     <button translatesAutoresizingMaskIntoConstraints="NO" id="rC1-mU-Scu">
                         <rect key="frame" x="390" y="17" width="72" height="29"/>
                         <constraints>
                             <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="3Oi-R8-jmQ"/>
                         </constraints>
-                        <buttonCell key="cell" type="bevel" title="OK" bezelStyle="regularSquare" alignment="center" enabled="NO" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="wDw-Ut-RUm">
+                        <buttonCell key="cell" type="bevel" title="Next" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="wDw-Ut-RUm">
                             <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                             <font key="font" metaFont="system"/>
                             <string key="keyEquivalent" base64-UTF8="YES">
@@ -55,46 +81,20 @@
                             <action selector="createRingAccount:" target="-2" id="CBc-Mm-dzm"/>
                         </connections>
                     </button>
-                    <progressIndicator hidden="YES" maxValue="100" indeterminate="YES" style="bar" translatesAutoresizingMaskIntoConstraints="NO" id="nRx-qJ-VIe">
-                        <rect key="frame" x="192" y="62" width="96" height="20"/>
+                    <imageView horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="5sr-Hf-NCo">
+                        <rect key="frame" x="361" y="139" width="45" height="45"/>
                         <constraints>
-                            <constraint firstAttribute="width" constant="96" id="EN6-qO-gH1"/>
+                            <constraint firstAttribute="height" constant="45" id="0pw-aW-wnD"/>
+                            <constraint firstAttribute="width" constant="45" id="YAW-t1-WU2"/>
                         </constraints>
-                    </progressIndicator>
-                    <button hidden="YES" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hKA-b6-heE">
-                        <rect key="frame" x="306" y="17" width="80" height="29"/>
-                        <buttonCell key="cell" type="bevel" title="Continue" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="Kwr-LJ-K8C">
-                            <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                            <font key="font" metaFont="system"/>
-                        </buttonCell>
-                        <connections>
-                            <action selector="goToApp:" target="-2" id="o8v-93-fE5"/>
-                        </connections>
-                    </button>
-                    <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="PZB-UI-B3R">
-                        <rect key="frame" x="46" y="89" width="416" height="20"/>
-                        <constraints>
-                            <constraint firstAttribute="height" constant="20" id="1T5-n3-xOf"/>
-                        </constraints>
-                        <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" title="First tell us who you are" id="meL-TZ-VQO">
-                            <font key="font" metaFont="system"/>
-                            <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
-                            <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
-                        </textFieldCell>
-                    </textField>
-                    <button toolTip="Choose custom certificates" horizontalHuggingPriority="750" verticalHuggingPriority="750" ambiguous="YES" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="aZl-bU-psB">
-                        <rect key="frame" x="322" y="50" width="39" height="38"/>
-                        <buttonCell key="cell" type="round" bezelStyle="circular" image="NSAddTemplate" imagePosition="overlaps" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="b1Z-dE-vrA">
-                            <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                            <font key="font" metaFont="system"/>
-                        </buttonCell>
-                        <connections>
-                            <action selector="chooseOwnCertificates:" target="-2" id="Tel-fO-O2f"/>
-                        </connections>
-                    </button>
+                        <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="symbol_blue" id="UZZ-KL-7Bo"/>
+                    </imageView>
                     <textField verticalHuggingPriority="750" ambiguous="YES" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Phj-na-SP1">
-                        <rect key="frame" x="161" y="59" width="159" height="22"/>
-                        <textFieldCell key="cell" controlSize="mini" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="5Z7-Wi-530">
+                        <rect key="frame" x="140" y="73" width="200" height="22"/>
+                        <constraints>
+                            <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="LZg-nv-YRi"/>
+                        </constraints>
+                        <textFieldCell key="cell" controlSize="mini" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" placeholderString="'Unknown' if empty..." drawsBackground="YES" id="5Z7-Wi-530">
                             <font key="font" metaFont="system"/>
                             <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
                             <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
@@ -103,30 +103,42 @@
                             <outlet property="delegate" destination="-2" id="K7L-Rf-9i7"/>
                         </connections>
                     </textField>
+                    <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="PZB-UI-B3R">
+                        <rect key="frame" x="68" y="105" width="344" height="17"/>
+                        <constraints>
+                            <constraint firstAttribute="width" constant="340" id="NMy-6k-0aA"/>
+                        </constraints>
+                        <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="Choose your username" id="meL-TZ-VQO">
+                            <font key="font" metaFont="system"/>
+                            <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                            <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                        </textFieldCell>
+                    </textField>
                 </subviews>
                 <constraints>
                     <constraint firstAttribute="trailing" secondItem="rC1-mU-Scu" secondAttribute="trailing" constant="20" id="02s-v0-sLn"/>
-                    <constraint firstItem="nRx-qJ-VIe" firstAttribute="centerX" secondItem="Phj-na-SP1" secondAttribute="centerX" id="2X6-yE-3WK"/>
-                    <constraint firstItem="rAn-Kv-PgL" firstAttribute="leading" secondItem="Wgr-xH-z0G" secondAttribute="leading" constant="20" id="4F3-Xi-OWO"/>
-                    <constraint firstItem="aZl-bU-psB" firstAttribute="centerY" secondItem="Phj-na-SP1" secondAttribute="centerY" id="CiD-0z-uVv"/>
-                    <constraint firstItem="aZl-bU-psB" firstAttribute="top" secondItem="PZB-UI-B3R" secondAttribute="bottom" constant="6" id="D54-WV-hOC"/>
-                    <constraint firstItem="rAn-Kv-PgL" firstAttribute="top" secondItem="Wgr-xH-z0G" secondAttribute="top" constant="20" id="E8Q-rV-slT"/>
+                    <constraint firstItem="nRx-qJ-VIe" firstAttribute="centerX" secondItem="Wgr-xH-z0G" secondAttribute="centerX" id="A8C-8W-rR8"/>
+                    <constraint firstItem="Phj-na-SP1" firstAttribute="centerX" secondItem="Wgr-xH-z0G" secondAttribute="centerX" id="AGC-ga-ZNS"/>
+                    <constraint firstItem="PZB-UI-B3R" firstAttribute="centerX" secondItem="Wgr-xH-z0G" secondAttribute="centerX" id="LQU-R8-GHo"/>
+                    <constraint firstItem="aZl-bU-psB" firstAttribute="leading" secondItem="Phj-na-SP1" secondAttribute="trailing" constant="8" id="PCb-NY-cPw"/>
+                    <constraint firstItem="5sr-Hf-NCo" firstAttribute="leading" secondItem="rAn-Kv-PgL" secondAttribute="trailing" constant="8" id="RGk-1T-khu"/>
                     <constraint firstItem="rC1-mU-Scu" firstAttribute="leading" secondItem="hKA-b6-heE" secondAttribute="trailing" constant="8" id="RUS-zV-JtN"/>
+                    <constraint firstItem="rAn-Kv-PgL" firstAttribute="top" secondItem="Wgr-xH-z0G" secondAttribute="top" constant="3" id="RdR-vl-146"/>
                     <constraint firstAttribute="bottom" secondItem="hKA-b6-heE" secondAttribute="bottom" constant="20" id="TGf-Kl-MPP"/>
-                    <constraint firstItem="Phj-na-SP1" firstAttribute="centerY" secondItem="nRx-qJ-VIe" secondAttribute="centerY" constant="2" id="Y60-kb-MMV"/>
-                    <constraint firstItem="aZl-bU-psB" firstAttribute="leading" secondItem="Phj-na-SP1" secondAttribute="trailing" constant="8" id="cNp-lK-SAf"/>
+                    <constraint firstItem="aZl-bU-psB" firstAttribute="centerY" secondItem="Phj-na-SP1" secondAttribute="centerY" id="YbA-a2-VNl"/>
+                    <constraint firstItem="nRx-qJ-VIe" firstAttribute="top" secondItem="PZB-UI-B3R" secondAttribute="bottom" constant="13" id="c9C-z2-sGu"/>
                     <constraint firstAttribute="bottom" secondItem="rC1-mU-Scu" secondAttribute="bottom" constant="20" id="dbf-vQ-Wby"/>
-                    <constraint firstItem="PZB-UI-B3R" firstAttribute="top" secondItem="rAn-Kv-PgL" secondAttribute="bottom" constant="8" id="iBw-TJ-w8X"/>
-                    <constraint firstItem="PZB-UI-B3R" firstAttribute="leading" secondItem="Wgr-xH-z0G" secondAttribute="leading" constant="48" id="jBv-tH-n9x"/>
-                    <constraint firstAttribute="trailing" secondItem="PZB-UI-B3R" secondAttribute="trailing" constant="20" id="jiS-fs-7gq"/>
-                    <constraint firstAttribute="centerX" secondItem="Phj-na-SP1" secondAttribute="centerX" id="pZ6-h5-hBt"/>
-                    <constraint firstItem="Phj-na-SP1" firstAttribute="top" secondItem="PZB-UI-B3R" secondAttribute="bottom" constant="8" id="ypd-9b-fEH"/>
+                    <constraint firstItem="Phj-na-SP1" firstAttribute="top" secondItem="PZB-UI-B3R" secondAttribute="bottom" constant="11" id="dnt-aZ-NN3"/>
+                    <constraint firstItem="PZB-UI-B3R" firstAttribute="top" secondItem="rAn-Kv-PgL" secondAttribute="bottom" constant="21" id="gTm-YN-3Nr"/>
+                    <constraint firstItem="5sr-Hf-NCo" firstAttribute="centerY" secondItem="rAn-Kv-PgL" secondAttribute="centerY" id="gZH-uP-MDP"/>
+                    <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="5sr-Hf-NCo" secondAttribute="trailing" constant="8" id="heg-Vm-b50"/>
+                    <constraint firstItem="rAn-Kv-PgL" firstAttribute="centerX" secondItem="Wgr-xH-z0G" secondAttribute="centerX" id="zQB-dF-MQ4"/>
                 </constraints>
             </view>
             <connections>
                 <outlet property="delegate" destination="-2" id="cKX-Z2-yDq"/>
             </connections>
-            <point key="canvasLocation" x="661" y="-59.5"/>
+            <point key="canvasLocation" x="589" y="-131"/>
         </window>
         <customView identifier="ChooseCerts" id="ftV-Pr-W0i">
             <rect key="frame" x="0.0" y="0.0" width="531" height="172"/>
@@ -231,5 +243,6 @@
     </objects>
     <resources>
         <image name="NSAddTemplate" width="11" height="11"/>
+        <image name="symbol_blue" width="92.160003662109375" height="85.919998168945312"/>
     </resources>
 </document>