• 
      

    Add async `DialogView.openAndWait()` for easier dialog management.

    Review Request #14685 — Created Nov. 11, 2025 and submitted

    Information

    Ink
    master

    Reviewers

    DialogView.openAndWait() provides a simpler way of working with a
    dialog in an async function. It returns a promise that opens the dialog
    as normal, but then waits until it's closed before resolving. With this,
    it's easier to create utility dialogs without a lot of micro-management.

    The resolved promise contains the dialog's closed reason, which can be
    used to determine if the dialog is canceled or to access state specific
    to an action or its handler.

    The Error and Confirm utility dialogs now use this to simplify code
    and, in the case of the Confirm dialog, to avoid resolving the promise
    until the dialog is closed.

    Tested this via the stories, with updates to tie the lifecycle and
    results to the button states.

    Tested with in-progress changes in Review Board.

    Summary ID
    Add async `DialogView.openAndWait()` for easier dialog management.
    `DialogView.openAndWait()` provides a simpler way of working with a dialog in an async function. It returns a promise that opens the dialog as normal, but then waits until it's closed before resolving. With this, it's easier to create utility dialogs without a lot of micro-management. The resolved promise contains the dialog's closed reason, which can be used to determine if the dialog is canceled or to access state specific to an action or its handler. The Error and Confirm utility dialogs now use this to simplify code and, in the case of the Confirm dialog, to avoid resolving the promise until the dialog is closed.
    42ddd7974697eff3964ccaa203abd57a78fb062f
    david
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to master (20ebaf3)