edfungus/Crouton

draggabilly handle does not work in firefox 44

Opened this issue · 4 comments

in crouton-dashboard.jade:

        relayout: function(element){
          if(element){
            this.container.appendChild(element);
            this.pckry.appended(element);
            // for some reason this handle thing doesn't work in firefox
            var draggie = new Draggabilly(element, {
                handle: '.dragger'
            }); 
            //var draggie = new Draggabilly(element);
            this.pckry.bindDraggabillyEvents(draggie);
            element.style.opacity = "1";
            this.pckry.layout();
          } else {
            if(this.pckry){
              this.pckry.layout();
            }
          }
        },

None of the items, or anything within the items, drag at all on firefox v44. If I get rid of the handle, everything will drag, which is annoying. Eliminating the handle makes the animations look funny on Chrome. I tried a lot of different fixes but none of them worked.

I really like the rest of this project, all the other MQTT dashboards are trying to get me to buy something and/or overly complicated. Thanks for making it!

Hi, I'm noticing this behaviour as well - Firefox 45.0.2

However, in my case it only seems to happen when a Device first connects, and I move to the Dashboard tab.
Try the following steps and write back if you can:

Using the original code and with the items undraggable, go to Connections, then disconnect the Device (leave the MQTT broker connection established) - then reconnect the Device. Go back to the Dashboard and try dragging the items then. It works for me. Perhaps this is an item initialization issue under firefox? I'll have a look as well if I can.

Note: on Chromium, everything works fine for me even at first try.

Yes, that fix works for me too. Wow.

Well it doesn't actually solve the problem, just manages to make it more usable until it's actually fixed ;)

I still have this problem with Firefox 61 using the official demo website. If I disconnect the device and reconnect it, it starts working. It seems to be a problem of the first connect.