Fix input_task_button for modules #1108
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #1107
The task button installs an input handler, which it uses to implement its auto-reset feature. One of the arguments to the input handler is the name/id of the input, a string. When a task button is in a module, that id string contains the module/namespace name as well.
Module-aware code in Shiny assumes regular strings are un-namespaced id's (akin to a relative path), and
ResolvedId
objects as namespaced id's (akin to an absolute path). In this case, we had a string that contained a namespaced id. That's then passed toupdate_task_button
, which complains that it contains characters that shouldn't be part of an id.This PR fixes the problem by changing the
input_handler
invoking code, changing the string id to a ResolvedId as early as possible.