Commit Graph

52 Commits

Author SHA1 Message Date
Max Radermacher
d8298b6e8d
Fix code to ensure local profile name is correct 2024-01-23 17:47:27 -06:00
Harry
f1432f5b20
Add logging to reg nav controller presentation 2023-12-05 19:53:14 -05:00
Max Radermacher
59478094ed
Consolidate phone number privacy feature flags 2023-10-17 18:24:52 -05:00
Harry
f735a50161
Prevent multiple taps on registration permissions button 2023-10-04 14:37:14 -07:00
Harry
9f89df663c
A couple device transfer fixes 2023-09-01 13:49:21 -07:00
Harry
2cb6700419
Delete legacy registration 2023-08-10 09:22:17 -07:00
Harry
cc436e0db8
Support registering with a landline 2023-08-03 09:42:07 -07:00
Harry
f728457039
Update build target to iOS 13.0 2023-06-08 16:21:20 -07:00
Igor Solomennikov
f22ae21b54
Convert SignalApp to Swift. 2023-05-16 16:48:06 -07:00
Harry
bace13aabb
Add logging and explicit error message for registration 3p service errors 2023-05-12 16:59:40 -07:00
Igor Solomennikov
ab1be4b0a6
Convert ObjC parts of DebugLogs to Swift. 2023-05-02 11:39:19 -07:00
Harry
7daed0ae2f
typo fix
Co-authored-by: Utsav Dave <utsavdave1997@gmail.com>
2023-04-24 10:30:09 -07:00
Evan Hahn
6f87a918b0 New registration: disable swipe to pop gesture 2023-04-04 16:51:55 -05:00
Evan Hahn
4bf5f44be1
Rename enum case in new registration
This change should have no user impact. All it does is rename
`.pinAttemptsExhaustedAndMustCreateNewPin` to
`.pinAttemptsExhaustedWithoutReglock`.
2023-04-03 11:24:24 -07:00
Harry
d0b8d1b446
Dont animate a pop away from a reg loading view controller 2023-03-29 09:30:40 -07:00
Evan Hahn
e938ddb591
Add more debug logging for new registration 2023-03-28 21:08:06 -05:00
Harry
4f01be0082
Clean up some error handling for registration verification code exhausting attempts
* show back to back errors on verification code screen

* handle verification code attempts exhausted

* let the user resend a code after submission attempts are exhausted

* clear last digit after an incorrectly entered verification code

* wipe errors and allow proceeding when changing e164

* lint
2023-03-28 17:06:29 -07:00
Harry
3a78f30ed9
Registration cleanup
* Don't wipe local kbs state when kbs stuff fails for change number; its still valid for the old number

* remove remaining error sheet todos

* fix tests
2023-03-28 14:23:41 -07:00
Evan Hahn
7cf71793f8 New registration: let users submit debug logs during the process 2023-03-28 10:27:00 -05:00
Harry
7ba5f7384a
Handle being de-registered while still in the middle of registration
* put rereg mode params into a struct for sharability

* add step and UI handling for when we become deregistered during post-reg steps

* handle dereg when syncing push tokens

* show generic error on kbs backup failure

* handle dereg when restoring from kbs

* handle dereg during profile setup steps

* finalize pni stuff before deregistering

* add comment

* change debug fail to log

* Navigate to verification vc before showing popup so that we don't cancel the nav controller pop

* send a session sms code even if we get interrupted right after session creation

* improve state handling for initial session sms code

* nit: make var fileprivate

* show error when state changed on screen
2023-03-28 07:50:56 -07:00
Harry
545dffd408
New registration: don't say you can continue with new PIN when you can't 2023-03-28 08:04:22 -05:00
Harry
477729a502
Show error on registration captcha rejection; be prepared to handle repeat captchas 2023-03-27 16:30:48 -07:00
Harry
02388aac62
Clarification for already handled error cases for new registration
* update comment for reg recovery pw create account handling

* handle prekey generation failure
2023-03-27 16:29:15 -07:00
Evan Hahn
17cb6756ae
New registration: show generic error for "session invalidated" errors 2023-03-27 17:39:19 -05:00
Evan Hahn
f008d084c7
New registration: show screen when PIN guesses exhausted outside reglock 2023-03-27 15:20:29 -05:00
Evan Hahn
2b12f3cea7
New registration: apply updates to PIN screen 2023-03-27 11:17:49 -05:00
Harry
76b31992b2
Collected nits from registration PR stack
* nits

* remove obsolete assert
2023-03-24 19:40:58 -07:00
Harry
45d7ce2a1a
Add exit functionality to reglock timeout screen
* wipe pending change number state on service error response

* add unable to exit case to reglock timeout controller

