toshas commited on
Commit
157001c
·
1 Parent(s): 5d17894

improve slider refresh

Browse files
Files changed (1) hide show
  1. gradio_dualvision/app_template.py +8 -12
gradio_dualvision/app_template.py CHANGED
@@ -238,21 +238,17 @@ class DualVisionApp(gr.Blocks):
238
  window.addEventListener('resize', squeezeViewport);
239
 
240
  // fixes gradio-imageslider wrong position behavior when using fitting to content by triggering resize
241
- let observerSlider = new MutationObserver((mutationsList, observer) => {{
242
- let slider = document.querySelector(".slider");
243
- if (!slider) {{
244
- return;
245
- }}
246
- observer.disconnect();
247
- let observerSliderImage = new MutationObserver((mutations) => {{
248
- let img = slider.querySelector("img");
249
- if (img && img.complete) {{
250
  window.dispatchEvent(new Event('resize'));
 
 
251
  }}
252
- }});
253
- observerSliderImage.observe(slider, {{ childList: true, subtree: true }});
254
  }});
255
- observerSlider.observe(document.body, {{ childList: true, subtree: true }});
256
  </script>
257
  """
258
  self.css += f"""
 
238
  window.addEventListener('resize', squeezeViewport);
239
 
240
  // fixes gradio-imageslider wrong position behavior when using fitting to content by triggering resize
241
+ let observer = new MutationObserver((mutationsList) => {{
242
+ let img = document.querySelector(".slider img");
243
+ if (img) {{
244
+ if (img.complete) {{
 
 
 
 
 
245
  window.dispatchEvent(new Event('resize'));
246
+ }} else {{
247
+ img.onload = () => window.dispatchEvent(new Event('resize'));
248
  }}
249
+ }}
 
250
  }});
251
+ observer.observe(document.body, {{ childList: true, subtree: true }});
252
  </script>
253
  """
254
  self.css += f"""