How do people handle no-button bug with Interact?

Sometimes if you’re using:

  • Jupyter
  • Interact.jl
  • Plots.jl

The GUI buttons will fall off after the plot gets made. This bug is especially annoying if you’re hosting a dash app like:

I was wondering if people have found ways to work around this issue? I’ve seen it on-and-off for the better half of two years.

Is this fixed in Interact master / InteractBulma ? Though I still don’t now if the new Interact works well with Binder, I was having issues displaying things the last time I tried.

1 Like

Need to try InteractBulma on binder. I didn’t use it before because it was failing to load (prob a webio thing). But it just started working when I tried it again!

edit: for clarification. failing to load was a javascript error from the developer console of chrome (i don’t remember the exact failed to connect/load error message)

I’m happy that it’s working on Binder now, I may actually go back and play with it.

EDIT: moving the reply to github

Btw, if you get InteractBulma to work on Binder, do link it here: I’d be happy to link an example repo with Binder deployment from the docs.

Can’t get InteractBulma to work locally.

  1. There are too many items on the flex-row
  2. Whenever you toggle valid, it resets nested @manipulate values to their initial values :confused:

The way I’m working around the initial issue is with this hack :crying_cat_face:

function hide_button(cur_index::Int)
    cur_script = """
        <script class="js-toggle">
            \$(".jupyter-widgets").closest(".output_area").eq($(cur_index)).hide()
            \$(".jupyter-widgets").closest(".output_area").eq($(cur_index)).next().hide()
            \$(".js-toggle").parent(".output_subarea").css("padding", "0");
            \$(".js-toggle").remove()
        </script>
    """

    display(HTML(cur_script)) 
end

@manipulate for loading=[true,false]
end

hide_button(0)
return

Will look at this when I’m back from juliacon, can you open an issue at InteractBulma with code to reproduce?