diff --git a/R/dressing_room.R b/R/dressing_room.R index ba5e20b..4f60550 100644 --- a/R/dressing_room.R +++ b/R/dressing_room.R @@ -1246,8 +1246,13 @@ app_creator_feedback_server <- function(id, warning_messages, error_messages, ui if (length(error_messages()) == 0) res <- append(res, list(ui)) return(res) }) + + # See: (ag4hj) + shiny::outputOptions(output, "ui", suspendWhenHidden = FALSE) } ) + + return(module) } diff --git a/R/mod_patient_profile.R b/R/mod_patient_profile.R index da27b73..9fdda81 100644 --- a/R/mod_patient_profile.R +++ b/R/mod_patient_profile.R @@ -88,6 +88,11 @@ mod_patient_profile_server <- function(id, subject_level_dataset, extra_datasets return(res) }) + # (ag4hj): Without these outputOptions the update selector (See: ag4hj) tries to update a selector that is not yet + # in the UI. Therefore the update is lost. In practice this means that when using the receiver_ids the first + # subjid is lost and the interaction is incorrect. + shiny::outputOptions(output, "ui", suspendWhenHidden = FALSE) + output[["selector"]] <- shiny::renderUI({ subject_level_dataset <- subject_level_dataset() shiny::req(subject_level_dataset, cancelOutput = TRUE) @@ -98,6 +103,10 @@ mod_patient_profile_server <- function(id, subject_level_dataset, extra_datasets ) }) + # See: (ag4hj) + shiny::outputOptions(output, "selector", suspendWhenHidden = FALSE) + + # See: (ag4hj) # change selected patient based on sender_ids if (!is.null(sender_ids)) { lapply(sender_ids, function(x) {