Skip to content

Conversation

@GuiLeme
Copy link
Collaborator

@GuiLeme GuiLeme commented Nov 17, 2025

What does this PR do?

This PR implements an optional delay before the picked user modal can be closed, preventing accidental dismissals from misclicks. The changes include:

  • Configuration System: Added preventCloseDelaySeconds setting (default: 3 seconds) to control modal close delay
  • Countdown Logic: Implemented timer that prevents closing via close button, overlay click, or Escape key during countdown
  • Visual Indicators:
    • For Viewers: Text message displaying "You can close this modal in X seconds"
    • For Presenters: Smooth blue progress bar at the bottom of the modal that shrinks over time

Closes Issue(s)

Closes #59

Motivation

When a user is randomly picked, the modal appears to notify participants. However, users can accidentally close this important notification with a misclick before seeing who was selected. This feature adds a configurable delay to ensure users have time to acknowledge the selection, improving the overall user experience and reducing confusion in meetings.

More

  • Added/updated documentation (README.md)
  • Added internationalization support (en.json)

Configuration Example:

public:
  plugins:
    - name: PickRandomUserPlugin
      settings:
        preventCloseDelaySeconds: 3  # Set to 0 to disable

See demo (I set the delay to be of 10 seconds via configuration, but the default is 3):

demo_pick-random-user.mp4

@GuiLeme GuiLeme changed the title [countdown-close-modal] added of modal lock countdown feat: added of modal lock countdown Nov 17, 2025
@GuiLeme GuiLeme changed the title feat: added of modal lock countdown fix: added of modal lock countdown Nov 17, 2025
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.

bug: If user clicks out of the modal at the same time they have been selected, the modal disappears.

1 participant