Hi,

We've recently hit a very nasty bug in our qooxdoo desktop app and 
recent Chrome/Chromium versions. Symptoms are: if there is a selectable 
text inside a qx.ui.window.Window, and you move the window (or just 
single-click window header), you won't be able to select text by mouse 
dragging anymore (double- or triple-clicking will work however). See a 
link [1] to Playground snippet that demonstrates the issue. In case the 
link expires, here is the code to run in Playground:

var win = new qx.ui.window.Window("First Window");
win.setWidth(300);
win.setHeight(200);
win.setShowMinimize(false);

this.getRoot().add(win, {left:20, top:20});
win.open();

var label = new qx.ui.basic.Label("Lorem ipsum dolor sit amet").set({
   selectable: true
});

win.add(label);

Now the gory details. As I've already mentioned, the issue is observed 
*only* in recent Chrome/Chromium releases, for all desktop platforms; 
Firefox and older WebKit-based browsers, like Safari or GNOME Epiphany, 
are not affected. Furthermore, we've been able to track this bug down to 
particular changeset in Chrome's Blink engine [2]. We didn't bisect 
further to determine particular commit, but it seems quite plausible 
that the culprit is [3]:

> Make the mousemove event cancellable
> The mouse move event used to be non cancellable in the 90s and
> when the specications changes in 2002-2003, not not everyone noticed.

The change was introduced about two years ago, in Chrome 31.0.1622.0.

Now guys, could you please help me understand what this issue is all 
about? If my hypothesis is correct and it has something to do with 
mousemove event cancellation, then what's going on? I could probably 
suggest that mousemove events for the window, once canceled, are being 
kept canceled forever? It's interesting that if you open DOM inspector 
and just drag that label's DIV out of the window, somewhere to beginning 
of BODY, you'll be able to select text again; that means, only the 
window becomes "broken", not the entire application/document.

With all the above - is it a qooxdoo or a Chrome bug? If latter, we 
should be able to concoct a plain non-qooxdoo MWE that Chrome guys would 
probably expect from us. So here I'm kindly asking your assistance in 
isolating (and, hopefully, fixing) this pesky bug.

Cheers,
Dimitri

[1] http://tinyurl.com/osswyny
[2] 
http://build.chromium.org/f/chromium/perf/dashboard/ui/changelog_blink.html?url=/trunk&range=157209%3A157206
[3] http://src.chromium.org/viewvc/blink?view=rev&revision=157207

------------------------------------------------------------------------------
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to