Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Accepted Event #3925

Open
tig opened this issue Feb 26, 2025 · 1 comment
Open

Add Accepted Event #3925

tig opened this issue Feb 26, 2025 · 1 comment
Assignees
Milestone

Comments

@tig
Copy link
Collaborator

tig commented Feb 26, 2025

          > Hmn, so do I understand correctly that it is a new requirement for all button click handlers is for user to e.cancel in the handler? Otherwise any default buttons nearby may get click handler (now called Accepting) called?

Correct.

Note, previously, e.Handed/e.Cancel actually did either nothing or was non-deterministic. So while it was "easier to use" it was actually deeply broken.

We should double check there are no IsDefault issues with our existing dialogs like MessageBox and the Query one - if they have defaults we will need this new esc bit

I already did this when I implemented all this.

I also think this is going to be confusing for new users. But happy to merge and see how it goes.

The crux of this is the making Accepting universal and getting rid of explicit Clicked events.

Things are now super consistent and deterministic, but there IS a bit of mental load required to "get it".

I'm happy to discuss ways of mitigating this. Thots:

  • Add an Accepted event that is raised AFTER and can't be cancelled.
  • Re-introduce Clicked. I hate this idea.

Others?

Originally posted by @tig in #3921 (comment)

@tig tig self-assigned this Feb 26, 2025
@tig tig added this to the V2 Alpha milestone Feb 26, 2025
@BDisp
Copy link
Collaborator

BDisp commented Feb 26, 2025

I agree with the first option for universal views.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Development

No branches or pull requests

2 participants