* take action on reglock timeout acknowledgement
2023-03-24 13:51:54 -07:00
Harry
b6e781fa24
Allow switching to secondary device linking from new registration and vice versa
* add copy pasted RegistrationConfirmModeSwitchViewController

* enable switching registration and secondary device linking back and forth
2023-03-24 13:51:05 -07:00
Harry
18594f53f1
Add buttons to exit re-registration and change number
* add UI to exit registration

* fix tests

* cleanup and dismiss context menu on dismiss view
2023-03-24 13:15:40 -07:00
Harry
4ee467be2b
Add screens unique to change number to new registration flow
* Add splash controller for change number flow

* Add copy of change number phone number entry controller

* add copy of change number confirmation view controller

* hook up change number phone number entry screens

* fix header color

* fix change number error view

* add some spacing before error label

* run auto genstrings

* actually fix string comment
2023-03-24 12:32:59 -07:00
Harry
19c69db4cf
Allow device transfer from reg bravo 2023-03-22 10:20:56 -07:00
Harry
59c164d849
Show reg bravo loading controller between all steps 2023-03-22 09:24:14 -07:00
Harry
68f34d10cd
Let the user change e164 after entering one in registration bravo
* Allow changing e164 after entering one + tests

* hook up back to change number from sms code verification screen

* nit

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>

* nit 2

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>

---------

Co-authored-by: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com>
2023-03-22 07:52:34 -07:00
Evan Hahn
2c7a8a8feb New registration: update step when dismissing error sheet
When a registration error is dismissed, we now call `nextStep()` (and
push the corresponding view controller). Sometimes, this will do
nothing. Sometimes, it will take you to a new screen.

As a "proof-of-concept", I updated our server failure handling code. We
want to bonk the user back to the phone number registration screen.
2023-03-17 07:43:48 -05:00
Harry
a31fb00368
Change all e164 references in reg coordinator to E164 type 2023-03-16 11:32:13 -07:00
Evan Hahn
faa8569d4a
Show generic errors in new registration
I also found a few spots where I failed to identify network errors in
366c08ac1b. This updates those.
2023-03-15 17:38:41 -05:00
Evan Hahn
366c08ac1b Show UI for registration network errors 2023-03-15 16:15:50 -05:00
Evan Hahn
f415335d1b
Add (dormant) reglock timeout screen 2023-03-15 15:41:36 -05:00
Evan Hahn
f5bd3b95fe
Add (dormant) "app needs to be updated" alert during registration
If your app needs to be updated during registration, we'll show an
alert. This can happen if:

- The build has expired
- We receive an unexpected challenge (or a push challenge we cannot
  fulfill, but must)
2023-03-15 12:54:42 -05:00
Pete Walters
f857ae62c7
Update registration UI for phone number discoverability 2023-03-13 18:30:34 -05:00
Harry
a146e18aaf
Set up account state and exit registration
* Go to chat list view after registration

* sync system contacts during registration

* Use explicit local credentials for storage service operations during registration

* fix tests

* Quick hack to get through double pin confirmation

* Finishing touches

* lint

* fix build

* reload phone number discoverability after storage service sync

* fix tests again

* Take chat auth on account and contact record initializers

* Change around branches for clarity in OWSUserProfile

* pr comments

* Split ChatServiceAuth into the same and AuthedAccount

* fix tests

* merge woes
2023-03-09 21:54:51 -08:00
Harry
38cba70b85
Hook up new registration PIN entry screen 2023-02-23 09:50:17 -08:00
Harry
66b1f1e9ad
Hook up RegistrationPhoneNumberDiscoverabilityViewController 2023-02-21 11:53:32 -08:00
Harry
d3897e4c78
Hook up RegistrationCaptchaViewController 2023-02-21 10:50:26 -08:00
Harry
9382ba690f
Hook up RegistrationProfileViewController 2023-02-21 10:00:23 -08:00
Harry
56364341fb
Hook up RegistrationTransferChoiceViewController 2023-02-21 09:16:37 -08:00
Harry
f5bdd6bafa
Hook up RegistrationVerificationViewController
* Hook up RegistrationVerificationViewController

* Fix existing tests

* add new test cases

* pr comments
2023-02-21 08:37:08 -08:00
Harry
dc1ac4fc8b
Hook up RegistrationPhoneNumberViewController
* Hook up RegistrationPhoneNumberViewController

* Fix existing tests

* add some new tests; fix test scaffolding bug

* Show an error before going back to phone number entry if the session is invalidated
2023-02-21 07:46:56 -08:00
Harry
798ad6dc67
Hook up RegistrationPermissionsViewController
* Hook up RegistrationPermissionsViewController

* Update tests accordingly

* rebase woes

* Simplify opening path testing in RegistrationCoordinatorTest
2023-02-17 16:31:13 -08:00