Skip to content

[KNW-221] Add resend cooldown and polish password-signup email verification UI - #1369

Merged
fernandolins merged 8 commits into
mainfrom
KNW-221
Aug 21, 2026
Merged

[KNW-221] Add resend cooldown and polish password-signup email verification UI#1369
fernandolins merged 8 commits into
mainfrom
KNW-221

Conversation

@fernandolins

@fernandolins fernandolins commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Related issue

KNW-221

Problem

On the password-signup email verification screen, Resend verification email stayed enabled after being clicked, so users could fire multiple resend requests by accident or on purpose.

The screen also didn’t match the intended mockup (copy, Back/Sign in actions, countdown feedback), and multi-line instruction text could be clipped by Qt label/layout height handling.

How to reproduce

Before

image
  1. Sign up with email + password.
  2. On the verification screen, click Resend verification email repeatedly — each click can send another request; there’s no countdown feedback that a resend already happened.
  3. The screen copy/actions don’t match the mockup (e.g. no Back-only footer, weaker “please change it” / instructions layout), and the last instruction line can be cut off.

After

image
  1. Sign up with email + password.
  2. The verification screen starts with a 60s UI cooldown; Resend is disabled and shows “Resend available in …s”.
  3. After the countdown, Resend works once, then the 60s cooldown restarts. A second click while the request is in flight is blocked.
  4. UI matches the mockup: verification copy with please change it, instructions bullets, countdown under the form, Back + Sign in (no Cancel), and instruction text is fully visible.

Prevent accidental double-clicks and give feedback that the email was already sent.
Update copy, add Back, hide Cancel, and place countdown status below the form.
Match the mockup copy/layout and keep multi-line instruction labels from being
clipped by QFormLayout / undersized QLabel height hints.

@abdnh abdnh left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good. Left a minor comment.

Comment thread ankihub/gui/ankiweb.py Outdated
EMAIL_INSTRUCTIONS = (
"Didn't receive an email?<ul><li>Check your spam folder. "
"Emails can end up there.</li><li>Resend the email when the countdown ends.</li></ul>"
"Didn't receive an e-mail?<ul><li>Check the spam folder. "

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick: "email" is more common and Breno agreed to use that (can't find the Figma discussion as the design was moved to a different Figma file).

@fernandolins
fernandolins merged commit 10655d2 into main Aug 21, 2026
11 of 13 checks passed
@fernandolins
fernandolins deleted the KNW-221 branch August 21, 2026 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants