Super weird drag and drop/mouseMove/mouseRelease issue

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Super weird drag and drop/mouseMove/mouseRelease issue

Mike Kerner via use-livecode
I'm working on extending drag and drop into/out of Navigator. To do that,
when a drag leaves Navigator I'm using a blendlevel'd stack to represent
the dragged objects as the pointer moves around the screen. This is in LC
8.1.8, on a Mac.

This works fine until the drag goes both to the right and below the list
field, and then the list field receives a mouseRelease message, and the
drag stops/fails.

Even weirder, it seems the stack representing the drag *starts* getting
mouseMove messages when the list field stops. I managed to tape together a
handoff routine that makes for a really odd workaround, but it's not a good
solution, obviously.

After some time whittling down the code to narrow down the issue, it ended
up being the field's horizontal scrollbar -- if it's set, the drag fails;
not set, everything's fine.

http://quality.livecode.com/show_bug.cgi?id=20957

(phew!)
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
Reply | Threaded
Open this post in threaded view
|

Re: Super weird drag and drop/mouseMove/mouseRelease issue

Mike Kerner via use-livecode
Just did another test, and it's literally enough to do this:

on mouseMove
   if the optionkey is down
   then set the hScrollbar of me to false
   else  set the hScrollbar of me to true
   if amDragging then dispatch "trackMovement" to this cd of stack
"revDragExample"
end mouseMove

and hold down the option key while dragging through the forbidden zone.

On Mon, Feb 5, 2018 at 6:00 PM, Geoff Canyon <[hidden email]> wrote:

> I'm working on extending drag and drop into/out of Navigator. To do that,
> when a drag leaves Navigator I'm using a blendlevel'd stack to represent
> the dragged objects as the pointer moves around the screen. This is in LC
> 8.1.8, on a Mac.
>
> This works fine until the drag goes both to the right and below the list
> field, and then the list field receives a mouseRelease message, and the
> drag stops/fails.
>
> Even weirder, it seems the stack representing the drag *starts* getting
> mouseMove messages when the list field stops. I managed to tape together a
> handoff routine that makes for a really odd workaround, but it's not a good
> solution, obviously.
>
> After some time whittling down the code to narrow down the issue, it ended
> up being the field's horizontal scrollbar -- if it's set, the drag fails;
> not set, everything's fine.
>
> http://quality.livecode.com/show_bug.cgi?id=20957
>
> (phew!)
>
_______________________________________________
use-livecode mailing list
[hidden email]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode