When CSS transform has been applied, the drag image is missing (safari),
or gets offset (FF). Fixed by using custom drag image without transform,
and checking for transforms on parent DOM tree. Does NOT fix #9408
When there are frozen columns used, the image needs should not look weird because of the frozen column transitions.
The multiselection column is now not shown it is frozen.
Fixes #9261
Reorganize packages of connectors introduced in 8.1 (#9340)
* Move Tree and TreeGrid connectors to different package
* Move grid renderers to correct package
Only renderers introduced in 8.1 have been moved for
backwards compatibility.
Currently the reset method resets the lastFilter as well and then the logic thinks items don’t need to be refreshed when popup is reopened.
Fixes #9027
Fixes #7790
* First dragged data should not contain new line character at the beginning
* Return any of "text", "Text" or "text/plain" in the method of getDataTransferText()
* Set only data of type "text" for IE on dragstart
* Clarify return of getDataTransferText() method
* Ignore generated data that is null
Fix NPE when detaching DragSource & DropTarget on client side (#9341)
When the component the extensions have been attached to are removed, there was an NPE due to getParent() not being available anymore. Fixed by not doing clean up on those cases as it is not necessary.
Fixes #9101
* Add back missing detach call
WIP: Allow differentiating touch scroll from DnD (#9309)
* Allow differentiating touch scroll from DnD
Provide Escalator API to check if a touch scroll is active, and to
specify a delay after which a non-moving touch should not scroll.
Refactor Html5 DnD feature based on API review (#9306)
* Refactor Html5 DnD client side based on API review
- Moved classes to "correct" packages.
- Removed method DragSourceExtension.clearDataTransferText()
- Remove ButtonDragSource in favor of more generic API
Add mobile html5 dnd support using polyfill (#9282)
First step of mobile DND support.
- Add mobile html5 dnd support using polyfill
- Adds a switch for enabling mobile html5 dnd support
- Adds polyfill only when needed
- Ignore native Android Chrome drag start because doesn't work properly
(no dragend event fired)
- Add documentation on enabling mobile HTML5 DnD support
- Add mention of drag-drop-polyfill license
- Fixed issue in polyfill when not using "snapback"
- Add mention of forked polyfill
Fixes #9174
Reset HierarchicalDataCommunicator on changes (#9275)
Reset HDC when encountering unexpected changes in the data.
Additionally this patch fixes an issue with client and server caches
getting out of sync during resets.
- Always set some drag data
- Set the dropEffect on dragEnter and dragOver events on drop target
- Send the dropEffect to server on drop event with disclaimer of current support
- Remove _dragOverCriteria_ and use _dropCriteria_ for `dragenter`, `dragover` and `drop` criteria
Tested manually basic DnD and Grid DnD on Mac with Chrome, Firefox, Safari.
Safari is still missing drag image (regression).
Tested manually basic DnD and Grid Dnd on Windows IE11 and Edge.
Drop event for both is still not working properly #9174.
Fix ComponentLocator with inherited classes without custom connector (#9176)
Logic for finding elements corresponding a server-side classname does
not work with inherited classes. For example making MyGrid extends Grid,
you could not find the specific MyGrid, but only the common Grid.
In most cases this is not a problem since these components are usually
the only instance of said superclass, but the Composite introduced in
the same UI, which makes testing them impossible.
This patch adds the specific classname information for ServerConnectors
that can be used to find the correct connector instance.
This patch introduces a Tree component, implemented as a Composite
using TreeGrid. As initial version of the component, some functionality
of the old Tree component has been left out for now.
Partly addresses #8617
Improve expand and collapse of items in TreeGrid (#9159)
Fixes a race condition when expanding multiple items.
Only one expand or collapse request should be sent from
the client before waiting for a response, otherwise the
indexing in subsequent requests will be incorrect.
Adds API to collapse and expand multiple items from the
server, reducing the amount of round trips with multiple
item expands and collapses.
HierarchyMapper now correctly keeps expanded nodes expanded
if their parent is collapsed.