disnake icon indicating copy to clipboard operation
disnake copied to clipboard

feat: support `defer(with_message=False)` for modal interactions

Open shiftinv opened this issue 3 years ago • 0 comments

Summary

It seems that deferred_message_update responses are allowed with modal interactions as well (in addition to deferred_channel_message), regardless of whether the modal was sent from a slash or component interaction. The result is a silent deferral, i.e. no message is created, which can be useful at times even if it's not great for UX.

~~This is currently breaking as the default of with_message for modal interactions changed from (effectively) True to False, but it could be made into a non-breaking change by keeping the default True for modals (might be confusing though). Would need some more discussion around all that, which is why I'm keeping this as a draft for now.~~ No longer breaking as of 26174def7340ed698b9b5da5a3891b5b4e1909a6, however the different default values could possibly be confusing.

Checklist

  • [x] If code changes were made, then they have been tested
    • [ ] I have updated the documentation to reflect the changes
    • [x] I have formatted the code properly by running task lint
    • [x] I have type-checked the code by running task pyright
  • [ ] This PR fixes an issue
  • [x] This PR adds something new (e.g. new method or parameters)
  • [ ] This PR is a breaking change (e.g. methods or parameters removed/renamed)
  • [ ] This PR is not a code change (e.g. documentation, README, ...)

shiftinv avatar Sep 21 '22 14:09 shiftinv