First Last Prev Next    No search results available
Details
: On drag&drop, mouserollover'd tabs' submenus don't close ...
Bug#: 26346
: QuickFolders
: General
Status: RESOLVED
Resolution: FIXED
: PC
: Linux
: unspecified
: P2
: normal
: ---

:
:
:
:
:
  Show dependency tree - Show dependency graph
People
Reporter: Jochen Bern <Jochen.Bern@Binect.de>
Assigned To: Axel Grude <axel.grude@gmail.com>
:

Attachments
Video: Drag+drop'ing an e-mail w/ mouse rolling over other tabs (346.89 KB, application/octet-stream)
2017-02-26 12:15, Jochen Bern
no flags Details
4.7.1 pre 15 (705.89 KB, application/x-xpinstall)
2017-02-26 18:21, Axel Grude
no flags Details
4.7.1 pre 20 (705.97 KB, application/x-xpinstall)
2017-02-26 18:41, Axel Grude
no flags Details


Note

You need to log in before you can comment on or make changes to this bug.

Related actions


Description:   Opened: 2017-02-26 12:15
Created an attachment (id=8270) [details]
Video: Drag+drop'ing an e-mail w/ mouse rolling over other tabs

Thunderbird 45.6.0 (OpenSUSE repo's), QuickFolders auto-updated to 4.7 (pro) on
Saturday.

Ever since, when dragging an e-mail to drop it into a tab, the submenus opened
as I drag the e-mail *across* a tab do not close automatically again; only the
tab I drop the e-mail into auto-closes. I have to click someplace to have the
extra submenus close again (see attached screencast video).
------- Comment #1 From Axel Grude 2017-02-26 18:16:54 -------
This was caused by falsely renaming a function to onDragEnd because of
impending changes in the Mozilla main code base; unfortunately the convenience
wrapper 
https://dxr.mozilla.org/comm-central/source/suite/mailnews/nsDragAndDrop.js#293 

nsDragAndDrop

in Thunderbird's comm-central database does not yet follow the new naming
conventions and 

https://dxr.mozilla.org/comm-central/source/suite/mailnews/nsDragAndDrop.js#495

checks for the existence of a function onDragExit in the drag observer.
------- Comment #2 From Axel Grude 2017-02-26 18:21:12 -------
Created an attachment (id=8271) [details]
4.7.1 pre 15

leaves the menus alone - I would stilll like to rmeove the popup menus when the
mouse leaves the button (and not just when the next button is hit) but
unfortunately the dragExit event is also triggered when the mouse cursor leave
the button in order to  go over the menu itself (closing the menu to be closed
when the user points on it). Still trying to figure out a way to make this even
more robust.
------- Comment #3 From Axel Grude 2017-02-26 18:41:24 -------
Created an attachment (id=8272) [details]
4.7.1 pre 20

I managed to use event.relatedTarget for checking whether the cursor has landed
in the box / hbox containing the toolbar (or current folder bar) and hide the
menu in this case. In my tests event.relatedTarget is null when the cursor hits
the poppup menu.
------- Comment #4 From Jochen Bern 2017-02-27 12:57:14 -------
Installed pre 20 and it works, thank you very much!

Remaining (but IMHO harmless) corner case is that the submenu remains open when
you drag back *out* of the QF tabs bar *over the submenu* (which extends down
and across the edge of the bar).
------- Comment #5 From Axel Grude 2017-02-27 13:23:33 -------
(In reply to comment #4)
> Installed pre 20 and it works, thank you very much!
> 
> Remaining (but IMHO harmless) corner case is that the submenu remains open when
> you drag back *out* of the QF tabs bar *over the submenu* (which extends down
> and across the edge of the bar).
> 

Yeah that one is probably only one of the many edge cases. The problem is that
I cannot put the removal of the popup on the dragenter event for the _button_
because this also fires every time I drag the mail on the submenu or any of its
children (the events bubble up). And the dragexit event does not fire unless I
exit the button "directly". 

If I drag down into the submenu, dragexit doesn't fire, and neither when I drag
away from the popup menu. 

the drageexit event also doesn't tell me anything about where I am when it
happens. this stuff is hellishly difficult to debug as breakpoints do affect
the drag events, so the only way is via error console and printouts. Which I do
using QF debug mode and right-click and then activating

extensions.quickfolders.debug.dnd = true
------- Comment #6 From Axel Grude 2017-03-08 01:23:20 -------
Resolved in Release 4.7.1 - published 01/March/2017

First Last Prev Next    No search results available