FYI, I filed a bug in bugzilla ( http://bugzilla.qooxdoo.org/show_bug.cgi?id=9187) and gave a possible solution attaching my fix.
In parallel, I did a pull request in github with the fix. Many thanks 2015-07-31 13:42 GMT+02:00 Qoo Goo <qoo...@gmail.com>: > Thanks, Mustafa. This was a great clue! > > The change was from 4.0.1 to 4.0.2 and I've been able to find the file > (qx.event.handler.DragDrop) and the commit breaking the behavior: it's the > ad38c72a3cbcbb61132504d7454d512eddbcf4a4 > (committed by you) labelled > > "[Bug #8660] Drag & Drop based on pointer events again, which solve the > target problem. __escaped property not necessary anmore. Minor fix on > MDragDropScrolling. table pane does not need to change the gesture event > target anymore." > > I have it working as expected on my side and if you want I can make a pull > request, but my understanding of Qooxdoo internals is not yours and I am > not really sure it will have not collateral effects (I still didn't find > any). Particularly, I've restored the event handling code for the "track" > event in that file. > > As said, if you want me do a pull request, I am more than open to do it. > > Thanks! > > 2015-07-31 9:44 GMT+02:00 Mustafa Sak <mustafa....@1und1.de>: > >> As I could see QX 4.0.1 behaves more stable than 4.1 or 5.0, I would >> advise you to start from that branch. We would love to see a pull request >> from you! >> >> >> >> Dank & Gruß >> * Mustafa Sak* >> >> Softwareentwickler >> Mail Development >> >> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 | 76135 >> Karlsruhe | Germany >> Phone: +49 721 91374-6977 >> E-Mail: mustafa....@1und1.de | Web: www.1und1.de >> >> >> >> *Von:* Qoo Goo [mailto:qoo...@gmail.com] >> *Gesendet:* Freitag, 31. Juli 2015 09:35 >> >> *An:* qooxdoo Development >> *Betreff:* Re: [qooxdoo-devel] Dragging over an iFrame no longer works >> when migrating to qx 5.0 >> >> >> >> I am not really dragging from the iframe to the parent, but only >> capturing click events and sending them via a callback function. The >> drag&drop action is only in the opposite direction (from the parent to the >> iframe). >> >> >> >> I don't see any problem in communicating with the iframes this way as far >> as I control both sources, which is the case. But anyway it's too late for >> me to rewrite everything (the application is very big, started with Qx 0.7 >> and although it has successfully passed many migrations, it's too big to >> rewrite certain things). >> >> >> >> Before thinking in starting such a huge job, I think I will spend some >> time digging into Qooxdoo code trying to figure out why it is not working >> properly anymore. >> >> >> >> Any clues where to start? >> >> >> >> Thanks >> >> >> >> 2015-07-29 18:53 GMT+02:00 Mustafa Sak <mustafa....@1und1.de>: >> >> Sure it would block the mouse / pointer events. >> >> >> >> But iframes should always be used as a sand box. Any comminucation >> between main frame and an iframe should be done through postmessage and >> stringified values. It is not recommand to share any instance between >> frames. >> >> >> >> So your iframe instance of qooxdoo should not know about any drag session >> from your main frame. Dropping into the iframe would be recognized as an >> ordinary „mouseup“ event by your iframe document. >> >> >> >> So I would advice you to use an overlay anyway and compute the mouse >> coordinates relative to the iframe inner document. Send a postmessage like >> „{method: „drop“, coordinates:{x:100, y:50}, value:“any value you like“}“ >> and detect the element under the point 100 / 50 by using >> document.elementFromPoint(100, 50) [1] in your iframe runtime. Than do what >> you ever want to ;) >> >> >> >> Good luck! >> >> >> >> [1] >> https://developer.mozilla.org/de/docs/Web/API/Document/elementFromPoint >> >> Dank & Gruß >> * Mustafa Sak* >> >> Softwareentwickler >> Mail Development >> >> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 | 76135 >> Karlsruhe | Germany >> Phone: +49 721 91374-6977 >> E-Mail: mustafa....@1und1.de | Web: www.1und1.de >> >> >> >> *Von:* Qoo Goo [mailto:qoo...@gmail.com] >> *Gesendet:* Mittwoch, 29. Juli 2015 16:01 >> *An:* qooxdoo Development >> *Betreff:* Re: [qooxdoo-devel] Dragging over an iFrame no longer works >> when migrating to qx 5.0 >> >> >> >> Thanks, Mustafa. >> >> >> >> I had this in mind, but the interaction is both directions, so that some >> events in the inner iframe's dom are caught to do actions in the ouside >> qooxdoo controlled area. >> >> Wouldn't this solution break this interaction? (I mean, wouldn't that >> drop target block the events on layers behind it?) >> >> >> >> >> >> >> >> 2015-07-29 15:14 GMT+02:00 Mustafa Sak <mustafa....@1und1.de>: >> >> Hi, >> >> >> >> well Drag & Drop handler changed massively because of using of pointer >> events. Now it looks like the pointer move will be prevented, how ever. >> >> Feel free to open a bug, but I would advise you to overlay the iframe >> with an „drop target“ layer, which shows the user that an drop does change >> the whole iframe not even the DOM element you spotted inside the iframe. >> >> >> >> May be this workaround can solve your D&D issue and improves your user >> experience. >> >> Dank & Gruß >> * Mustafa Sak* >> >> Softwareentwickler >> Mail Development >> >> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 | 76135 >> Karlsruhe | Germany >> Phone: +49 721 91374-6977 >> E-Mail: mustafa....@1und1.de | Web: www.1und1.de >> >> >> >> *Von:* Qoo Goo [mailto:qoo...@gmail.com] >> *Gesendet:* Mittwoch, 29. Juli 2015 14:27 >> *An:* qooxdoo Development >> *Betreff:* [qooxdoo-devel] Dragging over an iFrame no longer works when >> migrating to qx 5.0 >> >> >> >> Hi, >> >> >> >> I am migrating an application from Qooxdoo 3.5.1 to 5.0 and, after fixing >> some behaviour changes related to events (click to tap and so), I'm stuck >> with a problem dragging onto an iframe. >> >> >> >> The problem is that when dragging elements onto the iframe, the drag >> event seems to get stalled at the limit of the iframe. You cannot enter the >> iframe keeping the drag active (it's curious because if you capture the >> event in the parent as I do in my app and you enter the iframe passing over >> a zone not occupied by the iframe, then it seems it seems it captures the >> event, but in any case the "dragover" event doesn't work). >> >> >> >> In the examples I put below, you'll see that if you enter the iframe from >> the top of the window, it doesn't work as I would expect (as it did in >> 3.5.1), but the drop event is caught. If, instead, you enter the iframe >> from the bottom (and dragging fast), it doesn't. >> >> >> >> You can see how behaviours differ from Qx 3.5.1 to Qx 5.0 in following >> links to the playground. >> >> >> >> 3.5.1: >> >> http://tinyurl.com/og6l97e >> >> >> >> 5.0: >> >> http://tinyurl.com/nw3ur95 >> >> >> >> Does anybody know if Is this a bug or a behaviour change? If it is the >> behaviour change, how would you achieve the goal of dropping onto the >> iframe? >> >> >> >> Thanks >> >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> qooxdoo-devel mailing list >> qooxdoo-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel >> >> >> >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> qooxdoo-devel mailing list >> qooxdoo-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel >> >> >> >> >> ------------------------------------------------------------------------------ >> >> _______________________________________________ >> qooxdoo-devel mailing list >> qooxdoo-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel >> >> >
------------------------------------------------------------------------------
_______________________________________________ qooxdoo-devel mailing list qooxdoo-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel