}   // end of OnAccept()

        private void OnCancel()
        {
            // Even if we cancel we may have changed this so save the state.
            XmlOptionsData.KeepSignedInOnExit = keepSignedInChecked;

            // Just go away!
            Active = false;

            // Restart status dialog.
            AuthUI.ShowStatusDialog();
        }   // end of OnCancel()
        }   // end of HandleMouseInput()

        private void OnAccept()
        {
            // If the current creator name or pin isn't valid, don't allow the user to click OK.
            // Skip this check if we have Guest signed in.
            if (creatorBlob.ScrubbedText != Auth.DefaultCreatorName && pinBlob.ScrubbedText != Auth.DefaultCreatorPin)
            {
                if (!Auth.IsPinValid(pinBlob.ScrubbedText) || string.IsNullOrWhiteSpace(creatorBlob.ScrubbedText))
                {
                    Foley.PlayNoBudget();
                    return;
                }
            }

            string newCreatorName = creatorBlob.ScrubbedText;
            string newPin         = pinBlob.ScrubbedText;
            string newIdHash      = Auth.CreateIdHash(newCreatorName, newPin);

            if (!newUserMode)
            {
                bool previouslySeenHash = true;     // TODO (v-chph) Put test here.  Note we should always return true for guest ( Auth.DefaultCreatorHash ) without having to ping the server.

                if (previouslySeenHash)
                {
                    // We've seen this name before.
                    // Update Auth with the new values.
                    Auth.SetCreator(newCreatorName, newIdHash);
                }
                else
                {
                    // We haven't seen this name before so change dialog to New User.
                    newUserMode = true;
                    return; // Don't deactivate.
                }
            }

            // We've seen this name before.
            // Update Auth with the new values.
            Auth.SetCreator(newCreatorName, newIdHash);

            // Note that setting this also forces the creator name and idHash
            // to be saved from Auth.
            XmlOptionsData.KeepSignedInOnExit = keepSignedInChecked;

            // Done, we can exit now.
            Active = false;

            newUserMode = false;

            // Restart status dialog.
            AuthUI.ShowStatusDialog();
        }   // end of OnAccept()