MaterialDesignInXAML / MaterialDesignInXAML/MaterialDesignInXamlToolkit

DialogHost doesn't return current value when dialog is accepted from keyboard.

Open
#2,249 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

dialoghost up-for-grabs
Dominant language
C#
Stars
16.3k
Forks
3.5k
Avg merge
1d 22h
Merged PRs (30d)
8

Description

DialogHost doesn't return current value when dialog is accepted from keyboard.

MaterialDesignThemes v. 4.0.0

Repository with example: https://github.com/lszczygielek/MaterialDesignInXamlToolkit-DialogHost-Focus

@Keboo wrote about it on Gitter:

I wrote a small test to also show the issue here. I did write a little UI test to reproduce the issue as well: https://github.com/Keboo/MaterialDesignInXamlToolkit/tree/dialogHostDoesNotUpdate
If anyone wants to have a go at addressing it that would be a good start. I spent a little time looking at it, and it seems like it may be a little difficult with timing to address it within the dialog host as you need to trigger the lost focus event and wait for the binding to update. This may end up being something that needs to be addressed outside of this library.
It also appears this is somewhat expected as several other people have run into similar use cases. https://www.thomasclaudiushuber.com/2008/05/02/lostfocus-textbox-vs-buttons-isdefault-property/

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked DialogHost-Focus example and the UI test in the dialogHostDoesNotUpdate branch to reproduce keyboard acceptance in MaterialDesignThemes 4.0.0. Trace DialogHost's handling of focus and binding updates, then verify that accepting the dialog returns the current value shown in the control.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.